commit 42586b066605aa137c8d450c4d1ecd1b4ee6f073
Author: Aesthetiful <62633768+DrChic0@users.noreply.github.com>
Date: Wed Mar 5 15:58:01 2025 -0800
Add files via upload
diff --git a/chat.json b/chat.json
new file mode 100644
index 0000000..0637a08
--- /dev/null
+++ b/chat.json
@@ -0,0 +1 @@
+[]
\ No newline at end of file
diff --git a/cleanDrawings.js b/cleanDrawings.js
new file mode 100644
index 0000000..839296d
--- /dev/null
+++ b/cleanDrawings.js
@@ -0,0 +1,16 @@
+const fs = require('fs');
+const data = JSON.parse(fs.readFileSync("drawings.json", 'utf-8'));
+var count = 0;
+
+let filteredData = [];
+for (const entry of data) {
+ if (entry[0].color !== "#faf700") {
+ filteredData.push(entry);
+ console.log(entry[0].color);
+ } else {
+ count++;
+ }
+}
+
+fs.writeFileSync("drawings.json", JSON.stringify(filteredData), 'utf-8');
+console.log("Done found " + count);
\ No newline at end of file
diff --git a/client-96wMDN-main.js b/client-96wMDN-main.js
new file mode 100644
index 0000000..e5c66d1
--- /dev/null
+++ b/client-96wMDN-main.js
@@ -0,0 +1,512 @@
+const socket = io({
+ timeout: 500
+ });
+
+ const canvas = document.getElementById('drawingCanvas');
+ const canvasContainer = document.getElementById('canvasContainer');
+ const buttons = document.getElementById('buttons');
+ const tx = document.getElementById('x');
+ const ty = document.getElementById('y');
+ const context = canvas.getContext('2d');
+ const chat = document.querySelector('.chat-container');
+ const nameinput = document.getElementById('username');
+ const drawingEmitDelay = 500;
+ let lastDrawingEmitTime = 0;
+ let drawings = [];
+ let announcementIDs = [];
+ let currentDrawing = [];
+ let isDrawing = false;
+ let uiVisible = true;
+ let currentColor = '#000000';
+ let announceCount = 1;
+ let connectionTimer = null;
+ let connectionSeconds = 0;
+ let versionSet = false;
+ let ping = null;
+ let uuid = "";
+ context.imageSmoothingEnabled = true;
+ canvasContainer.style.transform = `scale(0.08)`;
+
+ function getCookie(name) {
+ const cookies = document.cookie.split(';').map(cookie => cookie.trim());
+ for (const cookie of cookies) {
+ const [cookieName, cookieValue] = cookie.split('=').map(part => decodeURIComponent(part));
+ if (cookieName === name) {
+ return cookieValue;
+ }
+ }
+ return null;
+ }
+
+ function setCookie(name, value, expire) {
+ const expirationDate = new Date();
+ expirationDate.setDate(expirationDate.getDate() + expire);
+
+ const cookieValue = encodeURIComponent(value) + (expire ? `; expires=${expirationDate.toUTCString()}` : '');
+ document.cookie = `${name}=${cookieValue}; path=/`;
+ }
+
+ function pinger() {
+ const startTime = Date.now();
+ const pingtext = document.getElementById('ping').querySelector('p');
+
+ socket.on('pong', () => {
+ const latency = Date.now() - startTime;
+ pingtext.textContent = 'Ping: ' + latency + 'ms';
+ document.getElementById('ping').style.opacity = 0.25;
+ });
+
+ socket.emit('ping');
+ }
+
+ ping = setInterval(pinger, 1000);
+
+ function startConnectionTimer() {
+ const messages = document.querySelector('.messages');
+
+ if(messages.querySelectorAll('[id="connection"]').length > 0) {
+ return;
+ }
+
+ clearInterval(ping);
+ const parentMessage = document.createElement('div');
+ parentMessage.setAttribute('class', 'message fadeup red');
+ parentMessage.setAttribute('id', 'connection');
+ parentMessage.style.boxShadow = "0 4px 8px rgba(0, 0, 0, 0.1)";
+ parentMessage.style.width = "300px";
+ const message = document.createElement('p');
+ message.setAttribute('id', 'timeout');
+ message.setAttribute('style', 'white-space: nowrap;margin: 25px 50px 25px 50px');
+ message.textContent = "Server Connection Timeout: " + connectionSeconds.toFixed(1);
+ parentMessage.appendChild(message);
+ messages.appendChild(parentMessage);
+
+ canvas.style.opacity = 0;
+ buttons.style.opacity = 0;
+ canvas.classList.add('fadedown');
+ drawings = [];
+ currentDrawing = [];
+ draw();
+
+ connectionTimer = setInterval(() => {
+ connectionSeconds += 0.1;
+ document.getElementById('timeout').textContent = "Server Connection Timeout: " + connectionSeconds.toFixed(1);
+ }, 100);
+ }
+
+ function stopConnectionTimer() {
+ clearInterval(connectionTimer);
+ ping = setInterval(pinger, 1000);
+ connectionSeconds = 0;
+
+ const messages = document.querySelector('.messages');
+
+ messages.querySelectorAll('[id="connection"]').forEach((child) => {
+ child.classList.remove('fadeup');
+ child.classList.add('fadedown');
+ setTimeout(() => {
+ child.remove();
+ }, 500);
+ });
+
+ const parentMessage = document.createElement('div');
+ parentMessage.setAttribute('class', 'message fadeup green');
+ parentMessage.setAttribute('id', 'success');
+ parentMessage.style.boxShadow = "0 4px 8px rgba(0, 0, 0, 0.1)";
+ parentMessage.setAttribute('style', "min-width: auto;");
+ const messagetext = document.createElement('p');
+ messagetext.setAttribute('id', 'timeout');
+ messagetext.setAttribute('style', 'white-space: nowrap;margin: 25px 50px 25px 50px');
+ messagetext.textContent = "Server connection has been restored";
+ parentMessage.appendChild(messagetext);
+ messages.appendChild(parentMessage);
+
+ canvas.style.opacity = 1;
+ buttons.style.opacity = 1;
+ canvas.classList.remove('fadedown');
+ canvas.classList.add('fadeup');
+ const message = document.getElementById('success');
+
+ setTimeout(() => {
+ message.classList.remove('fadeup');
+ message.classList.add('fadedown');
+ setTimeout(() => {
+ message.remove();
+ }, 500);
+ }, 2500);
+ }
+
+ socket.on('connect', () => {
+ if(connectionSeconds != 0) {
+ stopConnectionTimer();
+ }
+ });
+
+ socket.on('connect_error', () => {
+ startConnectionTimer();
+ });
+
+ socket.on('connect_timeout', () => {
+ startConnectionTimer();
+ });
+
+ function toggleOP() {
+ uiVisible = !uiVisible;
+ buttons.style.display = uiVisible ? '' : 'none';
+ document.getElementById('resetView').style.display = uiVisible ? '' : 'none';
+ document.getElementById('xy').style.display = uiVisible ? '' : 'none';
+ document.getElementById('connectedClients').style.display = uiVisible ? '' : 'none';
+ document.getElementById('version').style.display = uiVisible ? '' : 'none';
+ document.getElementById('ping').style.display = uiVisible ? '' : 'none';
+ document.getElementById('data').style.display = uiVisible ? '' : 'none';
+ chat.style.display = uiVisible ? 'flex' : 'none';
+ }
+
+ function resetView() {
+ canvasContainer.style.transform = `scale(0.08)`;
+ canvas.style.transform = `translate(0px, 0px)`;
+ zoomLevel = 0.08;
+ offsetX = 0;
+ offsetY = 0;
+ }
+
+ function changeColor(event) {
+ currentColor = event.target.value;
+ }
+
+ document.addEventListener('mouseup', () => {
+ isDrawing = false;
+ });
+
+ canvas.addEventListener('mouseleave', () => {
+ isDrawing = false;
+ });
+
+ canvas.addEventListener('mousedown', (event) => {
+ isDrawing = true;
+ addPoint(event);
+ });
+
+ canvas.addEventListener('mouseup', () => {
+ isDrawing = false;
+ if (currentDrawing.length > 0) {
+ socket.emit('draw', { type: 'draw', drawing: currentDrawing, valid: uuid });
+ drawings.push(currentDrawing);
+ draw();
+ currentDrawing = [];
+ lastDrawingEmitTime = Date.now();
+ }
+ });
+
+ canvas.addEventListener('mousemove', (event) => {
+ const rect = canvas.getBoundingClientRect();
+ const scaleX = canvas.width / rect.width;
+ const scaleY = canvas.height / rect.height;
+
+ const x = Math.round((event.clientX - rect.left) * scaleX);
+ const y = Math.round((event.clientY - rect.top) * scaleY);
+
+ tx.innerHTML = x;
+ ty.innerHTML = y;
+
+ if (isDrawing) {
+ addPoint(event);
+
+ const currentTime = Date.now();
+ if (currentTime - lastDrawingEmitTime >= drawingEmitDelay) {
+ //socket.emit('draw', { type: 'draw', drawing: currentDrawing, valid: uuid });
+ lastDrawingEmitTime = currentTime;
+ }
+ }
+ });
+
+ document.getElementById('chat-input').addEventListener('keydown', function(event) {
+ if(event.keyCode == 13) {
+ socket.emit('message', { uuid: uuid, content: document.getElementById('chat-input').value });
+ document.getElementById('chat-input').value = "";
+ }
+ });
+
+ nameinput.addEventListener('keydown', function(event) {
+ if(event.keyCode == 13) {
+ socket.emit('changeName', { uuid: uuid, name: nameinput.value });
+ }
+ });
+
+ document.addEventListener('keydown', function(event) {
+ if (event.key === 'ArrowUp') {
+ pan('up');
+ } else if (event.key === 'ArrowDown') {
+ pan('down');
+ } else if (event.key === 'ArrowLeft') {
+ pan('left');
+ } else if (event.key === 'ArrowRight') {
+ pan('right');
+ }
+ });
+
+ function addPoint(event) {
+ if (!isDrawing) return;
+ const rect = canvas.getBoundingClientRect();
+ const scaleX = canvas.width / rect.width;
+ const scaleY = canvas.height / rect.height;
+
+ const x = (event.clientX - rect.left) * scaleX;
+ const y = (event.clientY - rect.top) * scaleY;
+
+ currentDrawing.push({ x: Math.round(x), y: Math.round(y), color: currentColor });
+ draw();
+ }
+
+ function draw() {
+ context.clearRect(0, 0, canvas.width, canvas.height);
+
+ for (const drawing of drawings) {
+ if (drawing.length < 2) continue;
+
+ for (let i = 1; i < drawing.length; i++) {
+ const startPoint = drawing[i - 1];
+ const endPoint = drawing[i];
+
+ context.beginPath();
+ context.strokeStyle = startPoint.color;
+ context.moveTo(Math.round(startPoint.x), Math.round(startPoint.y));
+ context.lineTo(Math.round(endPoint.x), Math.round(endPoint.y));
+ context.stroke();
+ }
+ }
+
+ context.stroke();
+
+
+ if (currentDrawing.length > 0) {
+ context.beginPath();
+ context.strokeStyle = currentColor;
+ context.moveTo(Math.round(currentDrawing[0].x), Math.round(currentDrawing[0].y));
+
+ for (let i = 1; i < currentDrawing.length; i++) {
+ const point = currentDrawing[i];
+ context.lineTo(Math.round(point.x), Math.round(point.y));
+ }
+
+ context.stroke();
+ }
+ }
+
+ socket.on('changeName', (data) => {
+ document.getElementById('nameStatus').textContent = data.status.message;
+ document.getElementById('nameStatus').style.display = "";
+
+ setTimeout(() => {
+ document.getElementById('nameStatus').style.display = "none";
+ }, 5000);
+ });
+
+ socket.on('chat', (data) => {
+ if(data.type == "message") {
+ const message = document.createElement('li');
+ message.textContent = "<" + data.name + "> " + data.content;
+ chat.querySelector('ul').appendChild(message);
+ chat.querySelector('.chat-messages').querySelector('ul').scrollTop = chat.querySelector('.chat-messages').querySelector('ul').scrollHeight;
+ } else if(data.type == "existingMessages") {
+ const messages = JSON.parse(data.messages);
+ chat.querySelector('ul').innerHTML = "";
+ messages.forEach(entry => {
+ const message = document.createElement('li');
+ message.textContent = "<" + entry.name + "> " + entry.content;
+ chat.querySelector('ul').appendChild(message);
+ chat.querySelector('.chat-messages').querySelector('ul').scrollTop = chat.querySelector('.chat-messages').querySelector('ul').scrollHeight;
+ });
+ }
+ });
+
+ socket.on('dataSize', (data) => {
+ document.getElementById('data').querySelector('p').textContent = "Size: " + data.size + "MB";
+ document.getElementById('data').style.opacity = 0.25;
+ });
+
+ socket.on('play', (data) => {
+ if(data.audio != "stop") {
+ document.getElementById('audio-player').src = data.audio;
+ document.getElementById('audio-player').play();
+ } else {
+ document.getElementById('audio-player').pause();
+ }
+ });
+
+ socket.on('announcement', (data) => {
+ if (data.message && data.color) {
+ const announcementMessage = data.message;
+ const messages = document.querySelector('.messages');
+
+ const announcement = document.createElement('div');
+ announcement.setAttribute('class', 'message fadeup ' + data.color);
+ announcement.setAttribute('id', announceCount);
+ announcement.style.boxShadow = "0 4px 8px rgba(0, 0, 0, 0.1)";
+ const message = document.createElement('p');
+ message.setAttribute('style', 'white-space: normal;margin: 25px 50px 25px 50px');
+ message.textContent = announcementMessage;
+ announcement.appendChild(message);
+ messages.appendChild(announcement);
+ announceCount++;
+
+ announcementIDs.push(announceCount - 1);
+
+ setTimeout(() => {
+ const el = document.getElementById(announceCount - 1);
+ el.classList.remove('fadeup');
+ el.classList.add('fadedown');
+ setTimeout(() => {
+ el.style.display = "none";
+ el.remove();
+ }, 500);
+ }, 5000);
+ }
+ });
+
+ function hideMessages() {
+ const parentDiv = document.querySelector('.messages');
+ if (parentDiv) {
+ const childDivs = parentDiv.querySelectorAll('div');
+
+ if(childDivs.length > 1) {
+ childDivs.forEach((child) => {
+ if (child.getAttribute('id') != "connection") {
+ child.classList.add('fadedown');
+ }
+ });
+
+ setTimeout(() => {
+ childDivs.forEach((child) => {
+ if (child.getAttribute('id') != "connection") {
+ child.style.display = 'none';
+ child.remove();
+ }
+ });
+ }, 500);
+ }
+ }
+ }
+
+ setInterval(hideMessages, 5000);
+
+ socket.on('connectedClients', (count) => {
+ document.getElementById('clientNum').textContent = `Connected Clients: ${count}`;
+ document.getElementById('connectedClients').style.opacity = 0.25;
+ });
+
+ socket.on('reload', (count) => {
+ location.reload(true);
+ });
+
+ socket.on('version', (version) => {
+ document.title = "Collavas v" + version;
+ document.getElementById('version').querySelector('p').textContent = "Version: " + version;
+ document.getElementById('version').style.opacity = 0.25;
+ versionSet = true;
+
+ document.getElementById('w-version').textContent = "Collavas v" + version;
+ });
+
+ socket.on('draw', (data) => {
+ if (data.type === 'draw' && data.drawing) {
+ drawings.push(data.drawing);
+ draw();
+ } else if (data.type === 'existingDrawings' && data.drawings) {
+ const parsedDrawings = JSON.parse(data.drawings);
+ const messages = JSON.parse(data.chat);
+ drawings = [];
+
+ chat.querySelector('ul').innerHTML = "";
+ messages.forEach(entry => {
+ const message = document.createElement('li');
+ message.textContent = "<" + entry.name + "> " + entry.content;
+ chat.querySelector('ul').appendChild(message);
+ chat.querySelector('.chat-messages').querySelector('ul').scrollTop = chat.querySelector('.chat-messages').querySelector('ul').scrollHeight;
+ });
+
+ uuid = data.id;
+ nameinput.value = data.name;
+ setCookie("uuid", uuid, 1);
+
+ drawings.push(...parsedDrawings);
+ draw();
+
+ document.getElementById('transition').style.opacity = 1;
+ document.getElementById('transition').style.visibility = "hidden";
+ canvas.style.opacity = 1;
+ canvas.style.visibility = "visible";
+ buttons.style.opacity = 1;
+ chat.style.display = "flex";
+
+ if(!getCookie("visited")) {
+ var welcome = document.getElementById('welcome');
+ welcome.style.display = "flex";
+ welcome.style.opacity = 1;
+ welcome.querySelector('div').classList.add('fadeup');
+ setCookie("visited", "true", 1);
+
+ document.getElementById('w-close').addEventListener('click', (event) => {
+ welcome.style.opacity = 0;
+ welcome.querySelector('div').classList.remove('fadeup');
+ welcome.querySelector('div').classList.add('fadedown');
+
+ setTimeout(() => {
+ welcome.style.display = "none";
+ }, 500);
+ });
+ }
+ }
+ });
+
+ let zoomLevel = 0.08;
+ const zoomFactor = 0.1;
+
+ let offsetX = 0;
+ let offsetY = 0;
+
+ function pan(direction) {
+ const panSpeed = 40;
+
+ switch (direction) {
+ case 'left':
+ offsetX += panSpeed;
+ break;
+ case 'right':
+ offsetX -= panSpeed;
+ break;
+ case 'up':
+ offsetY += panSpeed;
+ break;
+ case 'down':
+ offsetY -= panSpeed;
+ break;
+ default:
+ break;
+ }
+
+ updateCanvasContainerPosition();
+ }
+
+ function updateCanvasContainerPosition() {
+ if(zoomLevel == 0.08) {
+ canvas.style.transform = `0px, 0px)`;
+ offsetX = 0;
+ offsetY = 0;
+ } else {
+ canvas.style.transform = `translate(${offsetX}px, ${offsetY}px)`;
+ }
+ }
+ canvasContainer.addEventListener('wheel', (event) => {
+ event.preventDefault();
+
+ const scrollAmount = event.deltaY > 0 ? -1 : 1;
+ const scaleFactor = 1 + scrollAmount * zoomFactor;
+
+ zoomLevel *= scaleFactor;
+
+ if (zoomLevel < 0.08) { zoomLevel = 0.08; canvas.style.transform = `translate(0px, 0px)`; updateCanvasContainerPosition(); }
+ if (zoomLevel > 20.0) zoomLevel = 20.0;
+
+ canvasContainer.style.transform = `scale(${zoomLevel})`;
+ });
\ No newline at end of file
diff --git a/collavas.bat b/collavas.bat
new file mode 100644
index 0000000..1a3804e
--- /dev/null
+++ b/collavas.bat
@@ -0,0 +1 @@
+node server-96wMDN.js
\ No newline at end of file
diff --git a/config.yaml b/config.yaml
new file mode 100644
index 0000000..ff7cbb2
--- /dev/null
+++ b/config.yaml
@@ -0,0 +1,2 @@
+version: 0.1.4
+port: 3000
\ No newline at end of file
diff --git a/drawings.json b/drawings.json
new file mode 100644
index 0000000..0637a08
--- /dev/null
+++ b/drawings.json
@@ -0,0 +1 @@
+[]
\ No newline at end of file
diff --git a/logs/2025-1-2.log b/logs/2025-1-2.log
new file mode 100644
index 0000000..7610552
--- /dev/null
+++ b/logs/2025-1-2.log
@@ -0,0 +1,128 @@
+[2025-01-02 17:35:15] [INFO] Starting Collavas server v0.1.4
+[2025-01-02 17:35:15] [INFO] Loading Dependencies...
+[2025-01-02 17:35:15] [INFO] Successfully started!
+[2025-01-02 17:35:15] [INFO] Server is running on port 3000
+[2025-01-02 17:35:15] [INFO] Connected Clients: 0
+[2025-01-02 17:35:19] [INFO] Connected Clients: 1
+[2025-01-02 17:36:13] [INFO] NaN 1735868173756
+[2025-01-02 17:36:13] [INFO] 8f5bbf5e-9848-422f-9e41-6a84807effe1 {"type":"draw","drawing":[{"x":5195,"y":4934,"color":"#000000"},{"x":5195,"y":4935,"color":"#000000"},{"x":5195,"y":4944,"color":"#000000"},{"x":5195,"y":4954,"color":"#000000"},{"x":5196,"y":4961,"color":"#000000"},{"x":5196,"y":4964,"color":"#000000"},{"x":5196,"y":4964,"color":"#000000"},{"x":5203,"y":4953,"color":"#000000"},{"x":5209,"y":4949,"color":"#000000"},{"x":5215,"y":4957,"color":"#000000"},{"x":5216,"y":4964,"color":"#000000"},{"x":5207,"y":4966,"color":"#000000"},{"x":5195,"y":4961,"color":"#000000"},{"x":5194,"y":4960,"color":"#000000"},{"x":5195,"y":4960,"color":"#000000"}],"valid":"8f5bbf5e-9848-422f-9e41-6a84807effe1"}
+[2025-01-02 17:36:26] [INFO] Drawing not authenticated 8f5bbf5e-9848-422f-9e41-6a84807effe1
+[2025-01-02 17:36:32] [INFO] 18580 1735868192337
+[2025-01-02 17:36:32] [INFO] 8f5bbf5e-9848-422f-9e41-6a84807effe1 {"type":"draw","drawing":[{"x":5194,"y":4936,"color":"#000000"},{"x":5194,"y":4939,"color":"#000000"},{"x":5194,"y":4953,"color":"#000000"},{"x":5194,"y":4964,"color":"#000000"},{"x":5194,"y":4964,"color":"#000000"},{"x":5196,"y":4946,"color":"#000000"},{"x":5197,"y":4940,"color":"#000000"},{"x":5197,"y":4938,"color":"#000000"},{"x":5197,"y":4939,"color":"#000000"},{"x":5193,"y":4957,"color":"#000000"},{"x":5193,"y":4969,"color":"#000000"},{"x":5194,"y":4969,"color":"#000000"},{"x":5197,"y":4948,"color":"#000000"},{"x":5196,"y":4938,"color":"#000000"},{"x":5193,"y":4934,"color":"#000000"},{"x":5196,"y":4947,"color":"#000000"},{"x":5199,"y":4964,"color":"#000000"},{"x":5199,"y":4966,"color":"#000000"},{"x":5196,"y":4955,"color":"#000000"},{"x":5195,"y":4945,"color":"#000000"}],"valid":"8f5bbf5e-9848-422f-9e41-6a84807effe1"}
+[2025-01-02 17:36:35] [INFO] 3396 1735868195735
+[2025-01-02 17:36:35] [INFO] 8f5bbf5e-9848-422f-9e41-6a84807effe1 {"type":"draw","drawing":[{"x":5197,"y":4962,"color":"#000000"},{"x":5197,"y":4959,"color":"#000000"},{"x":5204,"y":4952,"color":"#000000"},{"x":5214,"y":4952,"color":"#000000"},{"x":5216,"y":4956,"color":"#000000"},{"x":5213,"y":4963,"color":"#000000"},{"x":5212,"y":4964,"color":"#000000"},{"x":5203,"y":4963,"color":"#000000"},{"x":5191,"y":4959,"color":"#000000"},{"x":5190,"y":4956,"color":"#000000"},{"x":5202,"y":4951,"color":"#000000"},{"x":5211,"y":4951,"color":"#000000"},{"x":5214,"y":4952,"color":"#000000"},{"x":5215,"y":4958,"color":"#000000"},{"x":5212,"y":4966,"color":"#000000"},{"x":5204,"y":4967,"color":"#000000"},{"x":5195,"y":4963,"color":"#000000"},{"x":5192,"y":4957,"color":"#000000"},{"x":5194,"y":4954,"color":"#000000"},{"x":5201,"y":4951,"color":"#000000"},{"x":5207,"y":4954,"color":"#000000"},{"x":5210,"y":4958,"color":"#000000"},{"x":5211,"y":4963,"color":"#000000"},{"x":5209,"y":4967,"color":"#000000"},{"x":5205,"y":4968,"color":"#000000"},{"x":5200,"y":4964,"color":"#000000"},{"x":5197,"y":4959,"color":"#000000"},{"x":5197,"y":4959,"color":"#000000"}],"valid":"8f5bbf5e-9848-422f-9e41-6a84807effe1"}
+[2025-01-02 17:36:41] [INFO] 5774 1735868201510
+[2025-01-02 17:36:41] [INFO] 8f5bbf5e-9848-422f-9e41-6a84807effe1 {"type":"draw","drawing":[{"x":5222,"y":4963,"color":"#000000"},{"x":5224,"y":4955,"color":"#000000"},{"x":5227,"y":4931,"color":"#000000"},{"x":5227,"y":4932,"color":"#000000"},{"x":5228,"y":4948,"color":"#000000"},{"x":5228,"y":4958,"color":"#000000"},{"x":5228,"y":4960,"color":"#000000"},{"x":5227,"y":4960,"color":"#000000"},{"x":5223,"y":4949,"color":"#000000"},{"x":5225,"y":4936,"color":"#000000"},{"x":5226,"y":4932,"color":"#000000"},{"x":5226,"y":4946,"color":"#000000"},{"x":5226,"y":4962,"color":"#000000"},{"x":5226,"y":4963,"color":"#000000"},{"x":5226,"y":4956,"color":"#000000"},{"x":5227,"y":4935,"color":"#000000"},{"x":5228,"y":4933,"color":"#000000"},{"x":5227,"y":4942,"color":"#000000"},{"x":5222,"y":4962,"color":"#000000"},{"x":5222,"y":4964,"color":"#000000"},{"x":5227,"y":4951,"color":"#000000"},{"x":5228,"y":4946,"color":"#000000"},{"x":5229,"y":4944,"color":"#000000"},{"x":5239,"y":4942,"color":"#000000"},{"x":5244,"y":4947,"color":"#000000"},{"x":5245,"y":4950,"color":"#000000"},{"x":5245,"y":4948,"color":"#000000"},{"x":5244,"y":4943,"color":"#000000"},{"x":5238,"y":4942,"color":"#000000"},{"x":5233,"y":4944,"color":"#000000"},{"x":5228,"y":4947,"color":"#000000"},{"x":5228,"y":4949,"color":"#000000"},{"x":5229,"y":4948,"color":"#000000"},{"x":5236,"y":4942,"color":"#000000"},{"x":5240,"y":4941,"color":"#000000"},{"x":5242,"y":4945,"color":"#000000"},{"x":5244,"y":4948,"color":"#000000"},{"x":5240,"y":4945,"color":"#000000"},{"x":5234,"y":4941,"color":"#000000"},{"x":5227,"y":4946,"color":"#000000"},{"x":5225,"y":4952,"color":"#000000"},{"x":5225,"y":4955,"color":"#000000"},{"x":5229,"y":4950,"color":"#000000"},{"x":5242,"y":4942,"color":"#000000"},{"x":5245,"y":4942,"color":"#000000"},{"x":5246,"y":4946,"color":"#000000"},{"x":5245,"y":4951,"color":"#000000"},{"x":5243,"y":4947,"color":"#000000"},{"x":5240,"y":4943,"color":"#000000"},{"x":5234,"y":4945,"color":"#000000"},{"x":5229,"y":4950,"color":"#000000"},{"x":5228,"y":4954,"color":"#000000"},{"x":5228,"y":4955,"color":"#000000"}],"valid":"8f5bbf5e-9848-422f-9e41-6a84807effe1"}
+[2025-01-02 17:36:50] [INFO] 9007 1735868210518
+[2025-01-02 17:36:50] [INFO] 8f5bbf5e-9848-422f-9e41-6a84807effe1 {"type":"draw","drawing":[{"x":5264,"y":4932,"color":"#000000"},{"x":5263,"y":4935,"color":"#000000"},{"x":5257,"y":4956,"color":"#000000"},{"x":5259,"y":4964,"color":"#000000"},{"x":5264,"y":4964,"color":"#000000"},{"x":5278,"y":4952,"color":"#000000"},{"x":5283,"y":4939,"color":"#000000"},{"x":5285,"y":4932,"color":"#000000"},{"x":5285,"y":4931,"color":"#000000"},{"x":5285,"y":4940,"color":"#000000"},{"x":5282,"y":4958,"color":"#000000"},{"x":5280,"y":4963,"color":"#000000"},{"x":5262,"y":4964,"color":"#000000"},{"x":5258,"y":4959,"color":"#000000"},{"x":5262,"y":4944,"color":"#000000"},{"x":5267,"y":4936,"color":"#000000"},{"x":5269,"y":4934,"color":"#000000"},{"x":5269,"y":4934,"color":"#000000"},{"x":5263,"y":4944,"color":"#000000"},{"x":5258,"y":4958,"color":"#000000"},{"x":5258,"y":4963,"color":"#000000"},{"x":5265,"y":4962,"color":"#000000"},{"x":5280,"y":4952,"color":"#000000"},{"x":5283,"y":4947,"color":"#000000"},{"x":5283,"y":4940,"color":"#000000"},{"x":5283,"y":4938,"color":"#000000"},{"x":5282,"y":4942,"color":"#000000"},{"x":5275,"y":4955,"color":"#000000"},{"x":5270,"y":4961,"color":"#000000"},{"x":5260,"y":4959,"color":"#000000"},{"x":5259,"y":4955,"color":"#000000"},{"x":5265,"y":4938,"color":"#000000"},{"x":5266,"y":4937,"color":"#000000"},{"x":5266,"y":4938,"color":"#000000"},{"x":5260,"y":4951,"color":"#000000"},{"x":5256,"y":4961,"color":"#000000"},{"x":5257,"y":4965,"color":"#000000"},{"x":5271,"y":4962,"color":"#000000"},{"x":5283,"y":4953,"color":"#000000"},{"x":5287,"y":4940,"color":"#000000"},{"x":5287,"y":4935,"color":"#000000"},{"x":5287,"y":4935,"color":"#000000"},{"x":5278,"y":4951,"color":"#000000"},{"x":5273,"y":4959,"color":"#000000"},{"x":5269,"y":4960,"color":"#000000"},{"x":5258,"y":4958,"color":"#000000"},{"x":5255,"y":4952,"color":"#000000"},{"x":5259,"y":4938,"color":"#000000"},{"x":5264,"y":4932,"color":"#000000"},{"x":5264,"y":4932,"color":"#000000"},{"x":5259,"y":4945,"color":"#000000"},{"x":5256,"y":4955,"color":"#000000"},{"x":5256,"y":4960,"color":"#000000"},{"x":5270,"y":4961,"color":"#000000"},{"x":5277,"y":4951,"color":"#000000"},{"x":5279,"y":4945,"color":"#000000"},{"x":5280,"y":4940,"color":"#000000"},{"x":5282,"y":4938,"color":"#000000"},{"x":5282,"y":4937,"color":"#000000"},{"x":5279,"y":4943,"color":"#000000"},{"x":5273,"y":4951,"color":"#000000"},{"x":5267,"y":4956,"color":"#000000"},{"x":5263,"y":4956,"color":"#000000"},{"x":5259,"y":4953,"color":"#000000"},{"x":5258,"y":4944,"color":"#000000"},{"x":5264,"y":4933,"color":"#000000"},{"x":5267,"y":4928,"color":"#000000"},{"x":5267,"y":4929,"color":"#000000"},{"x":5256,"y":4944,"color":"#000000"},{"x":5253,"y":4955,"color":"#000000"},{"x":5255,"y":4957,"color":"#000000"},{"x":5270,"y":4957,"color":"#000000"},{"x":5280,"y":4946,"color":"#000000"},{"x":5283,"y":4940,"color":"#000000"},{"x":5284,"y":4939,"color":"#000000"},{"x":5284,"y":4939,"color":"#000000"},{"x":5276,"y":4952,"color":"#000000"},{"x":5267,"y":4958,"color":"#000000"},{"x":5256,"y":4956,"color":"#000000"},{"x":5258,"y":4944,"color":"#000000"},{"x":5265,"y":4934,"color":"#000000"},{"x":5265,"y":4933,"color":"#000000"}],"valid":"8f5bbf5e-9848-422f-9e41-6a84807effe1"}
+[2025-01-02 17:37:01] [INFO] 10889 1735868221408
+[2025-01-02 17:37:01] [INFO] 8f5bbf5e-9848-422f-9e41-6a84807effe1 {"type":"draw","drawing":[{"x":5301,"y":4919,"color":"#000000"},{"x":5301,"y":4921,"color":"#000000"},{"x":5302,"y":4942,"color":"#000000"},{"x":5299,"y":4955,"color":"#000000"},{"x":5297,"y":4961,"color":"#000000"},{"x":5297,"y":4961,"color":"#000000"},{"x":5298,"y":4946,"color":"#000000"},{"x":5299,"y":4939,"color":"#000000"},{"x":5303,"y":4939,"color":"#000000"},{"x":5307,"y":4951,"color":"#000000"},{"x":5307,"y":4958,"color":"#000000"},{"x":5307,"y":4962,"color":"#000000"},{"x":5306,"y":4963,"color":"#000000"},{"x":5306,"y":4963,"color":"#000000"},{"x":5307,"y":4948,"color":"#000000"},{"x":5305,"y":4941,"color":"#000000"},{"x":5305,"y":4940,"color":"#000000"},{"x":5301,"y":4942,"color":"#000000"},{"x":5298,"y":4947,"color":"#000000"},{"x":5296,"y":4954,"color":"#000000"},{"x":5296,"y":4955,"color":"#000000"},{"x":5296,"y":4954,"color":"#000000"},{"x":5299,"y":4938,"color":"#000000"},{"x":5300,"y":4932,"color":"#000000"},{"x":5301,"y":4927,"color":"#000000"},{"x":5301,"y":4928,"color":"#000000"},{"x":5299,"y":4942,"color":"#000000"},{"x":5297,"y":4953,"color":"#000000"},{"x":5296,"y":4959,"color":"#000000"},{"x":5296,"y":4960,"color":"#000000"},{"x":5298,"y":4949,"color":"#000000"},{"x":5303,"y":4944,"color":"#000000"},{"x":5307,"y":4947,"color":"#000000"},{"x":5310,"y":4959,"color":"#000000"},{"x":5311,"y":4962,"color":"#000000"},{"x":5311,"y":4963,"color":"#000000"},{"x":5311,"y":4958,"color":"#000000"},{"x":5308,"y":4943,"color":"#000000"},{"x":5303,"y":4940,"color":"#000000"},{"x":5299,"y":4944,"color":"#000000"},{"x":5295,"y":4953,"color":"#000000"},{"x":5295,"y":4958,"color":"#000000"},{"x":5295,"y":4961,"color":"#000000"},{"x":5295,"y":4958,"color":"#000000"},{"x":5301,"y":4939,"color":"#000000"},{"x":5302,"y":4932,"color":"#000000"},{"x":5302,"y":4931,"color":"#000000"},{"x":5302,"y":4931,"color":"#000000"},{"x":5303,"y":4940,"color":"#000000"},{"x":5299,"y":4953,"color":"#000000"},{"x":5296,"y":4960,"color":"#000000"},{"x":5296,"y":4961,"color":"#000000"},{"x":5297,"y":4955,"color":"#000000"},{"x":5303,"y":4945,"color":"#000000"},{"x":5308,"y":4944,"color":"#000000"},{"x":5312,"y":4958,"color":"#000000"},{"x":5310,"y":4964,"color":"#000000"},{"x":5310,"y":4965,"color":"#000000"},{"x":5311,"y":4959,"color":"#000000"},{"x":5311,"y":4946,"color":"#000000"},{"x":5310,"y":4944,"color":"#000000"},{"x":5307,"y":4943,"color":"#000000"},{"x":5298,"y":4949,"color":"#000000"},{"x":5293,"y":4960,"color":"#000000"},{"x":5293,"y":4966,"color":"#000000"},{"x":5293,"y":4965,"color":"#000000"},{"x":5296,"y":4954,"color":"#000000"},{"x":5300,"y":4939,"color":"#000000"},{"x":5301,"y":4934,"color":"#000000"},{"x":5301,"y":4935,"color":"#000000"},{"x":5298,"y":4949,"color":"#000000"},{"x":5297,"y":4959,"color":"#000000"},{"x":5295,"y":4963,"color":"#000000"},{"x":5298,"y":4956,"color":"#000000"},{"x":5304,"y":4943,"color":"#000000"},{"x":5309,"y":4943,"color":"#000000"},{"x":5311,"y":4948,"color":"#000000"},{"x":5311,"y":4955,"color":"#000000"},{"x":5311,"y":4959,"color":"#000000"},{"x":5310,"y":4961,"color":"#000000"},{"x":5310,"y":4957,"color":"#000000"},{"x":5309,"y":4945,"color":"#000000"},{"x":5308,"y":4944,"color":"#000000"},{"x":5302,"y":4947,"color":"#000000"},{"x":5295,"y":4952,"color":"#000000"},{"x":5293,"y":4960,"color":"#000000"},{"x":5292,"y":4963,"color":"#000000"},{"x":5293,"y":4961,"color":"#000000"},{"x":5299,"y":4944,"color":"#000000"},{"x":5304,"y":4932,"color":"#000000"},{"x":5305,"y":4931,"color":"#000000"},{"x":5304,"y":4932,"color":"#000000"},{"x":5299,"y":4946,"color":"#000000"},{"x":5296,"y":4955,"color":"#000000"},{"x":5296,"y":4956,"color":"#000000"},{"x":5296,"y":4957,"color":"#000000"},{"x":5296,"y":4955,"color":"#000000"},{"x":5301,"y":4942,"color":"#000000"},{"x":5304,"y":4933,"color":"#000000"},{"x":5304,"y":4933,"color":"#000000"},{"x":5302,"y":4939,"color":"#000000"},{"x":5299,"y":4944,"color":"#000000"}],"valid":"8f5bbf5e-9848-422f-9e41-6a84807effe1"}
+[2025-01-02 17:40:04] [INFO] Connected Clients: 0
+[2025-01-02 17:40:06] [INFO] Connected Clients: 1
+[2025-01-02 17:40:51] [INFO] Connected Clients: 0
+[2025-01-02 17:40:53] [INFO] Connected Clients: 1
+[2025-01-02 17:42:03] [INFO] Connected Clients: 0
+[2025-01-02 17:42:05] [INFO] Connected Clients: 1
+[2025-01-02 17:42:50] [INFO] Connected Clients: 0
+[2025-01-02 17:42:51] [INFO] Connected Clients: 1
+[2025-01-02 17:44:01] [INFO] Connected Clients: 0
+[2025-01-02 17:44:03] [INFO] Connected Clients: 1
+[2025-01-02 17:44:48] [INFO] Connected Clients: 0
+[2025-01-02 17:44:49] [INFO] Connected Clients: 1
+[2025-01-02 17:45:59] [INFO] Connected Clients: 0
+[2025-01-02 17:46:01] [INFO] Connected Clients: 1
+[2025-01-02 17:46:46] [INFO] Connected Clients: 0
+[2025-01-02 17:46:48] [INFO] Connected Clients: 1
+[2025-01-02 17:47:58] [INFO] Connected Clients: 0
+[2025-01-02 17:47:59] [INFO] Connected Clients: 1
+[2025-01-02 17:48:44] [INFO] Connected Clients: 0
+[2025-01-02 17:48:46] [INFO] Connected Clients: 1
+[2025-01-02 17:49:56] [INFO] Connected Clients: 0
+[2025-01-02 17:49:58] [INFO] Connected Clients: 1
+[2025-01-02 17:50:43] [INFO] Connected Clients: 0
+[2025-01-02 17:50:45] [INFO] Connected Clients: 1
+[2025-01-02 17:51:55] [INFO] Connected Clients: 0
+[2025-01-02 17:51:57] [INFO] Connected Clients: 1
+[2025-01-02 17:52:42] [INFO] Connected Clients: 0
+[2025-01-02 17:52:44] [INFO] Connected Clients: 1
+[2025-01-02 17:53:54] [INFO] Connected Clients: 0
+[2025-01-02 17:53:55] [INFO] Connected Clients: 1
+[2025-01-02 17:54:40] [INFO] Connected Clients: 0
+[2025-01-02 17:54:42] [INFO] Connected Clients: 1
+[2025-01-02 17:55:52] [INFO] Connected Clients: 0
+[2025-01-02 17:55:53] [INFO] Connected Clients: 1
+[2025-01-02 17:57:03] [INFO] Connected Clients: 0
+[2025-01-02 17:57:05] [INFO] Connected Clients: 1
+[2025-01-02 17:57:50] [INFO] Connected Clients: 0
+[2025-01-02 17:57:51] [INFO] Connected Clients: 1
+[2025-01-02 17:59:01] [INFO] Connected Clients: 0
+[2025-01-02 17:59:03] [INFO] Connected Clients: 1
+[2025-01-02 17:59:48] [INFO] Connected Clients: 0
+[2025-01-02 17:59:50] [INFO] Connected Clients: 1
+[2025-01-02 18:01:00] [INFO] Connected Clients: 0
+[2025-01-02 18:01:02] [INFO] Connected Clients: 1
+[2025-01-02 18:01:47] [INFO] Connected Clients: 0
+[2025-01-02 18:01:48] [INFO] Connected Clients: 1
+[2025-01-02 18:02:58] [INFO] Connected Clients: 0
+[2025-01-02 18:03:00] [INFO] Connected Clients: 1
+[2025-01-02 18:03:45] [INFO] Connected Clients: 0
+[2025-01-02 18:03:47] [INFO] Connected Clients: 1
+[2025-01-02 18:04:57] [INFO] Connected Clients: 0
+[2025-01-02 18:04:59] [INFO] Connected Clients: 1
+[2025-01-02 18:05:44] [INFO] Connected Clients: 0
+[2025-01-02 18:05:46] [INFO] Connected Clients: 1
+[2025-01-02 18:06:56] [INFO] Connected Clients: 0
+[2025-01-02 18:06:58] [INFO] Connected Clients: 1
+[2025-01-02 18:07:43] [INFO] Connected Clients: 0
+[2025-01-02 18:07:45] [INFO] Connected Clients: 1
+[2025-01-02 18:08:55] [INFO] Connected Clients: 0
+[2025-01-02 18:08:57] [INFO] Connected Clients: 1
+[2025-01-02 18:09:42] [INFO] Connected Clients: 0
+[2025-01-02 18:09:44] [INFO] Connected Clients: 1
+[2025-01-02 18:10:54] [INFO] Connected Clients: 0
+[2025-01-02 18:10:56] [INFO] Connected Clients: 1
+[2025-01-02 18:11:41] [INFO] Connected Clients: 0
+[2025-01-02 18:11:43] [INFO] Connected Clients: 1
+[2025-01-02 18:12:53] [INFO] Connected Clients: 0
+[2025-01-02 18:12:55] [INFO] Connected Clients: 1
+[2025-01-02 18:13:40] [INFO] Connected Clients: 0
+[2025-01-02 18:13:42] [INFO] Connected Clients: 1
+[2025-01-02 18:14:52] [INFO] Connected Clients: 0
+[2025-01-02 18:14:54] [INFO] Connected Clients: 1
+[2025-01-02 18:15:39] [INFO] Connected Clients: 0
+[2025-01-02 18:15:41] [INFO] Connected Clients: 1
+[2025-01-02 18:16:51] [INFO] Connected Clients: 0
+[2025-01-02 18:16:53] [INFO] Connected Clients: 1
+[2025-01-02 18:18:03] [INFO] Connected Clients: 0
+[2025-01-02 18:18:05] [INFO] Connected Clients: 1
+[2025-01-02 18:18:50] [INFO] Connected Clients: 0
+[2025-01-02 18:18:52] [INFO] Connected Clients: 1
+[2025-01-02 18:20:02] [INFO] Connected Clients: 0
+[2025-01-02 18:20:04] [INFO] Connected Clients: 1
+[2025-01-02 18:20:49] [INFO] Connected Clients: 0
+[2025-01-02 18:20:51] [INFO] Connected Clients: 1
+[2025-01-02 18:22:01] [INFO] Connected Clients: 0
+[2025-01-02 18:22:03] [INFO] Connected Clients: 1
+[2025-01-02 18:22:47] [INFO] Connected Clients: 0
+[2025-01-02 18:22:49] [INFO] Connected Clients: 1
+[2025-01-02 18:23:59] [INFO] Connected Clients: 0
+[2025-01-02 18:24:01] [INFO] Connected Clients: 1
+[2025-01-02 18:24:46] [INFO] Connected Clients: 0
+[2025-01-02 18:24:47] [INFO] Connected Clients: 1
+[2025-01-02 18:25:57] [INFO] Connected Clients: 0
+[2025-01-02 18:25:59] [INFO] Connected Clients: 1
+[2025-01-02 18:26:44] [INFO] Connected Clients: 0
+[2025-01-02 18:26:46] [INFO] Connected Clients: 1
+[2025-01-02 18:27:56] [INFO] Connected Clients: 0
+[2025-01-02 18:27:58] [INFO] Connected Clients: 1
+[2025-01-02 18:28:42] [INFO] Connected Clients: 0
+[2025-01-02 18:28:45] [INFO] Connected Clients: 1
+[2025-01-02 18:29:55] [INFO] Connected Clients: 0
+[2025-01-02 18:29:57] [INFO] Connected Clients: 1
+[2025-01-02 18:30:41] [INFO] Connected Clients: 0
+[2025-01-02 18:30:44] [INFO] Connected Clients: 1
+[2025-01-02 18:30:47] [INFO] Connected Clients: 0
+[2025-01-02 20:42:35] [INFO] Connected Clients: 1
+[2025-01-02 20:42:35] [INFO] Connected Clients: 0
+[2025-01-02 20:43:07] [INFO] Connected Clients: 1
+[2025-01-02 20:43:14] [INFO] Connected Clients: 0
diff --git a/package-lock.json b/package-lock.json
new file mode 100644
index 0000000..63e6554
--- /dev/null
+++ b/package-lock.json
@@ -0,0 +1,1253 @@
+{
+ "name": "www.collavas.com",
+ "lockfileVersion": 3,
+ "requires": true,
+ "packages": {
+ "": {
+ "dependencies": {
+ "axios": "^1.6.8",
+ "cors": "^2.8.5",
+ "express": "^4.18.2",
+ "msgpack-lite": "^0.1.26",
+ "readline": "^1.3.0",
+ "socket.io": "^4.7.2",
+ "uuid": "^9.0.1",
+ "winston": "^3.13.0",
+ "yaml": "^2.4.1"
+ }
+ },
+ "node_modules/@colors/colors": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.6.0.tgz",
+ "integrity": "sha512-Ir+AOibqzrIsL6ajt3Rz3LskB7OiMVHqltZmspbW/TJuTVuyOMirVqAkjfY6JISiLHgyNqicAC8AyHHGzNd/dA==",
+ "engines": {
+ "node": ">=0.1.90"
+ }
+ },
+ "node_modules/@dabh/diagnostics": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/@dabh/diagnostics/-/diagnostics-2.0.3.tgz",
+ "integrity": "sha512-hrlQOIi7hAfzsMqlGSFyVucrx38O+j6wiGOf//H2ecvIEqYN4ADBSS2iLMh5UFyDunCNniUIPk/q3riFv45xRA==",
+ "dependencies": {
+ "colorspace": "1.1.x",
+ "enabled": "2.0.x",
+ "kuler": "^2.0.0"
+ }
+ },
+ "node_modules/@socket.io/component-emitter": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.0.tgz",
+ "integrity": "sha512-+9jVqKhRSpsc591z5vX+X5Yyw+he/HCB4iQ/RYxw35CEPaY1gnsNE43nf9n9AaYjAQrTiI/mOwKUKdUs9vf7Xg=="
+ },
+ "node_modules/@types/cookie": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz",
+ "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q=="
+ },
+ "node_modules/@types/cors": {
+ "version": "2.8.16",
+ "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.16.tgz",
+ "integrity": "sha512-Trx5or1Nyg1Fq138PCuWqoApzvoSLWzZ25ORBiHMbbUT42g578lH1GT4TwYDbiUOLFuDsCkfLneT2105fsFWGg==",
+ "dependencies": {
+ "@types/node": "*"
+ }
+ },
+ "node_modules/@types/node": {
+ "version": "20.9.0",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-20.9.0.tgz",
+ "integrity": "sha512-nekiGu2NDb1BcVofVcEKMIwzlx4NjHlcjhoxxKBNLtz15Y1z7MYf549DFvkHSId02Ax6kGwWntIBPC3l/JZcmw==",
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
+ "node_modules/@types/triple-beam": {
+ "version": "1.3.5",
+ "resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.5.tgz",
+ "integrity": "sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw=="
+ },
+ "node_modules/accepts": {
+ "version": "1.3.8",
+ "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz",
+ "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==",
+ "dependencies": {
+ "mime-types": "~2.1.34",
+ "negotiator": "0.6.3"
+ },
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/array-flatten": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
+ "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg=="
+ },
+ "node_modules/async": {
+ "version": "3.2.5",
+ "resolved": "https://registry.npmjs.org/async/-/async-3.2.5.tgz",
+ "integrity": "sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg=="
+ },
+ "node_modules/asynckit": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
+ "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="
+ },
+ "node_modules/axios": {
+ "version": "1.6.8",
+ "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.8.tgz",
+ "integrity": "sha512-v/ZHtJDU39mDpyBoFVkETcd/uNdxrWRrg3bKpOKzXFA6Bvqopts6ALSMU3y6ijYxbw2B+wPrIv46egTzJXCLGQ==",
+ "dependencies": {
+ "follow-redirects": "^1.15.6",
+ "form-data": "^4.0.0",
+ "proxy-from-env": "^1.1.0"
+ }
+ },
+ "node_modules/base64id": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz",
+ "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==",
+ "engines": {
+ "node": "^4.5.0 || >= 5.9"
+ }
+ },
+ "node_modules/body-parser": {
+ "version": "1.20.1",
+ "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz",
+ "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==",
+ "dependencies": {
+ "bytes": "3.1.2",
+ "content-type": "~1.0.4",
+ "debug": "2.6.9",
+ "depd": "2.0.0",
+ "destroy": "1.2.0",
+ "http-errors": "2.0.0",
+ "iconv-lite": "0.4.24",
+ "on-finished": "2.4.1",
+ "qs": "6.11.0",
+ "raw-body": "2.5.1",
+ "type-is": "~1.6.18",
+ "unpipe": "1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.8",
+ "npm": "1.2.8000 || >= 1.4.16"
+ }
+ },
+ "node_modules/bytes": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz",
+ "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==",
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/call-bind": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.5.tgz",
+ "integrity": "sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==",
+ "dependencies": {
+ "function-bind": "^1.1.2",
+ "get-intrinsic": "^1.2.1",
+ "set-function-length": "^1.1.1"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/color": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/color/-/color-3.2.1.tgz",
+ "integrity": "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==",
+ "dependencies": {
+ "color-convert": "^1.9.3",
+ "color-string": "^1.6.0"
+ }
+ },
+ "node_modules/color-convert": {
+ "version": "1.9.3",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
+ "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
+ "dependencies": {
+ "color-name": "1.1.3"
+ }
+ },
+ "node_modules/color-name": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
+ "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw=="
+ },
+ "node_modules/color-string": {
+ "version": "1.9.1",
+ "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz",
+ "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==",
+ "dependencies": {
+ "color-name": "^1.0.0",
+ "simple-swizzle": "^0.2.2"
+ }
+ },
+ "node_modules/colorspace": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/colorspace/-/colorspace-1.1.4.tgz",
+ "integrity": "sha512-BgvKJiuVu1igBUF2kEjRCZXol6wiiGbY5ipL/oVPwm0BL9sIpMIzM8IK7vwuxIIzOXMV3Ey5w+vxhm0rR/TN8w==",
+ "dependencies": {
+ "color": "^3.1.3",
+ "text-hex": "1.0.x"
+ }
+ },
+ "node_modules/combined-stream": {
+ "version": "1.0.8",
+ "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
+ "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
+ "dependencies": {
+ "delayed-stream": "~1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/content-disposition": {
+ "version": "0.5.4",
+ "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz",
+ "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==",
+ "dependencies": {
+ "safe-buffer": "5.2.1"
+ },
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/content-type": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz",
+ "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/cookie": {
+ "version": "0.5.0",
+ "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz",
+ "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/cookie-signature": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz",
+ "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ=="
+ },
+ "node_modules/cors": {
+ "version": "2.8.5",
+ "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz",
+ "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==",
+ "dependencies": {
+ "object-assign": "^4",
+ "vary": "^1"
+ },
+ "engines": {
+ "node": ">= 0.10"
+ }
+ },
+ "node_modules/debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "dependencies": {
+ "ms": "2.0.0"
+ }
+ },
+ "node_modules/define-data-property": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.1.tgz",
+ "integrity": "sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==",
+ "dependencies": {
+ "get-intrinsic": "^1.2.1",
+ "gopd": "^1.0.1",
+ "has-property-descriptors": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/delayed-stream": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
+ "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==",
+ "engines": {
+ "node": ">=0.4.0"
+ }
+ },
+ "node_modules/depd": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
+ "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==",
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/destroy": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz",
+ "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==",
+ "engines": {
+ "node": ">= 0.8",
+ "npm": "1.2.8000 || >= 1.4.16"
+ }
+ },
+ "node_modules/ee-first": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
+ "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow=="
+ },
+ "node_modules/enabled": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/enabled/-/enabled-2.0.0.tgz",
+ "integrity": "sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ=="
+ },
+ "node_modules/encodeurl": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
+ "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==",
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/engine.io": {
+ "version": "6.5.4",
+ "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.5.4.tgz",
+ "integrity": "sha512-KdVSDKhVKyOi+r5uEabrDLZw2qXStVvCsEB/LN3mw4WFi6Gx50jTyuxYVCwAAC0U46FdnzP/ScKRBTXb/NiEOg==",
+ "dependencies": {
+ "@types/cookie": "^0.4.1",
+ "@types/cors": "^2.8.12",
+ "@types/node": ">=10.0.0",
+ "accepts": "~1.3.4",
+ "base64id": "2.0.0",
+ "cookie": "~0.4.1",
+ "cors": "~2.8.5",
+ "debug": "~4.3.1",
+ "engine.io-parser": "~5.2.1",
+ "ws": "~8.11.0"
+ },
+ "engines": {
+ "node": ">=10.2.0"
+ }
+ },
+ "node_modules/engine.io-parser": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.2.1.tgz",
+ "integrity": "sha512-9JktcM3u18nU9N2Lz3bWeBgxVgOKpw7yhRaoxQA3FUDZzzw+9WlA6p4G4u0RixNkg14fH7EfEc/RhpurtiROTQ==",
+ "engines": {
+ "node": ">=10.0.0"
+ }
+ },
+ "node_modules/engine.io/node_modules/cookie": {
+ "version": "0.4.2",
+ "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz",
+ "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/engine.io/node_modules/debug": {
+ "version": "4.3.4",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
+ "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
+ "dependencies": {
+ "ms": "2.1.2"
+ },
+ "engines": {
+ "node": ">=6.0"
+ },
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/engine.io/node_modules/ms": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
+ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
+ },
+ "node_modules/escape-html": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
+ "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow=="
+ },
+ "node_modules/etag": {
+ "version": "1.8.1",
+ "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz",
+ "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/event-lite": {
+ "version": "0.1.3",
+ "resolved": "https://registry.npmjs.org/event-lite/-/event-lite-0.1.3.tgz",
+ "integrity": "sha512-8qz9nOz5VeD2z96elrEKD2U433+L3DWdUdDkOINLGOJvx1GsMBbMn0aCeu28y8/e85A6mCigBiFlYMnTBEGlSw=="
+ },
+ "node_modules/express": {
+ "version": "4.18.2",
+ "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz",
+ "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==",
+ "dependencies": {
+ "accepts": "~1.3.8",
+ "array-flatten": "1.1.1",
+ "body-parser": "1.20.1",
+ "content-disposition": "0.5.4",
+ "content-type": "~1.0.4",
+ "cookie": "0.5.0",
+ "cookie-signature": "1.0.6",
+ "debug": "2.6.9",
+ "depd": "2.0.0",
+ "encodeurl": "~1.0.2",
+ "escape-html": "~1.0.3",
+ "etag": "~1.8.1",
+ "finalhandler": "1.2.0",
+ "fresh": "0.5.2",
+ "http-errors": "2.0.0",
+ "merge-descriptors": "1.0.1",
+ "methods": "~1.1.2",
+ "on-finished": "2.4.1",
+ "parseurl": "~1.3.3",
+ "path-to-regexp": "0.1.7",
+ "proxy-addr": "~2.0.7",
+ "qs": "6.11.0",
+ "range-parser": "~1.2.1",
+ "safe-buffer": "5.2.1",
+ "send": "0.18.0",
+ "serve-static": "1.15.0",
+ "setprototypeof": "1.2.0",
+ "statuses": "2.0.1",
+ "type-is": "~1.6.18",
+ "utils-merge": "1.0.1",
+ "vary": "~1.1.2"
+ },
+ "engines": {
+ "node": ">= 0.10.0"
+ }
+ },
+ "node_modules/fecha": {
+ "version": "4.2.3",
+ "resolved": "https://registry.npmjs.org/fecha/-/fecha-4.2.3.tgz",
+ "integrity": "sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw=="
+ },
+ "node_modules/finalhandler": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz",
+ "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==",
+ "dependencies": {
+ "debug": "2.6.9",
+ "encodeurl": "~1.0.2",
+ "escape-html": "~1.0.3",
+ "on-finished": "2.4.1",
+ "parseurl": "~1.3.3",
+ "statuses": "2.0.1",
+ "unpipe": "~1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/fn.name": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/fn.name/-/fn.name-1.1.0.tgz",
+ "integrity": "sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw=="
+ },
+ "node_modules/follow-redirects": {
+ "version": "1.15.6",
+ "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz",
+ "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==",
+ "funding": [
+ {
+ "type": "individual",
+ "url": "https://github.com/sponsors/RubenVerborgh"
+ }
+ ],
+ "engines": {
+ "node": ">=4.0"
+ },
+ "peerDependenciesMeta": {
+ "debug": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/form-data": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz",
+ "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==",
+ "dependencies": {
+ "asynckit": "^0.4.0",
+ "combined-stream": "^1.0.8",
+ "mime-types": "^2.1.12"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/forwarded": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz",
+ "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/fresh": {
+ "version": "0.5.2",
+ "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
+ "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/function-bind": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
+ "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/get-intrinsic": {
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.2.tgz",
+ "integrity": "sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==",
+ "dependencies": {
+ "function-bind": "^1.1.2",
+ "has-proto": "^1.0.1",
+ "has-symbols": "^1.0.3",
+ "hasown": "^2.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/gopd": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz",
+ "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==",
+ "dependencies": {
+ "get-intrinsic": "^1.1.3"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/has-property-descriptors": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz",
+ "integrity": "sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==",
+ "dependencies": {
+ "get-intrinsic": "^1.2.2"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/has-proto": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz",
+ "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==",
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/has-symbols": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz",
+ "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==",
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/hasown": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz",
+ "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==",
+ "dependencies": {
+ "function-bind": "^1.1.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/http-errors": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz",
+ "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==",
+ "dependencies": {
+ "depd": "2.0.0",
+ "inherits": "2.0.4",
+ "setprototypeof": "1.2.0",
+ "statuses": "2.0.1",
+ "toidentifier": "1.0.1"
+ },
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/iconv-lite": {
+ "version": "0.4.24",
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
+ "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
+ "dependencies": {
+ "safer-buffer": ">= 2.1.2 < 3"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/ieee754": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
+ "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ]
+ },
+ "node_modules/inherits": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
+ },
+ "node_modules/int64-buffer": {
+ "version": "0.1.10",
+ "resolved": "https://registry.npmjs.org/int64-buffer/-/int64-buffer-0.1.10.tgz",
+ "integrity": "sha512-v7cSY1J8ydZ0GyjUHqF+1bshJ6cnEVLo9EnjB8p+4HDRPZc9N5jjmvUV7NvEsqQOKyH0pmIBFWXVQbiS0+OBbA=="
+ },
+ "node_modules/ipaddr.js": {
+ "version": "1.9.1",
+ "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz",
+ "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==",
+ "engines": {
+ "node": ">= 0.10"
+ }
+ },
+ "node_modules/is-arrayish": {
+ "version": "0.3.2",
+ "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz",
+ "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ=="
+ },
+ "node_modules/is-stream": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz",
+ "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==",
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/isarray": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
+ "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ=="
+ },
+ "node_modules/kuler": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/kuler/-/kuler-2.0.0.tgz",
+ "integrity": "sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A=="
+ },
+ "node_modules/logform": {
+ "version": "2.6.0",
+ "resolved": "https://registry.npmjs.org/logform/-/logform-2.6.0.tgz",
+ "integrity": "sha512-1ulHeNPp6k/LD8H91o7VYFBng5i1BDE7HoKxVbZiGFidS1Rj65qcywLxX+pVfAPoQJEjRdvKcusKwOupHCVOVQ==",
+ "dependencies": {
+ "@colors/colors": "1.6.0",
+ "@types/triple-beam": "^1.3.2",
+ "fecha": "^4.2.0",
+ "ms": "^2.1.1",
+ "safe-stable-stringify": "^2.3.1",
+ "triple-beam": "^1.3.0"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/logform/node_modules/ms": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
+ },
+ "node_modules/media-typer": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
+ "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/merge-descriptors": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz",
+ "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w=="
+ },
+ "node_modules/methods": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz",
+ "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/mime": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz",
+ "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==",
+ "bin": {
+ "mime": "cli.js"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/mime-db": {
+ "version": "1.52.0",
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
+ "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/mime-types": {
+ "version": "2.1.35",
+ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
+ "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
+ "dependencies": {
+ "mime-db": "1.52.0"
+ },
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A=="
+ },
+ "node_modules/msgpack-lite": {
+ "version": "0.1.26",
+ "resolved": "https://registry.npmjs.org/msgpack-lite/-/msgpack-lite-0.1.26.tgz",
+ "integrity": "sha512-SZ2IxeqZ1oRFGo0xFGbvBJWMp3yLIY9rlIJyxy8CGrwZn1f0ZK4r6jV/AM1r0FZMDUkWkglOk/eeKIL9g77Nxw==",
+ "dependencies": {
+ "event-lite": "^0.1.1",
+ "ieee754": "^1.1.8",
+ "int64-buffer": "^0.1.9",
+ "isarray": "^1.0.0"
+ },
+ "bin": {
+ "msgpack": "bin/msgpack"
+ }
+ },
+ "node_modules/negotiator": {
+ "version": "0.6.3",
+ "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz",
+ "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/object-assign": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
+ "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/object-inspect": {
+ "version": "1.13.1",
+ "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz",
+ "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==",
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/on-finished": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz",
+ "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==",
+ "dependencies": {
+ "ee-first": "1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/one-time": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/one-time/-/one-time-1.0.0.tgz",
+ "integrity": "sha512-5DXOiRKwuSEcQ/l0kGCF6Q3jcADFv5tSmRaJck/OqkVFcOzutB134KRSfF0xDrL39MNnqxbHBbUUcjZIhTgb2g==",
+ "dependencies": {
+ "fn.name": "1.x.x"
+ }
+ },
+ "node_modules/parseurl": {
+ "version": "1.3.3",
+ "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
+ "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==",
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/path-to-regexp": {
+ "version": "0.1.7",
+ "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz",
+ "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ=="
+ },
+ "node_modules/proxy-addr": {
+ "version": "2.0.7",
+ "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz",
+ "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==",
+ "dependencies": {
+ "forwarded": "0.2.0",
+ "ipaddr.js": "1.9.1"
+ },
+ "engines": {
+ "node": ">= 0.10"
+ }
+ },
+ "node_modules/proxy-from-env": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz",
+ "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg=="
+ },
+ "node_modules/qs": {
+ "version": "6.11.0",
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz",
+ "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==",
+ "dependencies": {
+ "side-channel": "^1.0.4"
+ },
+ "engines": {
+ "node": ">=0.6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/range-parser": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz",
+ "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/raw-body": {
+ "version": "2.5.1",
+ "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz",
+ "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==",
+ "dependencies": {
+ "bytes": "3.1.2",
+ "http-errors": "2.0.0",
+ "iconv-lite": "0.4.24",
+ "unpipe": "1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/readable-stream": {
+ "version": "3.6.2",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
+ "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
+ "dependencies": {
+ "inherits": "^2.0.3",
+ "string_decoder": "^1.1.1",
+ "util-deprecate": "^1.0.1"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/readline": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/readline/-/readline-1.3.0.tgz",
+ "integrity": "sha512-k2d6ACCkiNYz222Fs/iNze30rRJ1iIicW7JuX/7/cozvih6YCkFZH+J6mAFDVgv0dRBaAyr4jDqC95R2y4IADg=="
+ },
+ "node_modules/safe-buffer": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ]
+ },
+ "node_modules/safe-stable-stringify": {
+ "version": "2.4.3",
+ "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz",
+ "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==",
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/safer-buffer": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
+ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
+ },
+ "node_modules/send": {
+ "version": "0.18.0",
+ "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz",
+ "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==",
+ "dependencies": {
+ "debug": "2.6.9",
+ "depd": "2.0.0",
+ "destroy": "1.2.0",
+ "encodeurl": "~1.0.2",
+ "escape-html": "~1.0.3",
+ "etag": "~1.8.1",
+ "fresh": "0.5.2",
+ "http-errors": "2.0.0",
+ "mime": "1.6.0",
+ "ms": "2.1.3",
+ "on-finished": "2.4.1",
+ "range-parser": "~1.2.1",
+ "statuses": "2.0.1"
+ },
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/send/node_modules/ms": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
+ },
+ "node_modules/serve-static": {
+ "version": "1.15.0",
+ "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz",
+ "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==",
+ "dependencies": {
+ "encodeurl": "~1.0.2",
+ "escape-html": "~1.0.3",
+ "parseurl": "~1.3.3",
+ "send": "0.18.0"
+ },
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/set-function-length": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.1.1.tgz",
+ "integrity": "sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ==",
+ "dependencies": {
+ "define-data-property": "^1.1.1",
+ "get-intrinsic": "^1.2.1",
+ "gopd": "^1.0.1",
+ "has-property-descriptors": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/setprototypeof": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz",
+ "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw=="
+ },
+ "node_modules/side-channel": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz",
+ "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==",
+ "dependencies": {
+ "call-bind": "^1.0.0",
+ "get-intrinsic": "^1.0.2",
+ "object-inspect": "^1.9.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/simple-swizzle": {
+ "version": "0.2.2",
+ "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz",
+ "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==",
+ "dependencies": {
+ "is-arrayish": "^0.3.1"
+ }
+ },
+ "node_modules/socket.io": {
+ "version": "4.7.2",
+ "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.7.2.tgz",
+ "integrity": "sha512-bvKVS29/I5fl2FGLNHuXlQaUH/BlzX1IN6S+NKLNZpBsPZIDH+90eQmCs2Railn4YUiww4SzUedJ6+uzwFnKLw==",
+ "dependencies": {
+ "accepts": "~1.3.4",
+ "base64id": "~2.0.0",
+ "cors": "~2.8.5",
+ "debug": "~4.3.2",
+ "engine.io": "~6.5.2",
+ "socket.io-adapter": "~2.5.2",
+ "socket.io-parser": "~4.2.4"
+ },
+ "engines": {
+ "node": ">=10.2.0"
+ }
+ },
+ "node_modules/socket.io-adapter": {
+ "version": "2.5.2",
+ "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.5.2.tgz",
+ "integrity": "sha512-87C3LO/NOMc+eMcpcxUBebGjkpMDkNBS9tf7KJqcDsmL936EChtVva71Dw2q4tQcuVC+hAUy4an2NO/sYXmwRA==",
+ "dependencies": {
+ "ws": "~8.11.0"
+ }
+ },
+ "node_modules/socket.io-parser": {
+ "version": "4.2.4",
+ "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.4.tgz",
+ "integrity": "sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew==",
+ "dependencies": {
+ "@socket.io/component-emitter": "~3.1.0",
+ "debug": "~4.3.1"
+ },
+ "engines": {
+ "node": ">=10.0.0"
+ }
+ },
+ "node_modules/socket.io-parser/node_modules/debug": {
+ "version": "4.3.4",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
+ "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
+ "dependencies": {
+ "ms": "2.1.2"
+ },
+ "engines": {
+ "node": ">=6.0"
+ },
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/socket.io-parser/node_modules/ms": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
+ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
+ },
+ "node_modules/socket.io/node_modules/debug": {
+ "version": "4.3.4",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
+ "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
+ "dependencies": {
+ "ms": "2.1.2"
+ },
+ "engines": {
+ "node": ">=6.0"
+ },
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/socket.io/node_modules/ms": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
+ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
+ },
+ "node_modules/stack-trace": {
+ "version": "0.0.10",
+ "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz",
+ "integrity": "sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==",
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/statuses": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz",
+ "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==",
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/string_decoder": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
+ "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
+ "dependencies": {
+ "safe-buffer": "~5.2.0"
+ }
+ },
+ "node_modules/text-hex": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/text-hex/-/text-hex-1.0.0.tgz",
+ "integrity": "sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg=="
+ },
+ "node_modules/toidentifier": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz",
+ "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==",
+ "engines": {
+ "node": ">=0.6"
+ }
+ },
+ "node_modules/triple-beam": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/triple-beam/-/triple-beam-1.4.1.tgz",
+ "integrity": "sha512-aZbgViZrg1QNcG+LULa7nhZpJTZSLm/mXnHXnbAbjmN5aSa0y7V+wvv6+4WaBtpISJzThKy+PIPxc1Nq1EJ9mg==",
+ "engines": {
+ "node": ">= 14.0.0"
+ }
+ },
+ "node_modules/type-is": {
+ "version": "1.6.18",
+ "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz",
+ "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==",
+ "dependencies": {
+ "media-typer": "0.3.0",
+ "mime-types": "~2.1.24"
+ },
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/undici-types": {
+ "version": "5.26.5",
+ "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz",
+ "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA=="
+ },
+ "node_modules/unpipe": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
+ "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==",
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/util-deprecate": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
+ "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw=="
+ },
+ "node_modules/utils-merge": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz",
+ "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==",
+ "engines": {
+ "node": ">= 0.4.0"
+ }
+ },
+ "node_modules/uuid": {
+ "version": "9.0.1",
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz",
+ "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==",
+ "funding": [
+ "https://github.com/sponsors/broofa",
+ "https://github.com/sponsors/ctavan"
+ ],
+ "bin": {
+ "uuid": "dist/bin/uuid"
+ }
+ },
+ "node_modules/vary": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
+ "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==",
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/winston": {
+ "version": "3.13.0",
+ "resolved": "https://registry.npmjs.org/winston/-/winston-3.13.0.tgz",
+ "integrity": "sha512-rwidmA1w3SE4j0E5MuIufFhyJPBDG7Nu71RkZor1p2+qHvJSZ9GYDA81AyleQcZbh/+V6HjeBdfnTZJm9rSeQQ==",
+ "dependencies": {
+ "@colors/colors": "^1.6.0",
+ "@dabh/diagnostics": "^2.0.2",
+ "async": "^3.2.3",
+ "is-stream": "^2.0.0",
+ "logform": "^2.4.0",
+ "one-time": "^1.0.0",
+ "readable-stream": "^3.4.0",
+ "safe-stable-stringify": "^2.3.1",
+ "stack-trace": "0.0.x",
+ "triple-beam": "^1.3.0",
+ "winston-transport": "^4.7.0"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/winston-transport": {
+ "version": "4.7.0",
+ "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.7.0.tgz",
+ "integrity": "sha512-ajBj65K5I7denzer2IYW6+2bNIVqLGDHqDw3Ow8Ohh+vdW+rv4MZ6eiDvHoKhfJFZ2auyN8byXieDDJ96ViONg==",
+ "dependencies": {
+ "logform": "^2.3.2",
+ "readable-stream": "^3.6.0",
+ "triple-beam": "^1.3.0"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/ws": {
+ "version": "8.11.0",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz",
+ "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==",
+ "engines": {
+ "node": ">=10.0.0"
+ },
+ "peerDependencies": {
+ "bufferutil": "^4.0.1",
+ "utf-8-validate": "^5.0.2"
+ },
+ "peerDependenciesMeta": {
+ "bufferutil": {
+ "optional": true
+ },
+ "utf-8-validate": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/yaml": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.4.1.tgz",
+ "integrity": "sha512-pIXzoImaqmfOrL7teGUBt/T7ZDnyeGBWyXQBvOVhLkWLN37GXv8NMLK406UY6dS51JfcQHsmcW5cJ441bHg6Lg==",
+ "bin": {
+ "yaml": "bin.mjs"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ }
+ }
+}
diff --git a/package.json b/package.json
new file mode 100644
index 0000000..8011c2b
--- /dev/null
+++ b/package.json
@@ -0,0 +1,13 @@
+{
+ "dependencies": {
+ "axios": "^1.6.8",
+ "cors": "^2.8.5",
+ "express": "^4.18.2",
+ "msgpack-lite": "^0.1.26",
+ "readline": "^1.3.0",
+ "socket.io": "^4.7.2",
+ "uuid": "^9.0.1",
+ "winston": "^3.13.0",
+ "yaml": "^2.4.1"
+ }
+}
diff --git a/public/denied.html b/public/denied.html
new file mode 100644
index 0000000..cd74f24
--- /dev/null
+++ b/public/denied.html
@@ -0,0 +1,52 @@
+
+
+
+
+
+
+
+ Collavas - Mobile Access Denied
+
+
+
+
+
+
+
COLLAVAS Web is not supported on mobile devices.
+
+
+
\ No newline at end of file
diff --git a/public/index.html b/public/index.html
new file mode 100644
index 0000000..34b85b9
--- /dev/null
+++ b/public/index.html
@@ -0,0 +1,113 @@
+
+
+
+
+
+ Collavas
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Welcome to
+
Collavas is a free canvas with no rules, we allow users to draw what ever they want on our 10000x10000 canvas, viewable and editible by anyone on the web since March 19th, 2024. This project was made possible by the Aesthetiful.com infrastructure.
+
This project is in its early stages of development, if there are any bugs please report it to our Discord Server .
+
v0.1.4 update
+
Increased chat limitations Loading older chats Server shutting down randomly is fixed
+
close
+
+
+
+
+
+
+ Toggle UI
+ Reset View
+
+
+
+
+
Connected Clients: N/A
+
+
+
+
+
+
+
Collavas WEB © 2024 All rights reserved.
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/public/old/index.php b/public/old/index.php
new file mode 100644
index 0000000..1374270
--- /dev/null
+++ b/public/old/index.php
@@ -0,0 +1,20 @@
+
\ No newline at end of file
diff --git a/public/old/main.html b/public/old/main.html
new file mode 100644
index 0000000..c61ecd0
--- /dev/null
+++ b/public/old/main.html
@@ -0,0 +1,104 @@
+
+
+
+
+
+ Canvas Drawing
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/public/static/audio/b9c22cf3-8972-4c8a-821b-71a96fa6aa46.mp3 b/public/static/audio/b9c22cf3-8972-4c8a-821b-71a96fa6aa46.mp3
new file mode 100644
index 0000000..362c0fc
Binary files /dev/null and b/public/static/audio/b9c22cf3-8972-4c8a-821b-71a96fa6aa46.mp3 differ
diff --git a/public/static/css/icons-nVhE2N.css b/public/static/css/icons-nVhE2N.css
new file mode 100644
index 0000000..60871ad
--- /dev/null
+++ b/public/static/css/icons-nVhE2N.css
@@ -0,0 +1,2 @@
+/*!* Font Awesome Pro 5.10.1 by @fontawesome - https://fontawesome.com
+* License - https://fontawesome.com/license (Commercial License)*/.fa,.fab,.fad,.fal,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.fa-pulse{-webkit-animation:fa-spin 1s steps(8) infinite;animation:fa-spin 1s steps(8) infinite}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}:root .fa-flip-both,:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-500px:before{content:"\f26e"}.fa-abacus:before{content:"\f640"}.fa-accessible-icon:before{content:"\f368"}.fa-accusoft:before{content:"\f369"}.fa-acorn:before{content:"\f6ae"}.fa-acquisitions-incorporated:before{content:"\f6af"}.fa-ad:before{content:"\f641"}.fa-address-book:before{content:"\f2b9"}.fa-address-card:before{content:"\f2bb"}.fa-adjust:before{content:"\f042"}.fa-adn:before{content:"\f170"}.fa-adobe:before{content:"\f778"}.fa-adversal:before{content:"\f36a"}.fa-affiliatetheme:before{content:"\f36b"}.fa-air-freshener:before{content:"\f5d0"}.fa-airbnb:before{content:"\f834"}.fa-alarm-clock:before{content:"\f34e"}.fa-alarm-exclamation:before{content:"\f843"}.fa-alarm-plus:before{content:"\f844"}.fa-alarm-snooze:before{content:"\f845"}.fa-algolia:before{content:"\f36c"}.fa-alicorn:before{content:"\f6b0"}.fa-align-center:before{content:"\f037"}.fa-align-justify:before{content:"\f039"}.fa-align-left:before{content:"\f036"}.fa-align-right:before{content:"\f038"}.fa-align-slash:before{content:"\f846"}.fa-alipay:before{content:"\f642"}.fa-allergies:before{content:"\f461"}.fa-amazon:before{content:"\f270"}.fa-amazon-pay:before{content:"\f42c"}.fa-ambulance:before{content:"\f0f9"}.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-amilia:before{content:"\f36d"}.fa-analytics:before{content:"\f643"}.fa-anchor:before{content:"\f13d"}.fa-android:before{content:"\f17b"}.fa-angel:before{content:"\f779"}.fa-angellist:before{content:"\f209"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-down:before{content:"\f107"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angry:before{content:"\f556"}.fa-angrycreative:before{content:"\f36e"}.fa-angular:before{content:"\f420"}.fa-ankh:before{content:"\f644"}.fa-app-store:before{content:"\f36f"}.fa-app-store-ios:before{content:"\f370"}.fa-apper:before{content:"\f371"}.fa-apple:before{content:"\f179"}.fa-apple-alt:before{content:"\f5d1"}.fa-apple-crate:before{content:"\f6b1"}.fa-apple-pay:before{content:"\f415"}.fa-archive:before{content:"\f187"}.fa-archway:before{content:"\f557"}.fa-arrow-alt-circle-down:before{content:"\f358"}.fa-arrow-alt-circle-left:before{content:"\f359"}.fa-arrow-alt-circle-right:before{content:"\f35a"}.fa-arrow-alt-circle-up:before{content:"\f35b"}.fa-arrow-alt-down:before{content:"\f354"}.fa-arrow-alt-from-bottom:before{content:"\f346"}.fa-arrow-alt-from-left:before{content:"\f347"}.fa-arrow-alt-from-right:before{content:"\f348"}.fa-arrow-alt-from-top:before{content:"\f349"}.fa-arrow-alt-left:before{content:"\f355"}.fa-arrow-alt-right:before{content:"\f356"}.fa-arrow-alt-square-down:before{content:"\f350"}.fa-arrow-alt-square-left:before{content:"\f351"}.fa-arrow-alt-square-right:before{content:"\f352"}.fa-arrow-alt-square-up:before{content:"\f353"}.fa-arrow-alt-to-bottom:before{content:"\f34a"}.fa-arrow-alt-to-left:before{content:"\f34b"}.fa-arrow-alt-to-right:before{content:"\f34c"}.fa-arrow-alt-to-top:before{content:"\f34d"}.fa-arrow-alt-up:before{content:"\f357"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-down:before{content:"\f063"}.fa-arrow-from-bottom:before{content:"\f342"}.fa-arrow-from-left:before{content:"\f343"}.fa-arrow-from-right:before{content:"\f344"}.fa-arrow-from-top:before{content:"\f345"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-square-down:before{content:"\f339"}.fa-arrow-square-left:before{content:"\f33a"}.fa-arrow-square-right:before{content:"\f33b"}.fa-arrow-square-up:before{content:"\f33c"}.fa-arrow-to-bottom:before{content:"\f33d"}.fa-arrow-to-left:before{content:"\f33e"}.fa-arrow-to-right:before{content:"\f340"}.fa-arrow-to-top:before{content:"\f341"}.fa-arrow-up:before{content:"\f062"}.fa-arrows:before{content:"\f047"}.fa-arrows-alt:before{content:"\f0b2"}.fa-arrows-alt-h:before{content:"\f337"}.fa-arrows-alt-v:before{content:"\f338"}.fa-arrows-h:before{content:"\f07e"}.fa-arrows-v:before{content:"\f07d"}.fa-artstation:before{content:"\f77a"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asterisk:before{content:"\f069"}.fa-asymmetrik:before{content:"\f372"}.fa-at:before{content:"\f1fa"}.fa-atlas:before{content:"\f558"}.fa-atlassian:before{content:"\f77b"}.fa-atom:before{content:"\f5d2"}.fa-atom-alt:before{content:"\f5d3"}.fa-audible:before{content:"\f373"}.fa-audio-description:before{content:"\f29e"}.fa-autoprefixer:before{content:"\f41c"}.fa-avianex:before{content:"\f374"}.fa-aviato:before{content:"\f421"}.fa-award:before{content:"\f559"}.fa-aws:before{content:"\f375"}.fa-axe:before{content:"\f6b2"}.fa-axe-battle:before{content:"\f6b3"}.fa-baby:before{content:"\f77c"}.fa-baby-carriage:before{content:"\f77d"}.fa-backpack:before{content:"\f5d4"}.fa-backspace:before{content:"\f55a"}.fa-backward:before{content:"\f04a"}.fa-bacon:before{content:"\f7e5"}.fa-badge:before{content:"\f335"}.fa-badge-check:before{content:"\f336"}.fa-badge-dollar:before{content:"\f645"}.fa-badge-percent:before{content:"\f646"}.fa-badger-honey:before{content:"\f6b4"}.fa-bags-shopping:before{content:"\f847"}.fa-balance-scale:before{content:"\f24e"}.fa-balance-scale-left:before{content:"\f515"}.fa-balance-scale-right:before{content:"\f516"}.fa-ball-pile:before{content:"\f77e"}.fa-ballot:before{content:"\f732"}.fa-ballot-check:before{content:"\f733"}.fa-ban:before{content:"\f05e"}.fa-band-aid:before{content:"\f462"}.fa-bandcamp:before{content:"\f2d5"}.fa-barcode:before{content:"\f02a"}.fa-barcode-alt:before{content:"\f463"}.fa-barcode-read:before{content:"\f464"}.fa-barcode-scan:before{content:"\f465"}.fa-bars:before{content:"\f0c9"}.fa-baseball:before{content:"\f432"}.fa-baseball-ball:before{content:"\f433"}.fa-basketball-ball:before{content:"\f434"}.fa-basketball-hoop:before{content:"\f435"}.fa-bat:before{content:"\f6b5"}.fa-bath:before{content:"\f2cd"}.fa-battery-bolt:before{content:"\f376"}.fa-battery-empty:before{content:"\f244"}.fa-battery-full:before{content:"\f240"}.fa-battery-half:before{content:"\f242"}.fa-battery-quarter:before{content:"\f243"}.fa-battery-slash:before{content:"\f377"}.fa-battery-three-quarters:before{content:"\f241"}.fa-battle-net:before{content:"\f835"}.fa-bed:before{content:"\f236"}.fa-beer:before{content:"\f0fc"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-bell:before{content:"\f0f3"}.fa-bell-exclamation:before{content:"\f848"}.fa-bell-plus:before{content:"\f849"}.fa-bell-school:before{content:"\f5d5"}.fa-bell-school-slash:before{content:"\f5d6"}.fa-bell-slash:before{content:"\f1f6"}.fa-bells:before{content:"\f77f"}.fa-bezier-curve:before{content:"\f55b"}.fa-bible:before{content:"\f647"}.fa-bicycle:before{content:"\f206"}.fa-biking:before{content:"\f84a"}.fa-biking-mountain:before{content:"\f84b"}.fa-bimobject:before{content:"\f378"}.fa-binoculars:before{content:"\f1e5"}.fa-biohazard:before{content:"\f780"}.fa-birthday-cake:before{content:"\f1fd"}.fa-bitbucket:before{content:"\f171"}.fa-bitcoin:before{content:"\f379"}.fa-bity:before{content:"\f37a"}.fa-black-tie:before{content:"\f27e"}.fa-blackberry:before{content:"\f37b"}.fa-blanket:before{content:"\f498"}.fa-blender:before{content:"\f517"}.fa-blender-phone:before{content:"\f6b6"}.fa-blind:before{content:"\f29d"}.fa-blog:before{content:"\f781"}.fa-blogger:before{content:"\f37c"}.fa-blogger-b:before{content:"\f37d"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-bold:before{content:"\f032"}.fa-bolt:before{content:"\f0e7"}.fa-bomb:before{content:"\f1e2"}.fa-bone:before{content:"\f5d7"}.fa-bone-break:before{content:"\f5d8"}.fa-bong:before{content:"\f55c"}.fa-book:before{content:"\f02d"}.fa-book-alt:before{content:"\f5d9"}.fa-book-dead:before{content:"\f6b7"}.fa-book-heart:before{content:"\f499"}.fa-book-medical:before{content:"\f7e6"}.fa-book-open:before{content:"\f518"}.fa-book-reader:before{content:"\f5da"}.fa-book-spells:before{content:"\f6b8"}.fa-book-user:before{content:"\f7e7"}.fa-bookmark:before{content:"\f02e"}.fa-books:before{content:"\f5db"}.fa-books-medical:before{content:"\f7e8"}.fa-boot:before{content:"\f782"}.fa-booth-curtain:before{content:"\f734"}.fa-bootstrap:before{content:"\f836"}.fa-border-all:before{content:"\f84c"}.fa-border-bottom:before{content:"\f84d"}.fa-border-center-h:before{content:"\f89c"}.fa-border-center-v:before{content:"\f89d"}.fa-border-inner:before{content:"\f84e"}.fa-border-left:before{content:"\f84f"}.fa-border-none:before{content:"\f850"}.fa-border-outer:before{content:"\f851"}.fa-border-right:before{content:"\f852"}.fa-border-style:before{content:"\f853"}.fa-border-style-alt:before{content:"\f854"}.fa-border-top:before{content:"\f855"}.fa-bow-arrow:before{content:"\f6b9"}.fa-bowling-ball:before{content:"\f436"}.fa-bowling-pins:before{content:"\f437"}.fa-box:before{content:"\f466"}.fa-box-alt:before{content:"\f49a"}.fa-box-ballot:before{content:"\f735"}.fa-box-check:before{content:"\f467"}.fa-box-fragile:before{content:"\f49b"}.fa-box-full:before{content:"\f49c"}.fa-box-heart:before{content:"\f49d"}.fa-box-open:before{content:"\f49e"}.fa-box-up:before{content:"\f49f"}.fa-box-usd:before{content:"\f4a0"}.fa-boxes:before{content:"\f468"}.fa-boxes-alt:before{content:"\f4a1"}.fa-boxing-glove:before{content:"\f438"}.fa-brackets:before{content:"\f7e9"}.fa-brackets-curly:before{content:"\f7ea"}.fa-braille:before{content:"\f2a1"}.fa-brain:before{content:"\f5dc"}.fa-bread-loaf:before{content:"\f7eb"}.fa-bread-slice:before{content:"\f7ec"}.fa-briefcase:before{content:"\f0b1"}.fa-briefcase-medical:before{content:"\f469"}.fa-bring-forward:before{content:"\f856"}.fa-bring-front:before{content:"\f857"}.fa-broadcast-tower:before{content:"\f519"}.fa-broom:before{content:"\f51a"}.fa-browser:before{content:"\f37e"}.fa-brush:before{content:"\f55d"}.fa-btc:before{content:"\f15a"}.fa-buffer:before{content:"\f837"}.fa-bug:before{content:"\f188"}.fa-building:before{content:"\f1ad"}.fa-bullhorn:before{content:"\f0a1"}.fa-bullseye:before{content:"\f140"}.fa-bullseye-arrow:before{content:"\f648"}.fa-bullseye-pointer:before{content:"\f649"}.fa-burger-soda:before{content:"\f858"}.fa-burn:before{content:"\f46a"}.fa-buromobelexperte:before{content:"\f37f"}.fa-burrito:before{content:"\f7ed"}.fa-bus:before{content:"\f207"}.fa-bus-alt:before{content:"\f55e"}.fa-bus-school:before{content:"\f5dd"}.fa-business-time:before{content:"\f64a"}.fa-buysellads:before{content:"\f20d"}.fa-cabinet-filing:before{content:"\f64b"}.fa-calculator:before{content:"\f1ec"}.fa-calculator-alt:before{content:"\f64c"}.fa-calendar:before{content:"\f133"}.fa-calendar-alt:before{content:"\f073"}.fa-calendar-check:before{content:"\f274"}.fa-calendar-day:before{content:"\f783"}.fa-calendar-edit:before{content:"\f333"}.fa-calendar-exclamation:before{content:"\f334"}.fa-calendar-minus:before{content:"\f272"}.fa-calendar-plus:before{content:"\f271"}.fa-calendar-star:before{content:"\f736"}.fa-calendar-times:before{content:"\f273"}.fa-calendar-week:before{content:"\f784"}.fa-camera:before{content:"\f030"}.fa-camera-alt:before{content:"\f332"}.fa-camera-retro:before{content:"\f083"}.fa-campfire:before{content:"\f6ba"}.fa-campground:before{content:"\f6bb"}.fa-canadian-maple-leaf:before{content:"\f785"}.fa-candle-holder:before{content:"\f6bc"}.fa-candy-cane:before{content:"\f786"}.fa-candy-corn:before{content:"\f6bd"}.fa-cannabis:before{content:"\f55f"}.fa-capsules:before{content:"\f46b"}.fa-car:before{content:"\f1b9"}.fa-car-alt:before{content:"\f5de"}.fa-car-battery:before{content:"\f5df"}.fa-car-building:before{content:"\f859"}.fa-car-bump:before{content:"\f5e0"}.fa-car-bus:before{content:"\f85a"}.fa-car-crash:before{content:"\f5e1"}.fa-car-garage:before{content:"\f5e2"}.fa-car-mechanic:before{content:"\f5e3"}.fa-car-side:before{content:"\f5e4"}.fa-car-tilt:before{content:"\f5e5"}.fa-car-wash:before{content:"\f5e6"}.fa-caret-circle-down:before{content:"\f32d"}.fa-caret-circle-left:before{content:"\f32e"}.fa-caret-circle-right:before{content:"\f330"}.fa-caret-circle-up:before{content:"\f331"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-caret-square-down:before{content:"\f150"}.fa-caret-square-left:before{content:"\f191"}.fa-caret-square-right:before{content:"\f152"}.fa-caret-square-up:before{content:"\f151"}.fa-caret-up:before{content:"\f0d8"}.fa-carrot:before{content:"\f787"}.fa-cars:before{content:"\f85b"}.fa-cart-arrow-down:before{content:"\f218"}.fa-cart-plus:before{content:"\f217"}.fa-cash-register:before{content:"\f788"}.fa-cat:before{content:"\f6be"}.fa-cauldron:before{content:"\f6bf"}.fa-cc-amazon-pay:before{content:"\f42d"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-apple-pay:before{content:"\f416"}.fa-cc-diners-club:before{content:"\f24c"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-cc-visa:before{content:"\f1f0"}.fa-centercode:before{content:"\f380"}.fa-centos:before{content:"\f789"}.fa-certificate:before{content:"\f0a3"}.fa-chair:before{content:"\f6c0"}.fa-chair-office:before{content:"\f6c1"}.fa-chalkboard:before{content:"\f51b"}.fa-chalkboard-teacher:before{content:"\f51c"}.fa-charging-station:before{content:"\f5e7"}.fa-chart-area:before{content:"\f1fe"}.fa-chart-bar:before{content:"\f080"}.fa-chart-line:before{content:"\f201"}.fa-chart-line-down:before{content:"\f64d"}.fa-chart-network:before{content:"\f78a"}.fa-chart-pie:before{content:"\f200"}.fa-chart-pie-alt:before{content:"\f64e"}.fa-chart-scatter:before{content:"\f7ee"}.fa-check:before{content:"\f00c"}.fa-check-circle:before{content:"\f058"}.fa-check-double:before{content:"\f560"}.fa-check-square:before{content:"\f14a"}.fa-cheese:before{content:"\f7ef"}.fa-cheese-swiss:before{content:"\f7f0"}.fa-cheeseburger:before{content:"\f7f1"}.fa-chess:before{content:"\f439"}.fa-chess-bishop:before{content:"\f43a"}.fa-chess-bishop-alt:before{content:"\f43b"}.fa-chess-board:before{content:"\f43c"}.fa-chess-clock:before{content:"\f43d"}.fa-chess-clock-alt:before{content:"\f43e"}.fa-chess-king:before{content:"\f43f"}.fa-chess-king-alt:before{content:"\f440"}.fa-chess-knight:before{content:"\f441"}.fa-chess-knight-alt:before{content:"\f442"}.fa-chess-pawn:before{content:"\f443"}.fa-chess-pawn-alt:before{content:"\f444"}.fa-chess-queen:before{content:"\f445"}.fa-chess-queen-alt:before{content:"\f446"}.fa-chess-rook:before{content:"\f447"}.fa-chess-rook-alt:before{content:"\f448"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-double-down:before{content:"\f322"}.fa-chevron-double-left:before{content:"\f323"}.fa-chevron-double-right:before{content:"\f324"}.fa-chevron-double-up:before{content:"\f325"}.fa-chevron-down:before{content:"\f078"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-chevron-square-down:before{content:"\f329"}.fa-chevron-square-left:before{content:"\f32a"}.fa-chevron-square-right:before{content:"\f32b"}.fa-chevron-square-up:before{content:"\f32c"}.fa-chevron-up:before{content:"\f077"}.fa-child:before{content:"\f1ae"}.fa-chimney:before{content:"\f78b"}.fa-chrome:before{content:"\f268"}.fa-chromecast:before{content:"\f838"}.fa-church:before{content:"\f51d"}.fa-circle:before{content:"\f111"}.fa-circle-notch:before{content:"\f1ce"}.fa-city:before{content:"\f64f"}.fa-claw-marks:before{content:"\f6c2"}.fa-clinic-medical:before{content:"\f7f2"}.fa-clipboard:before{content:"\f328"}.fa-clipboard-check:before{content:"\f46c"}.fa-clipboard-list:before{content:"\f46d"}.fa-clipboard-list-check:before{content:"\f737"}.fa-clipboard-prescription:before{content:"\f5e8"}.fa-clipboard-user:before{content:"\f7f3"}.fa-clock:before{content:"\f017"}.fa-clone:before{content:"\f24d"}.fa-closed-captioning:before{content:"\f20a"}.fa-cloud:before{content:"\f0c2"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-download-alt:before{content:"\f381"}.fa-cloud-drizzle:before{content:"\f738"}.fa-cloud-hail:before{content:"\f739"}.fa-cloud-hail-mixed:before{content:"\f73a"}.fa-cloud-meatball:before{content:"\f73b"}.fa-cloud-moon:before{content:"\f6c3"}.fa-cloud-moon-rain:before{content:"\f73c"}.fa-cloud-rain:before{content:"\f73d"}.fa-cloud-rainbow:before{content:"\f73e"}.fa-cloud-showers:before{content:"\f73f"}.fa-cloud-showers-heavy:before{content:"\f740"}.fa-cloud-sleet:before{content:"\f741"}.fa-cloud-snow:before{content:"\f742"}.fa-cloud-sun:before{content:"\f6c4"}.fa-cloud-sun-rain:before{content:"\f743"}.fa-cloud-upload:before{content:"\f0ee"}.fa-cloud-upload-alt:before{content:"\f382"}.fa-clouds:before{content:"\f744"}.fa-clouds-moon:before{content:"\f745"}.fa-clouds-sun:before{content:"\f746"}.fa-cloudscale:before{content:"\f383"}.fa-cloudsmith:before{content:"\f384"}.fa-cloudversify:before{content:"\f385"}.fa-club:before{content:"\f327"}.fa-cocktail:before{content:"\f561"}.fa-code:before{content:"\f121"}.fa-code-branch:before{content:"\f126"}.fa-code-commit:before{content:"\f386"}.fa-code-merge:before{content:"\f387"}.fa-codepen:before{content:"\f1cb"}.fa-codiepie:before{content:"\f284"}.fa-coffee:before{content:"\f0f4"}.fa-coffee-togo:before{content:"\f6c5"}.fa-coffin:before{content:"\f6c6"}.fa-cog:before{content:"\f013"}.fa-cogs:before{content:"\f085"}.fa-coin:before{content:"\f85c"}.fa-coins:before{content:"\f51e"}.fa-columns:before{content:"\f0db"}.fa-comment:before{content:"\f075"}.fa-comment-alt:before{content:"\f27a"}.fa-comment-alt-check:before{content:"\f4a2"}.fa-comment-alt-dollar:before{content:"\f650"}.fa-comment-alt-dots:before{content:"\f4a3"}.fa-comment-alt-edit:before{content:"\f4a4"}.fa-comment-alt-exclamation:before{content:"\f4a5"}.fa-comment-alt-lines:before{content:"\f4a6"}.fa-comment-alt-medical:before{content:"\f7f4"}.fa-comment-alt-minus:before{content:"\f4a7"}.fa-comment-alt-plus:before{content:"\f4a8"}.fa-comment-alt-slash:before{content:"\f4a9"}.fa-comment-alt-smile:before{content:"\f4aa"}.fa-comment-alt-times:before{content:"\f4ab"}.fa-comment-check:before{content:"\f4ac"}.fa-comment-dollar:before{content:"\f651"}.fa-comment-dots:before{content:"\f4ad"}.fa-comment-edit:before{content:"\f4ae"}.fa-comment-exclamation:before{content:"\f4af"}.fa-comment-lines:before{content:"\f4b0"}.fa-comment-medical:before{content:"\f7f5"}.fa-comment-minus:before{content:"\f4b1"}.fa-comment-plus:before{content:"\f4b2"}.fa-comment-slash:before{content:"\f4b3"}.fa-comment-smile:before{content:"\f4b4"}.fa-comment-times:before{content:"\f4b5"}.fa-comments:before{content:"\f086"}.fa-comments-alt:before{content:"\f4b6"}.fa-comments-alt-dollar:before{content:"\f652"}.fa-comments-dollar:before{content:"\f653"}.fa-compact-disc:before{content:"\f51f"}.fa-compass:before{content:"\f14e"}.fa-compass-slash:before{content:"\f5e9"}.fa-compress:before{content:"\f066"}.fa-compress-alt:before{content:"\f422"}.fa-compress-arrows-alt:before{content:"\f78c"}.fa-compress-wide:before{content:"\f326"}.fa-concierge-bell:before{content:"\f562"}.fa-confluence:before{content:"\f78d"}.fa-connectdevelop:before{content:"\f20e"}.fa-construction:before{content:"\f85d"}.fa-container-storage:before{content:"\f4b7"}.fa-contao:before{content:"\f26d"}.fa-conveyor-belt:before{content:"\f46e"}.fa-conveyor-belt-alt:before{content:"\f46f"}.fa-cookie:before{content:"\f563"}.fa-cookie-bite:before{content:"\f564"}.fa-copy:before{content:"\f0c5"}.fa-copyright:before{content:"\f1f9"}.fa-corn:before{content:"\f6c7"}.fa-cotton-bureau:before{content:"\f89e"}.fa-couch:before{content:"\f4b8"}.fa-cow:before{content:"\f6c8"}.fa-cpanel:before{content:"\f388"}.fa-creative-commons:before{content:"\f25e"}.fa-creative-commons-by:before{content:"\f4e7"}.fa-creative-commons-nc:before{content:"\f4e8"}.fa-creative-commons-nc-eu:before{content:"\f4e9"}.fa-creative-commons-nc-jp:before{content:"\f4ea"}.fa-creative-commons-nd:before{content:"\f4eb"}.fa-creative-commons-pd:before{content:"\f4ec"}.fa-creative-commons-pd-alt:before{content:"\f4ed"}.fa-creative-commons-remix:before{content:"\f4ee"}.fa-creative-commons-sa:before{content:"\f4ef"}.fa-creative-commons-sampling:before{content:"\f4f0"}.fa-creative-commons-sampling-plus:before{content:"\f4f1"}.fa-creative-commons-share:before{content:"\f4f2"}.fa-creative-commons-zero:before{content:"\f4f3"}.fa-credit-card:before{content:"\f09d"}.fa-credit-card-blank:before{content:"\f389"}.fa-credit-card-front:before{content:"\f38a"}.fa-cricket:before{content:"\f449"}.fa-critical-role:before{content:"\f6c9"}.fa-croissant:before{content:"\f7f6"}.fa-crop:before{content:"\f125"}.fa-crop-alt:before{content:"\f565"}.fa-cross:before{content:"\f654"}.fa-crosshairs:before{content:"\f05b"}.fa-crow:before{content:"\f520"}.fa-crown:before{content:"\f521"}.fa-crutch:before{content:"\f7f7"}.fa-crutches:before{content:"\f7f8"}.fa-css3:before{content:"\f13c"}.fa-css3-alt:before{content:"\f38b"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-curling:before{content:"\f44a"}.fa-cut:before{content:"\f0c4"}.fa-cuttlefish:before{content:"\f38c"}.fa-d-and-d:before{content:"\f38d"}.fa-d-and-d-beyond:before{content:"\f6ca"}.fa-dagger:before{content:"\f6cb"}.fa-dashcube:before{content:"\f210"}.fa-database:before{content:"\f1c0"}.fa-deaf:before{content:"\f2a4"}.fa-debug:before{content:"\f7f9"}.fa-deer:before{content:"\f78e"}.fa-deer-rudolph:before{content:"\f78f"}.fa-delicious:before{content:"\f1a5"}.fa-democrat:before{content:"\f747"}.fa-deploydog:before{content:"\f38e"}.fa-deskpro:before{content:"\f38f"}.fa-desktop:before{content:"\f108"}.fa-desktop-alt:before{content:"\f390"}.fa-dev:before{content:"\f6cc"}.fa-deviantart:before{content:"\f1bd"}.fa-dewpoint:before{content:"\f748"}.fa-dharmachakra:before{content:"\f655"}.fa-dhl:before{content:"\f790"}.fa-diagnoses:before{content:"\f470"}.fa-diamond:before{content:"\f219"}.fa-diaspora:before{content:"\f791"}.fa-dice:before{content:"\f522"}.fa-dice-d10:before{content:"\f6cd"}.fa-dice-d12:before{content:"\f6ce"}.fa-dice-d20:before{content:"\f6cf"}.fa-dice-d4:before{content:"\f6d0"}.fa-dice-d6:before{content:"\f6d1"}.fa-dice-d8:before{content:"\f6d2"}.fa-dice-five:before{content:"\f523"}.fa-dice-four:before{content:"\f524"}.fa-dice-one:before{content:"\f525"}.fa-dice-six:before{content:"\f526"}.fa-dice-three:before{content:"\f527"}.fa-dice-two:before{content:"\f528"}.fa-digg:before{content:"\f1a6"}.fa-digging:before{content:"\f85e"}.fa-digital-ocean:before{content:"\f391"}.fa-digital-tachograph:before{content:"\f566"}.fa-diploma:before{content:"\f5ea"}.fa-directions:before{content:"\f5eb"}.fa-discord:before{content:"\f392"}.fa-discourse:before{content:"\f393"}.fa-disease:before{content:"\f7fa"}.fa-divide:before{content:"\f529"}.fa-dizzy:before{content:"\f567"}.fa-dna:before{content:"\f471"}.fa-do-not-enter:before{content:"\f5ec"}.fa-dochub:before{content:"\f394"}.fa-docker:before{content:"\f395"}.fa-dog:before{content:"\f6d3"}.fa-dog-leashed:before{content:"\f6d4"}.fa-dollar-sign:before{content:"\f155"}.fa-dolly:before{content:"\f472"}.fa-dolly-empty:before{content:"\f473"}.fa-dolly-flatbed:before{content:"\f474"}.fa-dolly-flatbed-alt:before{content:"\f475"}.fa-dolly-flatbed-empty:before{content:"\f476"}.fa-donate:before{content:"\f4b9"}.fa-door-closed:before{content:"\f52a"}.fa-door-open:before{content:"\f52b"}.fa-dot-circle:before{content:"\f192"}.fa-dove:before{content:"\f4ba"}.fa-download:before{content:"\f019"}.fa-draft2digital:before{content:"\f396"}.fa-drafting-compass:before{content:"\f568"}.fa-dragon:before{content:"\f6d5"}.fa-draw-circle:before{content:"\f5ed"}.fa-draw-polygon:before{content:"\f5ee"}.fa-draw-square:before{content:"\f5ef"}.fa-dreidel:before{content:"\f792"}.fa-dribbble:before{content:"\f17d"}.fa-dribbble-square:before{content:"\f397"}.fa-drone:before{content:"\f85f"}.fa-drone-alt:before{content:"\f860"}.fa-dropbox:before{content:"\f16b"}.fa-drum:before{content:"\f569"}.fa-drum-steelpan:before{content:"\f56a"}.fa-drumstick:before{content:"\f6d6"}.fa-drumstick-bite:before{content:"\f6d7"}.fa-drupal:before{content:"\f1a9"}.fa-dryer:before{content:"\f861"}.fa-dryer-alt:before{content:"\f862"}.fa-duck:before{content:"\f6d8"}.fa-dumbbell:before{content:"\f44b"}.fa-dumpster:before{content:"\f793"}.fa-dumpster-fire:before{content:"\f794"}.fa-dungeon:before{content:"\f6d9"}.fa-dyalog:before{content:"\f399"}.fa-ear:before{content:"\f5f0"}.fa-ear-muffs:before{content:"\f795"}.fa-earlybirds:before{content:"\f39a"}.fa-ebay:before{content:"\f4f4"}.fa-eclipse:before{content:"\f749"}.fa-eclipse-alt:before{content:"\f74a"}.fa-edge:before{content:"\f282"}.fa-edit:before{content:"\f044"}.fa-egg:before{content:"\f7fb"}.fa-egg-fried:before{content:"\f7fc"}.fa-eject:before{content:"\f052"}.fa-elementor:before{content:"\f430"}.fa-elephant:before{content:"\f6da"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-h-alt:before{content:"\f39b"}.fa-ellipsis-v:before{content:"\f142"}.fa-ellipsis-v-alt:before{content:"\f39c"}.fa-ello:before{content:"\f5f1"}.fa-ember:before{content:"\f423"}.fa-empire:before{content:"\f1d1"}.fa-empty-set:before{content:"\f656"}.fa-engine-warning:before{content:"\f5f2"}.fa-envelope:before{content:"\f0e0"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-dollar:before{content:"\f657"}.fa-envelope-open-text:before{content:"\f658"}.fa-envelope-square:before{content:"\f199"}.fa-envira:before{content:"\f299"}.fa-equals:before{content:"\f52c"}.fa-eraser:before{content:"\f12d"}.fa-erlang:before{content:"\f39d"}.fa-ethereum:before{content:"\f42e"}.fa-ethernet:before{content:"\f796"}.fa-etsy:before{content:"\f2d7"}.fa-euro-sign:before{content:"\f153"}.fa-evernote:before{content:"\f839"}.fa-exchange:before{content:"\f0ec"}.fa-exchange-alt:before{content:"\f362"}.fa-exclamation:before{content:"\f12a"}.fa-exclamation-circle:before{content:"\f06a"}.fa-exclamation-square:before{content:"\f321"}.fa-exclamation-triangle:before{content:"\f071"}.fa-expand:before{content:"\f065"}.fa-expand-alt:before{content:"\f424"}.fa-expand-arrows:before{content:"\f31d"}.fa-expand-arrows-alt:before{content:"\f31e"}.fa-expand-wide:before{content:"\f320"}.fa-expeditedssl:before{content:"\f23e"}.fa-external-link:before{content:"\f08e"}.fa-external-link-alt:before{content:"\f35d"}.fa-external-link-square:before{content:"\f14c"}.fa-external-link-square-alt:before{content:"\f360"}.fa-eye:before{content:"\f06e"}.fa-eye-dropper:before{content:"\f1fb"}.fa-eye-evil:before{content:"\f6db"}.fa-eye-slash:before{content:"\f070"}.fa-facebook:before{content:"\f09a"}.fa-facebook-f:before{content:"\f39e"}.fa-facebook-messenger:before{content:"\f39f"}.fa-facebook-square:before{content:"\f082"}.fa-fan:before{content:"\f863"}.fa-fantasy-flight-games:before{content:"\f6dc"}.fa-farm:before{content:"\f864"}.fa-fast-backward:before{content:"\f049"}.fa-fast-forward:before{content:"\f050"}.fa-fax:before{content:"\f1ac"}.fa-feather:before{content:"\f52d"}.fa-feather-alt:before{content:"\f56b"}.fa-fedex:before{content:"\f797"}.fa-fedora:before{content:"\f798"}.fa-female:before{content:"\f182"}.fa-field-hockey:before{content:"\f44c"}.fa-fighter-jet:before{content:"\f0fb"}.fa-figma:before{content:"\f799"}.fa-file:before{content:"\f15b"}.fa-file-alt:before{content:"\f15c"}.fa-file-archive:before{content:"\f1c6"}.fa-file-audio:before{content:"\f1c7"}.fa-file-certificate:before{content:"\f5f3"}.fa-file-chart-line:before{content:"\f659"}.fa-file-chart-pie:before{content:"\f65a"}.fa-file-check:before{content:"\f316"}.fa-file-code:before{content:"\f1c9"}.fa-file-contract:before{content:"\f56c"}.fa-file-csv:before{content:"\f6dd"}.fa-file-download:before{content:"\f56d"}.fa-file-edit:before{content:"\f31c"}.fa-file-excel:before{content:"\f1c3"}.fa-file-exclamation:before{content:"\f31a"}.fa-file-export:before{content:"\f56e"}.fa-file-image:before{content:"\f1c5"}.fa-file-import:before{content:"\f56f"}.fa-file-invoice:before{content:"\f570"}.fa-file-invoice-dollar:before{content:"\f571"}.fa-file-medical:before{content:"\f477"}.fa-file-medical-alt:before{content:"\f478"}.fa-file-minus:before{content:"\f318"}.fa-file-pdf:before{content:"\f1c1"}.fa-file-plus:before{content:"\f319"}.fa-file-powerpoint:before{content:"\f1c4"}.fa-file-prescription:before{content:"\f572"}.fa-file-search:before{content:"\f865"}.fa-file-signature:before{content:"\f573"}.fa-file-spreadsheet:before{content:"\f65b"}.fa-file-times:before{content:"\f317"}.fa-file-upload:before{content:"\f574"}.fa-file-user:before{content:"\f65c"}.fa-file-video:before{content:"\f1c8"}.fa-file-word:before{content:"\f1c2"}.fa-files-medical:before{content:"\f7fd"}.fa-fill:before{content:"\f575"}.fa-fill-drip:before{content:"\f576"}.fa-film:before{content:"\f008"}.fa-film-alt:before{content:"\f3a0"}.fa-filter:before{content:"\f0b0"}.fa-fingerprint:before{content:"\f577"}.fa-fire:before{content:"\f06d"}.fa-fire-alt:before{content:"\f7e4"}.fa-fire-extinguisher:before{content:"\f134"}.fa-fire-smoke:before{content:"\f74b"}.fa-firefox:before{content:"\f269"}.fa-fireplace:before{content:"\f79a"}.fa-first-aid:before{content:"\f479"}.fa-first-order:before{content:"\f2b0"}.fa-first-order-alt:before{content:"\f50a"}.fa-firstdraft:before{content:"\f3a1"}.fa-fish:before{content:"\f578"}.fa-fish-cooked:before{content:"\f7fe"}.fa-fist-raised:before{content:"\f6de"}.fa-flag:before{content:"\f024"}.fa-flag-alt:before{content:"\f74c"}.fa-flag-checkered:before{content:"\f11e"}.fa-flag-usa:before{content:"\f74d"}.fa-flame:before{content:"\f6df"}.fa-flask:before{content:"\f0c3"}.fa-flask-poison:before{content:"\f6e0"}.fa-flask-potion:before{content:"\f6e1"}.fa-flickr:before{content:"\f16e"}.fa-flipboard:before{content:"\f44d"}.fa-flower:before{content:"\f7ff"}.fa-flower-daffodil:before{content:"\f800"}.fa-flower-tulip:before{content:"\f801"}.fa-flushed:before{content:"\f579"}.fa-fly:before{content:"\f417"}.fa-fog:before{content:"\f74e"}.fa-folder:before{content:"\f07b"}.fa-folder-minus:before{content:"\f65d"}.fa-folder-open:before{content:"\f07c"}.fa-folder-plus:before{content:"\f65e"}.fa-folder-times:before{content:"\f65f"}.fa-folder-tree:before{content:"\f802"}.fa-folders:before{content:"\f660"}.fa-font:before{content:"\f031"}.fa-font-awesome:before{content:"\f2b4"}.fa-font-awesome-alt:before{content:"\f35c"}.fa-font-awesome-flag:before{content:"\f425"}.fa-font-awesome-logo-full:before{content:"\f4e6"}.fa-font-case:before{content:"\f866"}.fa-fonticons:before{content:"\f280"}.fa-fonticons-fi:before{content:"\f3a2"}.fa-football-ball:before{content:"\f44e"}.fa-football-helmet:before{content:"\f44f"}.fa-forklift:before{content:"\f47a"}.fa-fort-awesome:before{content:"\f286"}.fa-fort-awesome-alt:before{content:"\f3a3"}.fa-forumbee:before{content:"\f211"}.fa-forward:before{content:"\f04e"}.fa-foursquare:before{content:"\f180"}.fa-fragile:before{content:"\f4bb"}.fa-free-code-camp:before{content:"\f2c5"}.fa-freebsd:before{content:"\f3a4"}.fa-french-fries:before{content:"\f803"}.fa-frog:before{content:"\f52e"}.fa-frosty-head:before{content:"\f79b"}.fa-frown:before{content:"\f119"}.fa-frown-open:before{content:"\f57a"}.fa-fulcrum:before{content:"\f50b"}.fa-function:before{content:"\f661"}.fa-funnel-dollar:before{content:"\f662"}.fa-futbol:before{content:"\f1e3"}.fa-galactic-republic:before{content:"\f50c"}.fa-galactic-senate:before{content:"\f50d"}.fa-game-board:before{content:"\f867"}.fa-game-board-alt:before{content:"\f868"}.fa-gamepad:before{content:"\f11b"}.fa-gas-pump:before{content:"\f52f"}.fa-gas-pump-slash:before{content:"\f5f4"}.fa-gavel:before{content:"\f0e3"}.fa-gem:before{content:"\f3a5"}.fa-genderless:before{content:"\f22d"}.fa-get-pocket:before{content:"\f265"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-ghost:before{content:"\f6e2"}.fa-gift:before{content:"\f06b"}.fa-gift-card:before{content:"\f663"}.fa-gifts:before{content:"\f79c"}.fa-gingerbread-man:before{content:"\f79d"}.fa-git:before{content:"\f1d3"}.fa-git-alt:before{content:"\f841"}.fa-git-square:before{content:"\f1d2"}.fa-github:before{content:"\f09b"}.fa-github-alt:before{content:"\f113"}.fa-github-square:before{content:"\f092"}.fa-gitkraken:before{content:"\f3a6"}.fa-gitlab:before{content:"\f296"}.fa-gitter:before{content:"\f426"}.fa-glass:before{content:"\f804"}.fa-glass-champagne:before{content:"\f79e"}.fa-glass-cheers:before{content:"\f79f"}.fa-glass-citrus:before{content:"\f869"}.fa-glass-martini:before{content:"\f000"}.fa-glass-martini-alt:before{content:"\f57b"}.fa-glass-whiskey:before{content:"\f7a0"}.fa-glass-whiskey-rocks:before{content:"\f7a1"}.fa-glasses:before{content:"\f530"}.fa-glasses-alt:before{content:"\f5f5"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-globe:before{content:"\f0ac"}.fa-globe-africa:before{content:"\f57c"}.fa-globe-americas:before{content:"\f57d"}.fa-globe-asia:before{content:"\f57e"}.fa-globe-europe:before{content:"\f7a2"}.fa-globe-snow:before{content:"\f7a3"}.fa-globe-stand:before{content:"\f5f6"}.fa-gofore:before{content:"\f3a7"}.fa-golf-ball:before{content:"\f450"}.fa-golf-club:before{content:"\f451"}.fa-goodreads:before{content:"\f3a8"}.fa-goodreads-g:before{content:"\f3a9"}.fa-google:before{content:"\f1a0"}.fa-google-drive:before{content:"\f3aa"}.fa-google-play:before{content:"\f3ab"}.fa-google-plus:before{content:"\f2b3"}.fa-google-plus-g:before{content:"\f0d5"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-wallet:before{content:"\f1ee"}.fa-gopuram:before{content:"\f664"}.fa-graduation-cap:before{content:"\f19d"}.fa-gratipay:before{content:"\f184"}.fa-grav:before{content:"\f2d6"}.fa-greater-than:before{content:"\f531"}.fa-greater-than-equal:before{content:"\f532"}.fa-grimace:before{content:"\f57f"}.fa-grin:before{content:"\f580"}.fa-grin-alt:before{content:"\f581"}.fa-grin-beam:before{content:"\f582"}.fa-grin-beam-sweat:before{content:"\f583"}.fa-grin-hearts:before{content:"\f584"}.fa-grin-squint:before{content:"\f585"}.fa-grin-squint-tears:before{content:"\f586"}.fa-grin-stars:before{content:"\f587"}.fa-grin-tears:before{content:"\f588"}.fa-grin-tongue:before{content:"\f589"}.fa-grin-tongue-squint:before{content:"\f58a"}.fa-grin-tongue-wink:before{content:"\f58b"}.fa-grin-wink:before{content:"\f58c"}.fa-grip-horizontal:before{content:"\f58d"}.fa-grip-lines:before{content:"\f7a4"}.fa-grip-lines-vertical:before{content:"\f7a5"}.fa-grip-vertical:before{content:"\f58e"}.fa-gripfire:before{content:"\f3ac"}.fa-grunt:before{content:"\f3ad"}.fa-guitar:before{content:"\f7a6"}.fa-gulp:before{content:"\f3ae"}.fa-h-square:before{content:"\f0fd"}.fa-h1:before{content:"\f313"}.fa-h2:before{content:"\f314"}.fa-h3:before{content:"\f315"}.fa-h4:before{content:"\f86a"}.fa-hacker-news:before{content:"\f1d4"}.fa-hacker-news-square:before{content:"\f3af"}.fa-hackerrank:before{content:"\f5f7"}.fa-hamburger:before{content:"\f805"}.fa-hammer:before{content:"\f6e3"}.fa-hammer-war:before{content:"\f6e4"}.fa-hamsa:before{content:"\f665"}.fa-hand-heart:before{content:"\f4bc"}.fa-hand-holding:before{content:"\f4bd"}.fa-hand-holding-box:before{content:"\f47b"}.fa-hand-holding-heart:before{content:"\f4be"}.fa-hand-holding-magic:before{content:"\f6e5"}.fa-hand-holding-seedling:before{content:"\f4bf"}.fa-hand-holding-usd:before{content:"\f4c0"}.fa-hand-holding-water:before{content:"\f4c1"}.fa-hand-lizard:before{content:"\f258"}.fa-hand-middle-finger:before{content:"\f806"}.fa-hand-paper:before{content:"\f256"}.fa-hand-peace:before{content:"\f25b"}.fa-hand-point-down:before{content:"\f0a7"}.fa-hand-point-left:before{content:"\f0a5"}.fa-hand-point-right:before{content:"\f0a4"}.fa-hand-point-up:before{content:"\f0a6"}.fa-hand-pointer:before{content:"\f25a"}.fa-hand-receiving:before{content:"\f47c"}.fa-hand-rock:before{content:"\f255"}.fa-hand-scissors:before{content:"\f257"}.fa-hand-spock:before{content:"\f259"}.fa-hands:before{content:"\f4c2"}.fa-hands-heart:before{content:"\f4c3"}.fa-hands-helping:before{content:"\f4c4"}.fa-hands-usd:before{content:"\f4c5"}.fa-handshake:before{content:"\f2b5"}.fa-handshake-alt:before{content:"\f4c6"}.fa-hanukiah:before{content:"\f6e6"}.fa-hard-hat:before{content:"\f807"}.fa-hashtag:before{content:"\f292"}.fa-hat-chef:before{content:"\f86b"}.fa-hat-santa:before{content:"\f7a7"}.fa-hat-winter:before{content:"\f7a8"}.fa-hat-witch:before{content:"\f6e7"}.fa-hat-wizard:before{content:"\f6e8"}.fa-haykal:before{content:"\f666"}.fa-hdd:before{content:"\f0a0"}.fa-head-side:before{content:"\f6e9"}.fa-head-side-brain:before{content:"\f808"}.fa-head-side-medical:before{content:"\f809"}.fa-head-vr:before{content:"\f6ea"}.fa-heading:before{content:"\f1dc"}.fa-headphones:before{content:"\f025"}.fa-headphones-alt:before{content:"\f58f"}.fa-headset:before{content:"\f590"}.fa-heart:before{content:"\f004"}.fa-heart-broken:before{content:"\f7a9"}.fa-heart-circle:before{content:"\f4c7"}.fa-heart-rate:before{content:"\f5f8"}.fa-heart-square:before{content:"\f4c8"}.fa-heartbeat:before{content:"\f21e"}.fa-helicopter:before{content:"\f533"}.fa-helmet-battle:before{content:"\f6eb"}.fa-hexagon:before{content:"\f312"}.fa-highlighter:before{content:"\f591"}.fa-hiking:before{content:"\f6ec"}.fa-hippo:before{content:"\f6ed"}.fa-hips:before{content:"\f452"}.fa-hire-a-helper:before{content:"\f3b0"}.fa-history:before{content:"\f1da"}.fa-hockey-mask:before{content:"\f6ee"}.fa-hockey-puck:before{content:"\f453"}.fa-hockey-sticks:before{content:"\f454"}.fa-holly-berry:before{content:"\f7aa"}.fa-home:before{content:"\f015"}.fa-home-alt:before{content:"\f80a"}.fa-home-heart:before{content:"\f4c9"}.fa-home-lg:before{content:"\f80b"}.fa-home-lg-alt:before{content:"\f80c"}.fa-hood-cloak:before{content:"\f6ef"}.fa-hooli:before{content:"\f427"}.fa-horizontal-rule:before{content:"\f86c"}.fa-hornbill:before{content:"\f592"}.fa-horse:before{content:"\f6f0"}.fa-horse-head:before{content:"\f7ab"}.fa-hospital:before{content:"\f0f8"}.fa-hospital-alt:before{content:"\f47d"}.fa-hospital-symbol:before{content:"\f47e"}.fa-hospital-user:before{content:"\f80d"}.fa-hospitals:before{content:"\f80e"}.fa-hot-tub:before{content:"\f593"}.fa-hotdog:before{content:"\f80f"}.fa-hotel:before{content:"\f594"}.fa-hotjar:before{content:"\f3b1"}.fa-hourglass:before{content:"\f254"}.fa-hourglass-end:before{content:"\f253"}.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-start:before{content:"\f251"}.fa-house-damage:before{content:"\f6f1"}.fa-house-flood:before{content:"\f74f"}.fa-houzz:before{content:"\f27c"}.fa-hryvnia:before{content:"\f6f2"}.fa-html5:before{content:"\f13b"}.fa-hubspot:before{content:"\f3b2"}.fa-humidity:before{content:"\f750"}.fa-hurricane:before{content:"\f751"}.fa-i-cursor:before{content:"\f246"}.fa-ice-cream:before{content:"\f810"}.fa-ice-skate:before{content:"\f7ac"}.fa-icicles:before{content:"\f7ad"}.fa-icons:before{content:"\f86d"}.fa-icons-alt:before{content:"\f86e"}.fa-id-badge:before{content:"\f2c1"}.fa-id-card:before{content:"\f2c2"}.fa-id-card-alt:before{content:"\f47f"}.fa-igloo:before{content:"\f7ae"}.fa-image:before{content:"\f03e"}.fa-images:before{content:"\f302"}.fa-imdb:before{content:"\f2d8"}.fa-inbox:before{content:"\f01c"}.fa-inbox-in:before{content:"\f310"}.fa-inbox-out:before{content:"\f311"}.fa-indent:before{content:"\f03c"}.fa-industry:before{content:"\f275"}.fa-industry-alt:before{content:"\f3b3"}.fa-infinity:before{content:"\f534"}.fa-info:before{content:"\f129"}.fa-info-circle:before{content:"\f05a"}.fa-info-square:before{content:"\f30f"}.fa-inhaler:before{content:"\f5f9"}.fa-instagram:before{content:"\f16d"}.fa-integral:before{content:"\f667"}.fa-intercom:before{content:"\f7af"}.fa-internet-explorer:before{content:"\f26b"}.fa-intersection:before{content:"\f668"}.fa-inventory:before{content:"\f480"}.fa-invision:before{content:"\f7b0"}.fa-ioxhost:before{content:"\f208"}.fa-island-tropical:before{content:"\f811"}.fa-italic:before{content:"\f033"}.fa-itch-io:before{content:"\f83a"}.fa-itunes:before{content:"\f3b4"}.fa-itunes-note:before{content:"\f3b5"}.fa-jack-o-lantern:before{content:"\f30e"}.fa-java:before{content:"\f4e4"}.fa-jedi:before{content:"\f669"}.fa-jedi-order:before{content:"\f50e"}.fa-jenkins:before{content:"\f3b6"}.fa-jira:before{content:"\f7b1"}.fa-joget:before{content:"\f3b7"}.fa-joint:before{content:"\f595"}.fa-joomla:before{content:"\f1aa"}.fa-journal-whills:before{content:"\f66a"}.fa-js:before{content:"\f3b8"}.fa-js-square:before{content:"\f3b9"}.fa-jsfiddle:before{content:"\f1cc"}.fa-kaaba:before{content:"\f66b"}.fa-kaggle:before{content:"\f5fa"}.fa-kerning:before{content:"\f86f"}.fa-key:before{content:"\f084"}.fa-key-skeleton:before{content:"\f6f3"}.fa-keybase:before{content:"\f4f5"}.fa-keyboard:before{content:"\f11c"}.fa-keycdn:before{content:"\f3ba"}.fa-keynote:before{content:"\f66c"}.fa-khanda:before{content:"\f66d"}.fa-kickstarter:before{content:"\f3bb"}.fa-kickstarter-k:before{content:"\f3bc"}.fa-kidneys:before{content:"\f5fb"}.fa-kiss:before{content:"\f596"}.fa-kiss-beam:before{content:"\f597"}.fa-kiss-wink-heart:before{content:"\f598"}.fa-kite:before{content:"\f6f4"}.fa-kiwi-bird:before{content:"\f535"}.fa-knife-kitchen:before{content:"\f6f5"}.fa-korvue:before{content:"\f42f"}.fa-lambda:before{content:"\f66e"}.fa-lamp:before{content:"\f4ca"}.fa-landmark:before{content:"\f66f"}.fa-landmark-alt:before{content:"\f752"}.fa-language:before{content:"\f1ab"}.fa-laptop:before{content:"\f109"}.fa-laptop-code:before{content:"\f5fc"}.fa-laptop-medical:before{content:"\f812"}.fa-laravel:before{content:"\f3bd"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-laugh:before{content:"\f599"}.fa-laugh-beam:before{content:"\f59a"}.fa-laugh-squint:before{content:"\f59b"}.fa-laugh-wink:before{content:"\f59c"}.fa-layer-group:before{content:"\f5fd"}.fa-layer-minus:before{content:"\f5fe"}.fa-layer-plus:before{content:"\f5ff"}.fa-leaf:before{content:"\f06c"}.fa-leaf-heart:before{content:"\f4cb"}.fa-leaf-maple:before{content:"\f6f6"}.fa-leaf-oak:before{content:"\f6f7"}.fa-leanpub:before{content:"\f212"}.fa-lemon:before{content:"\f094"}.fa-less:before{content:"\f41d"}.fa-less-than:before{content:"\f536"}.fa-less-than-equal:before{content:"\f537"}.fa-level-down:before{content:"\f149"}.fa-level-down-alt:before{content:"\f3be"}.fa-level-up:before{content:"\f148"}.fa-level-up-alt:before{content:"\f3bf"}.fa-life-ring:before{content:"\f1cd"}.fa-lightbulb:before{content:"\f0eb"}.fa-lightbulb-dollar:before{content:"\f670"}.fa-lightbulb-exclamation:before{content:"\f671"}.fa-lightbulb-on:before{content:"\f672"}.fa-lightbulb-slash:before{content:"\f673"}.fa-lights-holiday:before{content:"\f7b2"}.fa-line:before{content:"\f3c0"}.fa-line-columns:before{content:"\f870"}.fa-line-height:before{content:"\f871"}.fa-link:before{content:"\f0c1"}.fa-linkedin:before{content:"\f08c"}.fa-linkedin-in:before{content:"\f0e1"}.fa-linode:before{content:"\f2b8"}.fa-linux:before{content:"\f17c"}.fa-lips:before{content:"\f600"}.fa-lira-sign:before{content:"\f195"}.fa-list:before{content:"\f03a"}.fa-list-alt:before{content:"\f022"}.fa-list-ol:before{content:"\f0cb"}.fa-list-ul:before{content:"\f0ca"}.fa-location:before{content:"\f601"}.fa-location-arrow:before{content:"\f124"}.fa-location-circle:before{content:"\f602"}.fa-location-slash:before{content:"\f603"}.fa-lock:before{content:"\f023"}.fa-lock-alt:before{content:"\f30d"}.fa-lock-open:before{content:"\f3c1"}.fa-lock-open-alt:before{content:"\f3c2"}.fa-long-arrow-alt-down:before{content:"\f309"}.fa-long-arrow-alt-left:before{content:"\f30a"}.fa-long-arrow-alt-right:before{content:"\f30b"}.fa-long-arrow-alt-up:before{content:"\f30c"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-long-arrow-up:before{content:"\f176"}.fa-loveseat:before{content:"\f4cc"}.fa-low-vision:before{content:"\f2a8"}.fa-luchador:before{content:"\f455"}.fa-luggage-cart:before{content:"\f59d"}.fa-lungs:before{content:"\f604"}.fa-lyft:before{content:"\f3c3"}.fa-mace:before{content:"\f6f8"}.fa-magento:before{content:"\f3c4"}.fa-magic:before{content:"\f0d0"}.fa-magnet:before{content:"\f076"}.fa-mail-bulk:before{content:"\f674"}.fa-mailbox:before{content:"\f813"}.fa-mailchimp:before{content:"\f59e"}.fa-male:before{content:"\f183"}.fa-mandalorian:before{content:"\f50f"}.fa-mandolin:before{content:"\f6f9"}.fa-map:before{content:"\f279"}.fa-map-marked:before{content:"\f59f"}.fa-map-marked-alt:before{content:"\f5a0"}.fa-map-marker:before{content:"\f041"}.fa-map-marker-alt:before{content:"\f3c5"}.fa-map-marker-alt-slash:before{content:"\f605"}.fa-map-marker-check:before{content:"\f606"}.fa-map-marker-edit:before{content:"\f607"}.fa-map-marker-exclamation:before{content:"\f608"}.fa-map-marker-minus:before{content:"\f609"}.fa-map-marker-plus:before{content:"\f60a"}.fa-map-marker-question:before{content:"\f60b"}.fa-map-marker-slash:before{content:"\f60c"}.fa-map-marker-smile:before{content:"\f60d"}.fa-map-marker-times:before{content:"\f60e"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-markdown:before{content:"\f60f"}.fa-marker:before{content:"\f5a1"}.fa-mars:before{content:"\f222"}.fa-mars-double:before{content:"\f227"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mask:before{content:"\f6fa"}.fa-mastodon:before{content:"\f4f6"}.fa-maxcdn:before{content:"\f136"}.fa-meat:before{content:"\f814"}.fa-medal:before{content:"\f5a2"}.fa-medapps:before{content:"\f3c6"}.fa-medium:before{content:"\f23a"}.fa-medium-m:before{content:"\f3c7"}.fa-medkit:before{content:"\f0fa"}.fa-medrt:before{content:"\f3c8"}.fa-meetup:before{content:"\f2e0"}.fa-megaphone:before{content:"\f675"}.fa-megaport:before{content:"\f5a3"}.fa-meh:before{content:"\f11a"}.fa-meh-blank:before{content:"\f5a4"}.fa-meh-rolling-eyes:before{content:"\f5a5"}.fa-memory:before{content:"\f538"}.fa-mendeley:before{content:"\f7b3"}.fa-menorah:before{content:"\f676"}.fa-mercury:before{content:"\f223"}.fa-meteor:before{content:"\f753"}.fa-microchip:before{content:"\f2db"}.fa-microphone:before{content:"\f130"}.fa-microphone-alt:before{content:"\f3c9"}.fa-microphone-alt-slash:before{content:"\f539"}.fa-microphone-slash:before{content:"\f131"}.fa-microscope:before{content:"\f610"}.fa-microsoft:before{content:"\f3ca"}.fa-mind-share:before{content:"\f677"}.fa-minus:before{content:"\f068"}.fa-minus-circle:before{content:"\f056"}.fa-minus-hexagon:before{content:"\f307"}.fa-minus-octagon:before{content:"\f308"}.fa-minus-square:before{content:"\f146"}.fa-mistletoe:before{content:"\f7b4"}.fa-mitten:before{content:"\f7b5"}.fa-mix:before{content:"\f3cb"}.fa-mixcloud:before{content:"\f289"}.fa-mizuni:before{content:"\f3cc"}.fa-mobile:before{content:"\f10b"}.fa-mobile-alt:before{content:"\f3cd"}.fa-mobile-android:before{content:"\f3ce"}.fa-mobile-android-alt:before{content:"\f3cf"}.fa-modx:before{content:"\f285"}.fa-monero:before{content:"\f3d0"}.fa-money-bill:before{content:"\f0d6"}.fa-money-bill-alt:before{content:"\f3d1"}.fa-money-bill-wave:before{content:"\f53a"}.fa-money-bill-wave-alt:before{content:"\f53b"}.fa-money-check:before{content:"\f53c"}.fa-money-check-alt:before{content:"\f53d"}.fa-money-check-edit:before{content:"\f872"}.fa-money-check-edit-alt:before{content:"\f873"}.fa-monitor-heart-rate:before{content:"\f611"}.fa-monkey:before{content:"\f6fb"}.fa-monument:before{content:"\f5a6"}.fa-moon:before{content:"\f186"}.fa-moon-cloud:before{content:"\f754"}.fa-moon-stars:before{content:"\f755"}.fa-mortar-pestle:before{content:"\f5a7"}.fa-mosque:before{content:"\f678"}.fa-motorcycle:before{content:"\f21c"}.fa-mountain:before{content:"\f6fc"}.fa-mountains:before{content:"\f6fd"}.fa-mouse-pointer:before{content:"\f245"}.fa-mug:before{content:"\f874"}.fa-mug-hot:before{content:"\f7b6"}.fa-mug-marshmallows:before{content:"\f7b7"}.fa-mug-tea:before{content:"\f875"}.fa-music:before{content:"\f001"}.fa-napster:before{content:"\f3d2"}.fa-narwhal:before{content:"\f6fe"}.fa-neos:before{content:"\f612"}.fa-network-wired:before{content:"\f6ff"}.fa-neuter:before{content:"\f22c"}.fa-newspaper:before{content:"\f1ea"}.fa-nimblr:before{content:"\f5a8"}.fa-node:before{content:"\f419"}.fa-node-js:before{content:"\f3d3"}.fa-not-equal:before{content:"\f53e"}.fa-notes-medical:before{content:"\f481"}.fa-npm:before{content:"\f3d4"}.fa-ns8:before{content:"\f3d5"}.fa-nutritionix:before{content:"\f3d6"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-octagon:before{content:"\f306"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-oil-can:before{content:"\f613"}.fa-oil-temp:before{content:"\f614"}.fa-old-republic:before{content:"\f510"}.fa-om:before{content:"\f679"}.fa-omega:before{content:"\f67a"}.fa-opencart:before{content:"\f23d"}.fa-openid:before{content:"\f19b"}.fa-opera:before{content:"\f26a"}.fa-optin-monster:before{content:"\f23c"}.fa-ornament:before{content:"\f7b8"}.fa-osi:before{content:"\f41a"}.fa-otter:before{content:"\f700"}.fa-outdent:before{content:"\f03b"}.fa-overline:before{content:"\f876"}.fa-page-break:before{content:"\f877"}.fa-page4:before{content:"\f3d7"}.fa-pagelines:before{content:"\f18c"}.fa-pager:before{content:"\f815"}.fa-paint-brush:before{content:"\f1fc"}.fa-paint-brush-alt:before{content:"\f5a9"}.fa-paint-roller:before{content:"\f5aa"}.fa-palette:before{content:"\f53f"}.fa-palfed:before{content:"\f3d8"}.fa-pallet:before{content:"\f482"}.fa-pallet-alt:before{content:"\f483"}.fa-paper-plane:before{content:"\f1d8"}.fa-paperclip:before{content:"\f0c6"}.fa-parachute-box:before{content:"\f4cd"}.fa-paragraph:before{content:"\f1dd"}.fa-paragraph-rtl:before{content:"\f878"}.fa-parking:before{content:"\f540"}.fa-parking-circle:before{content:"\f615"}.fa-parking-circle-slash:before{content:"\f616"}.fa-parking-slash:before{content:"\f617"}.fa-passport:before{content:"\f5ab"}.fa-pastafarianism:before{content:"\f67b"}.fa-paste:before{content:"\f0ea"}.fa-patreon:before{content:"\f3d9"}.fa-pause:before{content:"\f04c"}.fa-pause-circle:before{content:"\f28b"}.fa-paw:before{content:"\f1b0"}.fa-paw-alt:before{content:"\f701"}.fa-paw-claws:before{content:"\f702"}.fa-paypal:before{content:"\f1ed"}.fa-peace:before{content:"\f67c"}.fa-pegasus:before{content:"\f703"}.fa-pen:before{content:"\f304"}.fa-pen-alt:before{content:"\f305"}.fa-pen-fancy:before{content:"\f5ac"}.fa-pen-nib:before{content:"\f5ad"}.fa-pen-square:before{content:"\f14b"}.fa-pencil:before{content:"\f040"}.fa-pencil-alt:before{content:"\f303"}.fa-pencil-paintbrush:before{content:"\f618"}.fa-pencil-ruler:before{content:"\f5ae"}.fa-pennant:before{content:"\f456"}.fa-penny-arcade:before{content:"\f704"}.fa-people-carry:before{content:"\f4ce"}.fa-pepper-hot:before{content:"\f816"}.fa-percent:before{content:"\f295"}.fa-percentage:before{content:"\f541"}.fa-periscope:before{content:"\f3da"}.fa-person-booth:before{content:"\f756"}.fa-person-carry:before{content:"\f4cf"}.fa-person-dolly:before{content:"\f4d0"}.fa-person-dolly-empty:before{content:"\f4d1"}.fa-person-sign:before{content:"\f757"}.fa-phabricator:before{content:"\f3db"}.fa-phoenix-framework:before{content:"\f3dc"}.fa-phoenix-squadron:before{content:"\f511"}.fa-phone:before{content:"\f095"}.fa-phone-alt:before{content:"\f879"}.fa-phone-laptop:before{content:"\f87a"}.fa-phone-office:before{content:"\f67d"}.fa-phone-plus:before{content:"\f4d2"}.fa-phone-slash:before{content:"\f3dd"}.fa-phone-square:before{content:"\f098"}.fa-phone-square-alt:before{content:"\f87b"}.fa-phone-volume:before{content:"\f2a0"}.fa-photo-video:before{content:"\f87c"}.fa-php:before{content:"\f457"}.fa-pi:before{content:"\f67e"}.fa-pie:before{content:"\f705"}.fa-pied-piper:before{content:"\f2ae"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-pied-piper-hat:before{content:"\f4e5"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pig:before{content:"\f706"}.fa-piggy-bank:before{content:"\f4d3"}.fa-pills:before{content:"\f484"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-p:before{content:"\f231"}.fa-pinterest-square:before{content:"\f0d3"}.fa-pizza:before{content:"\f817"}.fa-pizza-slice:before{content:"\f818"}.fa-place-of-worship:before{content:"\f67f"}.fa-plane:before{content:"\f072"}.fa-plane-alt:before{content:"\f3de"}.fa-plane-arrival:before{content:"\f5af"}.fa-plane-departure:before{content:"\f5b0"}.fa-play:before{content:"\f04b"}.fa-play-circle:before{content:"\f144"}.fa-playstation:before{content:"\f3df"}.fa-plug:before{content:"\f1e6"}.fa-plus:before{content:"\f067"}.fa-plus-circle:before{content:"\f055"}.fa-plus-hexagon:before{content:"\f300"}.fa-plus-octagon:before{content:"\f301"}.fa-plus-square:before{content:"\f0fe"}.fa-podcast:before{content:"\f2ce"}.fa-podium:before{content:"\f680"}.fa-podium-star:before{content:"\f758"}.fa-poll:before{content:"\f681"}.fa-poll-h:before{content:"\f682"}.fa-poll-people:before{content:"\f759"}.fa-poo:before{content:"\f2fe"}.fa-poo-storm:before{content:"\f75a"}.fa-poop:before{content:"\f619"}.fa-popcorn:before{content:"\f819"}.fa-portrait:before{content:"\f3e0"}.fa-pound-sign:before{content:"\f154"}.fa-power-off:before{content:"\f011"}.fa-pray:before{content:"\f683"}.fa-praying-hands:before{content:"\f684"}.fa-prescription:before{content:"\f5b1"}.fa-prescription-bottle:before{content:"\f485"}.fa-prescription-bottle-alt:before{content:"\f486"}.fa-presentation:before{content:"\f685"}.fa-print:before{content:"\f02f"}.fa-print-search:before{content:"\f81a"}.fa-print-slash:before{content:"\f686"}.fa-procedures:before{content:"\f487"}.fa-product-hunt:before{content:"\f288"}.fa-project-diagram:before{content:"\f542"}.fa-pumpkin:before{content:"\f707"}.fa-pushed:before{content:"\f3e1"}.fa-puzzle-piece:before{content:"\f12e"}.fa-python:before{content:"\f3e2"}.fa-qq:before{content:"\f1d6"}.fa-qrcode:before{content:"\f029"}.fa-question:before{content:"\f128"}.fa-question-circle:before{content:"\f059"}.fa-question-square:before{content:"\f2fd"}.fa-quidditch:before{content:"\f458"}.fa-quinscape:before{content:"\f459"}.fa-quora:before{content:"\f2c4"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-quran:before{content:"\f687"}.fa-r-project:before{content:"\f4f7"}.fa-rabbit:before{content:"\f708"}.fa-rabbit-fast:before{content:"\f709"}.fa-racquet:before{content:"\f45a"}.fa-radiation:before{content:"\f7b9"}.fa-radiation-alt:before{content:"\f7ba"}.fa-rainbow:before{content:"\f75b"}.fa-raindrops:before{content:"\f75c"}.fa-ram:before{content:"\f70a"}.fa-ramp-loading:before{content:"\f4d4"}.fa-random:before{content:"\f074"}.fa-raspberry-pi:before{content:"\f7bb"}.fa-ravelry:before{content:"\f2d9"}.fa-react:before{content:"\f41b"}.fa-reacteurope:before{content:"\f75d"}.fa-readme:before{content:"\f4d5"}.fa-rebel:before{content:"\f1d0"}.fa-receipt:before{content:"\f543"}.fa-rectangle-landscape:before{content:"\f2fa"}.fa-rectangle-portrait:before{content:"\f2fb"}.fa-rectangle-wide:before{content:"\f2fc"}.fa-recycle:before{content:"\f1b8"}.fa-red-river:before{content:"\f3e3"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-alien:before{content:"\f281"}.fa-reddit-square:before{content:"\f1a2"}.fa-redhat:before{content:"\f7bc"}.fa-redo:before{content:"\f01e"}.fa-redo-alt:before{content:"\f2f9"}.fa-registered:before{content:"\f25d"}.fa-remove-format:before{content:"\f87d"}.fa-renren:before{content:"\f18b"}.fa-repeat:before{content:"\f363"}.fa-repeat-1:before{content:"\f365"}.fa-repeat-1-alt:before{content:"\f366"}.fa-repeat-alt:before{content:"\f364"}.fa-reply:before{content:"\f3e5"}.fa-reply-all:before{content:"\f122"}.fa-replyd:before{content:"\f3e6"}.fa-republican:before{content:"\f75e"}.fa-researchgate:before{content:"\f4f8"}.fa-resolving:before{content:"\f3e7"}.fa-restroom:before{content:"\f7bd"}.fa-retweet:before{content:"\f079"}.fa-retweet-alt:before{content:"\f361"}.fa-rev:before{content:"\f5b2"}.fa-ribbon:before{content:"\f4d6"}.fa-ring:before{content:"\f70b"}.fa-rings-wedding:before{content:"\f81b"}.fa-road:before{content:"\f018"}.fa-robot:before{content:"\f544"}.fa-rocket:before{content:"\f135"}.fa-rocketchat:before{content:"\f3e8"}.fa-rockrms:before{content:"\f3e9"}.fa-route:before{content:"\f4d7"}.fa-route-highway:before{content:"\f61a"}.fa-route-interstate:before{content:"\f61b"}.fa-rss:before{content:"\f09e"}.fa-rss-square:before{content:"\f143"}.fa-ruble-sign:before{content:"\f158"}.fa-ruler:before{content:"\f545"}.fa-ruler-combined:before{content:"\f546"}.fa-ruler-horizontal:before{content:"\f547"}.fa-ruler-triangle:before{content:"\f61c"}.fa-ruler-vertical:before{content:"\f548"}.fa-running:before{content:"\f70c"}.fa-rupee-sign:before{content:"\f156"}.fa-rv:before{content:"\f7be"}.fa-sack:before{content:"\f81c"}.fa-sack-dollar:before{content:"\f81d"}.fa-sad-cry:before{content:"\f5b3"}.fa-sad-tear:before{content:"\f5b4"}.fa-safari:before{content:"\f267"}.fa-salad:before{content:"\f81e"}.fa-salesforce:before{content:"\f83b"}.fa-sandwich:before{content:"\f81f"}.fa-sass:before{content:"\f41e"}.fa-satellite:before{content:"\f7bf"}.fa-satellite-dish:before{content:"\f7c0"}.fa-sausage:before{content:"\f820"}.fa-save:before{content:"\f0c7"}.fa-scalpel:before{content:"\f61d"}.fa-scalpel-path:before{content:"\f61e"}.fa-scanner:before{content:"\f488"}.fa-scanner-keyboard:before{content:"\f489"}.fa-scanner-touchscreen:before{content:"\f48a"}.fa-scarecrow:before{content:"\f70d"}.fa-scarf:before{content:"\f7c1"}.fa-schlix:before{content:"\f3ea"}.fa-school:before{content:"\f549"}.fa-screwdriver:before{content:"\f54a"}.fa-scribd:before{content:"\f28a"}.fa-scroll:before{content:"\f70e"}.fa-scroll-old:before{content:"\f70f"}.fa-scrubber:before{content:"\f2f8"}.fa-scythe:before{content:"\f710"}.fa-sd-card:before{content:"\f7c2"}.fa-search:before{content:"\f002"}.fa-search-dollar:before{content:"\f688"}.fa-search-location:before{content:"\f689"}.fa-search-minus:before{content:"\f010"}.fa-search-plus:before{content:"\f00e"}.fa-searchengin:before{content:"\f3eb"}.fa-seedling:before{content:"\f4d8"}.fa-sellcast:before{content:"\f2da"}.fa-sellsy:before{content:"\f213"}.fa-send-back:before{content:"\f87e"}.fa-send-backward:before{content:"\f87f"}.fa-server:before{content:"\f233"}.fa-servicestack:before{content:"\f3ec"}.fa-shapes:before{content:"\f61f"}.fa-share:before{content:"\f064"}.fa-share-all:before{content:"\f367"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-share-square:before{content:"\f14d"}.fa-sheep:before{content:"\f711"}.fa-shekel-sign:before{content:"\f20b"}.fa-shield:before{content:"\f132"}.fa-shield-alt:before{content:"\f3ed"}.fa-shield-check:before{content:"\f2f7"}.fa-shield-cross:before{content:"\f712"}.fa-ship:before{content:"\f21a"}.fa-shipping-fast:before{content:"\f48b"}.fa-shipping-timed:before{content:"\f48c"}.fa-shirtsinbulk:before{content:"\f214"}.fa-shish-kebab:before{content:"\f821"}.fa-shoe-prints:before{content:"\f54b"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-shopping-cart:before{content:"\f07a"}.fa-shopware:before{content:"\f5b5"}.fa-shovel:before{content:"\f713"}.fa-shovel-snow:before{content:"\f7c3"}.fa-shower:before{content:"\f2cc"}.fa-shredder:before{content:"\f68a"}.fa-shuttle-van:before{content:"\f5b6"}.fa-shuttlecock:before{content:"\f45b"}.fa-sickle:before{content:"\f822"}.fa-sigma:before{content:"\f68b"}.fa-sign:before{content:"\f4d9"}.fa-sign-in:before{content:"\f090"}.fa-sign-in-alt:before{content:"\f2f6"}.fa-sign-language:before{content:"\f2a7"}.fa-sign-out:before{content:"\f08b"}.fa-sign-out-alt:before{content:"\f2f5"}.fa-signal:before{content:"\f012"}.fa-signal-1:before{content:"\f68c"}.fa-signal-2:before{content:"\f68d"}.fa-signal-3:before{content:"\f68e"}.fa-signal-4:before{content:"\f68f"}.fa-signal-alt:before{content:"\f690"}.fa-signal-alt-1:before{content:"\f691"}.fa-signal-alt-2:before{content:"\f692"}.fa-signal-alt-3:before{content:"\f693"}.fa-signal-alt-slash:before{content:"\f694"}.fa-signal-slash:before{content:"\f695"}.fa-signature:before{content:"\f5b7"}.fa-sim-card:before{content:"\f7c4"}.fa-simplybuilt:before{content:"\f215"}.fa-sistrix:before{content:"\f3ee"}.fa-sitemap:before{content:"\f0e8"}.fa-sith:before{content:"\f512"}.fa-skating:before{content:"\f7c5"}.fa-skeleton:before{content:"\f620"}.fa-sketch:before{content:"\f7c6"}.fa-ski-jump:before{content:"\f7c7"}.fa-ski-lift:before{content:"\f7c8"}.fa-skiing:before{content:"\f7c9"}.fa-skiing-nordic:before{content:"\f7ca"}.fa-skull:before{content:"\f54c"}.fa-skull-crossbones:before{content:"\f714"}.fa-skyatlas:before{content:"\f216"}.fa-skype:before{content:"\f17e"}.fa-slack:before{content:"\f198"}.fa-slack-hash:before{content:"\f3ef"}.fa-slash:before{content:"\f715"}.fa-sledding:before{content:"\f7cb"}.fa-sleigh:before{content:"\f7cc"}.fa-sliders-h:before{content:"\f1de"}.fa-sliders-h-square:before{content:"\f3f0"}.fa-sliders-v:before{content:"\f3f1"}.fa-sliders-v-square:before{content:"\f3f2"}.fa-slideshare:before{content:"\f1e7"}.fa-smile:before{content:"\f118"}.fa-smile-beam:before{content:"\f5b8"}.fa-smile-plus:before{content:"\f5b9"}.fa-smile-wink:before{content:"\f4da"}.fa-smog:before{content:"\f75f"}.fa-smoke:before{content:"\f760"}.fa-smoking:before{content:"\f48d"}.fa-smoking-ban:before{content:"\f54d"}.fa-sms:before{content:"\f7cd"}.fa-snake:before{content:"\f716"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-snooze:before{content:"\f880"}.fa-snow-blowing:before{content:"\f761"}.fa-snowboarding:before{content:"\f7ce"}.fa-snowflake:before{content:"\f2dc"}.fa-snowflakes:before{content:"\f7cf"}.fa-snowman:before{content:"\f7d0"}.fa-snowmobile:before{content:"\f7d1"}.fa-snowplow:before{content:"\f7d2"}.fa-socks:before{content:"\f696"}.fa-solar-panel:before{content:"\f5ba"}.fa-sort:before{content:"\f0dc"}.fa-sort-alpha-down:before{content:"\f15d"}.fa-sort-alpha-down-alt:before{content:"\f881"}.fa-sort-alpha-up:before{content:"\f15e"}.fa-sort-alpha-up-alt:before{content:"\f882"}.fa-sort-alt:before{content:"\f883"}.fa-sort-amount-down:before{content:"\f160"}.fa-sort-amount-down-alt:before{content:"\f884"}.fa-sort-amount-up:before{content:"\f161"}.fa-sort-amount-up-alt:before{content:"\f885"}.fa-sort-down:before{content:"\f0dd"}.fa-sort-numeric-down:before{content:"\f162"}.fa-sort-numeric-down-alt:before{content:"\f886"}.fa-sort-numeric-up:before{content:"\f163"}.fa-sort-numeric-up-alt:before{content:"\f887"}.fa-sort-shapes-down:before{content:"\f888"}.fa-sort-shapes-down-alt:before{content:"\f889"}.fa-sort-shapes-up:before{content:"\f88a"}.fa-sort-shapes-up-alt:before{content:"\f88b"}.fa-sort-size-down:before{content:"\f88c"}.fa-sort-size-down-alt:before{content:"\f88d"}.fa-sort-size-up:before{content:"\f88e"}.fa-sort-size-up-alt:before{content:"\f88f"}.fa-sort-up:before{content:"\f0de"}.fa-soundcloud:before{content:"\f1be"}.fa-soup:before{content:"\f823"}.fa-sourcetree:before{content:"\f7d3"}.fa-spa:before{content:"\f5bb"}.fa-space-shuttle:before{content:"\f197"}.fa-spade:before{content:"\f2f4"}.fa-sparkles:before{content:"\f890"}.fa-speakap:before{content:"\f3f3"}.fa-speaker-deck:before{content:"\f83c"}.fa-spell-check:before{content:"\f891"}.fa-spider:before{content:"\f717"}.fa-spider-black-widow:before{content:"\f718"}.fa-spider-web:before{content:"\f719"}.fa-spinner:before{content:"\f110"}.fa-spinner-third:before{content:"\f3f4"}.fa-splotch:before{content:"\f5bc"}.fa-spotify:before{content:"\f1bc"}.fa-spray-can:before{content:"\f5bd"}.fa-square:before{content:"\f0c8"}.fa-square-full:before{content:"\f45c"}.fa-square-root:before{content:"\f697"}.fa-square-root-alt:before{content:"\f698"}.fa-squarespace:before{content:"\f5be"}.fa-squirrel:before{content:"\f71a"}.fa-stack-exchange:before{content:"\f18d"}.fa-stack-overflow:before{content:"\f16c"}.fa-stackpath:before{content:"\f842"}.fa-staff:before{content:"\f71b"}.fa-stamp:before{content:"\f5bf"}.fa-star:before{content:"\f005"}.fa-star-and-crescent:before{content:"\f699"}.fa-star-christmas:before{content:"\f7d4"}.fa-star-exclamation:before{content:"\f2f3"}.fa-star-half:before{content:"\f089"}.fa-star-half-alt:before{content:"\f5c0"}.fa-star-of-david:before{content:"\f69a"}.fa-star-of-life:before{content:"\f621"}.fa-stars:before{content:"\f762"}.fa-staylinked:before{content:"\f3f5"}.fa-steak:before{content:"\f824"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-steam-symbol:before{content:"\f3f6"}.fa-steering-wheel:before{content:"\f622"}.fa-step-backward:before{content:"\f048"}.fa-step-forward:before{content:"\f051"}.fa-stethoscope:before{content:"\f0f1"}.fa-sticker-mule:before{content:"\f3f7"}.fa-sticky-note:before{content:"\f249"}.fa-stocking:before{content:"\f7d5"}.fa-stomach:before{content:"\f623"}.fa-stop:before{content:"\f04d"}.fa-stop-circle:before{content:"\f28d"}.fa-stopwatch:before{content:"\f2f2"}.fa-store:before{content:"\f54e"}.fa-store-alt:before{content:"\f54f"}.fa-strava:before{content:"\f428"}.fa-stream:before{content:"\f550"}.fa-street-view:before{content:"\f21d"}.fa-stretcher:before{content:"\f825"}.fa-strikethrough:before{content:"\f0cc"}.fa-stripe:before{content:"\f429"}.fa-stripe-s:before{content:"\f42a"}.fa-stroopwafel:before{content:"\f551"}.fa-studiovinari:before{content:"\f3f8"}.fa-stumbleupon:before{content:"\f1a4"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-subscript:before{content:"\f12c"}.fa-subway:before{content:"\f239"}.fa-suitcase:before{content:"\f0f2"}.fa-suitcase-rolling:before{content:"\f5c1"}.fa-sun:before{content:"\f185"}.fa-sun-cloud:before{content:"\f763"}.fa-sun-dust:before{content:"\f764"}.fa-sun-haze:before{content:"\f765"}.fa-sunglasses:before{content:"\f892"}.fa-sunrise:before{content:"\f766"}.fa-sunset:before{content:"\f767"}.fa-superpowers:before{content:"\f2dd"}.fa-superscript:before{content:"\f12b"}.fa-supple:before{content:"\f3f9"}.fa-surprise:before{content:"\f5c2"}.fa-suse:before{content:"\f7d6"}.fa-swatchbook:before{content:"\f5c3"}.fa-swimmer:before{content:"\f5c4"}.fa-swimming-pool:before{content:"\f5c5"}.fa-sword:before{content:"\f71c"}.fa-swords:before{content:"\f71d"}.fa-symfony:before{content:"\f83d"}.fa-synagogue:before{content:"\f69b"}.fa-sync:before{content:"\f021"}.fa-sync-alt:before{content:"\f2f1"}.fa-syringe:before{content:"\f48e"}.fa-table:before{content:"\f0ce"}.fa-table-tennis:before{content:"\f45d"}.fa-tablet:before{content:"\f10a"}.fa-tablet-alt:before{content:"\f3fa"}.fa-tablet-android:before{content:"\f3fb"}.fa-tablet-android-alt:before{content:"\f3fc"}.fa-tablet-rugged:before{content:"\f48f"}.fa-tablets:before{content:"\f490"}.fa-tachometer:before{content:"\f0e4"}.fa-tachometer-alt:before{content:"\f3fd"}.fa-tachometer-alt-average:before{content:"\f624"}.fa-tachometer-alt-fast:before{content:"\f625"}.fa-tachometer-alt-fastest:before{content:"\f626"}.fa-tachometer-alt-slow:before{content:"\f627"}.fa-tachometer-alt-slowest:before{content:"\f628"}.fa-tachometer-average:before{content:"\f629"}.fa-tachometer-fast:before{content:"\f62a"}.fa-tachometer-fastest:before{content:"\f62b"}.fa-tachometer-slow:before{content:"\f62c"}.fa-tachometer-slowest:before{content:"\f62d"}.fa-taco:before{content:"\f826"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-tally:before{content:"\f69c"}.fa-tanakh:before{content:"\f827"}.fa-tape:before{content:"\f4db"}.fa-tasks:before{content:"\f0ae"}.fa-tasks-alt:before{content:"\f828"}.fa-taxi:before{content:"\f1ba"}.fa-teamspeak:before{content:"\f4f9"}.fa-teeth:before{content:"\f62e"}.fa-teeth-open:before{content:"\f62f"}.fa-telegram:before{content:"\f2c6"}.fa-telegram-plane:before{content:"\f3fe"}.fa-temperature-frigid:before{content:"\f768"}.fa-temperature-high:before{content:"\f769"}.fa-temperature-hot:before{content:"\f76a"}.fa-temperature-low:before{content:"\f76b"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-tenge:before{content:"\f7d7"}.fa-tennis-ball:before{content:"\f45e"}.fa-terminal:before{content:"\f120"}.fa-text:before{content:"\f893"}.fa-text-height:before{content:"\f034"}.fa-text-size:before{content:"\f894"}.fa-text-width:before{content:"\f035"}.fa-th:before{content:"\f00a"}.fa-th-large:before{content:"\f009"}.fa-th-list:before{content:"\f00b"}.fa-the-red-yeti:before{content:"\f69d"}.fa-theater-masks:before{content:"\f630"}.fa-themeco:before{content:"\f5c6"}.fa-themeisle:before{content:"\f2b2"}.fa-thermometer:before{content:"\f491"}.fa-thermometer-empty:before{content:"\f2cb"}.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-theta:before{content:"\f69e"}.fa-think-peaks:before{content:"\f731"}.fa-thumbs-down:before{content:"\f165"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbtack:before{content:"\f08d"}.fa-thunderstorm:before{content:"\f76c"}.fa-thunderstorm-moon:before{content:"\f76d"}.fa-thunderstorm-sun:before{content:"\f76e"}.fa-ticket:before{content:"\f145"}.fa-ticket-alt:before{content:"\f3ff"}.fa-tilde:before{content:"\f69f"}.fa-times:before{content:"\f00d"}.fa-times-circle:before{content:"\f057"}.fa-times-hexagon:before{content:"\f2ee"}.fa-times-octagon:before{content:"\f2f0"}.fa-times-square:before{content:"\f2d3"}.fa-tint:before{content:"\f043"}.fa-tint-slash:before{content:"\f5c7"}.fa-tire:before{content:"\f631"}.fa-tire-flat:before{content:"\f632"}.fa-tire-pressure-warning:before{content:"\f633"}.fa-tire-rugged:before{content:"\f634"}.fa-tired:before{content:"\f5c8"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-toilet:before{content:"\f7d8"}.fa-toilet-paper:before{content:"\f71e"}.fa-toilet-paper-alt:before{content:"\f71f"}.fa-tombstone:before{content:"\f720"}.fa-tombstone-alt:before{content:"\f721"}.fa-toolbox:before{content:"\f552"}.fa-tools:before{content:"\f7d9"}.fa-tooth:before{content:"\f5c9"}.fa-toothbrush:before{content:"\f635"}.fa-torah:before{content:"\f6a0"}.fa-torii-gate:before{content:"\f6a1"}.fa-tornado:before{content:"\f76f"}.fa-tractor:before{content:"\f722"}.fa-trade-federation:before{content:"\f513"}.fa-trademark:before{content:"\f25c"}.fa-traffic-cone:before{content:"\f636"}.fa-traffic-light:before{content:"\f637"}.fa-traffic-light-go:before{content:"\f638"}.fa-traffic-light-slow:before{content:"\f639"}.fa-traffic-light-stop:before{content:"\f63a"}.fa-train:before{content:"\f238"}.fa-tram:before{content:"\f7da"}.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-trash:before{content:"\f1f8"}.fa-trash-alt:before{content:"\f2ed"}.fa-trash-restore:before{content:"\f829"}.fa-trash-restore-alt:before{content:"\f82a"}.fa-trash-undo:before{content:"\f895"}.fa-trash-undo-alt:before{content:"\f896"}.fa-treasure-chest:before{content:"\f723"}.fa-tree:before{content:"\f1bb"}.fa-tree-alt:before{content:"\f400"}.fa-tree-christmas:before{content:"\f7db"}.fa-tree-decorated:before{content:"\f7dc"}.fa-tree-large:before{content:"\f7dd"}.fa-tree-palm:before{content:"\f82b"}.fa-trees:before{content:"\f724"}.fa-trello:before{content:"\f181"}.fa-triangle:before{content:"\f2ec"}.fa-tripadvisor:before{content:"\f262"}.fa-trophy:before{content:"\f091"}.fa-trophy-alt:before{content:"\f2eb"}.fa-truck:before{content:"\f0d1"}.fa-truck-container:before{content:"\f4dc"}.fa-truck-couch:before{content:"\f4dd"}.fa-truck-loading:before{content:"\f4de"}.fa-truck-monster:before{content:"\f63b"}.fa-truck-moving:before{content:"\f4df"}.fa-truck-pickup:before{content:"\f63c"}.fa-truck-plow:before{content:"\f7de"}.fa-truck-ramp:before{content:"\f4e0"}.fa-tshirt:before{content:"\f553"}.fa-tty:before{content:"\f1e4"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-turkey:before{content:"\f725"}.fa-turtle:before{content:"\f726"}.fa-tv:before{content:"\f26c"}.fa-tv-retro:before{content:"\f401"}.fa-twitch:before{content:"\f1e8"}.fa-twitter:before{content:"\f099"}.fa-twitter-square:before{content:"\f081"}.fa-typo3:before{content:"\f42b"}.fa-uber:before{content:"\f402"}.fa-ubuntu:before{content:"\f7df"}.fa-uikit:before{content:"\f403"}.fa-umbrella:before{content:"\f0e9"}.fa-umbrella-beach:before{content:"\f5ca"}.fa-underline:before{content:"\f0cd"}.fa-undo:before{content:"\f0e2"}.fa-undo-alt:before{content:"\f2ea"}.fa-unicorn:before{content:"\f727"}.fa-union:before{content:"\f6a2"}.fa-uniregistry:before{content:"\f404"}.fa-universal-access:before{content:"\f29a"}.fa-university:before{content:"\f19c"}.fa-unlink:before{content:"\f127"}.fa-unlock:before{content:"\f09c"}.fa-unlock-alt:before{content:"\f13e"}.fa-untappd:before{content:"\f405"}.fa-upload:before{content:"\f093"}.fa-ups:before{content:"\f7e0"}.fa-usb:before{content:"\f287"}.fa-usd-circle:before{content:"\f2e8"}.fa-usd-square:before{content:"\f2e9"}.fa-user:before{content:"\f007"}.fa-user-alt:before{content:"\f406"}.fa-user-alt-slash:before{content:"\f4fa"}.fa-user-astronaut:before{content:"\f4fb"}.fa-user-chart:before{content:"\f6a3"}.fa-user-check:before{content:"\f4fc"}.fa-user-circle:before{content:"\f2bd"}.fa-user-clock:before{content:"\f4fd"}.fa-user-cog:before{content:"\f4fe"}.fa-user-crown:before{content:"\f6a4"}.fa-user-edit:before{content:"\f4ff"}.fa-user-friends:before{content:"\f500"}.fa-user-graduate:before{content:"\f501"}.fa-user-hard-hat:before{content:"\f82c"}.fa-user-headset:before{content:"\f82d"}.fa-user-injured:before{content:"\f728"}.fa-user-lock:before{content:"\f502"}.fa-user-md:before{content:"\f0f0"}.fa-user-md-chat:before{content:"\f82e"}.fa-user-minus:before{content:"\f503"}.fa-user-ninja:before{content:"\f504"}.fa-user-nurse:before{content:"\f82f"}.fa-user-plus:before{content:"\f234"}.fa-user-secret:before{content:"\f21b"}.fa-user-shield:before{content:"\f505"}.fa-user-slash:before{content:"\f506"}.fa-user-tag:before{content:"\f507"}.fa-user-tie:before{content:"\f508"}.fa-user-times:before{content:"\f235"}.fa-users:before{content:"\f0c0"}.fa-users-class:before{content:"\f63d"}.fa-users-cog:before{content:"\f509"}.fa-users-crown:before{content:"\f6a5"}.fa-users-medical:before{content:"\f830"}.fa-usps:before{content:"\f7e1"}.fa-ussunnah:before{content:"\f407"}.fa-utensil-fork:before{content:"\f2e3"}.fa-utensil-knife:before{content:"\f2e4"}.fa-utensil-spoon:before{content:"\f2e5"}.fa-utensils:before{content:"\f2e7"}.fa-utensils-alt:before{content:"\f2e6"}.fa-vaadin:before{content:"\f408"}.fa-value-absolute:before{content:"\f6a6"}.fa-vector-square:before{content:"\f5cb"}.fa-venus:before{content:"\f221"}.fa-venus-double:before{content:"\f226"}.fa-venus-mars:before{content:"\f228"}.fa-viacoin:before{content:"\f237"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-vial:before{content:"\f492"}.fa-vials:before{content:"\f493"}.fa-viber:before{content:"\f409"}.fa-video:before{content:"\f03d"}.fa-video-plus:before{content:"\f4e1"}.fa-video-slash:before{content:"\f4e2"}.fa-vihara:before{content:"\f6a7"}.fa-vimeo:before{content:"\f40a"}.fa-vimeo-square:before{content:"\f194"}.fa-vimeo-v:before{content:"\f27d"}.fa-vine:before{content:"\f1ca"}.fa-vk:before{content:"\f189"}.fa-vnv:before{content:"\f40b"}.fa-voicemail:before{content:"\f897"}.fa-volcano:before{content:"\f770"}.fa-volleyball-ball:before{content:"\f45f"}.fa-volume:before{content:"\f6a8"}.fa-volume-down:before{content:"\f027"}.fa-volume-mute:before{content:"\f6a9"}.fa-volume-off:before{content:"\f026"}.fa-volume-slash:before{content:"\f2e2"}.fa-volume-up:before{content:"\f028"}.fa-vote-nay:before{content:"\f771"}.fa-vote-yea:before{content:"\f772"}.fa-vr-cardboard:before{content:"\f729"}.fa-vuejs:before{content:"\f41f"}.fa-walker:before{content:"\f831"}.fa-walking:before{content:"\f554"}.fa-wallet:before{content:"\f555"}.fa-wand:before{content:"\f72a"}.fa-wand-magic:before{content:"\f72b"}.fa-warehouse:before{content:"\f494"}.fa-warehouse-alt:before{content:"\f495"}.fa-washer:before{content:"\f898"}.fa-watch:before{content:"\f2e1"}.fa-watch-fitness:before{content:"\f63e"}.fa-water:before{content:"\f773"}.fa-water-lower:before{content:"\f774"}.fa-water-rise:before{content:"\f775"}.fa-wave-sine:before{content:"\f899"}.fa-wave-square:before{content:"\f83e"}.fa-wave-triangle:before{content:"\f89a"}.fa-waze:before{content:"\f83f"}.fa-webcam:before{content:"\f832"}.fa-webcam-slash:before{content:"\f833"}.fa-weebly:before{content:"\f5cc"}.fa-weibo:before{content:"\f18a"}.fa-weight:before{content:"\f496"}.fa-weight-hanging:before{content:"\f5cd"}.fa-weixin:before{content:"\f1d7"}.fa-whale:before{content:"\f72c"}.fa-whatsapp:before{content:"\f232"}.fa-whatsapp-square:before{content:"\f40c"}.fa-wheat:before{content:"\f72d"}.fa-wheelchair:before{content:"\f193"}.fa-whistle:before{content:"\f460"}.fa-whmcs:before{content:"\f40d"}.fa-wifi:before{content:"\f1eb"}.fa-wifi-1:before{content:"\f6aa"}.fa-wifi-2:before{content:"\f6ab"}.fa-wifi-slash:before{content:"\f6ac"}.fa-wikipedia-w:before{content:"\f266"}.fa-wind:before{content:"\f72e"}.fa-wind-turbine:before{content:"\f89b"}.fa-wind-warning:before{content:"\f776"}.fa-window:before{content:"\f40e"}.fa-window-alt:before{content:"\f40f"}.fa-window-close:before{content:"\f410"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-windows:before{content:"\f17a"}.fa-windsock:before{content:"\f777"}.fa-wine-bottle:before{content:"\f72f"}.fa-wine-glass:before{content:"\f4e3"}.fa-wine-glass-alt:before{content:"\f5ce"}.fa-wix:before{content:"\f5cf"}.fa-wizards-of-the-coast:before{content:"\f730"}.fa-wolf-pack-battalion:before{content:"\f514"}.fa-won-sign:before{content:"\f159"}.fa-wordpress:before{content:"\f19a"}.fa-wordpress-simple:before{content:"\f411"}.fa-wpbeginner:before{content:"\f297"}.fa-wpexplorer:before{content:"\f2de"}.fa-wpforms:before{content:"\f298"}.fa-wpressr:before{content:"\f3e4"}.fa-wreath:before{content:"\f7e2"}.fa-wrench:before{content:"\f0ad"}.fa-x-ray:before{content:"\f497"}.fa-xbox:before{content:"\f412"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-y-combinator:before{content:"\f23b"}.fa-yahoo:before{content:"\f19e"}.fa-yammer:before{content:"\f840"}.fa-yandex:before{content:"\f413"}.fa-yandex-international:before{content:"\f414"}.fa-yarn:before{content:"\f7e3"}.fa-yelp:before{content:"\f1e9"}.fa-yen-sign:before{content:"\f157"}.fa-yin-yang:before{content:"\f6ad"}.fa-yoast:before{content:"\f2b1"}.fa-youtube:before{content:"\f167"}.fa-youtube-square:before{content:"\f431"}.fa-zhihu:before{content:"\f63f"}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}@font-face{font-family:"font awesome 5 brands";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.0.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.0.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.0.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.0.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.0.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.0.svg#fontawesome) format("svg");unicode-range:U+f081,U+f08c,U+f092,U+f099,U+f09b,U+f0d2-f0d5,U+f113,U+f136,U+f13b-f13c,U+f15a,U+f167-f169,U+f16c-f16e,U+f170,U+f173-f174,U+f17a-f17e,U+f180,U+f184,U+f189-f18c,U+f194,U+f19a-f19b,U+f1a0-f1a4,U+f1a6-f1a7,U+f1a9-f1aa,U+f1b4,U+f1b6-f1b7,U+f1bc-f1be,U+f1ca-f1cc,U+f1d0-f1d1,U+f1d4-f1d6,U+f1e7-f1e8,U+f1ed-f1ee,U+f1f0-f1f2,U+f1f4-f1f5,U+f202,U+f208-f209,U+f20d-f20e,U+f211-f213,U+f215,U+f231-f232,U+f237,U+f23a-f23b,U+f23d-f23e,U+f24b-f24c,U+f260-f268,U+f26a-f26b,U+f26d-f26e,U+f270,U+f27d-f27e,U+f280-f282,U+f284-f285,U+f287-f28a,U+f293-f294,U+f297-f299,U+f2a5-f2a6,U+f2a9,U+f2ab-f2ad,U+f2b0,U+f2b2-f2b4,U+f2b8,U+f2c4-f2c6,U+f2d5-f2da,U+f2dd-f2de,U+f2e0,U+f35c,U+f368-f374,U+f378-f37d,U+f37f-f380,U+f383-f385,U+f388,U+f38b-f38f,U+f392,U+f394-f397,U+f399-f39a,U+f3a1-f3a4,U+f3a6-f3b2,U+f3b4-f3b8,U+f3ba-f3bc,U+f3c0,U+f3c3-f3c4,U+f3c6-f3c8,U+f3ca,U+f3cc,U+f3d0,U+f3d2,U+f3d4-f3d7,U+f3da-f3db,U+f3df,U+f3e1-f3e3,U+f3e6-f3e7,U+f3e9-f3ec,U+f3ee-f3ef,U+f3f5-f3f6,U+f3f8-f3f9,U+f3fe,U+f402-f405,U+f407-f408,U+f40a-f40d,U+f411-f417,U+f419,U+f41b-f41d,U+f41f,U+f421,U+f426}@font-face{font-family:"font awesome 5 brands";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.1.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.1.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.1.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.1.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.1.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.1.svg#fontawesome) format("svg");unicode-range:U+f16b,U+f269,U+f425}@font-face{font-family:"font awesome 5 brands";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.2.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.2.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.2.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.2.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.2.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.2.svg#fontawesome) format("svg");unicode-range:U+f42d-f42f}@font-face{font-family:"font awesome 5 brands";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.3.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.3.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.3.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.3.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.3.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.3.svg#fontawesome) format("svg");unicode-range:U+f18d,U+f19e,U+f1b5,U+f1d7,U+f210,U+f216,U+f286,U+f2b1,U+f393,U+f3b9,U+f3bd,U+f3cb,U+f3d3,U+f3d8-f3d9,U+f3dc,U+f409,U+f423,U+f429,U+f430-f431}@font-face{font-family:"font awesome 5 brands";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.5.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.5.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.5.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.5.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.5.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.5.svg#fontawesome) format("svg");unicode-range:U+f452,U+f457}@font-face{font-family:"font awesome 5 brands";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.9.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.9.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.9.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.9.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.9.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.9.svg#fontawesome) format("svg");unicode-range:U+f44d}@font-face{font-family:"font awesome 5 brands";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.10.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.10.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.10.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.10.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.10.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.10.svg#fontawesome) format("svg");unicode-range:U+f2ae,U+f4d5,U+f4e5}@font-face{font-family:"font awesome 5 brands";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.11.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.11.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.11.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.11.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.11.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.11.svg#fontawesome) format("svg");unicode-range:U+f203,U+f4e6-f4f2,U+f4f8}@font-face{font-family:"font awesome 5 brands";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.12.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.12.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.12.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.12.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.12.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.0.12.svg#fontawesome) format("svg");unicode-range:U+f4f7,U+f50a,U+f50c-f50d,U+f510,U+f512-f513}@font-face{font-family:"font awesome 5 brands";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.1.0.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.1.0.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.1.0.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.1.0.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.1.0.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.1.0.svg#fontawesome) format("svg");unicode-range:U+f25e,U+f375,U+f5a3,U+f5be,U+f5cc,U+f5cf}@font-face{font-family:"font awesome 5 brands";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.2.0.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.2.0.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.2.0.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.2.0.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.2.0.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.2.0.svg#fontawesome) format("svg");unicode-range:U+f5f1,U+f63f}@font-face{font-family:"font awesome 5 brands";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.3.0.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.3.0.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.3.0.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.3.0.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.3.0.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.3.0.svg#fontawesome) format("svg");unicode-range:U+f642}@font-face{font-family:"font awesome 5 brands";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.4.0.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.4.0.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.4.0.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.4.0.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.4.0.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.4.0.svg#fontawesome) format("svg");unicode-range:U+f4f3,U+f6ca,U+f6cc,U+f6dc,U+f704,U+f730}@font-face{font-family:"font awesome 5 brands";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.4.2.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.4.2.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.4.2.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.4.2.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.4.2.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.4.2.svg#fontawesome) format("svg");unicode-range:U+f3e4}@font-face{font-family:"font awesome 5 brands";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.6.0.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.6.0.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.6.0.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.6.0.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.6.0.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.6.0.svg#fontawesome) format("svg");unicode-range:U+f181,U+f77b,U+f78d,U+f790,U+f797,U+f7af-f7b1,U+f7b3,U+f7bb,U+f7df,U+f7e3}@font-face{font-family:"font awesome 5 brands";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.7.0.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.7.0.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.7.0.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.7.0.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.7.0.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.7.0.svg#fontawesome) format("svg");unicode-range:U+f198,U+f1a5,U+f1a8,U+f1f3,U+f214,U+f23c,U+f296,U+f2aa,U+f391,U+f39d,U+f3f7,U+f427,U+f4f4,U+f50e,U+f60f}@font-face{font-family:"font awesome 5 brands";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.8.0.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.8.0.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.8.0.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.8.0.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.8.0.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.8.0.svg#fontawesome) format("svg");unicode-range:U+f171,U+f179,U+f1e9,U+f27c,U+f3e8,U+f3f3,U+f41a,U+f41e,U+f420,U+f428,U+f42a-f42c,U+f459,U+f4e4,U+f4f5-f4f6,U+f4f9,U+f50b,U+f50f,U+f511,U+f514,U+f592,U+f5a8,U+f5b2,U+f5b5,U+f5c6,U+f5f7,U+f5fa,U+f612,U+f69d,U+f6af,U+f6c9,U+f731,U+f75d,U+f778,U+f77a,U+f785,U+f789,U+f791,U+f798-f799,U+f7c6,U+f7d3,U+f7d6,U+f7e0-f7e1,U+f834-f83d,U+f83f-f840}@font-face{font-family:"font awesome 5 brands";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.8.1.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.8.1.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.8.1.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.8.1.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.8.1.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.8.1.svg#fontawesome) format("svg");unicode-range:U+f0e1}@font-face{font-family:"font awesome 5 brands";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.8.2.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.8.2.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.8.2.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.8.2.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.8.2.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.8.2.svg#fontawesome) format("svg");unicode-range:U+f082,U+f09a,U+f1d2-f1d3,U+f39e,U+f59e,U+f7bc,U+f841-f842}@font-face{font-family:"font awesome 5 brands";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.9.0.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.9.0.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.9.0.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.9.0.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.9.0.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.9.0.svg#fontawesome) format("svg");unicode-range:U+f39f}@font-face{font-family:"font awesome 5 brands";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.10.0.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.10.0.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.10.0.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.10.0.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.10.0.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-brands-400-free-5.10.0.svg#fontawesome) format("svg");unicode-range:U+f89e}.fab{font-family:"font awesome 5 brands"}@font-face{font-family:"font awesome 5 duotone";font-style:normal;font-weight:900;src:url(../webfonts/fa-duotone-900-pro-5.0.0.eot);src:url(../webfonts/fa-duotone-900-pro-5.0.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-duotone-900-pro-5.0.0.woff2) format("woff2"),url(../webfonts/fa-duotone-900-pro-5.0.0.woff) format("woff"),url(../webfonts/fa-duotone-900-pro-5.0.0.ttf) format("truetype"),url(../webfonts/fa-duotone-900-pro-5.0.0.svg#fontawesome) format("svg");unicode-range:U+f002,U+f005,U+f008-f009,U+f00b-f00c,U+f00e,U+f011,U+f013,U+f017,U+f019,U+f01c,U+f022-f025,U+f02a-f02e,U+f030,U+f040-f042,U+f044,U+f047-f04e,U+f050-f05b,U+f05e,U+f060-f066,U+f068-f06a,U+f074,U+f077-f07a,U+f07c-f07e,U+f085,U+f089,U+f08b,U+f08d-f08e,U+f090-f091,U+f093-f095,U+f098,U+f09c-f09e,U+f0a4-f0ab,U+f0b2,U+f0c1,U+f0c3,U+f0c5-f0c7,U+f0c9,U+f0ce,U+f0d7-f0dc,U+f0e0,U+f0e2-f0e3,U+f0e9-f0ea,U+f0ec,U+f0f4,U+f0f8,U+f0fa-f0fe,U+f100-f108,U+f10a-f10b,U+f110,U+f11b-f11c,U+f120-f122,U+f124,U+f126-f128,U+f12e,U+f132-f134,U+f137-f13a,U+f13d-f13e,U+f141-f144,U+f146,U+f148-f14d,U+f150-f154,U+f156-f159,U+f15c,U+f164-f165,U+f175-f178,U+f182-f183,U+f186,U+f188,U+f191-f193,U+f195,U+f197,U+f199,U+f1ab,U+f1ad-f1ae,U+f1b0,U+f1b2-f1b3,U+f1b8,U+f1bb,U+f1c0-f1c5,U+f1c7-f1c9,U+f1cd-f1ce,U+f1d8,U+f1da,U+f1e0-f1e2,U+f1e6,U+f1ea,U+f1fa,U+f1fd-f1fe,U+f204-f206,U+f20b,U+f217-f218,U+f21a,U+f21c,U+f221-f22d,U+f233,U+f238-f239,U+f240-f244,U+f246,U+f249,U+f24d,U+f255-f25c,U+f26c,U+f271-f274,U+f28b,U+f28d,U+f290-f292,U+f295,U+f29a,U+f29d-f29e,U+f2a1-f2a4,U+f2a7-f2a8,U+f2c7-f2ce,U+f2d0,U+f2d2-f2d3,U+f2db,U+f2e1,U+f2e3-f2e7,U+f2ea-f2ec,U+f2ee,U+f2f0-f2fd,U+f300-f301,U+f303,U+f307-f30f,U+f316-f31a,U+f31c-f31d,U+f320-f326,U+f328-f32e,U+f330-f33e,U+f340-f34c,U+f350-f353,U+f355,U+f358-f35b,U+f35d,U+f360-f367,U+f376,U+f37e,U+f387,U+f389-f38a,U+f390,U+f39b-f39c,U+f3a0,U+f3b3,U+f3be-f3bf,U+f3c2,U+f3c5,U+f3cd-f3cf,U+f3de,U+f3e5,U+f3ed,U+f3f0,U+f3f2,U+f3f4,U+f3fa-f3fc,U+f3ff-f401,U+f40e-f410,U+f422,U+f424,U+10f002,U+10f005,U+10f008-10f009,U+10f00b-10f00c,U+10f00e,U+10f011,U+10f013,U+10f017,U+10f019,U+10f01c,U+10f022-10f025,U+10f02a-10f02e,U+10f030,U+10f040-10f042,U+10f044,U+10f047-10f04e,U+10f050-10f05b,U+10f05e,U+10f060-10f066,U+10f068-10f06a,U+10f074,U+10f077-10f07a,U+10f07c-10f07e,U+10f085,U+10f089,U+10f08b,U+10f08d-10f08e,U+10f090-10f091,U+10f093-10f095,U+10f098,U+10f09c-10f09e,U+10f0a4-10f0ab,U+10f0b2,U+10f0c1,U+10f0c3,U+10f0c5-10f0c7,U+10f0c9,U+10f0ce,U+10f0d7-10f0dc,U+10f0e0,U+10f0e2-10f0e3,U+10f0e9-10f0ea,U+10f0ec,U+10f0f4,U+10f0f8,U+10f0fa-10f0fe,U+10f100-10f108,U+10f10a-10f10b,U+10f110,U+10f11b-10f11c,U+10f120-10f122,U+10f124,U+10f126-10f128,U+10f12e,U+10f132-10f134,U+10f137-10f13a,U+10f13d-10f13e,U+10f141-10f144,U+10f146,U+10f148-10f14d,U+10f150-10f154,U+10f156-10f159,U+10f15c,U+10f164-10f165,U+10f175-10f178,U+10f182-10f183,U+10f186,U+10f188,U+10f191-10f193,U+10f195,U+10f197,U+10f199,U+10f1ab,U+10f1ad-10f1ae,U+10f1b0,U+10f1b2-10f1b3,U+10f1b8,U+10f1bb,U+10f1c0-10f1c5,U+10f1c7-10f1c9,U+10f1cd-10f1ce,U+10f1d8,U+10f1da,U+10f1e0-10f1e2,U+10f1e6,U+10f1ea,U+10f1fa,U+10f1fd-10f1fe,U+10f204-10f206,U+10f20b,U+10f217-10f218,U+10f21a,U+10f21c,U+10f221-10f22d,U+10f233,U+10f238-10f239,U+10f240-10f244,U+10f246,U+10f249,U+10f24d,U+10f255-10f25c,U+10f26c,U+10f271-10f274,U+10f28b,U+10f28d,U+10f290-10f292,U+10f295,U+10f29a,U+10f29d-10f29e,U+10f2a1-10f2a4,U+10f2a7-10f2a8,U+10f2c7-10f2ce,U+10f2d0,U+10f2d2-10f2d3,U+10f2db,U+10f2e1,U+10f2e3-10f2e7,U+10f2ea-10f2ec,U+10f2ee,U+10f2f0-10f2fd,U+10f300-10f301,U+10f303,U+10f307-10f30f,U+10f316-10f31a,U+10f31c-10f31d,U+10f320-10f326,U+10f328-10f32e,U+10f330-10f33e,U+10f340-10f34c,U+10f350-10f353,U+10f355,U+10f358-10f35b,U+10f35d,U+10f360-10f367,U+10f376,U+10f37e,U+10f387,U+10f389-10f38a,U+10f390,U+10f39b-10f39c,U+10f3a0,U+10f3b3,U+10f3be-10f3bf,U+10f3c2,U+10f3c5,U+10f3cd-10f3cf,U+10f3de,U+10f3e5,U+10f3ed,U+10f3f0,U+10f3f2,U+10f3f4,U+10f3fa-10f3fc,U+10f3ff-10f401,U+10f40e-10f410,U+10f422,U+10f424}@font-face{font-family:"font awesome 5 duotone";font-style:normal;font-weight:900;src:url(../webfonts/fa-duotone-900-pro-5.0.1.eot);src:url(../webfonts/fa-duotone-900-pro-5.0.1.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-duotone-900-pro-5.0.1.woff2) format("woff2"),url(../webfonts/fa-duotone-900-pro-5.0.1.woff) format("woff"),url(../webfonts/fa-duotone-900-pro-5.0.1.ttf) format("truetype"),url(../webfonts/fa-duotone-900-pro-5.0.1.svg#fontawesome) format("svg");unicode-range:U+f3c1,U+10f3c1}@font-face{font-family:"font awesome 5 duotone";font-style:normal;font-weight:900;src:url(../webfonts/fa-duotone-900-pro-5.0.3.eot);src:url(../webfonts/fa-duotone-900-pro-5.0.3.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-duotone-900-pro-5.0.3.woff2) format("woff2"),url(../webfonts/fa-duotone-900-pro-5.0.3.woff) format("woff"),url(../webfonts/fa-duotone-900-pro-5.0.3.ttf) format("truetype"),url(../webfonts/fa-duotone-900-pro-5.0.3.svg#fontawesome) format("svg");unicode-range:U+f19c,U+f245,U+f2b9,U+f2bb,U+f2c1,U+f3e0,U+10f19c,U+10f245,U+10f2b9,U+10f2bb,U+10f2c1,U+10f3e0}@font-face{font-family:"font awesome 5 duotone";font-style:normal;font-weight:900;src:url(../webfonts/fa-duotone-900-pro-5.0.5.eot);src:url(../webfonts/fa-duotone-900-pro-5.0.5.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-duotone-900-pro-5.0.5.woff2) format("woff2"),url(../webfonts/fa-duotone-900-pro-5.0.5.woff) format("woff"),url(../webfonts/fa-duotone-900-pro-5.0.5.ttf) format("truetype"),url(../webfonts/fa-duotone-900-pro-5.0.5.svg#fontawesome) format("svg");unicode-range:U+f1e3,U+f432-f434,U+f436-f438,U+f449-f44c,U+f44e-f451,U+f453,U+f455,U+f458,U+f45a-f45e,U+10f1e3,U+10f432-10f434,U+10f436-10f438,U+10f449-10f44c,U+10f44e-10f451,U+10f453,U+10f455,U+10f458,U+10f45a-10f45e}@font-face{font-family:"font awesome 5 duotone";font-style:normal;font-weight:900;src:url(../webfonts/fa-duotone-900-pro-5.0.7.eot);src:url(../webfonts/fa-duotone-900-pro-5.0.7.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-duotone-900-pro-5.0.7.woff2) format("woff2"),url(../webfonts/fa-duotone-900-pro-5.0.7.woff) format("woff"),url(../webfonts/fa-duotone-900-pro-5.0.7.ttf) format("truetype"),url(../webfonts/fa-duotone-900-pro-5.0.7.svg#fontawesome) format("svg");unicode-range:U+f0d1,U+f0f1,U+f0f9,U+f21e,U+f46?,U+f472-f475,U+f477-f47a,U+f47d-f47e,U+f481-f497,U+10f0d1,U+10f0f1,U+10f0f9,U+10f21e,U+10f46?,U+10f472-10f475,U+10f477-10f47a,U+10f47d-10f47e,U+10f481-10f497}@font-face{font-family:"font awesome 5 duotone";font-style:normal;font-weight:900;src:url(../webfonts/fa-duotone-900-pro-5.0.9.eot);src:url(../webfonts/fa-duotone-900-pro-5.0.9.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-duotone-900-pro-5.0.9.woff2) format("woff2"),url(../webfonts/fa-duotone-900-pro-5.0.9.woff) format("woff"),url(../webfonts/fa-duotone-900-pro-5.0.9.ttf) format("truetype"),url(../webfonts/fa-duotone-900-pro-5.0.9.svg#fontawesome) format("svg");unicode-range:U+f03d,U+f06c,U+f086,U+f0ac,U+f0f2,U+f10d-f10e,U+f155,U+f187,U+f2b5,U+f2e8-f2e9,U+f2fe,U+f3dd,U+f47b-f47c,U+f498,U+f49a-f49b,U+f49d,U+f49f-f4b9,U+f4bb-f4c8,U+f4cb-f4d4,U+f4d6,U+f4d8-f4d9,U+f4db-f4e2,U+10f03d,U+10f06c,U+10f086,U+10f0ac,U+10f0f2,U+10f10d-10f10e,U+10f155,U+10f187,U+10f2b5,U+10f2e8-10f2e9,U+10f2fe,U+10f3dd,U+10f47b-10f47c,U+10f498,U+10f49a-10f49b,U+10f49d,U+10f49f-10f4b9,U+10f4bb-10f4c8,U+10f4cb-10f4d4,U+10f4d6,U+10f4d8-10f4d9,U+10f4db-10f4e2}@font-face{font-family:"font awesome 5 duotone";font-style:normal;font-weight:900;src:url(../webfonts/fa-duotone-900-pro-5.0.10.eot);src:url(../webfonts/fa-duotone-900-pro-5.0.10.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-duotone-900-pro-5.0.10.woff2) format("woff2"),url(../webfonts/fa-duotone-900-pro-5.0.10.woff) format("woff"),url(../webfonts/fa-duotone-900-pro-5.0.10.ttf) format("truetype"),url(../webfonts/fa-duotone-900-pro-5.0.10.svg#fontawesome) format("svg");unicode-range:U+f471,U+f4ca,U+10f471,U+10f4ca}@font-face{font-family:"font awesome 5 duotone";font-style:normal;font-weight:900;src:url(../webfonts/fa-duotone-900-pro-5.0.11.eot);src:url(../webfonts/fa-duotone-900-pro-5.0.11.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-duotone-900-pro-5.0.11.woff2) format("woff2"),url(../webfonts/fa-duotone-900-pro-5.0.11.woff) format("woff"),url(../webfonts/fa-duotone-900-pro-5.0.11.ttf) format("truetype"),url(../webfonts/fa-duotone-900-pro-5.0.11.svg#fontawesome) format("svg");unicode-range:U+f007,U+f0c0,U+f0c2,U+f0ed-f0ee,U+f0f0,U+f1de,U+f21b,U+f234-f235,U+f2bd,U+f381-f382,U+f3f1,U+f406,U+f4e6,U+f4fa-f501,U+f503-f509,U+10f007,U+10f0c0,U+10f0c2,U+10f0ed-10f0ee,U+10f0f0,U+10f1de,U+10f21b,U+10f234-10f235,U+10f2bd,U+10f381-10f382,U+10f3f1,U+10f406,U+10f4e6,U+10f4fa-10f501,U+10f503-10f509}@font-face{font-family:"font awesome 5 duotone";font-style:normal;font-weight:900;src:url(../webfonts/fa-duotone-900-pro-5.0.13.eot);src:url(../webfonts/fa-duotone-900-pro-5.0.13.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-duotone-900-pro-5.0.13.woff2) format("woff2"),url(../webfonts/fa-duotone-900-pro-5.0.13.woff) format("woff"),url(../webfonts/fa-duotone-900-pro-5.0.13.ttf) format("truetype"),url(../webfonts/fa-duotone-900-pro-5.0.13.svg#fontawesome) format("svg");unicode-range:U+f00d,U+f010,U+f067,U+f072,U+f0ad,U+f0d6,U+f0e8,U+f130-f131,U+f24e,U+f3c9,U+f3d1,U+f515-f517,U+f519-f51e,U+f520-f52c,U+f52e,U+f530-f533,U+f535-f555,U+10f00d,U+10f010,U+10f067,U+10f072,U+10f0ad,U+10f0d6,U+10f0e8,U+10f130-10f131,U+10f24e,U+10f3c9,U+10f3d1,U+10f515-10f517,U+10f519-10f51e,U+10f520-10f52c,U+10f52e,U+10f530-10f533,U+10f535-10f555}@font-face{font-family:"font awesome 5 duotone";font-style:normal;font-weight:900;src:url(../webfonts/fa-duotone-900-pro-5.1.0.eot);src:url(../webfonts/fa-duotone-900-pro-5.1.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-duotone-900-pro-5.1.0.woff2) format("woff2"),url(../webfonts/fa-duotone-900-pro-5.1.0.woff) format("woff"),url(../webfonts/fa-duotone-900-pro-5.1.0.ttf) format("truetype"),url(../webfonts/fa-duotone-900-pro-5.1.0.svg#fontawesome) format("svg");unicode-range:U+f043,U+f0c4,U+f0d0,U+f118-f11a,U+f125,U+f1ba,U+f1fb-f1fc,U+f207,U+f236,U+f279,U+f304-f305,U+f4da,U+f52d,U+f556-f558,U+f55a-f55f,U+f562-f56d,U+f570-f577,U+f579-f58b,U+f58d-f590,U+f593-f595,U+f597-f59d,U+f59f-f5a2,U+f5a4-f5a7,U+f5a9-f5af,U+f5b1,U+f5b3-f5b4,U+f5b6,U+f5b8-f5bd,U+f5bf-f5c5,U+f5c7-f5cb,U+f5cd,U+10f043,U+10f0c4,U+10f0d0,U+10f118-10f11a,U+10f125,U+10f1ba,U+10f1fb-10f1fc,U+10f207,U+10f236,U+10f279,U+10f304-10f305,U+10f4da,U+10f52d,U+10f556-10f558,U+10f55a-10f55f,U+10f562-10f56d,U+10f570-10f577,U+10f579-10f58b,U+10f58d-10f590,U+10f593-10f595,U+10f597-10f59d,U+10f59f-10f5a2,U+10f5a4-10f5a7,U+10f5a9-10f5af,U+10f5b1,U+10f5b3-10f5b4,U+10f5b6,U+10f5b8-10f5bd,U+10f5bf-10f5c5,U+10f5c7-10f5cb,U+10f5cd}@font-face{font-family:"font awesome 5 duotone";font-style:normal;font-weight:900;src:url(../webfonts/fa-duotone-900-pro-5.1.1.eot);src:url(../webfonts/fa-duotone-900-pro-5.1.1.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-duotone-900-pro-5.1.1.woff2) format("woff2"),url(../webfonts/fa-duotone-900-pro-5.1.1.woff) format("woff"),url(../webfonts/fa-duotone-900-pro-5.1.1.ttf) format("truetype"),url(../webfonts/fa-duotone-900-pro-5.1.1.svg#fontawesome) format("svg");unicode-range:U+f386,U+f58c,U+f596,U+10f386,U+10f58c,U+10f596}@font-face{font-family:"font awesome 5 duotone";font-style:normal;font-weight:900;src:url(../webfonts/fa-duotone-900-pro-5.2.0.eot);src:url(../webfonts/fa-duotone-900-pro-5.2.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-duotone-900-pro-5.2.0.woff2) format("woff2"),url(../webfonts/fa-duotone-900-pro-5.2.0.woff) format("woff"),url(../webfonts/fa-duotone-900-pro-5.2.0.ttf) format("truetype"),url(../webfonts/fa-duotone-900-pro-5.2.0.svg#fontawesome) format("svg");unicode-range:U+f001,U+f018,U+f0e4,U+f0f3,U+f109,U+f14e,U+f1b9,U+f1e5,U+f1f6,U+f21d,U+f276-f277,U+f3fd,U+f4d7,U+f518,U+f559,U+f5d0-f5da,U+f5dd-f5e6,U+f5e8-f5f0,U+f5f2-f5f5,U+f5f8-f5f9,U+f5fb-f60e,U+f610,U+f614,U+f616-f619,U+f61c-f63e,U+10f001,U+10f018,U+10f0e4,U+10f0f3,U+10f109,U+10f14e,U+10f1b9,U+10f1e5,U+10f1f6,U+10f21d,U+10f276-10f277,U+10f3fd,U+10f4d7,U+10f518,U+10f559,U+10f5d0-10f5da,U+10f5dd-10f5e6,U+10f5e8-10f5f0,U+10f5f2-10f5f5,U+10f5f8-10f5f9,U+10f5fb-10f60e,U+10f610,U+10f614,U+10f616-10f619,U+10f61c-10f63e}@font-face{font-family:"font awesome 5 duotone";font-style:normal;font-weight:900;src:url(../webfonts/fa-duotone-900-pro-5.3.0.eot);src:url(../webfonts/fa-duotone-900-pro-5.3.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-duotone-900-pro-5.3.0.woff2) format("woff2"),url(../webfonts/fa-duotone-900-pro-5.3.0.woff) format("woff"),url(../webfonts/fa-duotone-900-pro-5.3.0.ttf) format("truetype"),url(../webfonts/fa-duotone-900-pro-5.3.0.svg#fontawesome) format("svg");unicode-range:U+f027-f028,U+f02f,U+f080,U+f0a1,U+f0b1,U+f0eb,U+f1ac,U+f1ec,U+f200-f201,U+f2e2,U+f61a-f61b,U+f640-f641,U+f643-f653,U+f655-f656,U+f659-f663,U+f665-f675,U+f678-f680,U+f683-f68b,U+f694-f69c,U+f69e-f69f,U+f6a1-f6a9,U+f6ac-f6ad,U+10f027-10f028,U+10f02f,U+10f080,U+10f0a1,U+10f0b1,U+10f0eb,U+10f1ac,U+10f1ec,U+10f200-10f201,U+10f2e2,U+10f61a-10f61b,U+10f640-10f641,U+10f643-10f653,U+10f655-10f656,U+10f659-10f663,U+10f665-10f675,U+10f678-10f680,U+10f683-10f68b,U+10f694-10f69c,U+10f69e-10f69f,U+10f6a1-10f6a9,U+10f6ac-10f6ad}@font-face{font-family:"font awesome 5 duotone";font-style:normal;font-weight:900;src:url(../webfonts/fa-duotone-900-pro-5.4.0.eot);src:url(../webfonts/fa-duotone-900-pro-5.4.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-duotone-900-pro-5.4.0.woff2) format("woff2"),url(../webfonts/fa-duotone-900-pro-5.4.0.woff) format("woff"),url(../webfonts/fa-duotone-900-pro-5.4.0.ttf) format("truetype"),url(../webfonts/fa-duotone-900-pro-5.4.0.svg#fontawesome) format("svg");unicode-range:U+f499,U+f676,U+f6ae,U+f6b0-f6bc,U+f6bf-f6c2,U+f6c5-f6c8,U+f6cb,U+f6cd-f6d5,U+f6d8-f6d9,U+f6db,U+f6dd-f6e3,U+f6e5-f6ec,U+f6ee,U+f6f1-f6f3,U+f6f5-f6f9,U+f6fc-f6fd,U+f6ff-f703,U+f706-f70f,U+f711-f724,U+f726-f729,U+f72b,U+f72d,U+f72f,U+10f499,U+10f676,U+10f6ae,U+10f6b0-10f6bc,U+10f6bf-10f6c2,U+10f6c5-10f6c8,U+10f6cb,U+10f6cd-10f6d5,U+10f6d8-10f6d9,U+10f6db,U+10f6dd-10f6e3,U+10f6e5-10f6ec,U+10f6ee,U+10f6f1-10f6f3,U+10f6f5-10f6f9,U+10f6fc-10f6fd,U+10f6ff-10f703,U+10f706-10f70f,U+10f711-10f724,U+10f726-10f729,U+10f72b,U+10f72d,U+10f72f}@font-face{font-family:"font awesome 5 duotone";font-style:normal;font-weight:900;src:url(../webfonts/fa-duotone-900-pro-5.4.1.eot);src:url(../webfonts/fa-duotone-900-pro-5.4.1.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-duotone-900-pro-5.4.1.woff2) format("woff2"),url(../webfonts/fa-duotone-900-pro-5.4.1.woff) format("woff"),url(../webfonts/fa-duotone-900-pro-5.4.1.ttf) format("truetype"),url(../webfonts/fa-duotone-900-pro-5.4.1.svg#fontawesome) format("svg");unicode-range:U+f72a,U+10f72a}@font-face{font-family:"font awesome 5 duotone";font-style:normal;font-weight:900;src:url(../webfonts/fa-duotone-900-pro-5.5.0.eot);src:url(../webfonts/fa-duotone-900-pro-5.5.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-duotone-900-pro-5.5.0.woff2) format("woff2"),url(../webfonts/fa-duotone-900-pro-5.5.0.woff) format("woff"),url(../webfonts/fa-duotone-900-pro-5.5.0.ttf) format("truetype"),url(../webfonts/fa-duotone-900-pro-5.5.0.svg#fontawesome) format("svg");unicode-range:U+f0e7,U+f185,U+f2dc,U+f6c3-f6c4,U+f72e,U+f732-f750,U+f752-f758,U+f75a,U+f75c,U+f75e-f777,U+10f0e7,U+10f185,U+10f2dc,U+10f6c3-10f6c4,U+10f72e,U+10f732-10f750,U+10f752-10f758,U+10f75a,U+10f75c,U+10f75e-10f777}@font-face{font-family:"font awesome 5 duotone";font-style:normal;font-weight:900;src:url(../webfonts/fa-duotone-900-pro-5.6.0.eot);src:url(../webfonts/fa-duotone-900-pro-5.6.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-duotone-900-pro-5.6.0.woff2) format("woff2"),url(../webfonts/fa-duotone-900-pro-5.6.0.woff) format("woff"),url(../webfonts/fa-duotone-900-pro-5.6.0.ttf) format("truetype"),url(../webfonts/fa-duotone-900-pro-5.6.0.svg#fontawesome) format("svg");unicode-range:U+f06b,U+f5b7,U+f77d,U+f77f,U+f781-f784,U+f788,U+f78a-f78c,U+f78e-f78f,U+f792-f796,U+f79a-f7aa,U+f7ac-f7ae,U+f7b4-f7b6,U+f7b8,U+f7bd-f7be,U+f7c0-f7c3,U+f7c5,U+f7c7-f7d2,U+f7d4-f7d5,U+f7d7-f7de,U+f7e2,U+10f06b,U+10f5b7,U+10f77d,U+10f77f,U+10f781-10f784,U+10f788,U+10f78a-10f78c,U+10f78e-10f78f,U+10f792-10f796,U+10f79a-10f7aa,U+10f7ac-10f7ae,U+10f7b4-10f7b6,U+10f7b8,U+10f7bd-10f7be,U+10f7c0-10f7c3,U+10f7c5,U+10f7c7-10f7d2,U+10f7d4-10f7d5,U+10f7d7-10f7de,U+10f7e2}@font-face{font-family:"font awesome 5 duotone";font-style:normal;font-weight:900;src:url(../webfonts/fa-duotone-900-pro-5.6.1.eot);src:url(../webfonts/fa-duotone-900-pro-5.6.1.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-duotone-900-pro-5.6.1.woff2) format("woff2"),url(../webfonts/fa-duotone-900-pro-5.6.1.woff) format("woff"),url(../webfonts/fa-duotone-900-pro-5.6.1.ttf) format("truetype"),url(../webfonts/fa-duotone-900-pro-5.6.1.svg#fontawesome) format("svg");unicode-range:U+f071,U+10f071}@font-face{font-family:"font awesome 5 duotone";font-style:normal;font-weight:900;src:url(../webfonts/fa-duotone-900-pro-5.6.3.eot);src:url(../webfonts/fa-duotone-900-pro-5.6.3.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-duotone-900-pro-5.6.3.woff2) format("woff2"),url(../webfonts/fa-duotone-900-pro-5.6.3.woff) format("woff"),url(../webfonts/fa-duotone-900-pro-5.6.3.ttf) format("truetype"),url(../webfonts/fa-duotone-900-pro-5.6.3.svg#fontawesome) format("svg");unicode-range:U+f7e4,U+10f7e4}@font-face{font-family:"font awesome 5 duotone";font-style:normal;font-weight:900;src:url(../webfonts/fa-duotone-900-pro-5.7.0.eot);src:url(../webfonts/fa-duotone-900-pro-5.7.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-duotone-900-pro-5.7.0.woff2) format("woff2"),url(../webfonts/fa-duotone-900-pro-5.7.0.woff) format("woff"),url(../webfonts/fa-duotone-900-pro-5.7.0.ttf) format("truetype"),url(../webfonts/fa-duotone-900-pro-5.7.0.svg#fontawesome) format("svg");unicode-range:U+f00a,U+f015,U+f06e,U+f070,U+f073,U+f135,U+f1c6,U+f1e4,U+f1f8,U+f2a0,U+f2ed,U+f377,U+f470,U+f49c,U+f49e,U+f4c9,U+f56e-f56f,U+f664,U+f6d6-f6d7,U+f705,U+f710,U+f725,U+f77e,U+f780,U+f7e5-f7e7,U+f7e9-f7f0,U+f7f2-f7fe,U+f800-f812,U+f814-f833,U+10f00a,U+10f015,U+10f06e,U+10f070,U+10f073,U+10f135,U+10f1c6,U+10f1e4,U+10f1f8,U+10f2a0,U+10f2ed,U+10f377,U+10f470,U+10f49c,U+10f49e,U+10f4c9,U+10f56e-10f56f,U+10f664,U+10f6d6-10f6d7,U+10f705,U+10f710,U+10f725,U+10f77e,U+10f780,U+10f7e5-10f7e7,U+10f7e9-10f7f0,U+10f7f2-10f7fe,U+10f800-10f812,U+10f814-10f833}@font-face{font-family:"font awesome 5 duotone";font-style:normal;font-weight:900;src:url(../webfonts/fa-duotone-900-pro-5.7.1.eot);src:url(../webfonts/fa-duotone-900-pro-5.7.1.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-duotone-900-pro-5.7.1.woff2) format("woff2"),url(../webfonts/fa-duotone-900-pro-5.7.1.woff) format("woff"),url(../webfonts/fa-duotone-900-pro-5.7.1.ttf) format("truetype"),url(../webfonts/fa-duotone-900-pro-5.7.1.svg#fontawesome) format("svg");unicode-range:U+f7f1,U+10f7f1}@font-face{font-family:"font awesome 5 duotone";font-style:normal;font-weight:900;src:url(../webfonts/fa-duotone-900-pro-5.8.0.eot);src:url(../webfonts/fa-duotone-900-pro-5.8.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-duotone-900-pro-5.8.0.woff2) format("woff2"),url(../webfonts/fa-duotone-900-pro-5.8.0.woff) format("woff"),url(../webfonts/fa-duotone-900-pro-5.8.0.ttf) format("truetype"),url(../webfonts/fa-duotone-900-pro-5.8.0.svg#fontawesome) format("svg");unicode-range:U+f01e,U+f021,U+f026,U+f076,U+f12d,U+f31e,U+f356,U+f45f,U+f5b0,U+f7ff,U+f83e,U+10f01e,U+10f021,U+10f026,U+10f076,U+10f12d,U+10f31e,U+10f356,U+10f45f,U+10f5b0,U+10f7ff,U+10f83e}@font-face{font-family:"font awesome 5 duotone";font-style:normal;font-weight:900;src:url(../webfonts/fa-duotone-900-pro-5.8.2.eot);src:url(../webfonts/fa-duotone-900-pro-5.8.2.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-duotone-900-pro-5.8.2.woff2) format("woff2"),url(../webfonts/fa-duotone-900-pro-5.8.2.woff) format("woff"),url(../webfonts/fa-duotone-900-pro-5.8.2.ttf) format("truetype"),url(../webfonts/fa-duotone-900-pro-5.8.2.svg#fontawesome) format("svg");unicode-range:U+f560,U+f7b9-f7ba,U+f7c4,U+10f560,U+10f7b9-10f7ba,U+10f7c4}@font-face{font-family:"font awesome 5 duotone";font-style:normal;font-weight:900;src:url(../webfonts/fa-duotone-900-pro-5.9.0.eot);src:url(../webfonts/fa-duotone-900-pro-5.9.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-duotone-900-pro-5.9.0.woff2) format("woff2"),url(../webfonts/fa-duotone-900-pro-5.9.0.woff) format("woff"),url(../webfonts/fa-duotone-900-pro-5.9.0.ttf) format("truetype"),url(../webfonts/fa-duotone-900-pro-5.9.0.svg#fontawesome) format("svg");unicode-range:U+f031-f032,U+f034-f03c,U+f0ae,U+f0ca-f0cd,U+f12b-f12c,U+f15d-f15e,U+f160-f163,U+f1dd,U+f313-f315,U+f34e,U+f439-f448,U+f502,U+f5dc,U+f677,U+f6a0,U+f843-f85e,U+f860-f862,U+f864-f878,U+f87a,U+f87c-f892,U+f894-f89b,U+10f031-10f032,U+10f034-10f03c,U+10f0ae,U+10f0ca-10f0cd,U+10f12b-10f12c,U+10f15d-10f15e,U+10f160-10f163,U+10f1dd,U+10f313-10f315,U+10f34e,U+10f439-10f448,U+10f502,U+10f5dc,U+10f677,U+10f6a0,U+10f843-10f85e,U+10f860-10f862,U+10f864-10f878,U+10f87a,U+10f87c-10f892,U+10f894-10f89b}@font-face{font-family:"font awesome 5 duotone";font-style:normal;font-weight:900;src:url(../webfonts/fa-duotone-900-pro-5.10.1.eot);src:url(../webfonts/fa-duotone-900-pro-5.10.1.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-duotone-900-pro-5.10.1.woff2) format("woff2"),url(../webfonts/fa-duotone-900-pro-5.10.1.woff) format("woff"),url(../webfonts/fa-duotone-900-pro-5.10.1.ttf) format("truetype"),url(../webfonts/fa-duotone-900-pro-5.10.1.svg#fontawesome) format("svg");unicode-range:U+f000,U+f004,U+f012,U+f029,U+f033,U+f03e,U+f06d,U+f075,U+f07b,U+f083-f084,U+f0a0,U+f0a3,U+f0b0,U+f0c8,U+f0dd-f0de,U+f111,U+f11e,U+f129-f12a,U+f140,U+f145,U+f15b,U+f19d,U+f1dc,U+f1eb,U+f1f9,U+f20a,U+f219,U+f247-f248,U+f251-f254,U+f25d,U+f275,U+f27a,U+f2b6,U+f2c2,U+f2d1,U+f302,U+f306,U+f310-f312,U+f327,U+f34d,U+f354,U+f357,U+f3a5,U+f435,U+f454,U+f456,U+f476,U+f47f-f480,U+f4ba,U+f4e3,U+f51f,U+f52f,U+f534,U+f561,U+f578,U+f591,U+f5ce,U+f5db,U+f5e7,U+f5f6,U+f611,U+f613,U+f615,U+f654,U+f657-f658,U+f681-f682,U+f68c-f693,U+f6aa-f6ab,U+f6bd-f6be,U+f6da,U+f6e4,U+f6ed,U+f6ef-f6f0,U+f6f4,U+f6fa-f6fb,U+f6fe,U+f72c,U+f751,U+f759,U+f75b,U+f779,U+f77c,U+f786-f787,U+f7ab,U+f7b2,U+f7b7,U+f7bf,U+f7e8,U+f813,U+f85f,U+f863,U+f879,U+f87b,U+f893,U+f89c-f89d,U+10f000,U+10f004,U+10f012,U+10f029,U+10f033,U+10f03e,U+10f06d,U+10f075,U+10f07b,U+10f083-10f084,U+10f0a0,U+10f0a3,U+10f0b0,U+10f0c8,U+10f0dd-10f0de,U+10f111,U+10f11e,U+10f129-10f12a,U+10f140,U+10f145,U+10f15b,U+10f19d,U+10f1dc,U+10f1eb,U+10f1f9,U+10f20a,U+10f219,U+10f247-10f248,U+10f251-10f254,U+10f25d,U+10f275,U+10f27a,U+10f2b6,U+10f2c2,U+10f2d1,U+10f302,U+10f306,U+10f310-10f312,U+10f327,U+10f34d,U+10f354,U+10f357,U+10f3a5,U+10f435,U+10f454,U+10f456,U+10f476,U+10f47f-10f480,U+10f4ba,U+10f4e3,U+10f51f,U+10f52f,U+10f534,U+10f561,U+10f578,U+10f591,U+10f5ce,U+10f5db,U+10f5e7,U+10f5f6,U+10f611,U+10f613,U+10f615,U+10f654,U+10f657-10f658,U+10f681-10f682,U+10f68c-10f693,U+10f6aa-10f6ab,U+10f6bd-10f6be,U+10f6da,U+10f6e4,U+10f6ed,U+10f6ef-10f6f0,U+10f6f4,U+10f6fa-10f6fb,U+10f6fe,U+10f72c,U+10f751,U+10f759,U+10f75b,U+10f779,U+10f77c,U+10f786-10f787,U+10f7ab,U+10f7b2,U+10f7b7,U+10f7bf,U+10f7e8,U+10f813,U+10f85f,U+10f863,U+10f879,U+10f87b,U+10f893,U+10f89c-10f89d}.fad{position:relative;font-family:"font awesome 5 duotone";font-weight:900}.fad:before{position:absolute;color:var(--fa-primary-color,inherit);opacity:1;opacity:var(--fa-primary-opacity,1)}.fad:after{color:var(--fa-secondary-color,inherit)}.fa-swap-opacity .fad:before,.fad.fa-swap-opacity:before,.fad:after{opacity:.4;opacity:var(--fa-secondary-opacity,.4)}.fa-swap-opacity .fad:after,.fad.fa-swap-opacity:after{opacity:1;opacity:var(--fa-primary-opacity,1)}.fad.fa-inverse{color:#fff}.fad.fa-stack-1x,.fad.fa-stack-2x{position:absolute}.fad.fa-fw:before,.fad.fa-stack-1x:before,.fad.fa-stack-2x:before{left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.fad.fa-abacus:after{content:"\10f640"}.fad.fa-acorn:after{content:"\10f6ae"}.fad.fa-ad:after{content:"\10f641"}.fad.fa-address-book:after{content:"\10f2b9"}.fad.fa-address-card:after{content:"\10f2bb"}.fad.fa-adjust:after{content:"\10f042"}.fad.fa-air-freshener:after{content:"\10f5d0"}.fad.fa-alarm-clock:after{content:"\10f34e"}.fad.fa-alarm-exclamation:after{content:"\10f843"}.fad.fa-alarm-plus:after{content:"\10f844"}.fad.fa-alarm-snooze:after{content:"\10f845"}.fad.fa-alicorn:after{content:"\10f6b0"}.fad.fa-align-center:after{content:"\10f037"}.fad.fa-align-justify:after{content:"\10f039"}.fad.fa-align-left:after{content:"\10f036"}.fad.fa-align-right:after{content:"\10f038"}.fad.fa-align-slash:after{content:"\10f846"}.fad.fa-allergies:after{content:"\10f461"}.fad.fa-ambulance:after{content:"\10f0f9"}.fad.fa-american-sign-language-interpreting:after{content:"\10f2a3"}.fad.fa-analytics:after{content:"\10f643"}.fad.fa-anchor:after{content:"\10f13d"}.fad.fa-angel:after{content:"\10f779"}.fad.fa-angle-double-down:after{content:"\10f103"}.fad.fa-angle-double-left:after{content:"\10f100"}.fad.fa-angle-double-right:after{content:"\10f101"}.fad.fa-angle-double-up:after{content:"\10f102"}.fad.fa-angle-down:after{content:"\10f107"}.fad.fa-angle-left:after{content:"\10f104"}.fad.fa-angle-right:after{content:"\10f105"}.fad.fa-angle-up:after{content:"\10f106"}.fad.fa-angry:after{content:"\10f556"}.fad.fa-ankh:after{content:"\10f644"}.fad.fa-apple-alt:after{content:"\10f5d1"}.fad.fa-apple-crate:after{content:"\10f6b1"}.fad.fa-archive:after{content:"\10f187"}.fad.fa-archway:after{content:"\10f557"}.fad.fa-arrow-alt-circle-down:after{content:"\10f358"}.fad.fa-arrow-alt-circle-left:after{content:"\10f359"}.fad.fa-arrow-alt-circle-right:after{content:"\10f35a"}.fad.fa-arrow-alt-circle-up:after{content:"\10f35b"}.fad.fa-arrow-alt-down:after{content:"\10f354"}.fad.fa-arrow-alt-from-bottom:after{content:"\10f346"}.fad.fa-arrow-alt-from-left:after{content:"\10f347"}.fad.fa-arrow-alt-from-right:after{content:"\10f348"}.fad.fa-arrow-alt-from-top:after{content:"\10f349"}.fad.fa-arrow-alt-left:after{content:"\10f355"}.fad.fa-arrow-alt-right:after{content:"\10f356"}.fad.fa-arrow-alt-square-down:after{content:"\10f350"}.fad.fa-arrow-alt-square-left:after{content:"\10f351"}.fad.fa-arrow-alt-square-right:after{content:"\10f352"}.fad.fa-arrow-alt-square-up:after{content:"\10f353"}.fad.fa-arrow-alt-to-bottom:after{content:"\10f34a"}.fad.fa-arrow-alt-to-left:after{content:"\10f34b"}.fad.fa-arrow-alt-to-right:after{content:"\10f34c"}.fad.fa-arrow-alt-to-top:after{content:"\10f34d"}.fad.fa-arrow-alt-up:after{content:"\10f357"}.fad.fa-arrow-circle-down:after{content:"\10f0ab"}.fad.fa-arrow-circle-left:after{content:"\10f0a8"}.fad.fa-arrow-circle-right:after{content:"\10f0a9"}.fad.fa-arrow-circle-up:after{content:"\10f0aa"}.fad.fa-arrow-down:after{content:"\10f063"}.fad.fa-arrow-from-bottom:after{content:"\10f342"}.fad.fa-arrow-from-left:after{content:"\10f343"}.fad.fa-arrow-from-right:after{content:"\10f344"}.fad.fa-arrow-from-top:after{content:"\10f345"}.fad.fa-arrow-left:after{content:"\10f060"}.fad.fa-arrow-right:after{content:"\10f061"}.fad.fa-arrow-square-down:after{content:"\10f339"}.fad.fa-arrow-square-left:after{content:"\10f33a"}.fad.fa-arrow-square-right:after{content:"\10f33b"}.fad.fa-arrow-square-up:after{content:"\10f33c"}.fad.fa-arrow-to-bottom:after{content:"\10f33d"}.fad.fa-arrow-to-left:after{content:"\10f33e"}.fad.fa-arrow-to-right:after{content:"\10f340"}.fad.fa-arrow-to-top:after{content:"\10f341"}.fad.fa-arrow-up:after{content:"\10f062"}.fad.fa-arrows:after{content:"\10f047"}.fad.fa-arrows-alt:after{content:"\10f0b2"}.fad.fa-arrows-alt-h:after{content:"\10f337"}.fad.fa-arrows-alt-v:after{content:"\10f338"}.fad.fa-arrows-h:after{content:"\10f07e"}.fad.fa-arrows-v:after{content:"\10f07d"}.fad.fa-assistive-listening-systems:after{content:"\10f2a2"}.fad.fa-asterisk:after{content:"\10f069"}.fad.fa-at:after{content:"\10f1fa"}.fad.fa-atlas:after{content:"\10f558"}.fad.fa-atom:after{content:"\10f5d2"}.fad.fa-atom-alt:after{content:"\10f5d3"}.fad.fa-audio-description:after{content:"\10f29e"}.fad.fa-award:after{content:"\10f559"}.fad.fa-axe:after{content:"\10f6b2"}.fad.fa-axe-battle:after{content:"\10f6b3"}.fad.fa-baby:after{content:"\10f77c"}.fad.fa-baby-carriage:after{content:"\10f77d"}.fad.fa-backpack:after{content:"\10f5d4"}.fad.fa-backspace:after{content:"\10f55a"}.fad.fa-backward:after{content:"\10f04a"}.fad.fa-bacon:after{content:"\10f7e5"}.fad.fa-badge:after{content:"\10f335"}.fad.fa-badge-check:after{content:"\10f336"}.fad.fa-badge-dollar:after{content:"\10f645"}.fad.fa-badge-percent:after{content:"\10f646"}.fad.fa-badger-honey:after{content:"\10f6b4"}.fad.fa-bags-shopping:after{content:"\10f847"}.fad.fa-balance-scale:after{content:"\10f24e"}.fad.fa-balance-scale-left:after{content:"\10f515"}.fad.fa-balance-scale-right:after{content:"\10f516"}.fad.fa-ball-pile:after{content:"\10f77e"}.fad.fa-ballot:after{content:"\10f732"}.fad.fa-ballot-check:after{content:"\10f733"}.fad.fa-ban:after{content:"\10f05e"}.fad.fa-band-aid:after{content:"\10f462"}.fad.fa-barcode:after{content:"\10f02a"}.fad.fa-barcode-alt:after{content:"\10f463"}.fad.fa-barcode-read:after{content:"\10f464"}.fad.fa-barcode-scan:after{content:"\10f465"}.fad.fa-bars:after{content:"\10f0c9"}.fad.fa-baseball:after{content:"\10f432"}.fad.fa-baseball-ball:after{content:"\10f433"}.fad.fa-basketball-ball:after{content:"\10f434"}.fad.fa-basketball-hoop:after{content:"\10f435"}.fad.fa-bat:after{content:"\10f6b5"}.fad.fa-bath:after{content:"\10f2cd"}.fad.fa-battery-bolt:after{content:"\10f376"}.fad.fa-battery-empty:after{content:"\10f244"}.fad.fa-battery-full:after{content:"\10f240"}.fad.fa-battery-half:after{content:"\10f242"}.fad.fa-battery-quarter:after{content:"\10f243"}.fad.fa-battery-slash:after{content:"\10f377"}.fad.fa-battery-three-quarters:after{content:"\10f241"}.fad.fa-bed:after{content:"\10f236"}.fad.fa-beer:after{content:"\10f0fc"}.fad.fa-bell:after{content:"\10f0f3"}.fad.fa-bell-exclamation:after{content:"\10f848"}.fad.fa-bell-plus:after{content:"\10f849"}.fad.fa-bell-school:after{content:"\10f5d5"}.fad.fa-bell-school-slash:after{content:"\10f5d6"}.fad.fa-bell-slash:after{content:"\10f1f6"}.fad.fa-bells:after{content:"\10f77f"}.fad.fa-bezier-curve:after{content:"\10f55b"}.fad.fa-bible:after{content:"\10f647"}.fad.fa-bicycle:after{content:"\10f206"}.fad.fa-biking:after{content:"\10f84a"}.fad.fa-biking-mountain:after{content:"\10f84b"}.fad.fa-binoculars:after{content:"\10f1e5"}.fad.fa-biohazard:after{content:"\10f780"}.fad.fa-birthday-cake:after{content:"\10f1fd"}.fad.fa-blanket:after{content:"\10f498"}.fad.fa-blender:after{content:"\10f517"}.fad.fa-blender-phone:after{content:"\10f6b6"}.fad.fa-blind:after{content:"\10f29d"}.fad.fa-blog:after{content:"\10f781"}.fad.fa-bold:after{content:"\10f032"}.fad.fa-bolt:after{content:"\10f0e7"}.fad.fa-bomb:after{content:"\10f1e2"}.fad.fa-bone:after{content:"\10f5d7"}.fad.fa-bone-break:after{content:"\10f5d8"}.fad.fa-bong:after{content:"\10f55c"}.fad.fa-book:after{content:"\10f02d"}.fad.fa-book-alt:after{content:"\10f5d9"}.fad.fa-book-dead:after{content:"\10f6b7"}.fad.fa-book-heart:after{content:"\10f499"}.fad.fa-book-medical:after{content:"\10f7e6"}.fad.fa-book-open:after{content:"\10f518"}.fad.fa-book-reader:after{content:"\10f5da"}.fad.fa-book-spells:after{content:"\10f6b8"}.fad.fa-book-user:after{content:"\10f7e7"}.fad.fa-bookmark:after{content:"\10f02e"}.fad.fa-books:after{content:"\10f5db"}.fad.fa-books-medical:after{content:"\10f7e8"}.fad.fa-boot:after{content:"\10f782"}.fad.fa-booth-curtain:after{content:"\10f734"}.fad.fa-border-all:after{content:"\10f84c"}.fad.fa-border-bottom:after{content:"\10f84d"}.fad.fa-border-center-h:after{content:"\10f89c"}.fad.fa-border-center-v:after{content:"\10f89d"}.fad.fa-border-inner:after{content:"\10f84e"}.fad.fa-border-left:after{content:"\10f84f"}.fad.fa-border-none:after{content:"\10f850"}.fad.fa-border-outer:after{content:"\10f851"}.fad.fa-border-right:after{content:"\10f852"}.fad.fa-border-style:after{content:"\10f853"}.fad.fa-border-style-alt:after{content:"\10f854"}.fad.fa-border-top:after{content:"\10f855"}.fad.fa-bow-arrow:after{content:"\10f6b9"}.fad.fa-bowling-ball:after{content:"\10f436"}.fad.fa-bowling-pins:after{content:"\10f437"}.fad.fa-box:after{content:"\10f466"}.fad.fa-box-alt:after{content:"\10f49a"}.fad.fa-box-ballot:after{content:"\10f735"}.fad.fa-box-check:after{content:"\10f467"}.fad.fa-box-fragile:after{content:"\10f49b"}.fad.fa-box-full:after{content:"\10f49c"}.fad.fa-box-heart:after{content:"\10f49d"}.fad.fa-box-open:after{content:"\10f49e"}.fad.fa-box-up:after{content:"\10f49f"}.fad.fa-box-usd:after{content:"\10f4a0"}.fad.fa-boxes:after{content:"\10f468"}.fad.fa-boxes-alt:after{content:"\10f4a1"}.fad.fa-boxing-glove:after{content:"\10f438"}.fad.fa-brackets:after{content:"\10f7e9"}.fad.fa-brackets-curly:after{content:"\10f7ea"}.fad.fa-braille:after{content:"\10f2a1"}.fad.fa-brain:after{content:"\10f5dc"}.fad.fa-bread-loaf:after{content:"\10f7eb"}.fad.fa-bread-slice:after{content:"\10f7ec"}.fad.fa-briefcase:after{content:"\10f0b1"}.fad.fa-briefcase-medical:after{content:"\10f469"}.fad.fa-bring-forward:after{content:"\10f856"}.fad.fa-bring-front:after{content:"\10f857"}.fad.fa-broadcast-tower:after{content:"\10f519"}.fad.fa-broom:after{content:"\10f51a"}.fad.fa-browser:after{content:"\10f37e"}.fad.fa-brush:after{content:"\10f55d"}.fad.fa-bug:after{content:"\10f188"}.fad.fa-building:after{content:"\10f1ad"}.fad.fa-bullhorn:after{content:"\10f0a1"}.fad.fa-bullseye:after{content:"\10f140"}.fad.fa-bullseye-arrow:after{content:"\10f648"}.fad.fa-bullseye-pointer:after{content:"\10f649"}.fad.fa-burger-soda:after{content:"\10f858"}.fad.fa-burn:after{content:"\10f46a"}.fad.fa-burrito:after{content:"\10f7ed"}.fad.fa-bus:after{content:"\10f207"}.fad.fa-bus-alt:after{content:"\10f55e"}.fad.fa-bus-school:after{content:"\10f5dd"}.fad.fa-business-time:after{content:"\10f64a"}.fad.fa-cabinet-filing:after{content:"\10f64b"}.fad.fa-calculator:after{content:"\10f1ec"}.fad.fa-calculator-alt:after{content:"\10f64c"}.fad.fa-calendar:after{content:"\10f133"}.fad.fa-calendar-alt:after{content:"\10f073"}.fad.fa-calendar-check:after{content:"\10f274"}.fad.fa-calendar-day:after{content:"\10f783"}.fad.fa-calendar-edit:after{content:"\10f333"}.fad.fa-calendar-exclamation:after{content:"\10f334"}.fad.fa-calendar-minus:after{content:"\10f272"}.fad.fa-calendar-plus:after{content:"\10f271"}.fad.fa-calendar-star:after{content:"\10f736"}.fad.fa-calendar-times:after{content:"\10f273"}.fad.fa-calendar-week:after{content:"\10f784"}.fad.fa-camera:after{content:"\10f030"}.fad.fa-camera-alt:after{content:"\10f332"}.fad.fa-camera-retro:after{content:"\10f083"}.fad.fa-campfire:after{content:"\10f6ba"}.fad.fa-campground:after{content:"\10f6bb"}.fad.fa-candle-holder:after{content:"\10f6bc"}.fad.fa-candy-cane:after{content:"\10f786"}.fad.fa-candy-corn:after{content:"\10f6bd"}.fad.fa-cannabis:after{content:"\10f55f"}.fad.fa-capsules:after{content:"\10f46b"}.fad.fa-car:after{content:"\10f1b9"}.fad.fa-car-alt:after{content:"\10f5de"}.fad.fa-car-battery:after{content:"\10f5df"}.fad.fa-car-building:after{content:"\10f859"}.fad.fa-car-bump:after{content:"\10f5e0"}.fad.fa-car-bus:after{content:"\10f85a"}.fad.fa-car-crash:after{content:"\10f5e1"}.fad.fa-car-garage:after{content:"\10f5e2"}.fad.fa-car-mechanic:after{content:"\10f5e3"}.fad.fa-car-side:after{content:"\10f5e4"}.fad.fa-car-tilt:after{content:"\10f5e5"}.fad.fa-car-wash:after{content:"\10f5e6"}.fad.fa-caret-circle-down:after{content:"\10f32d"}.fad.fa-caret-circle-left:after{content:"\10f32e"}.fad.fa-caret-circle-right:after{content:"\10f330"}.fad.fa-caret-circle-up:after{content:"\10f331"}.fad.fa-caret-down:after{content:"\10f0d7"}.fad.fa-caret-left:after{content:"\10f0d9"}.fad.fa-caret-right:after{content:"\10f0da"}.fad.fa-caret-square-down:after{content:"\10f150"}.fad.fa-caret-square-left:after{content:"\10f191"}.fad.fa-caret-square-right:after{content:"\10f152"}.fad.fa-caret-square-up:after{content:"\10f151"}.fad.fa-caret-up:after{content:"\10f0d8"}.fad.fa-carrot:after{content:"\10f787"}.fad.fa-cars:after{content:"\10f85b"}.fad.fa-cart-arrow-down:after{content:"\10f218"}.fad.fa-cart-plus:after{content:"\10f217"}.fad.fa-cash-register:after{content:"\10f788"}.fad.fa-cat:after{content:"\10f6be"}.fad.fa-cauldron:after{content:"\10f6bf"}.fad.fa-certificate:after{content:"\10f0a3"}.fad.fa-chair:after{content:"\10f6c0"}.fad.fa-chair-office:after{content:"\10f6c1"}.fad.fa-chalkboard:after{content:"\10f51b"}.fad.fa-chalkboard-teacher:after{content:"\10f51c"}.fad.fa-charging-station:after{content:"\10f5e7"}.fad.fa-chart-area:after{content:"\10f1fe"}.fad.fa-chart-bar:after{content:"\10f080"}.fad.fa-chart-line:after{content:"\10f201"}.fad.fa-chart-line-down:after{content:"\10f64d"}.fad.fa-chart-network:after{content:"\10f78a"}.fad.fa-chart-pie:after{content:"\10f200"}.fad.fa-chart-pie-alt:after{content:"\10f64e"}.fad.fa-chart-scatter:after{content:"\10f7ee"}.fad.fa-check:after{content:"\10f00c"}.fad.fa-check-circle:after{content:"\10f058"}.fad.fa-check-double:after{content:"\10f560"}.fad.fa-check-square:after{content:"\10f14a"}.fad.fa-cheese:after{content:"\10f7ef"}.fad.fa-cheese-swiss:after{content:"\10f7f0"}.fad.fa-cheeseburger:after{content:"\10f7f1"}.fad.fa-chess:after{content:"\10f439"}.fad.fa-chess-bishop:after{content:"\10f43a"}.fad.fa-chess-bishop-alt:after{content:"\10f43b"}.fad.fa-chess-board:after{content:"\10f43c"}.fad.fa-chess-clock:after{content:"\10f43d"}.fad.fa-chess-clock-alt:after{content:"\10f43e"}.fad.fa-chess-king:after{content:"\10f43f"}.fad.fa-chess-king-alt:after{content:"\10f440"}.fad.fa-chess-knight:after{content:"\10f441"}.fad.fa-chess-knight-alt:after{content:"\10f442"}.fad.fa-chess-pawn:after{content:"\10f443"}.fad.fa-chess-pawn-alt:after{content:"\10f444"}.fad.fa-chess-queen:after{content:"\10f445"}.fad.fa-chess-queen-alt:after{content:"\10f446"}.fad.fa-chess-rook:after{content:"\10f447"}.fad.fa-chess-rook-alt:after{content:"\10f448"}.fad.fa-chevron-circle-down:after{content:"\10f13a"}.fad.fa-chevron-circle-left:after{content:"\10f137"}.fad.fa-chevron-circle-right:after{content:"\10f138"}.fad.fa-chevron-circle-up:after{content:"\10f139"}.fad.fa-chevron-double-down:after{content:"\10f322"}.fad.fa-chevron-double-left:after{content:"\10f323"}.fad.fa-chevron-double-right:after{content:"\10f324"}.fad.fa-chevron-double-up:after{content:"\10f325"}.fad.fa-chevron-down:after{content:"\10f078"}.fad.fa-chevron-left:after{content:"\10f053"}.fad.fa-chevron-right:after{content:"\10f054"}.fad.fa-chevron-square-down:after{content:"\10f329"}.fad.fa-chevron-square-left:after{content:"\10f32a"}.fad.fa-chevron-square-right:after{content:"\10f32b"}.fad.fa-chevron-square-up:after{content:"\10f32c"}.fad.fa-chevron-up:after{content:"\10f077"}.fad.fa-child:after{content:"\10f1ae"}.fad.fa-chimney:after{content:"\10f78b"}.fad.fa-church:after{content:"\10f51d"}.fad.fa-circle:after{content:"\10f111"}.fad.fa-circle-notch:after{content:"\10f1ce"}.fad.fa-city:after{content:"\10f64f"}.fad.fa-claw-marks:after{content:"\10f6c2"}.fad.fa-clinic-medical:after{content:"\10f7f2"}.fad.fa-clipboard:after{content:"\10f328"}.fad.fa-clipboard-check:after{content:"\10f46c"}.fad.fa-clipboard-list:after{content:"\10f46d"}.fad.fa-clipboard-list-check:after{content:"\10f737"}.fad.fa-clipboard-prescription:after{content:"\10f5e8"}.fad.fa-clipboard-user:after{content:"\10f7f3"}.fad.fa-clock:after{content:"\10f017"}.fad.fa-clone:after{content:"\10f24d"}.fad.fa-closed-captioning:after{content:"\10f20a"}.fad.fa-cloud:after{content:"\10f0c2"}.fad.fa-cloud-download:after{content:"\10f0ed"}.fad.fa-cloud-download-alt:after{content:"\10f381"}.fad.fa-cloud-drizzle:after{content:"\10f738"}.fad.fa-cloud-hail:after{content:"\10f739"}.fad.fa-cloud-hail-mixed:after{content:"\10f73a"}.fad.fa-cloud-meatball:after{content:"\10f73b"}.fad.fa-cloud-moon:after{content:"\10f6c3"}.fad.fa-cloud-moon-rain:after{content:"\10f73c"}.fad.fa-cloud-rain:after{content:"\10f73d"}.fad.fa-cloud-rainbow:after{content:"\10f73e"}.fad.fa-cloud-showers:after{content:"\10f73f"}.fad.fa-cloud-showers-heavy:after{content:"\10f740"}.fad.fa-cloud-sleet:after{content:"\10f741"}.fad.fa-cloud-snow:after{content:"\10f742"}.fad.fa-cloud-sun:after{content:"\10f6c4"}.fad.fa-cloud-sun-rain:after{content:"\10f743"}.fad.fa-cloud-upload:after{content:"\10f0ee"}.fad.fa-cloud-upload-alt:after{content:"\10f382"}.fad.fa-clouds:after{content:"\10f744"}.fad.fa-clouds-moon:after{content:"\10f745"}.fad.fa-clouds-sun:after{content:"\10f746"}.fad.fa-club:after{content:"\10f327"}.fad.fa-cocktail:after{content:"\10f561"}.fad.fa-code:after{content:"\10f121"}.fad.fa-code-branch:after{content:"\10f126"}.fad.fa-code-commit:after{content:"\10f386"}.fad.fa-code-merge:after{content:"\10f387"}.fad.fa-coffee:after{content:"\10f0f4"}.fad.fa-coffee-togo:after{content:"\10f6c5"}.fad.fa-coffin:after{content:"\10f6c6"}.fad.fa-cog:after{content:"\10f013"}.fad.fa-cogs:after{content:"\10f085"}.fad.fa-coin:after{content:"\10f85c"}.fad.fa-coins:after{content:"\10f51e"}.fad.fa-columns:after{content:"\10f0db"}.fad.fa-comment:after{content:"\10f075"}.fad.fa-comment-alt:after{content:"\10f27a"}.fad.fa-comment-alt-check:after{content:"\10f4a2"}.fad.fa-comment-alt-dollar:after{content:"\10f650"}.fad.fa-comment-alt-dots:after{content:"\10f4a3"}.fad.fa-comment-alt-edit:after{content:"\10f4a4"}.fad.fa-comment-alt-exclamation:after{content:"\10f4a5"}.fad.fa-comment-alt-lines:after{content:"\10f4a6"}.fad.fa-comment-alt-medical:after{content:"\10f7f4"}.fad.fa-comment-alt-minus:after{content:"\10f4a7"}.fad.fa-comment-alt-plus:after{content:"\10f4a8"}.fad.fa-comment-alt-slash:after{content:"\10f4a9"}.fad.fa-comment-alt-smile:after{content:"\10f4aa"}.fad.fa-comment-alt-times:after{content:"\10f4ab"}.fad.fa-comment-check:after{content:"\10f4ac"}.fad.fa-comment-dollar:after{content:"\10f651"}.fad.fa-comment-dots:after{content:"\10f4ad"}.fad.fa-comment-edit:after{content:"\10f4ae"}.fad.fa-comment-exclamation:after{content:"\10f4af"}.fad.fa-comment-lines:after{content:"\10f4b0"}.fad.fa-comment-medical:after{content:"\10f7f5"}.fad.fa-comment-minus:after{content:"\10f4b1"}.fad.fa-comment-plus:after{content:"\10f4b2"}.fad.fa-comment-slash:after{content:"\10f4b3"}.fad.fa-comment-smile:after{content:"\10f4b4"}.fad.fa-comment-times:after{content:"\10f4b5"}.fad.fa-comments:after{content:"\10f086"}.fad.fa-comments-alt:after{content:"\10f4b6"}.fad.fa-comments-alt-dollar:after{content:"\10f652"}.fad.fa-comments-dollar:after{content:"\10f653"}.fad.fa-compact-disc:after{content:"\10f51f"}.fad.fa-compass:after{content:"\10f14e"}.fad.fa-compass-slash:after{content:"\10f5e9"}.fad.fa-compress:after{content:"\10f066"}.fad.fa-compress-alt:after{content:"\10f422"}.fad.fa-compress-arrows-alt:after{content:"\10f78c"}.fad.fa-compress-wide:after{content:"\10f326"}.fad.fa-concierge-bell:after{content:"\10f562"}.fad.fa-construction:after{content:"\10f85d"}.fad.fa-container-storage:after{content:"\10f4b7"}.fad.fa-conveyor-belt:after{content:"\10f46e"}.fad.fa-conveyor-belt-alt:after{content:"\10f46f"}.fad.fa-cookie:after{content:"\10f563"}.fad.fa-cookie-bite:after{content:"\10f564"}.fad.fa-copy:after{content:"\10f0c5"}.fad.fa-copyright:after{content:"\10f1f9"}.fad.fa-corn:after{content:"\10f6c7"}.fad.fa-couch:after{content:"\10f4b8"}.fad.fa-cow:after{content:"\10f6c8"}.fad.fa-credit-card:after{content:"\10f09d"}.fad.fa-credit-card-blank:after{content:"\10f389"}.fad.fa-credit-card-front:after{content:"\10f38a"}.fad.fa-cricket:after{content:"\10f449"}.fad.fa-croissant:after{content:"\10f7f6"}.fad.fa-crop:after{content:"\10f125"}.fad.fa-crop-alt:after{content:"\10f565"}.fad.fa-cross:after{content:"\10f654"}.fad.fa-crosshairs:after{content:"\10f05b"}.fad.fa-crow:after{content:"\10f520"}.fad.fa-crown:after{content:"\10f521"}.fad.fa-crutch:after{content:"\10f7f7"}.fad.fa-crutches:after{content:"\10f7f8"}.fad.fa-cube:after{content:"\10f1b2"}.fad.fa-cubes:after{content:"\10f1b3"}.fad.fa-curling:after{content:"\10f44a"}.fad.fa-cut:after{content:"\10f0c4"}.fad.fa-dagger:after{content:"\10f6cb"}.fad.fa-database:after{content:"\10f1c0"}.fad.fa-deaf:after{content:"\10f2a4"}.fad.fa-debug:after{content:"\10f7f9"}.fad.fa-deer:after{content:"\10f78e"}.fad.fa-deer-rudolph:after{content:"\10f78f"}.fad.fa-democrat:after{content:"\10f747"}.fad.fa-desktop:after{content:"\10f108"}.fad.fa-desktop-alt:after{content:"\10f390"}.fad.fa-dewpoint:after{content:"\10f748"}.fad.fa-dharmachakra:after{content:"\10f655"}.fad.fa-diagnoses:after{content:"\10f470"}.fad.fa-diamond:after{content:"\10f219"}.fad.fa-dice:after{content:"\10f522"}.fad.fa-dice-d10:after{content:"\10f6cd"}.fad.fa-dice-d12:after{content:"\10f6ce"}.fad.fa-dice-d20:after{content:"\10f6cf"}.fad.fa-dice-d4:after{content:"\10f6d0"}.fad.fa-dice-d6:after{content:"\10f6d1"}.fad.fa-dice-d8:after{content:"\10f6d2"}.fad.fa-dice-five:after{content:"\10f523"}.fad.fa-dice-four:after{content:"\10f524"}.fad.fa-dice-one:after{content:"\10f525"}.fad.fa-dice-six:after{content:"\10f526"}.fad.fa-dice-three:after{content:"\10f527"}.fad.fa-dice-two:after{content:"\10f528"}.fad.fa-digging:after{content:"\10f85e"}.fad.fa-digital-tachograph:after{content:"\10f566"}.fad.fa-diploma:after{content:"\10f5ea"}.fad.fa-directions:after{content:"\10f5eb"}.fad.fa-disease:after{content:"\10f7fa"}.fad.fa-divide:after{content:"\10f529"}.fad.fa-dizzy:after{content:"\10f567"}.fad.fa-dna:after{content:"\10f471"}.fad.fa-do-not-enter:after{content:"\10f5ec"}.fad.fa-dog:after{content:"\10f6d3"}.fad.fa-dog-leashed:after{content:"\10f6d4"}.fad.fa-dollar-sign:after{content:"\10f155"}.fad.fa-dolly:after{content:"\10f472"}.fad.fa-dolly-empty:after{content:"\10f473"}.fad.fa-dolly-flatbed:after{content:"\10f474"}.fad.fa-dolly-flatbed-alt:after{content:"\10f475"}.fad.fa-dolly-flatbed-empty:after{content:"\10f476"}.fad.fa-donate:after{content:"\10f4b9"}.fad.fa-door-closed:after{content:"\10f52a"}.fad.fa-door-open:after{content:"\10f52b"}.fad.fa-dot-circle:after{content:"\10f192"}.fad.fa-dove:after{content:"\10f4ba"}.fad.fa-download:after{content:"\10f019"}.fad.fa-drafting-compass:after{content:"\10f568"}.fad.fa-dragon:after{content:"\10f6d5"}.fad.fa-draw-circle:after{content:"\10f5ed"}.fad.fa-draw-polygon:after{content:"\10f5ee"}.fad.fa-draw-square:after{content:"\10f5ef"}.fad.fa-dreidel:after{content:"\10f792"}.fad.fa-drone:after{content:"\10f85f"}.fad.fa-drone-alt:after{content:"\10f860"}.fad.fa-drum:after{content:"\10f569"}.fad.fa-drum-steelpan:after{content:"\10f56a"}.fad.fa-drumstick:after{content:"\10f6d6"}.fad.fa-drumstick-bite:after{content:"\10f6d7"}.fad.fa-dryer:after{content:"\10f861"}.fad.fa-dryer-alt:after{content:"\10f862"}.fad.fa-duck:after{content:"\10f6d8"}.fad.fa-dumbbell:after{content:"\10f44b"}.fad.fa-dumpster:after{content:"\10f793"}.fad.fa-dumpster-fire:after{content:"\10f794"}.fad.fa-dungeon:after{content:"\10f6d9"}.fad.fa-ear:after{content:"\10f5f0"}.fad.fa-ear-muffs:after{content:"\10f795"}.fad.fa-eclipse:after{content:"\10f749"}.fad.fa-eclipse-alt:after{content:"\10f74a"}.fad.fa-edit:after{content:"\10f044"}.fad.fa-egg:after{content:"\10f7fb"}.fad.fa-egg-fried:after{content:"\10f7fc"}.fad.fa-eject:after{content:"\10f052"}.fad.fa-elephant:after{content:"\10f6da"}.fad.fa-ellipsis-h:after{content:"\10f141"}.fad.fa-ellipsis-h-alt:after{content:"\10f39b"}.fad.fa-ellipsis-v:after{content:"\10f142"}.fad.fa-ellipsis-v-alt:after{content:"\10f39c"}.fad.fa-empty-set:after{content:"\10f656"}.fad.fa-engine-warning:after{content:"\10f5f2"}.fad.fa-envelope:after{content:"\10f0e0"}.fad.fa-envelope-open:after{content:"\10f2b6"}.fad.fa-envelope-open-dollar:after{content:"\10f657"}.fad.fa-envelope-open-text:after{content:"\10f658"}.fad.fa-envelope-square:after{content:"\10f199"}.fad.fa-equals:after{content:"\10f52c"}.fad.fa-eraser:after{content:"\10f12d"}.fad.fa-ethernet:after{content:"\10f796"}.fad.fa-euro-sign:after{content:"\10f153"}.fad.fa-exchange:after{content:"\10f0ec"}.fad.fa-exchange-alt:after{content:"\10f362"}.fad.fa-exclamation:after{content:"\10f12a"}.fad.fa-exclamation-circle:after{content:"\10f06a"}.fad.fa-exclamation-square:after{content:"\10f321"}.fad.fa-exclamation-triangle:after{content:"\10f071"}.fad.fa-expand:after{content:"\10f065"}.fad.fa-expand-alt:after{content:"\10f424"}.fad.fa-expand-arrows:after{content:"\10f31d"}.fad.fa-expand-arrows-alt:after{content:"\10f31e"}.fad.fa-expand-wide:after{content:"\10f320"}.fad.fa-external-link:after{content:"\10f08e"}.fad.fa-external-link-alt:after{content:"\10f35d"}.fad.fa-external-link-square:after{content:"\10f14c"}.fad.fa-external-link-square-alt:after{content:"\10f360"}.fad.fa-eye:after{content:"\10f06e"}.fad.fa-eye-dropper:after{content:"\10f1fb"}.fad.fa-eye-evil:after{content:"\10f6db"}.fad.fa-eye-slash:after{content:"\10f070"}.fad.fa-fan:after{content:"\10f863"}.fad.fa-farm:after{content:"\10f864"}.fad.fa-fast-backward:after{content:"\10f049"}.fad.fa-fast-forward:after{content:"\10f050"}.fad.fa-fax:after{content:"\10f1ac"}.fad.fa-feather:after{content:"\10f52d"}.fad.fa-feather-alt:after{content:"\10f56b"}.fad.fa-female:after{content:"\10f182"}.fad.fa-field-hockey:after{content:"\10f44c"}.fad.fa-fighter-jet:after{content:"\10f0fb"}.fad.fa-file:after{content:"\10f15b"}.fad.fa-file-alt:after{content:"\10f15c"}.fad.fa-file-archive:after{content:"\10f1c6"}.fad.fa-file-audio:after{content:"\10f1c7"}.fad.fa-file-certificate:after{content:"\10f5f3"}.fad.fa-file-chart-line:after{content:"\10f659"}.fad.fa-file-chart-pie:after{content:"\10f65a"}.fad.fa-file-check:after{content:"\10f316"}.fad.fa-file-code:after{content:"\10f1c9"}.fad.fa-file-contract:after{content:"\10f56c"}.fad.fa-file-csv:after{content:"\10f6dd"}.fad.fa-file-download:after{content:"\10f56d"}.fad.fa-file-edit:after{content:"\10f31c"}.fad.fa-file-excel:after{content:"\10f1c3"}.fad.fa-file-exclamation:after{content:"\10f31a"}.fad.fa-file-export:after{content:"\10f56e"}.fad.fa-file-image:after{content:"\10f1c5"}.fad.fa-file-import:after{content:"\10f56f"}.fad.fa-file-invoice:after{content:"\10f570"}.fad.fa-file-invoice-dollar:after{content:"\10f571"}.fad.fa-file-medical:after{content:"\10f477"}.fad.fa-file-medical-alt:after{content:"\10f478"}.fad.fa-file-minus:after{content:"\10f318"}.fad.fa-file-pdf:after{content:"\10f1c1"}.fad.fa-file-plus:after{content:"\10f319"}.fad.fa-file-powerpoint:after{content:"\10f1c4"}.fad.fa-file-prescription:after{content:"\10f572"}.fad.fa-file-search:after{content:"\10f865"}.fad.fa-file-signature:after{content:"\10f573"}.fad.fa-file-spreadsheet:after{content:"\10f65b"}.fad.fa-file-times:after{content:"\10f317"}.fad.fa-file-upload:after{content:"\10f574"}.fad.fa-file-user:after{content:"\10f65c"}.fad.fa-file-video:after{content:"\10f1c8"}.fad.fa-file-word:after{content:"\10f1c2"}.fad.fa-files-medical:after{content:"\10f7fd"}.fad.fa-fill:after{content:"\10f575"}.fad.fa-fill-drip:after{content:"\10f576"}.fad.fa-film:after{content:"\10f008"}.fad.fa-film-alt:after{content:"\10f3a0"}.fad.fa-filter:after{content:"\10f0b0"}.fad.fa-fingerprint:after{content:"\10f577"}.fad.fa-fire:after{content:"\10f06d"}.fad.fa-fire-alt:after{content:"\10f7e4"}.fad.fa-fire-extinguisher:after{content:"\10f134"}.fad.fa-fire-smoke:after{content:"\10f74b"}.fad.fa-fireplace:after{content:"\10f79a"}.fad.fa-first-aid:after{content:"\10f479"}.fad.fa-fish:after{content:"\10f578"}.fad.fa-fish-cooked:after{content:"\10f7fe"}.fad.fa-fist-raised:after{content:"\10f6de"}.fad.fa-flag:after{content:"\10f024"}.fad.fa-flag-alt:after{content:"\10f74c"}.fad.fa-flag-checkered:after{content:"\10f11e"}.fad.fa-flag-usa:after{content:"\10f74d"}.fad.fa-flame:after{content:"\10f6df"}.fad.fa-flask:after{content:"\10f0c3"}.fad.fa-flask-poison:after{content:"\10f6e0"}.fad.fa-flask-potion:after{content:"\10f6e1"}.fad.fa-flower:after{content:"\10f7ff"}.fad.fa-flower-daffodil:after{content:"\10f800"}.fad.fa-flower-tulip:after{content:"\10f801"}.fad.fa-flushed:after{content:"\10f579"}.fad.fa-fog:after{content:"\10f74e"}.fad.fa-folder:after{content:"\10f07b"}.fad.fa-folder-minus:after{content:"\10f65d"}.fad.fa-folder-open:after{content:"\10f07c"}.fad.fa-folder-plus:after{content:"\10f65e"}.fad.fa-folder-times:after{content:"\10f65f"}.fad.fa-folder-tree:after{content:"\10f802"}.fad.fa-folders:after{content:"\10f660"}.fad.fa-font:after{content:"\10f031"}.fad.fa-font-awesome-logo-full:after{content:"\10f4e6"}.fad.fa-font-case:after{content:"\10f866"}.fad.fa-football-ball:after{content:"\10f44e"}.fad.fa-football-helmet:after{content:"\10f44f"}.fad.fa-forklift:after{content:"\10f47a"}.fad.fa-forward:after{content:"\10f04e"}.fad.fa-fragile:after{content:"\10f4bb"}.fad.fa-french-fries:after{content:"\10f803"}.fad.fa-frog:after{content:"\10f52e"}.fad.fa-frosty-head:after{content:"\10f79b"}.fad.fa-frown:after{content:"\10f119"}.fad.fa-frown-open:after{content:"\10f57a"}.fad.fa-function:after{content:"\10f661"}.fad.fa-funnel-dollar:after{content:"\10f662"}.fad.fa-futbol:after{content:"\10f1e3"}.fad.fa-game-board:after{content:"\10f867"}.fad.fa-game-board-alt:after{content:"\10f868"}.fad.fa-gamepad:after{content:"\10f11b"}.fad.fa-gas-pump:after{content:"\10f52f"}.fad.fa-gas-pump-slash:after{content:"\10f5f4"}.fad.fa-gavel:after{content:"\10f0e3"}.fad.fa-gem:after{content:"\10f3a5"}.fad.fa-genderless:after{content:"\10f22d"}.fad.fa-ghost:after{content:"\10f6e2"}.fad.fa-gift:after{content:"\10f06b"}.fad.fa-gift-card:after{content:"\10f663"}.fad.fa-gifts:after{content:"\10f79c"}.fad.fa-gingerbread-man:after{content:"\10f79d"}.fad.fa-glass:after{content:"\10f804"}.fad.fa-glass-champagne:after{content:"\10f79e"}.fad.fa-glass-cheers:after{content:"\10f79f"}.fad.fa-glass-citrus:after{content:"\10f869"}.fad.fa-glass-martini:after{content:"\10f000"}.fad.fa-glass-martini-alt:after{content:"\10f57b"}.fad.fa-glass-whiskey:after{content:"\10f7a0"}.fad.fa-glass-whiskey-rocks:after{content:"\10f7a1"}.fad.fa-glasses:after{content:"\10f530"}.fad.fa-glasses-alt:after{content:"\10f5f5"}.fad.fa-globe:after{content:"\10f0ac"}.fad.fa-globe-africa:after{content:"\10f57c"}.fad.fa-globe-americas:after{content:"\10f57d"}.fad.fa-globe-asia:after{content:"\10f57e"}.fad.fa-globe-europe:after{content:"\10f7a2"}.fad.fa-globe-snow:after{content:"\10f7a3"}.fad.fa-globe-stand:after{content:"\10f5f6"}.fad.fa-golf-ball:after{content:"\10f450"}.fad.fa-golf-club:after{content:"\10f451"}.fad.fa-gopuram:after{content:"\10f664"}.fad.fa-graduation-cap:after{content:"\10f19d"}.fad.fa-greater-than:after{content:"\10f531"}.fad.fa-greater-than-equal:after{content:"\10f532"}.fad.fa-grimace:after{content:"\10f57f"}.fad.fa-grin:after{content:"\10f580"}.fad.fa-grin-alt:after{content:"\10f581"}.fad.fa-grin-beam:after{content:"\10f582"}.fad.fa-grin-beam-sweat:after{content:"\10f583"}.fad.fa-grin-hearts:after{content:"\10f584"}.fad.fa-grin-squint:after{content:"\10f585"}.fad.fa-grin-squint-tears:after{content:"\10f586"}.fad.fa-grin-stars:after{content:"\10f587"}.fad.fa-grin-tears:after{content:"\10f588"}.fad.fa-grin-tongue:after{content:"\10f589"}.fad.fa-grin-tongue-squint:after{content:"\10f58a"}.fad.fa-grin-tongue-wink:after{content:"\10f58b"}.fad.fa-grin-wink:after{content:"\10f58c"}.fad.fa-grip-horizontal:after{content:"\10f58d"}.fad.fa-grip-lines:after{content:"\10f7a4"}.fad.fa-grip-lines-vertical:after{content:"\10f7a5"}.fad.fa-grip-vertical:after{content:"\10f58e"}.fad.fa-guitar:after{content:"\10f7a6"}.fad.fa-h-square:after{content:"\10f0fd"}.fad.fa-h1:after{content:"\10f313"}.fad.fa-h2:after{content:"\10f314"}.fad.fa-h3:after{content:"\10f315"}.fad.fa-h4:after{content:"\10f86a"}.fad.fa-hamburger:after{content:"\10f805"}.fad.fa-hammer:after{content:"\10f6e3"}.fad.fa-hammer-war:after{content:"\10f6e4"}.fad.fa-hamsa:after{content:"\10f665"}.fad.fa-hand-heart:after{content:"\10f4bc"}.fad.fa-hand-holding:after{content:"\10f4bd"}.fad.fa-hand-holding-box:after{content:"\10f47b"}.fad.fa-hand-holding-heart:after{content:"\10f4be"}.fad.fa-hand-holding-magic:after{content:"\10f6e5"}.fad.fa-hand-holding-seedling:after{content:"\10f4bf"}.fad.fa-hand-holding-usd:after{content:"\10f4c0"}.fad.fa-hand-holding-water:after{content:"\10f4c1"}.fad.fa-hand-lizard:after{content:"\10f258"}.fad.fa-hand-middle-finger:after{content:"\10f806"}.fad.fa-hand-paper:after{content:"\10f256"}.fad.fa-hand-peace:after{content:"\10f25b"}.fad.fa-hand-point-down:after{content:"\10f0a7"}.fad.fa-hand-point-left:after{content:"\10f0a5"}.fad.fa-hand-point-right:after{content:"\10f0a4"}.fad.fa-hand-point-up:after{content:"\10f0a6"}.fad.fa-hand-pointer:after{content:"\10f25a"}.fad.fa-hand-receiving:after{content:"\10f47c"}.fad.fa-hand-rock:after{content:"\10f255"}.fad.fa-hand-scissors:after{content:"\10f257"}.fad.fa-hand-spock:after{content:"\10f259"}.fad.fa-hands:after{content:"\10f4c2"}.fad.fa-hands-heart:after{content:"\10f4c3"}.fad.fa-hands-helping:after{content:"\10f4c4"}.fad.fa-hands-usd:after{content:"\10f4c5"}.fad.fa-handshake:after{content:"\10f2b5"}.fad.fa-handshake-alt:after{content:"\10f4c6"}.fad.fa-hanukiah:after{content:"\10f6e6"}.fad.fa-hard-hat:after{content:"\10f807"}.fad.fa-hashtag:after{content:"\10f292"}.fad.fa-hat-chef:after{content:"\10f86b"}.fad.fa-hat-santa:after{content:"\10f7a7"}.fad.fa-hat-winter:after{content:"\10f7a8"}.fad.fa-hat-witch:after{content:"\10f6e7"}.fad.fa-hat-wizard:after{content:"\10f6e8"}.fad.fa-haykal:after{content:"\10f666"}.fad.fa-hdd:after{content:"\10f0a0"}.fad.fa-head-side:after{content:"\10f6e9"}.fad.fa-head-side-brain:after{content:"\10f808"}.fad.fa-head-side-medical:after{content:"\10f809"}.fad.fa-head-vr:after{content:"\10f6ea"}.fad.fa-heading:after{content:"\10f1dc"}.fad.fa-headphones:after{content:"\10f025"}.fad.fa-headphones-alt:after{content:"\10f58f"}.fad.fa-headset:after{content:"\10f590"}.fad.fa-heart:after{content:"\10f004"}.fad.fa-heart-broken:after{content:"\10f7a9"}.fad.fa-heart-circle:after{content:"\10f4c7"}.fad.fa-heart-rate:after{content:"\10f5f8"}.fad.fa-heart-square:after{content:"\10f4c8"}.fad.fa-heartbeat:after{content:"\10f21e"}.fad.fa-helicopter:after{content:"\10f533"}.fad.fa-helmet-battle:after{content:"\10f6eb"}.fad.fa-hexagon:after{content:"\10f312"}.fad.fa-highlighter:after{content:"\10f591"}.fad.fa-hiking:after{content:"\10f6ec"}.fad.fa-hippo:after{content:"\10f6ed"}.fad.fa-history:after{content:"\10f1da"}.fad.fa-hockey-mask:after{content:"\10f6ee"}.fad.fa-hockey-puck:after{content:"\10f453"}.fad.fa-hockey-sticks:after{content:"\10f454"}.fad.fa-holly-berry:after{content:"\10f7aa"}.fad.fa-home:after{content:"\10f015"}.fad.fa-home-alt:after{content:"\10f80a"}.fad.fa-home-heart:after{content:"\10f4c9"}.fad.fa-home-lg:after{content:"\10f80b"}.fad.fa-home-lg-alt:after{content:"\10f80c"}.fad.fa-hood-cloak:after{content:"\10f6ef"}.fad.fa-horizontal-rule:after{content:"\10f86c"}.fad.fa-horse:after{content:"\10f6f0"}.fad.fa-horse-head:after{content:"\10f7ab"}.fad.fa-hospital:after{content:"\10f0f8"}.fad.fa-hospital-alt:after{content:"\10f47d"}.fad.fa-hospital-symbol:after{content:"\10f47e"}.fad.fa-hospital-user:after{content:"\10f80d"}.fad.fa-hospitals:after{content:"\10f80e"}.fad.fa-hot-tub:after{content:"\10f593"}.fad.fa-hotdog:after{content:"\10f80f"}.fad.fa-hotel:after{content:"\10f594"}.fad.fa-hourglass:after{content:"\10f254"}.fad.fa-hourglass-end:after{content:"\10f253"}.fad.fa-hourglass-half:after{content:"\10f252"}.fad.fa-hourglass-start:after{content:"\10f251"}.fad.fa-house-damage:after{content:"\10f6f1"}.fad.fa-house-flood:after{content:"\10f74f"}.fad.fa-hryvnia:after{content:"\10f6f2"}.fad.fa-humidity:after{content:"\10f750"}.fad.fa-hurricane:after{content:"\10f751"}.fad.fa-i-cursor:after{content:"\10f246"}.fad.fa-ice-cream:after{content:"\10f810"}.fad.fa-ice-skate:after{content:"\10f7ac"}.fad.fa-icicles:after{content:"\10f7ad"}.fad.fa-icons:after{content:"\10f86d"}.fad.fa-icons-alt:after{content:"\10f86e"}.fad.fa-id-badge:after{content:"\10f2c1"}.fad.fa-id-card:after{content:"\10f2c2"}.fad.fa-id-card-alt:after{content:"\10f47f"}.fad.fa-igloo:after{content:"\10f7ae"}.fad.fa-image:after{content:"\10f03e"}.fad.fa-images:after{content:"\10f302"}.fad.fa-inbox:after{content:"\10f01c"}.fad.fa-inbox-in:after{content:"\10f310"}.fad.fa-inbox-out:after{content:"\10f311"}.fad.fa-indent:after{content:"\10f03c"}.fad.fa-industry:after{content:"\10f275"}.fad.fa-industry-alt:after{content:"\10f3b3"}.fad.fa-infinity:after{content:"\10f534"}.fad.fa-info:after{content:"\10f129"}.fad.fa-info-circle:after{content:"\10f05a"}.fad.fa-info-square:after{content:"\10f30f"}.fad.fa-inhaler:after{content:"\10f5f9"}.fad.fa-integral:after{content:"\10f667"}.fad.fa-intersection:after{content:"\10f668"}.fad.fa-inventory:after{content:"\10f480"}.fad.fa-island-tropical:after{content:"\10f811"}.fad.fa-italic:after{content:"\10f033"}.fad.fa-jack-o-lantern:after{content:"\10f30e"}.fad.fa-jedi:after{content:"\10f669"}.fad.fa-joint:after{content:"\10f595"}.fad.fa-journal-whills:after{content:"\10f66a"}.fad.fa-kaaba:after{content:"\10f66b"}.fad.fa-kerning:after{content:"\10f86f"}.fad.fa-key:after{content:"\10f084"}.fad.fa-key-skeleton:after{content:"\10f6f3"}.fad.fa-keyboard:after{content:"\10f11c"}.fad.fa-keynote:after{content:"\10f66c"}.fad.fa-khanda:after{content:"\10f66d"}.fad.fa-kidneys:after{content:"\10f5fb"}.fad.fa-kiss:after{content:"\10f596"}.fad.fa-kiss-beam:after{content:"\10f597"}.fad.fa-kiss-wink-heart:after{content:"\10f598"}.fad.fa-kite:after{content:"\10f6f4"}.fad.fa-kiwi-bird:after{content:"\10f535"}.fad.fa-knife-kitchen:after{content:"\10f6f5"}.fad.fa-lambda:after{content:"\10f66e"}.fad.fa-lamp:after{content:"\10f4ca"}.fad.fa-landmark:after{content:"\10f66f"}.fad.fa-landmark-alt:after{content:"\10f752"}.fad.fa-language:after{content:"\10f1ab"}.fad.fa-laptop:after{content:"\10f109"}.fad.fa-laptop-code:after{content:"\10f5fc"}.fad.fa-laptop-medical:after{content:"\10f812"}.fad.fa-laugh:after{content:"\10f599"}.fad.fa-laugh-beam:after{content:"\10f59a"}.fad.fa-laugh-squint:after{content:"\10f59b"}.fad.fa-laugh-wink:after{content:"\10f59c"}.fad.fa-layer-group:after{content:"\10f5fd"}.fad.fa-layer-minus:after{content:"\10f5fe"}.fad.fa-layer-plus:after{content:"\10f5ff"}.fad.fa-leaf:after{content:"\10f06c"}.fad.fa-leaf-heart:after{content:"\10f4cb"}.fad.fa-leaf-maple:after{content:"\10f6f6"}.fad.fa-leaf-oak:after{content:"\10f6f7"}.fad.fa-lemon:after{content:"\10f094"}.fad.fa-less-than:after{content:"\10f536"}.fad.fa-less-than-equal:after{content:"\10f537"}.fad.fa-level-down:after{content:"\10f149"}.fad.fa-level-down-alt:after{content:"\10f3be"}.fad.fa-level-up:after{content:"\10f148"}.fad.fa-level-up-alt:after{content:"\10f3bf"}.fad.fa-life-ring:after{content:"\10f1cd"}.fad.fa-lightbulb:after{content:"\10f0eb"}.fad.fa-lightbulb-dollar:after{content:"\10f670"}.fad.fa-lightbulb-exclamation:after{content:"\10f671"}.fad.fa-lightbulb-on:after{content:"\10f672"}.fad.fa-lightbulb-slash:after{content:"\10f673"}.fad.fa-lights-holiday:after{content:"\10f7b2"}.fad.fa-line-columns:after{content:"\10f870"}.fad.fa-line-height:after{content:"\10f871"}.fad.fa-link:after{content:"\10f0c1"}.fad.fa-lips:after{content:"\10f600"}.fad.fa-lira-sign:after{content:"\10f195"}.fad.fa-list:after{content:"\10f03a"}.fad.fa-list-alt:after{content:"\10f022"}.fad.fa-list-ol:after{content:"\10f0cb"}.fad.fa-list-ul:after{content:"\10f0ca"}.fad.fa-location:after{content:"\10f601"}.fad.fa-location-arrow:after{content:"\10f124"}.fad.fa-location-circle:after{content:"\10f602"}.fad.fa-location-slash:after{content:"\10f603"}.fad.fa-lock:after{content:"\10f023"}.fad.fa-lock-alt:after{content:"\10f30d"}.fad.fa-lock-open:after{content:"\10f3c1"}.fad.fa-lock-open-alt:after{content:"\10f3c2"}.fad.fa-long-arrow-alt-down:after{content:"\10f309"}.fad.fa-long-arrow-alt-left:after{content:"\10f30a"}.fad.fa-long-arrow-alt-right:after{content:"\10f30b"}.fad.fa-long-arrow-alt-up:after{content:"\10f30c"}.fad.fa-long-arrow-down:after{content:"\10f175"}.fad.fa-long-arrow-left:after{content:"\10f177"}.fad.fa-long-arrow-right:after{content:"\10f178"}.fad.fa-long-arrow-up:after{content:"\10f176"}.fad.fa-loveseat:after{content:"\10f4cc"}.fad.fa-low-vision:after{content:"\10f2a8"}.fad.fa-luchador:after{content:"\10f455"}.fad.fa-luggage-cart:after{content:"\10f59d"}.fad.fa-lungs:after{content:"\10f604"}.fad.fa-mace:after{content:"\10f6f8"}.fad.fa-magic:after{content:"\10f0d0"}.fad.fa-magnet:after{content:"\10f076"}.fad.fa-mail-bulk:after{content:"\10f674"}.fad.fa-mailbox:after{content:"\10f813"}.fad.fa-male:after{content:"\10f183"}.fad.fa-mandolin:after{content:"\10f6f9"}.fad.fa-map:after{content:"\10f279"}.fad.fa-map-marked:after{content:"\10f59f"}.fad.fa-map-marked-alt:after{content:"\10f5a0"}.fad.fa-map-marker:after{content:"\10f041"}.fad.fa-map-marker-alt:after{content:"\10f3c5"}.fad.fa-map-marker-alt-slash:after{content:"\10f605"}.fad.fa-map-marker-check:after{content:"\10f606"}.fad.fa-map-marker-edit:after{content:"\10f607"}.fad.fa-map-marker-exclamation:after{content:"\10f608"}.fad.fa-map-marker-minus:after{content:"\10f609"}.fad.fa-map-marker-plus:after{content:"\10f60a"}.fad.fa-map-marker-question:after{content:"\10f60b"}.fad.fa-map-marker-slash:after{content:"\10f60c"}.fad.fa-map-marker-smile:after{content:"\10f60d"}.fad.fa-map-marker-times:after{content:"\10f60e"}.fad.fa-map-pin:after{content:"\10f276"}.fad.fa-map-signs:after{content:"\10f277"}.fad.fa-marker:after{content:"\10f5a1"}.fad.fa-mars:after{content:"\10f222"}.fad.fa-mars-double:after{content:"\10f227"}.fad.fa-mars-stroke:after{content:"\10f229"}.fad.fa-mars-stroke-h:after{content:"\10f22b"}.fad.fa-mars-stroke-v:after{content:"\10f22a"}.fad.fa-mask:after{content:"\10f6fa"}.fad.fa-meat:after{content:"\10f814"}.fad.fa-medal:after{content:"\10f5a2"}.fad.fa-medkit:after{content:"\10f0fa"}.fad.fa-megaphone:after{content:"\10f675"}.fad.fa-meh:after{content:"\10f11a"}.fad.fa-meh-blank:after{content:"\10f5a4"}.fad.fa-meh-rolling-eyes:after{content:"\10f5a5"}.fad.fa-memory:after{content:"\10f538"}.fad.fa-menorah:after{content:"\10f676"}.fad.fa-mercury:after{content:"\10f223"}.fad.fa-meteor:after{content:"\10f753"}.fad.fa-microchip:after{content:"\10f2db"}.fad.fa-microphone:after{content:"\10f130"}.fad.fa-microphone-alt:after{content:"\10f3c9"}.fad.fa-microphone-alt-slash:after{content:"\10f539"}.fad.fa-microphone-slash:after{content:"\10f131"}.fad.fa-microscope:after{content:"\10f610"}.fad.fa-mind-share:after{content:"\10f677"}.fad.fa-minus:after{content:"\10f068"}.fad.fa-minus-circle:after{content:"\10f056"}.fad.fa-minus-hexagon:after{content:"\10f307"}.fad.fa-minus-octagon:after{content:"\10f308"}.fad.fa-minus-square:after{content:"\10f146"}.fad.fa-mistletoe:after{content:"\10f7b4"}.fad.fa-mitten:after{content:"\10f7b5"}.fad.fa-mobile:after{content:"\10f10b"}.fad.fa-mobile-alt:after{content:"\10f3cd"}.fad.fa-mobile-android:after{content:"\10f3ce"}.fad.fa-mobile-android-alt:after{content:"\10f3cf"}.fad.fa-money-bill:after{content:"\10f0d6"}.fad.fa-money-bill-alt:after{content:"\10f3d1"}.fad.fa-money-bill-wave:after{content:"\10f53a"}.fad.fa-money-bill-wave-alt:after{content:"\10f53b"}.fad.fa-money-check:after{content:"\10f53c"}.fad.fa-money-check-alt:after{content:"\10f53d"}.fad.fa-money-check-edit:after{content:"\10f872"}.fad.fa-money-check-edit-alt:after{content:"\10f873"}.fad.fa-monitor-heart-rate:after{content:"\10f611"}.fad.fa-monkey:after{content:"\10f6fb"}.fad.fa-monument:after{content:"\10f5a6"}.fad.fa-moon:after{content:"\10f186"}.fad.fa-moon-cloud:after{content:"\10f754"}.fad.fa-moon-stars:after{content:"\10f755"}.fad.fa-mortar-pestle:after{content:"\10f5a7"}.fad.fa-mosque:after{content:"\10f678"}.fad.fa-motorcycle:after{content:"\10f21c"}.fad.fa-mountain:after{content:"\10f6fc"}.fad.fa-mountains:after{content:"\10f6fd"}.fad.fa-mouse-pointer:after{content:"\10f245"}.fad.fa-mug:after{content:"\10f874"}.fad.fa-mug-hot:after{content:"\10f7b6"}.fad.fa-mug-marshmallows:after{content:"\10f7b7"}.fad.fa-mug-tea:after{content:"\10f875"}.fad.fa-music:after{content:"\10f001"}.fad.fa-narwhal:after{content:"\10f6fe"}.fad.fa-network-wired:after{content:"\10f6ff"}.fad.fa-neuter:after{content:"\10f22c"}.fad.fa-newspaper:after{content:"\10f1ea"}.fad.fa-not-equal:after{content:"\10f53e"}.fad.fa-notes-medical:after{content:"\10f481"}.fad.fa-object-group:after{content:"\10f247"}.fad.fa-object-ungroup:after{content:"\10f248"}.fad.fa-octagon:after{content:"\10f306"}.fad.fa-oil-can:after{content:"\10f613"}.fad.fa-oil-temp:after{content:"\10f614"}.fad.fa-om:after{content:"\10f679"}.fad.fa-omega:after{content:"\10f67a"}.fad.fa-ornament:after{content:"\10f7b8"}.fad.fa-otter:after{content:"\10f700"}.fad.fa-outdent:after{content:"\10f03b"}.fad.fa-overline:after{content:"\10f876"}.fad.fa-page-break:after{content:"\10f877"}.fad.fa-pager:after{content:"\10f815"}.fad.fa-paint-brush:after{content:"\10f1fc"}.fad.fa-paint-brush-alt:after{content:"\10f5a9"}.fad.fa-paint-roller:after{content:"\10f5aa"}.fad.fa-palette:after{content:"\10f53f"}.fad.fa-pallet:after{content:"\10f482"}.fad.fa-pallet-alt:after{content:"\10f483"}.fad.fa-paper-plane:after{content:"\10f1d8"}.fad.fa-paperclip:after{content:"\10f0c6"}.fad.fa-parachute-box:after{content:"\10f4cd"}.fad.fa-paragraph:after{content:"\10f1dd"}.fad.fa-paragraph-rtl:after{content:"\10f878"}.fad.fa-parking:after{content:"\10f540"}.fad.fa-parking-circle:after{content:"\10f615"}.fad.fa-parking-circle-slash:after{content:"\10f616"}.fad.fa-parking-slash:after{content:"\10f617"}.fad.fa-passport:after{content:"\10f5ab"}.fad.fa-pastafarianism:after{content:"\10f67b"}.fad.fa-paste:after{content:"\10f0ea"}.fad.fa-pause:after{content:"\10f04c"}.fad.fa-pause-circle:after{content:"\10f28b"}.fad.fa-paw:after{content:"\10f1b0"}.fad.fa-paw-alt:after{content:"\10f701"}.fad.fa-paw-claws:after{content:"\10f702"}.fad.fa-peace:after{content:"\10f67c"}.fad.fa-pegasus:after{content:"\10f703"}.fad.fa-pen:after{content:"\10f304"}.fad.fa-pen-alt:after{content:"\10f305"}.fad.fa-pen-fancy:after{content:"\10f5ac"}.fad.fa-pen-nib:after{content:"\10f5ad"}.fad.fa-pen-square:after{content:"\10f14b"}.fad.fa-pencil:after{content:"\10f040"}.fad.fa-pencil-alt:after{content:"\10f303"}.fad.fa-pencil-paintbrush:after{content:"\10f618"}.fad.fa-pencil-ruler:after{content:"\10f5ae"}.fad.fa-pennant:after{content:"\10f456"}.fad.fa-people-carry:after{content:"\10f4ce"}.fad.fa-pepper-hot:after{content:"\10f816"}.fad.fa-percent:after{content:"\10f295"}.fad.fa-percentage:after{content:"\10f541"}.fad.fa-person-booth:after{content:"\10f756"}.fad.fa-person-carry:after{content:"\10f4cf"}.fad.fa-person-dolly:after{content:"\10f4d0"}.fad.fa-person-dolly-empty:after{content:"\10f4d1"}.fad.fa-person-sign:after{content:"\10f757"}.fad.fa-phone:after{content:"\10f095"}.fad.fa-phone-alt:after{content:"\10f879"}.fad.fa-phone-laptop:after{content:"\10f87a"}.fad.fa-phone-office:after{content:"\10f67d"}.fad.fa-phone-plus:after{content:"\10f4d2"}.fad.fa-phone-slash:after{content:"\10f3dd"}.fad.fa-phone-square:after{content:"\10f098"}.fad.fa-phone-square-alt:after{content:"\10f87b"}.fad.fa-phone-volume:after{content:"\10f2a0"}.fad.fa-photo-video:after{content:"\10f87c"}.fad.fa-pi:after{content:"\10f67e"}.fad.fa-pie:after{content:"\10f705"}.fad.fa-pig:after{content:"\10f706"}.fad.fa-piggy-bank:after{content:"\10f4d3"}.fad.fa-pills:after{content:"\10f484"}.fad.fa-pizza:after{content:"\10f817"}.fad.fa-pizza-slice:after{content:"\10f818"}.fad.fa-place-of-worship:after{content:"\10f67f"}.fad.fa-plane:after{content:"\10f072"}.fad.fa-plane-alt:after{content:"\10f3de"}.fad.fa-plane-arrival:after{content:"\10f5af"}.fad.fa-plane-departure:after{content:"\10f5b0"}.fad.fa-play:after{content:"\10f04b"}.fad.fa-play-circle:after{content:"\10f144"}.fad.fa-plug:after{content:"\10f1e6"}.fad.fa-plus:after{content:"\10f067"}.fad.fa-plus-circle:after{content:"\10f055"}.fad.fa-plus-hexagon:after{content:"\10f300"}.fad.fa-plus-octagon:after{content:"\10f301"}.fad.fa-plus-square:after{content:"\10f0fe"}.fad.fa-podcast:after{content:"\10f2ce"}.fad.fa-podium:after{content:"\10f680"}.fad.fa-podium-star:after{content:"\10f758"}.fad.fa-poll:after{content:"\10f681"}.fad.fa-poll-h:after{content:"\10f682"}.fad.fa-poll-people:after{content:"\10f759"}.fad.fa-poo:after{content:"\10f2fe"}.fad.fa-poo-storm:after{content:"\10f75a"}.fad.fa-poop:after{content:"\10f619"}.fad.fa-popcorn:after{content:"\10f819"}.fad.fa-portrait:after{content:"\10f3e0"}.fad.fa-pound-sign:after{content:"\10f154"}.fad.fa-power-off:after{content:"\10f011"}.fad.fa-pray:after{content:"\10f683"}.fad.fa-praying-hands:after{content:"\10f684"}.fad.fa-prescription:after{content:"\10f5b1"}.fad.fa-prescription-bottle:after{content:"\10f485"}.fad.fa-prescription-bottle-alt:after{content:"\10f486"}.fad.fa-presentation:after{content:"\10f685"}.fad.fa-print:after{content:"\10f02f"}.fad.fa-print-search:after{content:"\10f81a"}.fad.fa-print-slash:after{content:"\10f686"}.fad.fa-procedures:after{content:"\10f487"}.fad.fa-project-diagram:after{content:"\10f542"}.fad.fa-pumpkin:after{content:"\10f707"}.fad.fa-puzzle-piece:after{content:"\10f12e"}.fad.fa-qrcode:after{content:"\10f029"}.fad.fa-question:after{content:"\10f128"}.fad.fa-question-circle:after{content:"\10f059"}.fad.fa-question-square:after{content:"\10f2fd"}.fad.fa-quidditch:after{content:"\10f458"}.fad.fa-quote-left:after{content:"\10f10d"}.fad.fa-quote-right:after{content:"\10f10e"}.fad.fa-quran:after{content:"\10f687"}.fad.fa-rabbit:after{content:"\10f708"}.fad.fa-rabbit-fast:after{content:"\10f709"}.fad.fa-racquet:after{content:"\10f45a"}.fad.fa-radiation:after{content:"\10f7b9"}.fad.fa-radiation-alt:after{content:"\10f7ba"}.fad.fa-rainbow:after{content:"\10f75b"}.fad.fa-raindrops:after{content:"\10f75c"}.fad.fa-ram:after{content:"\10f70a"}.fad.fa-ramp-loading:after{content:"\10f4d4"}.fad.fa-random:after{content:"\10f074"}.fad.fa-receipt:after{content:"\10f543"}.fad.fa-rectangle-landscape:after{content:"\10f2fa"}.fad.fa-rectangle-portrait:after{content:"\10f2fb"}.fad.fa-rectangle-wide:after{content:"\10f2fc"}.fad.fa-recycle:after{content:"\10f1b8"}.fad.fa-redo:after{content:"\10f01e"}.fad.fa-redo-alt:after{content:"\10f2f9"}.fad.fa-registered:after{content:"\10f25d"}.fad.fa-remove-format:after{content:"\10f87d"}.fad.fa-repeat:after{content:"\10f363"}.fad.fa-repeat-1:after{content:"\10f365"}.fad.fa-repeat-1-alt:after{content:"\10f366"}.fad.fa-repeat-alt:after{content:"\10f364"}.fad.fa-reply:after{content:"\10f3e5"}.fad.fa-reply-all:after{content:"\10f122"}.fad.fa-republican:after{content:"\10f75e"}.fad.fa-restroom:after{content:"\10f7bd"}.fad.fa-retweet:after{content:"\10f079"}.fad.fa-retweet-alt:after{content:"\10f361"}.fad.fa-ribbon:after{content:"\10f4d6"}.fad.fa-ring:after{content:"\10f70b"}.fad.fa-rings-wedding:after{content:"\10f81b"}.fad.fa-road:after{content:"\10f018"}.fad.fa-robot:after{content:"\10f544"}.fad.fa-rocket:after{content:"\10f135"}.fad.fa-route:after{content:"\10f4d7"}.fad.fa-route-highway:after{content:"\10f61a"}.fad.fa-route-interstate:after{content:"\10f61b"}.fad.fa-rss:after{content:"\10f09e"}.fad.fa-rss-square:after{content:"\10f143"}.fad.fa-ruble-sign:after{content:"\10f158"}.fad.fa-ruler:after{content:"\10f545"}.fad.fa-ruler-combined:after{content:"\10f546"}.fad.fa-ruler-horizontal:after{content:"\10f547"}.fad.fa-ruler-triangle:after{content:"\10f61c"}.fad.fa-ruler-vertical:after{content:"\10f548"}.fad.fa-running:after{content:"\10f70c"}.fad.fa-rupee-sign:after{content:"\10f156"}.fad.fa-rv:after{content:"\10f7be"}.fad.fa-sack:after{content:"\10f81c"}.fad.fa-sack-dollar:after{content:"\10f81d"}.fad.fa-sad-cry:after{content:"\10f5b3"}.fad.fa-sad-tear:after{content:"\10f5b4"}.fad.fa-salad:after{content:"\10f81e"}.fad.fa-sandwich:after{content:"\10f81f"}.fad.fa-satellite:after{content:"\10f7bf"}.fad.fa-satellite-dish:after{content:"\10f7c0"}.fad.fa-sausage:after{content:"\10f820"}.fad.fa-save:after{content:"\10f0c7"}.fad.fa-scalpel:after{content:"\10f61d"}.fad.fa-scalpel-path:after{content:"\10f61e"}.fad.fa-scanner:after{content:"\10f488"}.fad.fa-scanner-keyboard:after{content:"\10f489"}.fad.fa-scanner-touchscreen:after{content:"\10f48a"}.fad.fa-scarecrow:after{content:"\10f70d"}.fad.fa-scarf:after{content:"\10f7c1"}.fad.fa-school:after{content:"\10f549"}.fad.fa-screwdriver:after{content:"\10f54a"}.fad.fa-scroll:after{content:"\10f70e"}.fad.fa-scroll-old:after{content:"\10f70f"}.fad.fa-scrubber:after{content:"\10f2f8"}.fad.fa-scythe:after{content:"\10f710"}.fad.fa-sd-card:after{content:"\10f7c2"}.fad.fa-search:after{content:"\10f002"}.fad.fa-search-dollar:after{content:"\10f688"}.fad.fa-search-location:after{content:"\10f689"}.fad.fa-search-minus:after{content:"\10f010"}.fad.fa-search-plus:after{content:"\10f00e"}.fad.fa-seedling:after{content:"\10f4d8"}.fad.fa-send-back:after{content:"\10f87e"}.fad.fa-send-backward:after{content:"\10f87f"}.fad.fa-server:after{content:"\10f233"}.fad.fa-shapes:after{content:"\10f61f"}.fad.fa-share:after{content:"\10f064"}.fad.fa-share-all:after{content:"\10f367"}.fad.fa-share-alt:after{content:"\10f1e0"}.fad.fa-share-alt-square:after{content:"\10f1e1"}.fad.fa-share-square:after{content:"\10f14d"}.fad.fa-sheep:after{content:"\10f711"}.fad.fa-shekel-sign:after{content:"\10f20b"}.fad.fa-shield:after{content:"\10f132"}.fad.fa-shield-alt:after{content:"\10f3ed"}.fad.fa-shield-check:after{content:"\10f2f7"}.fad.fa-shield-cross:after{content:"\10f712"}.fad.fa-ship:after{content:"\10f21a"}.fad.fa-shipping-fast:after{content:"\10f48b"}.fad.fa-shipping-timed:after{content:"\10f48c"}.fad.fa-shish-kebab:after{content:"\10f821"}.fad.fa-shoe-prints:after{content:"\10f54b"}.fad.fa-shopping-bag:after{content:"\10f290"}.fad.fa-shopping-basket:after{content:"\10f291"}.fad.fa-shopping-cart:after{content:"\10f07a"}.fad.fa-shovel:after{content:"\10f713"}.fad.fa-shovel-snow:after{content:"\10f7c3"}.fad.fa-shower:after{content:"\10f2cc"}.fad.fa-shredder:after{content:"\10f68a"}.fad.fa-shuttle-van:after{content:"\10f5b6"}.fad.fa-shuttlecock:after{content:"\10f45b"}.fad.fa-sickle:after{content:"\10f822"}.fad.fa-sigma:after{content:"\10f68b"}.fad.fa-sign:after{content:"\10f4d9"}.fad.fa-sign-in:after{content:"\10f090"}.fad.fa-sign-in-alt:after{content:"\10f2f6"}.fad.fa-sign-language:after{content:"\10f2a7"}.fad.fa-sign-out:after{content:"\10f08b"}.fad.fa-sign-out-alt:after{content:"\10f2f5"}.fad.fa-signal:after{content:"\10f012"}.fad.fa-signal-1:after{content:"\10f68c"}.fad.fa-signal-2:after{content:"\10f68d"}.fad.fa-signal-3:after{content:"\10f68e"}.fad.fa-signal-4:after{content:"\10f68f"}.fad.fa-signal-alt:after{content:"\10f690"}.fad.fa-signal-alt-1:after{content:"\10f691"}.fad.fa-signal-alt-2:after{content:"\10f692"}.fad.fa-signal-alt-3:after{content:"\10f693"}.fad.fa-signal-alt-slash:after{content:"\10f694"}.fad.fa-signal-slash:after{content:"\10f695"}.fad.fa-signature:after{content:"\10f5b7"}.fad.fa-sim-card:after{content:"\10f7c4"}.fad.fa-sitemap:after{content:"\10f0e8"}.fad.fa-skating:after{content:"\10f7c5"}.fad.fa-skeleton:after{content:"\10f620"}.fad.fa-ski-jump:after{content:"\10f7c7"}.fad.fa-ski-lift:after{content:"\10f7c8"}.fad.fa-skiing:after{content:"\10f7c9"}.fad.fa-skiing-nordic:after{content:"\10f7ca"}.fad.fa-skull:after{content:"\10f54c"}.fad.fa-skull-crossbones:after{content:"\10f714"}.fad.fa-slash:after{content:"\10f715"}.fad.fa-sledding:after{content:"\10f7cb"}.fad.fa-sleigh:after{content:"\10f7cc"}.fad.fa-sliders-h:after{content:"\10f1de"}.fad.fa-sliders-h-square:after{content:"\10f3f0"}.fad.fa-sliders-v:after{content:"\10f3f1"}.fad.fa-sliders-v-square:after{content:"\10f3f2"}.fad.fa-smile:after{content:"\10f118"}.fad.fa-smile-beam:after{content:"\10f5b8"}.fad.fa-smile-plus:after{content:"\10f5b9"}.fad.fa-smile-wink:after{content:"\10f4da"}.fad.fa-smog:after{content:"\10f75f"}.fad.fa-smoke:after{content:"\10f760"}.fad.fa-smoking:after{content:"\10f48d"}.fad.fa-smoking-ban:after{content:"\10f54d"}.fad.fa-sms:after{content:"\10f7cd"}.fad.fa-snake:after{content:"\10f716"}.fad.fa-snooze:after{content:"\10f880"}.fad.fa-snow-blowing:after{content:"\10f761"}.fad.fa-snowboarding:after{content:"\10f7ce"}.fad.fa-snowflake:after{content:"\10f2dc"}.fad.fa-snowflakes:after{content:"\10f7cf"}.fad.fa-snowman:after{content:"\10f7d0"}.fad.fa-snowmobile:after{content:"\10f7d1"}.fad.fa-snowplow:after{content:"\10f7d2"}.fad.fa-socks:after{content:"\10f696"}.fad.fa-solar-panel:after{content:"\10f5ba"}.fad.fa-sort:after{content:"\10f0dc"}.fad.fa-sort-alpha-down:after{content:"\10f15d"}.fad.fa-sort-alpha-down-alt:after{content:"\10f881"}.fad.fa-sort-alpha-up:after{content:"\10f15e"}.fad.fa-sort-alpha-up-alt:after{content:"\10f882"}.fad.fa-sort-alt:after{content:"\10f883"}.fad.fa-sort-amount-down:after{content:"\10f160"}.fad.fa-sort-amount-down-alt:after{content:"\10f884"}.fad.fa-sort-amount-up:after{content:"\10f161"}.fad.fa-sort-amount-up-alt:after{content:"\10f885"}.fad.fa-sort-down:after{content:"\10f0dd"}.fad.fa-sort-numeric-down:after{content:"\10f162"}.fad.fa-sort-numeric-down-alt:after{content:"\10f886"}.fad.fa-sort-numeric-up:after{content:"\10f163"}.fad.fa-sort-numeric-up-alt:after{content:"\10f887"}.fad.fa-sort-shapes-down:after{content:"\10f888"}.fad.fa-sort-shapes-down-alt:after{content:"\10f889"}.fad.fa-sort-shapes-up:after{content:"\10f88a"}.fad.fa-sort-shapes-up-alt:after{content:"\10f88b"}.fad.fa-sort-size-down:after{content:"\10f88c"}.fad.fa-sort-size-down-alt:after{content:"\10f88d"}.fad.fa-sort-size-up:after{content:"\10f88e"}.fad.fa-sort-size-up-alt:after{content:"\10f88f"}.fad.fa-sort-up:after{content:"\10f0de"}.fad.fa-soup:after{content:"\10f823"}.fad.fa-spa:after{content:"\10f5bb"}.fad.fa-space-shuttle:after{content:"\10f197"}.fad.fa-spade:after{content:"\10f2f4"}.fad.fa-sparkles:after{content:"\10f890"}.fad.fa-spell-check:after{content:"\10f891"}.fad.fa-spider:after{content:"\10f717"}.fad.fa-spider-black-widow:after{content:"\10f718"}.fad.fa-spider-web:after{content:"\10f719"}.fad.fa-spinner:after{content:"\10f110"}.fad.fa-spinner-third:after{content:"\10f3f4"}.fad.fa-splotch:after{content:"\10f5bc"}.fad.fa-spray-can:after{content:"\10f5bd"}.fad.fa-square:after{content:"\10f0c8"}.fad.fa-square-full:after{content:"\10f45c"}.fad.fa-square-root:after{content:"\10f697"}.fad.fa-square-root-alt:after{content:"\10f698"}.fad.fa-squirrel:after{content:"\10f71a"}.fad.fa-staff:after{content:"\10f71b"}.fad.fa-stamp:after{content:"\10f5bf"}.fad.fa-star:after{content:"\10f005"}.fad.fa-star-and-crescent:after{content:"\10f699"}.fad.fa-star-christmas:after{content:"\10f7d4"}.fad.fa-star-exclamation:after{content:"\10f2f3"}.fad.fa-star-half:after{content:"\10f089"}.fad.fa-star-half-alt:after{content:"\10f5c0"}.fad.fa-star-of-david:after{content:"\10f69a"}.fad.fa-star-of-life:after{content:"\10f621"}.fad.fa-stars:after{content:"\10f762"}.fad.fa-steak:after{content:"\10f824"}.fad.fa-steering-wheel:after{content:"\10f622"}.fad.fa-step-backward:after{content:"\10f048"}.fad.fa-step-forward:after{content:"\10f051"}.fad.fa-stethoscope:after{content:"\10f0f1"}.fad.fa-sticky-note:after{content:"\10f249"}.fad.fa-stocking:after{content:"\10f7d5"}.fad.fa-stomach:after{content:"\10f623"}.fad.fa-stop:after{content:"\10f04d"}.fad.fa-stop-circle:after{content:"\10f28d"}.fad.fa-stopwatch:after{content:"\10f2f2"}.fad.fa-store:after{content:"\10f54e"}.fad.fa-store-alt:after{content:"\10f54f"}.fad.fa-stream:after{content:"\10f550"}.fad.fa-street-view:after{content:"\10f21d"}.fad.fa-stretcher:after{content:"\10f825"}.fad.fa-strikethrough:after{content:"\10f0cc"}.fad.fa-stroopwafel:after{content:"\10f551"}.fad.fa-subscript:after{content:"\10f12c"}.fad.fa-subway:after{content:"\10f239"}.fad.fa-suitcase:after{content:"\10f0f2"}.fad.fa-suitcase-rolling:after{content:"\10f5c1"}.fad.fa-sun:after{content:"\10f185"}.fad.fa-sun-cloud:after{content:"\10f763"}.fad.fa-sun-dust:after{content:"\10f764"}.fad.fa-sun-haze:after{content:"\10f765"}.fad.fa-sunglasses:after{content:"\10f892"}.fad.fa-sunrise:after{content:"\10f766"}.fad.fa-sunset:after{content:"\10f767"}.fad.fa-superscript:after{content:"\10f12b"}.fad.fa-surprise:after{content:"\10f5c2"}.fad.fa-swatchbook:after{content:"\10f5c3"}.fad.fa-swimmer:after{content:"\10f5c4"}.fad.fa-swimming-pool:after{content:"\10f5c5"}.fad.fa-sword:after{content:"\10f71c"}.fad.fa-swords:after{content:"\10f71d"}.fad.fa-synagogue:after{content:"\10f69b"}.fad.fa-sync:after{content:"\10f021"}.fad.fa-sync-alt:after{content:"\10f2f1"}.fad.fa-syringe:after{content:"\10f48e"}.fad.fa-table:after{content:"\10f0ce"}.fad.fa-table-tennis:after{content:"\10f45d"}.fad.fa-tablet:after{content:"\10f10a"}.fad.fa-tablet-alt:after{content:"\10f3fa"}.fad.fa-tablet-android:after{content:"\10f3fb"}.fad.fa-tablet-android-alt:after{content:"\10f3fc"}.fad.fa-tablet-rugged:after{content:"\10f48f"}.fad.fa-tablets:after{content:"\10f490"}.fad.fa-tachometer:after{content:"\10f0e4"}.fad.fa-tachometer-alt:after{content:"\10f3fd"}.fad.fa-tachometer-alt-average:after{content:"\10f624"}.fad.fa-tachometer-alt-fast:after{content:"\10f625"}.fad.fa-tachometer-alt-fastest:after{content:"\10f626"}.fad.fa-tachometer-alt-slow:after{content:"\10f627"}.fad.fa-tachometer-alt-slowest:after{content:"\10f628"}.fad.fa-tachometer-average:after{content:"\10f629"}.fad.fa-tachometer-fast:after{content:"\10f62a"}.fad.fa-tachometer-fastest:after{content:"\10f62b"}.fad.fa-tachometer-slow:after{content:"\10f62c"}.fad.fa-tachometer-slowest:after{content:"\10f62d"}.fad.fa-taco:after{content:"\10f826"}.fad.fa-tag:after{content:"\10f02b"}.fad.fa-tags:after{content:"\10f02c"}.fad.fa-tally:after{content:"\10f69c"}.fad.fa-tanakh:after{content:"\10f827"}.fad.fa-tape:after{content:"\10f4db"}.fad.fa-tasks:after{content:"\10f0ae"}.fad.fa-tasks-alt:after{content:"\10f828"}.fad.fa-taxi:after{content:"\10f1ba"}.fad.fa-teeth:after{content:"\10f62e"}.fad.fa-teeth-open:after{content:"\10f62f"}.fad.fa-temperature-frigid:after{content:"\10f768"}.fad.fa-temperature-high:after{content:"\10f769"}.fad.fa-temperature-hot:after{content:"\10f76a"}.fad.fa-temperature-low:after{content:"\10f76b"}.fad.fa-tenge:after{content:"\10f7d7"}.fad.fa-tennis-ball:after{content:"\10f45e"}.fad.fa-terminal:after{content:"\10f120"}.fad.fa-text:after{content:"\10f893"}.fad.fa-text-height:after{content:"\10f034"}.fad.fa-text-size:after{content:"\10f894"}.fad.fa-text-width:after{content:"\10f035"}.fad.fa-th:after{content:"\10f00a"}.fad.fa-th-large:after{content:"\10f009"}.fad.fa-th-list:after{content:"\10f00b"}.fad.fa-theater-masks:after{content:"\10f630"}.fad.fa-thermometer:after{content:"\10f491"}.fad.fa-thermometer-empty:after{content:"\10f2cb"}.fad.fa-thermometer-full:after{content:"\10f2c7"}.fad.fa-thermometer-half:after{content:"\10f2c9"}.fad.fa-thermometer-quarter:after{content:"\10f2ca"}.fad.fa-thermometer-three-quarters:after{content:"\10f2c8"}.fad.fa-theta:after{content:"\10f69e"}.fad.fa-thumbs-down:after{content:"\10f165"}.fad.fa-thumbs-up:after{content:"\10f164"}.fad.fa-thumbtack:after{content:"\10f08d"}.fad.fa-thunderstorm:after{content:"\10f76c"}.fad.fa-thunderstorm-moon:after{content:"\10f76d"}.fad.fa-thunderstorm-sun:after{content:"\10f76e"}.fad.fa-ticket:after{content:"\10f145"}.fad.fa-ticket-alt:after{content:"\10f3ff"}.fad.fa-tilde:after{content:"\10f69f"}.fad.fa-times:after{content:"\10f00d"}.fad.fa-times-circle:after{content:"\10f057"}.fad.fa-times-hexagon:after{content:"\10f2ee"}.fad.fa-times-octagon:after{content:"\10f2f0"}.fad.fa-times-square:after{content:"\10f2d3"}.fad.fa-tint:after{content:"\10f043"}.fad.fa-tint-slash:after{content:"\10f5c7"}.fad.fa-tire:after{content:"\10f631"}.fad.fa-tire-flat:after{content:"\10f632"}.fad.fa-tire-pressure-warning:after{content:"\10f633"}.fad.fa-tire-rugged:after{content:"\10f634"}.fad.fa-tired:after{content:"\10f5c8"}.fad.fa-toggle-off:after{content:"\10f204"}.fad.fa-toggle-on:after{content:"\10f205"}.fad.fa-toilet:after{content:"\10f7d8"}.fad.fa-toilet-paper:after{content:"\10f71e"}.fad.fa-toilet-paper-alt:after{content:"\10f71f"}.fad.fa-tombstone:after{content:"\10f720"}.fad.fa-tombstone-alt:after{content:"\10f721"}.fad.fa-toolbox:after{content:"\10f552"}.fad.fa-tools:after{content:"\10f7d9"}.fad.fa-tooth:after{content:"\10f5c9"}.fad.fa-toothbrush:after{content:"\10f635"}.fad.fa-torah:after{content:"\10f6a0"}.fad.fa-torii-gate:after{content:"\10f6a1"}.fad.fa-tornado:after{content:"\10f76f"}.fad.fa-tractor:after{content:"\10f722"}.fad.fa-trademark:after{content:"\10f25c"}.fad.fa-traffic-cone:after{content:"\10f636"}.fad.fa-traffic-light:after{content:"\10f637"}.fad.fa-traffic-light-go:after{content:"\10f638"}.fad.fa-traffic-light-slow:after{content:"\10f639"}.fad.fa-traffic-light-stop:after{content:"\10f63a"}.fad.fa-train:after{content:"\10f238"}.fad.fa-tram:after{content:"\10f7da"}.fad.fa-transgender:after{content:"\10f224"}.fad.fa-transgender-alt:after{content:"\10f225"}.fad.fa-trash:after{content:"\10f1f8"}.fad.fa-trash-alt:after{content:"\10f2ed"}.fad.fa-trash-restore:after{content:"\10f829"}.fad.fa-trash-restore-alt:after{content:"\10f82a"}.fad.fa-trash-undo:after{content:"\10f895"}.fad.fa-trash-undo-alt:after{content:"\10f896"}.fad.fa-treasure-chest:after{content:"\10f723"}.fad.fa-tree:after{content:"\10f1bb"}.fad.fa-tree-alt:after{content:"\10f400"}.fad.fa-tree-christmas:after{content:"\10f7db"}.fad.fa-tree-decorated:after{content:"\10f7dc"}.fad.fa-tree-large:after{content:"\10f7dd"}.fad.fa-tree-palm:after{content:"\10f82b"}.fad.fa-trees:after{content:"\10f724"}.fad.fa-triangle:after{content:"\10f2ec"}.fad.fa-trophy:after{content:"\10f091"}.fad.fa-trophy-alt:after{content:"\10f2eb"}.fad.fa-truck:after{content:"\10f0d1"}.fad.fa-truck-container:after{content:"\10f4dc"}.fad.fa-truck-couch:after{content:"\10f4dd"}.fad.fa-truck-loading:after{content:"\10f4de"}.fad.fa-truck-monster:after{content:"\10f63b"}.fad.fa-truck-moving:after{content:"\10f4df"}.fad.fa-truck-pickup:after{content:"\10f63c"}.fad.fa-truck-plow:after{content:"\10f7de"}.fad.fa-truck-ramp:after{content:"\10f4e0"}.fad.fa-tshirt:after{content:"\10f553"}.fad.fa-tty:after{content:"\10f1e4"}.fad.fa-turkey:after{content:"\10f725"}.fad.fa-turtle:after{content:"\10f726"}.fad.fa-tv:after{content:"\10f26c"}.fad.fa-tv-retro:after{content:"\10f401"}.fad.fa-umbrella:after{content:"\10f0e9"}.fad.fa-umbrella-beach:after{content:"\10f5ca"}.fad.fa-underline:after{content:"\10f0cd"}.fad.fa-undo:after{content:"\10f0e2"}.fad.fa-undo-alt:after{content:"\10f2ea"}.fad.fa-unicorn:after{content:"\10f727"}.fad.fa-union:after{content:"\10f6a2"}.fad.fa-universal-access:after{content:"\10f29a"}.fad.fa-university:after{content:"\10f19c"}.fad.fa-unlink:after{content:"\10f127"}.fad.fa-unlock:after{content:"\10f09c"}.fad.fa-unlock-alt:after{content:"\10f13e"}.fad.fa-upload:after{content:"\10f093"}.fad.fa-usd-circle:after{content:"\10f2e8"}.fad.fa-usd-square:after{content:"\10f2e9"}.fad.fa-user:after{content:"\10f007"}.fad.fa-user-alt:after{content:"\10f406"}.fad.fa-user-alt-slash:after{content:"\10f4fa"}.fad.fa-user-astronaut:after{content:"\10f4fb"}.fad.fa-user-chart:after{content:"\10f6a3"}.fad.fa-user-check:after{content:"\10f4fc"}.fad.fa-user-circle:after{content:"\10f2bd"}.fad.fa-user-clock:after{content:"\10f4fd"}.fad.fa-user-cog:after{content:"\10f4fe"}.fad.fa-user-crown:after{content:"\10f6a4"}.fad.fa-user-edit:after{content:"\10f4ff"}.fad.fa-user-friends:after{content:"\10f500"}.fad.fa-user-graduate:after{content:"\10f501"}.fad.fa-user-hard-hat:after{content:"\10f82c"}.fad.fa-user-headset:after{content:"\10f82d"}.fad.fa-user-injured:after{content:"\10f728"}.fad.fa-user-lock:after{content:"\10f502"}.fad.fa-user-md:after{content:"\10f0f0"}.fad.fa-user-md-chat:after{content:"\10f82e"}.fad.fa-user-minus:after{content:"\10f503"}.fad.fa-user-ninja:after{content:"\10f504"}.fad.fa-user-nurse:after{content:"\10f82f"}.fad.fa-user-plus:after{content:"\10f234"}.fad.fa-user-secret:after{content:"\10f21b"}.fad.fa-user-shield:after{content:"\10f505"}.fad.fa-user-slash:after{content:"\10f506"}.fad.fa-user-tag:after{content:"\10f507"}.fad.fa-user-tie:after{content:"\10f508"}.fad.fa-user-times:after{content:"\10f235"}.fad.fa-users:after{content:"\10f0c0"}.fad.fa-users-class:after{content:"\10f63d"}.fad.fa-users-cog:after{content:"\10f509"}.fad.fa-users-crown:after{content:"\10f6a5"}.fad.fa-users-medical:after{content:"\10f830"}.fad.fa-utensil-fork:after{content:"\10f2e3"}.fad.fa-utensil-knife:after{content:"\10f2e4"}.fad.fa-utensil-spoon:after{content:"\10f2e5"}.fad.fa-utensils:after{content:"\10f2e7"}.fad.fa-utensils-alt:after{content:"\10f2e6"}.fad.fa-value-absolute:after{content:"\10f6a6"}.fad.fa-vector-square:after{content:"\10f5cb"}.fad.fa-venus:after{content:"\10f221"}.fad.fa-venus-double:after{content:"\10f226"}.fad.fa-venus-mars:after{content:"\10f228"}.fad.fa-vial:after{content:"\10f492"}.fad.fa-vials:after{content:"\10f493"}.fad.fa-video:after{content:"\10f03d"}.fad.fa-video-plus:after{content:"\10f4e1"}.fad.fa-video-slash:after{content:"\10f4e2"}.fad.fa-vihara:after{content:"\10f6a7"}.fad.fa-voicemail:after{content:"\10f897"}.fad.fa-volcano:after{content:"\10f770"}.fad.fa-volleyball-ball:after{content:"\10f45f"}.fad.fa-volume:after{content:"\10f6a8"}.fad.fa-volume-down:after{content:"\10f027"}.fad.fa-volume-mute:after{content:"\10f6a9"}.fad.fa-volume-off:after{content:"\10f026"}.fad.fa-volume-slash:after{content:"\10f2e2"}.fad.fa-volume-up:after{content:"\10f028"}.fad.fa-vote-nay:after{content:"\10f771"}.fad.fa-vote-yea:after{content:"\10f772"}.fad.fa-vr-cardboard:after{content:"\10f729"}.fad.fa-walker:after{content:"\10f831"}.fad.fa-walking:after{content:"\10f554"}.fad.fa-wallet:after{content:"\10f555"}.fad.fa-wand:after{content:"\10f72a"}.fad.fa-wand-magic:after{content:"\10f72b"}.fad.fa-warehouse:after{content:"\10f494"}.fad.fa-warehouse-alt:after{content:"\10f495"}.fad.fa-washer:after{content:"\10f898"}.fad.fa-watch:after{content:"\10f2e1"}.fad.fa-watch-fitness:after{content:"\10f63e"}.fad.fa-water:after{content:"\10f773"}.fad.fa-water-lower:after{content:"\10f774"}.fad.fa-water-rise:after{content:"\10f775"}.fad.fa-wave-sine:after{content:"\10f899"}.fad.fa-wave-square:after{content:"\10f83e"}.fad.fa-wave-triangle:after{content:"\10f89a"}.fad.fa-webcam:after{content:"\10f832"}.fad.fa-webcam-slash:after{content:"\10f833"}.fad.fa-weight:after{content:"\10f496"}.fad.fa-weight-hanging:after{content:"\10f5cd"}.fad.fa-whale:after{content:"\10f72c"}.fad.fa-wheat:after{content:"\10f72d"}.fad.fa-wheelchair:after{content:"\10f193"}.fad.fa-whistle:after{content:"\10f460"}.fad.fa-wifi:after{content:"\10f1eb"}.fad.fa-wifi-1:after{content:"\10f6aa"}.fad.fa-wifi-2:after{content:"\10f6ab"}.fad.fa-wifi-slash:after{content:"\10f6ac"}.fad.fa-wind:after{content:"\10f72e"}.fad.fa-wind-turbine:after{content:"\10f89b"}.fad.fa-wind-warning:after{content:"\10f776"}.fad.fa-window:after{content:"\10f40e"}.fad.fa-window-alt:after{content:"\10f40f"}.fad.fa-window-close:after{content:"\10f410"}.fad.fa-window-maximize:after{content:"\10f2d0"}.fad.fa-window-minimize:after{content:"\10f2d1"}.fad.fa-window-restore:after{content:"\10f2d2"}.fad.fa-windsock:after{content:"\10f777"}.fad.fa-wine-bottle:after{content:"\10f72f"}.fad.fa-wine-glass:after{content:"\10f4e3"}.fad.fa-wine-glass-alt:after{content:"\10f5ce"}.fad.fa-won-sign:after{content:"\10f159"}.fad.fa-wreath:after{content:"\10f7e2"}.fad.fa-wrench:after{content:"\10f0ad"}.fad.fa-x-ray:after{content:"\10f497"}.fad.fa-yen-sign:after{content:"\10f157"}.fad.fa-yin-yang:after{content:"\10f6ad"}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:300;src:url(../webfonts/fa-light-300-pro-5.0.0.eot);src:url(../webfonts/fa-light-300-pro-5.0.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-light-300-pro-5.0.0.woff2) format("woff2"),url(../webfonts/fa-light-300-pro-5.0.0.woff) format("woff"),url(../webfonts/fa-light-300-pro-5.0.0.ttf) format("truetype"),url(../webfonts/fa-light-300-pro-5.0.0.svg#fontawesome) format("svg");unicode-range:U+f002,U+f005,U+f008-f009,U+f00b-f00c,U+f00e,U+f011,U+f013,U+f017,U+f019,U+f01c,U+f022-f025,U+f02a-f02e,U+f030,U+f040-f042,U+f044,U+f047-f04e,U+f050-f05b,U+f05e,U+f060-f066,U+f068-f06a,U+f074,U+f077-f07a,U+f07c-f07e,U+f085,U+f089,U+f08b,U+f08d-f08e,U+f090-f091,U+f093-f095,U+f098,U+f09c-f09e,U+f0a4-f0ab,U+f0b2,U+f0c1,U+f0c3,U+f0c5-f0c7,U+f0c9,U+f0ce,U+f0d7-f0dc,U+f0e0,U+f0e2-f0e3,U+f0e9-f0ea,U+f0ec,U+f0f4,U+f0f8,U+f0fa-f0fe,U+f100-f108,U+f10a-f10b,U+f110,U+f11b-f11c,U+f120-f122,U+f124,U+f126-f128,U+f12e,U+f132-f134,U+f137-f13a,U+f13d-f13e,U+f141-f144,U+f146,U+f148-f14d,U+f150-f154,U+f156-f159,U+f15c,U+f164-f165,U+f175-f178,U+f182-f183,U+f186,U+f188,U+f191-f193,U+f195,U+f197,U+f199,U+f1ab,U+f1ad-f1ae,U+f1b0,U+f1b2-f1b3,U+f1b8,U+f1bb,U+f1c0-f1c5,U+f1c7-f1c9,U+f1cd-f1ce,U+f1d8,U+f1da,U+f1e0-f1e2,U+f1e6,U+f1ea,U+f1fa,U+f1fd-f1fe,U+f204-f206,U+f20b,U+f217-f218,U+f21a,U+f21c,U+f221-f22d,U+f233,U+f238-f239,U+f240-f244,U+f246,U+f249,U+f24d,U+f255-f25c,U+f26c,U+f271-f274,U+f28b,U+f28d,U+f290-f292,U+f295,U+f29a,U+f29d-f29e,U+f2a1-f2a4,U+f2a7-f2a8,U+f2c7-f2ce,U+f2d0,U+f2d2-f2d3,U+f2db,U+f2e1,U+f2e3-f2e7,U+f2ea-f2ec,U+f2ee,U+f2f0-f2fd,U+f300-f301,U+f303,U+f307-f30f,U+f316-f31a,U+f31c-f31d,U+f320-f326,U+f328-f32e,U+f330-f33e,U+f340-f34c,U+f350-f353,U+f355,U+f358-f35b,U+f35d,U+f360-f367,U+f376,U+f37e,U+f387,U+f389-f38a,U+f390,U+f39b-f39c,U+f3a0,U+f3b3,U+f3be-f3bf,U+f3c2,U+f3c5,U+f3cd-f3cf,U+f3de,U+f3e5,U+f3ed,U+f3f0,U+f3f2,U+f3f4,U+f3fa-f3fc,U+f3ff-f401,U+f40e-f410,U+f422,U+f424}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:300;src:url(../webfonts/fa-light-300-pro-5.0.1.eot);src:url(../webfonts/fa-light-300-pro-5.0.1.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-light-300-pro-5.0.1.woff2) format("woff2"),url(../webfonts/fa-light-300-pro-5.0.1.woff) format("woff"),url(../webfonts/fa-light-300-pro-5.0.1.ttf) format("truetype"),url(../webfonts/fa-light-300-pro-5.0.1.svg#fontawesome) format("svg");unicode-range:U+f3c1}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:300;src:url(../webfonts/fa-light-300-pro-5.0.3.eot);src:url(../webfonts/fa-light-300-pro-5.0.3.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-light-300-pro-5.0.3.woff2) format("woff2"),url(../webfonts/fa-light-300-pro-5.0.3.woff) format("woff"),url(../webfonts/fa-light-300-pro-5.0.3.ttf) format("truetype"),url(../webfonts/fa-light-300-pro-5.0.3.svg#fontawesome) format("svg");unicode-range:U+f19c,U+f245,U+f2b9,U+f2bb,U+f2c1,U+f3e0}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:300;src:url(../webfonts/fa-light-300-pro-5.0.5.eot);src:url(../webfonts/fa-light-300-pro-5.0.5.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-light-300-pro-5.0.5.woff2) format("woff2"),url(../webfonts/fa-light-300-pro-5.0.5.woff) format("woff"),url(../webfonts/fa-light-300-pro-5.0.5.ttf) format("truetype"),url(../webfonts/fa-light-300-pro-5.0.5.svg#fontawesome) format("svg");unicode-range:U+f1e3,U+f432-f434,U+f436-f438,U+f449-f44c,U+f44e-f451,U+f453,U+f455,U+f458,U+f45a-f45e}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:300;src:url(../webfonts/fa-light-300-pro-5.0.7.eot);src:url(../webfonts/fa-light-300-pro-5.0.7.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-light-300-pro-5.0.7.woff2) format("woff2"),url(../webfonts/fa-light-300-pro-5.0.7.woff) format("woff"),url(../webfonts/fa-light-300-pro-5.0.7.ttf) format("truetype"),url(../webfonts/fa-light-300-pro-5.0.7.svg#fontawesome) format("svg");unicode-range:U+f0d1,U+f0f1,U+f0f9,U+f21e,U+f46?,U+f472-f475,U+f477-f47a,U+f47d-f47e,U+f481-f497}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:300;src:url(../webfonts/fa-light-300-pro-5.0.9.eot);src:url(../webfonts/fa-light-300-pro-5.0.9.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-light-300-pro-5.0.9.woff2) format("woff2"),url(../webfonts/fa-light-300-pro-5.0.9.woff) format("woff"),url(../webfonts/fa-light-300-pro-5.0.9.ttf) format("truetype"),url(../webfonts/fa-light-300-pro-5.0.9.svg#fontawesome) format("svg");unicode-range:U+f03d,U+f06c,U+f086,U+f0ac,U+f0f2,U+f10d-f10e,U+f155,U+f187,U+f2b5,U+f2e8-f2e9,U+f2fe,U+f3dd,U+f47b-f47c,U+f498,U+f49a-f49b,U+f49d,U+f49f-f4b9,U+f4bb-f4c8,U+f4cb-f4d4,U+f4d6,U+f4d8-f4d9,U+f4db-f4e2}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:300;src:url(../webfonts/fa-light-300-pro-5.0.10.eot);src:url(../webfonts/fa-light-300-pro-5.0.10.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-light-300-pro-5.0.10.woff2) format("woff2"),url(../webfonts/fa-light-300-pro-5.0.10.woff) format("woff"),url(../webfonts/fa-light-300-pro-5.0.10.ttf) format("truetype"),url(../webfonts/fa-light-300-pro-5.0.10.svg#fontawesome) format("svg");unicode-range:U+f471,U+f4ca}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:300;src:url(../webfonts/fa-light-300-pro-5.0.11.eot);src:url(../webfonts/fa-light-300-pro-5.0.11.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-light-300-pro-5.0.11.woff2) format("woff2"),url(../webfonts/fa-light-300-pro-5.0.11.woff) format("woff"),url(../webfonts/fa-light-300-pro-5.0.11.ttf) format("truetype"),url(../webfonts/fa-light-300-pro-5.0.11.svg#fontawesome) format("svg");unicode-range:U+f007,U+f0c0,U+f0c2,U+f0ed-f0ee,U+f0f0,U+f1de,U+f21b,U+f234-f235,U+f2bd,U+f381-f382,U+f3f1,U+f406,U+f4e6,U+f4fa-f501,U+f503-f509}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:300;src:url(../webfonts/fa-light-300-pro-5.0.13.eot);src:url(../webfonts/fa-light-300-pro-5.0.13.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-light-300-pro-5.0.13.woff2) format("woff2"),url(../webfonts/fa-light-300-pro-5.0.13.woff) format("woff"),url(../webfonts/fa-light-300-pro-5.0.13.ttf) format("truetype"),url(../webfonts/fa-light-300-pro-5.0.13.svg#fontawesome) format("svg");unicode-range:U+f00d,U+f010,U+f067,U+f072,U+f0ad,U+f0d6,U+f0e8,U+f130-f131,U+f24e,U+f3c9,U+f3d1,U+f515-f517,U+f519-f51e,U+f520-f52c,U+f52e,U+f530-f533,U+f535-f555}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:300;src:url(../webfonts/fa-light-300-pro-5.1.0.eot);src:url(../webfonts/fa-light-300-pro-5.1.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-light-300-pro-5.1.0.woff2) format("woff2"),url(../webfonts/fa-light-300-pro-5.1.0.woff) format("woff"),url(../webfonts/fa-light-300-pro-5.1.0.ttf) format("truetype"),url(../webfonts/fa-light-300-pro-5.1.0.svg#fontawesome) format("svg");unicode-range:U+f043,U+f0c4,U+f0d0,U+f118-f11a,U+f125,U+f1ba,U+f1fb-f1fc,U+f207,U+f236,U+f279,U+f304-f305,U+f4da,U+f52d,U+f556-f558,U+f55a-f55f,U+f562-f56d,U+f570-f577,U+f579-f58b,U+f58d-f590,U+f593-f595,U+f597-f59d,U+f59f-f5a2,U+f5a4-f5a7,U+f5a9-f5af,U+f5b1,U+f5b3-f5b4,U+f5b6,U+f5b8-f5bd,U+f5bf-f5c5,U+f5c7-f5cb,U+f5cd}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:300;src:url(../webfonts/fa-light-300-pro-5.1.1.eot);src:url(../webfonts/fa-light-300-pro-5.1.1.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-light-300-pro-5.1.1.woff2) format("woff2"),url(../webfonts/fa-light-300-pro-5.1.1.woff) format("woff"),url(../webfonts/fa-light-300-pro-5.1.1.ttf) format("truetype"),url(../webfonts/fa-light-300-pro-5.1.1.svg#fontawesome) format("svg");unicode-range:U+f386,U+f58c,U+f596}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:300;src:url(../webfonts/fa-light-300-pro-5.2.0.eot);src:url(../webfonts/fa-light-300-pro-5.2.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-light-300-pro-5.2.0.woff2) format("woff2"),url(../webfonts/fa-light-300-pro-5.2.0.woff) format("woff"),url(../webfonts/fa-light-300-pro-5.2.0.ttf) format("truetype"),url(../webfonts/fa-light-300-pro-5.2.0.svg#fontawesome) format("svg");unicode-range:U+f001,U+f018,U+f0e4,U+f0f3,U+f109,U+f14e,U+f1b9,U+f1e5,U+f1f6,U+f21d,U+f276-f277,U+f3fd,U+f4d7,U+f518,U+f559,U+f5d0-f5da,U+f5dd-f5e6,U+f5e8-f5f0,U+f5f2-f5f5,U+f5f8-f5f9,U+f5fb-f60e,U+f610,U+f614,U+f616-f619,U+f61c-f63e}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:300;src:url(../webfonts/fa-light-300-pro-5.3.0.eot);src:url(../webfonts/fa-light-300-pro-5.3.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-light-300-pro-5.3.0.woff2) format("woff2"),url(../webfonts/fa-light-300-pro-5.3.0.woff) format("woff"),url(../webfonts/fa-light-300-pro-5.3.0.ttf) format("truetype"),url(../webfonts/fa-light-300-pro-5.3.0.svg#fontawesome) format("svg");unicode-range:U+f027-f028,U+f02f,U+f080,U+f0a1,U+f0b1,U+f0eb,U+f1ac,U+f1ec,U+f200-f201,U+f2e2,U+f61a-f61b,U+f640-f641,U+f643-f653,U+f655-f656,U+f659-f663,U+f665-f675,U+f678-f680,U+f683-f68b,U+f694-f69c,U+f69e-f69f,U+f6a1-f6a9,U+f6ac-f6ad}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:300;src:url(../webfonts/fa-light-300-pro-5.4.0.eot);src:url(../webfonts/fa-light-300-pro-5.4.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-light-300-pro-5.4.0.woff2) format("woff2"),url(../webfonts/fa-light-300-pro-5.4.0.woff) format("woff"),url(../webfonts/fa-light-300-pro-5.4.0.ttf) format("truetype"),url(../webfonts/fa-light-300-pro-5.4.0.svg#fontawesome) format("svg");unicode-range:U+f499,U+f676,U+f6ae,U+f6b0-f6bc,U+f6bf-f6c2,U+f6c5-f6c8,U+f6cb,U+f6cd-f6d5,U+f6d8-f6d9,U+f6db,U+f6dd-f6e3,U+f6e5-f6ec,U+f6ee,U+f6f1-f6f3,U+f6f5-f6f9,U+f6fc-f6fd,U+f6ff-f703,U+f706-f70f,U+f711-f724,U+f726-f729,U+f72b,U+f72d,U+f72f}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:300;src:url(../webfonts/fa-light-300-pro-5.4.1.eot);src:url(../webfonts/fa-light-300-pro-5.4.1.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-light-300-pro-5.4.1.woff2) format("woff2"),url(../webfonts/fa-light-300-pro-5.4.1.woff) format("woff"),url(../webfonts/fa-light-300-pro-5.4.1.ttf) format("truetype"),url(../webfonts/fa-light-300-pro-5.4.1.svg#fontawesome) format("svg");unicode-range:U+f72a}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:300;src:url(../webfonts/fa-light-300-pro-5.5.0.eot);src:url(../webfonts/fa-light-300-pro-5.5.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-light-300-pro-5.5.0.woff2) format("woff2"),url(../webfonts/fa-light-300-pro-5.5.0.woff) format("woff"),url(../webfonts/fa-light-300-pro-5.5.0.ttf) format("truetype"),url(../webfonts/fa-light-300-pro-5.5.0.svg#fontawesome) format("svg");unicode-range:U+f0e7,U+f185,U+f2dc,U+f6c3-f6c4,U+f72e,U+f732-f750,U+f752-f758,U+f75a,U+f75c,U+f75e-f777}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:300;src:url(../webfonts/fa-light-300-pro-5.6.0.eot);src:url(../webfonts/fa-light-300-pro-5.6.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-light-300-pro-5.6.0.woff2) format("woff2"),url(../webfonts/fa-light-300-pro-5.6.0.woff) format("woff"),url(../webfonts/fa-light-300-pro-5.6.0.ttf) format("truetype"),url(../webfonts/fa-light-300-pro-5.6.0.svg#fontawesome) format("svg");unicode-range:U+f06b,U+f5b7,U+f77d,U+f77f,U+f781-f784,U+f788,U+f78a-f78c,U+f78e-f78f,U+f792-f796,U+f79a-f7aa,U+f7ac-f7ae,U+f7b4-f7b6,U+f7b8,U+f7bd-f7be,U+f7c0-f7c3,U+f7c5,U+f7c7-f7d2,U+f7d4-f7d5,U+f7d7-f7de,U+f7e2}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:300;src:url(../webfonts/fa-light-300-pro-5.6.1.eot);src:url(../webfonts/fa-light-300-pro-5.6.1.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-light-300-pro-5.6.1.woff2) format("woff2"),url(../webfonts/fa-light-300-pro-5.6.1.woff) format("woff"),url(../webfonts/fa-light-300-pro-5.6.1.ttf) format("truetype"),url(../webfonts/fa-light-300-pro-5.6.1.svg#fontawesome) format("svg");unicode-range:U+f071}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:300;src:url(../webfonts/fa-light-300-pro-5.6.3.eot);src:url(../webfonts/fa-light-300-pro-5.6.3.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-light-300-pro-5.6.3.woff2) format("woff2"),url(../webfonts/fa-light-300-pro-5.6.3.woff) format("woff"),url(../webfonts/fa-light-300-pro-5.6.3.ttf) format("truetype"),url(../webfonts/fa-light-300-pro-5.6.3.svg#fontawesome) format("svg");unicode-range:U+f7e4}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:300;src:url(../webfonts/fa-light-300-pro-5.7.0.eot);src:url(../webfonts/fa-light-300-pro-5.7.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-light-300-pro-5.7.0.woff2) format("woff2"),url(../webfonts/fa-light-300-pro-5.7.0.woff) format("woff"),url(../webfonts/fa-light-300-pro-5.7.0.ttf) format("truetype"),url(../webfonts/fa-light-300-pro-5.7.0.svg#fontawesome) format("svg");unicode-range:U+f00a,U+f015,U+f06e,U+f070,U+f073,U+f135,U+f1c6,U+f1e4,U+f1f8,U+f2a0,U+f2ed,U+f377,U+f470,U+f49c,U+f49e,U+f4c9,U+f56e-f56f,U+f664,U+f6d6-f6d7,U+f705,U+f710,U+f725,U+f77e,U+f780,U+f7e5-f7e7,U+f7e9-f7f0,U+f7f2-f7fe,U+f800-f812,U+f814-f833}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:300;src:url(../webfonts/fa-light-300-pro-5.7.1.eot);src:url(../webfonts/fa-light-300-pro-5.7.1.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-light-300-pro-5.7.1.woff2) format("woff2"),url(../webfonts/fa-light-300-pro-5.7.1.woff) format("woff"),url(../webfonts/fa-light-300-pro-5.7.1.ttf) format("truetype"),url(../webfonts/fa-light-300-pro-5.7.1.svg#fontawesome) format("svg");unicode-range:U+f7f1}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:300;src:url(../webfonts/fa-light-300-pro-5.8.0.eot);src:url(../webfonts/fa-light-300-pro-5.8.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-light-300-pro-5.8.0.woff2) format("woff2"),url(../webfonts/fa-light-300-pro-5.8.0.woff) format("woff"),url(../webfonts/fa-light-300-pro-5.8.0.ttf) format("truetype"),url(../webfonts/fa-light-300-pro-5.8.0.svg#fontawesome) format("svg");unicode-range:U+f01e,U+f021,U+f026,U+f076,U+f12d,U+f31e,U+f356,U+f45f,U+f5b0,U+f7ff,U+f83e}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:300;src:url(../webfonts/fa-light-300-pro-5.8.2.eot);src:url(../webfonts/fa-light-300-pro-5.8.2.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-light-300-pro-5.8.2.woff2) format("woff2"),url(../webfonts/fa-light-300-pro-5.8.2.woff) format("woff"),url(../webfonts/fa-light-300-pro-5.8.2.ttf) format("truetype"),url(../webfonts/fa-light-300-pro-5.8.2.svg#fontawesome) format("svg");unicode-range:U+f560,U+f7b9-f7ba,U+f7c4}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:300;src:url(../webfonts/fa-light-300-pro-5.9.0.eot);src:url(../webfonts/fa-light-300-pro-5.9.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-light-300-pro-5.9.0.woff2) format("woff2"),url(../webfonts/fa-light-300-pro-5.9.0.woff) format("woff"),url(../webfonts/fa-light-300-pro-5.9.0.ttf) format("truetype"),url(../webfonts/fa-light-300-pro-5.9.0.svg#fontawesome) format("svg");unicode-range:U+f031-f032,U+f034-f03c,U+f0ae,U+f0ca-f0cd,U+f12b-f12c,U+f15d-f15e,U+f160-f163,U+f1dd,U+f313-f315,U+f34e,U+f439-f448,U+f502,U+f5dc,U+f677,U+f6a0,U+f843-f85e,U+f860-f862,U+f864-f878,U+f87a,U+f87c-f892,U+f894-f89b}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:300;src:url(../webfonts/fa-light-300-pro-5.10.1.eot);src:url(../webfonts/fa-light-300-pro-5.10.1.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-light-300-pro-5.10.1.woff2) format("woff2"),url(../webfonts/fa-light-300-pro-5.10.1.woff) format("woff"),url(../webfonts/fa-light-300-pro-5.10.1.ttf) format("truetype"),url(../webfonts/fa-light-300-pro-5.10.1.svg#fontawesome) format("svg");unicode-range:U+f000,U+f004,U+f012,U+f029,U+f033,U+f03e,U+f06d,U+f075,U+f07b,U+f083-f084,U+f0a0,U+f0a3,U+f0b0,U+f0c8,U+f0dd-f0de,U+f111,U+f11e,U+f129-f12a,U+f140,U+f145,U+f15b,U+f19d,U+f1dc,U+f1eb,U+f1f9,U+f20a,U+f219,U+f247-f248,U+f251-f254,U+f25d,U+f275,U+f27a,U+f2b6,U+f2c2,U+f2d1,U+f302,U+f306,U+f310-f312,U+f327,U+f34d,U+f354,U+f357,U+f3a5,U+f435,U+f454,U+f456,U+f476,U+f47f-f480,U+f4ba,U+f4e3,U+f51f,U+f52f,U+f534,U+f561,U+f578,U+f591,U+f5ce,U+f5db,U+f5e7,U+f5f6,U+f611,U+f613,U+f615,U+f654,U+f657-f658,U+f681-f682,U+f68c-f693,U+f6aa-f6ab,U+f6bd-f6be,U+f6da,U+f6e4,U+f6ed,U+f6ef-f6f0,U+f6f4,U+f6fa-f6fb,U+f6fe,U+f72c,U+f751,U+f759,U+f75b,U+f779,U+f77c,U+f786-f787,U+f7ab,U+f7b2,U+f7b7,U+f7bf,U+f7e8,U+f813,U+f85f,U+f863,U+f879,U+f87b,U+f893,U+f89c-f89d}.fal{font-weight:300}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.0.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.0.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.0.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.0.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.0.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.0.svg#fontawesome) format("svg");unicode-range:U+f005,U+f017,U+f022,U+f024,U+f02e,U+f044,U+f057-f059,U+f07c,U+f089,U+f094,U+f09d,U+f0a4-f0a7,U+f0c5,U+f0c7,U+f0e0,U+f0f8,U+f0fe,U+f11c,U+f133,U+f144,U+f146,U+f14a,U+f14d,U+f150-f152,U+f15c,U+f164-f165,U+f186,U+f191-f192,U+f1ad,U+f1c1-f1c5,U+f1c7-f1c9,U+f1cd,U+f1d8,U+f1ea,U+f249,U+f24d,U+f255-f25b,U+f271-f274,U+f28b,U+f28d,U+f2d0,U+f2d2,U+f328,U+f358-f35b,U+f410}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(../webfonts/fa-regular-400-pro-5.0.0.eot);src:url(../webfonts/fa-regular-400-pro-5.0.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400-pro-5.0.0.woff2) format("woff2"),url(../webfonts/fa-regular-400-pro-5.0.0.woff) format("woff"),url(../webfonts/fa-regular-400-pro-5.0.0.ttf) format("truetype"),url(../webfonts/fa-regular-400-pro-5.0.0.svg#fontawesome) format("svg");unicode-range:U+f002,U+f008-f009,U+f00b-f00c,U+f00e,U+f011,U+f013,U+f019,U+f01c,U+f023,U+f025,U+f02a-f02d,U+f030,U+f040-f042,U+f047-f04e,U+f050-f056,U+f05a-f05b,U+f05e,U+f060-f066,U+f068-f06a,U+f074,U+f077-f07a,U+f07d-f07e,U+f085,U+f08b,U+f08d-f08e,U+f090-f091,U+f093,U+f095,U+f098,U+f09c,U+f09e,U+f0a8-f0ab,U+f0b2,U+f0c1,U+f0c3,U+f0c6,U+f0c9,U+f0ce,U+f0d7-f0dc,U+f0e2-f0e3,U+f0e9-f0ea,U+f0ec,U+f0f4,U+f0fa-f0fd,U+f100-f108,U+f10a-f10b,U+f110,U+f11b,U+f120-f122,U+f124,U+f126-f128,U+f12e,U+f132,U+f134,U+f137-f13a,U+f13d-f13e,U+f141-f143,U+f148-f149,U+f14b-f14c,U+f153-f154,U+f156-f159,U+f175-f178,U+f182-f183,U+f188,U+f193,U+f195,U+f197,U+f199,U+f1ab,U+f1ae,U+f1b0,U+f1b2-f1b3,U+f1b8,U+f1bb,U+f1c0,U+f1ce,U+f1da,U+f1e0-f1e2,U+f1e6,U+f1fa,U+f1fd-f1fe,U+f204-f206,U+f20b,U+f217-f218,U+f21a,U+f21c,U+f221-f22d,U+f233,U+f238-f239,U+f240-f244,U+f246,U+f25c,U+f26c,U+f290-f292,U+f295,U+f29a,U+f29d-f29e,U+f2a1-f2a4,U+f2a7-f2a8,U+f2c7-f2ce,U+f2d3,U+f2db,U+f2e1,U+f2e3-f2e7,U+f2ea-f2ec,U+f2ee,U+f2f0-f2fd,U+f300-f301,U+f303,U+f307-f30f,U+f316-f31a,U+f31c-f31d,U+f320-f326,U+f329-f32e,U+f330-f33e,U+f340-f34c,U+f350-f353,U+f355,U+f35d,U+f360-f367,U+f376,U+f37e,U+f387,U+f389-f38a,U+f390,U+f39b-f39c,U+f3a0,U+f3b3,U+f3be-f3bf,U+f3c2,U+f3c5,U+f3cd-f3cf,U+f3de,U+f3e5,U+f3ed,U+f3f0,U+f3f2,U+f3f4,U+f3fa-f3fc,U+f3ff-f401,U+f40e-f40f,U+f422,U+f424}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(../webfonts/fa-regular-400-pro-5.0.1.eot);src:url(../webfonts/fa-regular-400-pro-5.0.1.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400-pro-5.0.1.woff2) format("woff2"),url(../webfonts/fa-regular-400-pro-5.0.1.woff) format("woff"),url(../webfonts/fa-regular-400-pro-5.0.1.ttf) format("truetype"),url(../webfonts/fa-regular-400-pro-5.0.1.svg#fontawesome) format("svg");unicode-range:U+f3c1}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.3.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.3.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.3.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.3.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.3.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.3.svg#fontawesome) format("svg");unicode-range:U+f2b9,U+f2bb,U+f2c1}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(../webfonts/fa-regular-400-pro-5.0.3.eot);src:url(../webfonts/fa-regular-400-pro-5.0.3.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400-pro-5.0.3.woff2) format("woff2"),url(../webfonts/fa-regular-400-pro-5.0.3.woff) format("woff"),url(../webfonts/fa-regular-400-pro-5.0.3.ttf) format("truetype"),url(../webfonts/fa-regular-400-pro-5.0.3.svg#fontawesome) format("svg");unicode-range:U+f19c,U+f245,U+f3e0}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.5.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.5.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.5.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.5.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.5.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.5.svg#fontawesome) format("svg");unicode-range:U+f1e3}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(../webfonts/fa-regular-400-pro-5.0.5.eot);src:url(../webfonts/fa-regular-400-pro-5.0.5.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400-pro-5.0.5.woff2) format("woff2"),url(../webfonts/fa-regular-400-pro-5.0.5.woff) format("woff"),url(../webfonts/fa-regular-400-pro-5.0.5.ttf) format("truetype"),url(../webfonts/fa-regular-400-pro-5.0.5.svg#fontawesome) format("svg");unicode-range:U+f432-f434,U+f436-f438,U+f449-f44c,U+f44e-f451,U+f453,U+f455,U+f458,U+f45a-f45e}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(../webfonts/fa-regular-400-pro-5.0.7.eot);src:url(../webfonts/fa-regular-400-pro-5.0.7.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400-pro-5.0.7.woff2) format("woff2"),url(../webfonts/fa-regular-400-pro-5.0.7.woff) format("woff"),url(../webfonts/fa-regular-400-pro-5.0.7.ttf) format("truetype"),url(../webfonts/fa-regular-400-pro-5.0.7.svg#fontawesome) format("svg");unicode-range:U+f0d1,U+f0f1,U+f0f9,U+f21e,U+f46?,U+f472-f475,U+f477-f47a,U+f47d-f47e,U+f481-f497}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.9.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.9.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.9.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.9.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.9.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.9.svg#fontawesome) format("svg");unicode-range:U+f086,U+f2b5,U+f4ad}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(../webfonts/fa-regular-400-pro-5.0.9.eot);src:url(../webfonts/fa-regular-400-pro-5.0.9.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400-pro-5.0.9.woff2) format("woff2"),url(../webfonts/fa-regular-400-pro-5.0.9.woff) format("woff"),url(../webfonts/fa-regular-400-pro-5.0.9.ttf) format("truetype"),url(../webfonts/fa-regular-400-pro-5.0.9.svg#fontawesome) format("svg");unicode-range:U+f03d,U+f06c,U+f0ac,U+f0f2,U+f10d-f10e,U+f155,U+f187,U+f2e8-f2e9,U+f2fe,U+f3dd,U+f47b-f47c,U+f498,U+f49a-f49b,U+f49d,U+f49f-f4ac,U+f4ae-f4b9,U+f4bb-f4c8,U+f4cb-f4d4,U+f4d6,U+f4d8-f4d9,U+f4db-f4e2}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(../webfonts/fa-regular-400-pro-5.0.10.eot);src:url(../webfonts/fa-regular-400-pro-5.0.10.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400-pro-5.0.10.woff2) format("woff2"),url(../webfonts/fa-regular-400-pro-5.0.10.woff) format("woff"),url(../webfonts/fa-regular-400-pro-5.0.10.ttf) format("truetype"),url(../webfonts/fa-regular-400-pro-5.0.10.svg#fontawesome) format("svg");unicode-range:U+f471,U+f4ca}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.11.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.11.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.11.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.11.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.11.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.11.svg#fontawesome) format("svg");unicode-range:U+f007,U+f2bd,U+f4e6}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(../webfonts/fa-regular-400-pro-5.0.11.eot);src:url(../webfonts/fa-regular-400-pro-5.0.11.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400-pro-5.0.11.woff2) format("woff2"),url(../webfonts/fa-regular-400-pro-5.0.11.woff) format("woff"),url(../webfonts/fa-regular-400-pro-5.0.11.ttf) format("truetype"),url(../webfonts/fa-regular-400-pro-5.0.11.svg#fontawesome) format("svg");unicode-range:U+f0c0,U+f0c2,U+f0ed-f0ee,U+f0f0,U+f1de,U+f21b,U+f234-f235,U+f381-f382,U+f3f1,U+f406,U+f4fa-f501,U+f503-f509}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.13.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.13.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.13.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.13.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.13.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.0.13.svg#fontawesome) format("svg");unicode-range:U+f3d1}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(../webfonts/fa-regular-400-pro-5.0.13.eot);src:url(../webfonts/fa-regular-400-pro-5.0.13.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400-pro-5.0.13.woff2) format("woff2"),url(../webfonts/fa-regular-400-pro-5.0.13.woff) format("woff"),url(../webfonts/fa-regular-400-pro-5.0.13.ttf) format("truetype"),url(../webfonts/fa-regular-400-pro-5.0.13.svg#fontawesome) format("svg");unicode-range:U+f00d,U+f010,U+f067,U+f072,U+f0ad,U+f0d6,U+f0e8,U+f130-f131,U+f24e,U+f3c9,U+f515-f517,U+f519-f51e,U+f520-f52c,U+f52e,U+f530-f533,U+f535-f555}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.1.0.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.1.0.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.1.0.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.1.0.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.1.0.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.1.0.svg#fontawesome) format("svg");unicode-range:U+f118-f11a,U+f279,U+f4da,U+f556,U+f567,U+f579-f57a,U+f57f-f58b,U+f597-f59c,U+f5a4-f5a5,U+f5b3-f5b4,U+f5b8,U+f5c2,U+f5c8}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(../webfonts/fa-regular-400-pro-5.1.0.eot);src:url(../webfonts/fa-regular-400-pro-5.1.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400-pro-5.1.0.woff2) format("woff2"),url(../webfonts/fa-regular-400-pro-5.1.0.woff) format("woff"),url(../webfonts/fa-regular-400-pro-5.1.0.ttf) format("truetype"),url(../webfonts/fa-regular-400-pro-5.1.0.svg#fontawesome) format("svg");unicode-range:U+f043,U+f0c4,U+f0d0,U+f125,U+f1ba,U+f1fb-f1fc,U+f207,U+f236,U+f304-f305,U+f52d,U+f557-f558,U+f55a-f55f,U+f562-f566,U+f568-f56d,U+f570-f577,U+f57b-f57e,U+f58d-f590,U+f593-f595,U+f59d,U+f59f-f5a2,U+f5a6-f5a7,U+f5a9-f5af,U+f5b1,U+f5b6,U+f5b9-f5bd,U+f5bf-f5c1,U+f5c3-f5c5,U+f5c7,U+f5c9-f5cb,U+f5cd}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.1.1.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.1.1.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.1.1.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.1.1.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.1.1.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.1.1.svg#fontawesome) format("svg");unicode-range:U+f58c,U+f596}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(../webfonts/fa-regular-400-pro-5.1.1.eot);src:url(../webfonts/fa-regular-400-pro-5.1.1.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400-pro-5.1.1.woff2) format("woff2"),url(../webfonts/fa-regular-400-pro-5.1.1.woff) format("woff"),url(../webfonts/fa-regular-400-pro-5.1.1.ttf) format("truetype"),url(../webfonts/fa-regular-400-pro-5.1.1.svg#fontawesome) format("svg");unicode-range:U+f386}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.2.0.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.2.0.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.2.0.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.2.0.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.2.0.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.2.0.svg#fontawesome) format("svg");unicode-range:U+f0f3,U+f14e,U+f1f6}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(../webfonts/fa-regular-400-pro-5.2.0.eot);src:url(../webfonts/fa-regular-400-pro-5.2.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400-pro-5.2.0.woff2) format("woff2"),url(../webfonts/fa-regular-400-pro-5.2.0.woff) format("woff"),url(../webfonts/fa-regular-400-pro-5.2.0.ttf) format("truetype"),url(../webfonts/fa-regular-400-pro-5.2.0.svg#fontawesome) format("svg");unicode-range:U+f001,U+f018,U+f0e4,U+f109,U+f1b9,U+f1e5,U+f21d,U+f276-f277,U+f3fd,U+f4d7,U+f518,U+f559,U+f5d0-f5da,U+f5dd-f5e6,U+f5e8-f5f0,U+f5f2-f5f5,U+f5f8-f5f9,U+f5fb-f60e,U+f610,U+f614,U+f616-f619,U+f61c-f63e}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.3.0.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.3.0.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.3.0.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.3.0.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.3.0.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.3.0.svg#fontawesome) format("svg");unicode-range:U+f080,U+f0eb}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(../webfonts/fa-regular-400-pro-5.3.0.eot);src:url(../webfonts/fa-regular-400-pro-5.3.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400-pro-5.3.0.woff2) format("woff2"),url(../webfonts/fa-regular-400-pro-5.3.0.woff) format("woff"),url(../webfonts/fa-regular-400-pro-5.3.0.ttf) format("truetype"),url(../webfonts/fa-regular-400-pro-5.3.0.svg#fontawesome) format("svg");unicode-range:U+f027-f028,U+f02f,U+f0a1,U+f0b1,U+f1ac,U+f1ec,U+f200-f201,U+f2e2,U+f61a-f61b,U+f640-f641,U+f643-f653,U+f655-f656,U+f659-f663,U+f665-f675,U+f678-f680,U+f683-f68b,U+f694-f69c,U+f69e-f69f,U+f6a1-f6a9,U+f6ac-f6ad}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(../webfonts/fa-regular-400-pro-5.4.0.eot);src:url(../webfonts/fa-regular-400-pro-5.4.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400-pro-5.4.0.woff2) format("woff2"),url(../webfonts/fa-regular-400-pro-5.4.0.woff) format("woff"),url(../webfonts/fa-regular-400-pro-5.4.0.ttf) format("truetype"),url(../webfonts/fa-regular-400-pro-5.4.0.svg#fontawesome) format("svg");unicode-range:U+f499,U+f676,U+f6ae,U+f6b0-f6bc,U+f6bf-f6c2,U+f6c5-f6c8,U+f6cb,U+f6cd-f6d5,U+f6d8-f6d9,U+f6db,U+f6dd-f6e3,U+f6e5-f6ec,U+f6ee,U+f6f1-f6f3,U+f6f5-f6f9,U+f6fc-f6fd,U+f6ff-f703,U+f706-f70f,U+f711-f724,U+f726-f729,U+f72b,U+f72d,U+f72f}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(../webfonts/fa-regular-400-pro-5.4.1.eot);src:url(../webfonts/fa-regular-400-pro-5.4.1.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400-pro-5.4.1.woff2) format("woff2"),url(../webfonts/fa-regular-400-pro-5.4.1.woff) format("woff"),url(../webfonts/fa-regular-400-pro-5.4.1.ttf) format("truetype"),url(../webfonts/fa-regular-400-pro-5.4.1.svg#fontawesome) format("svg");unicode-range:U+f72a}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.5.0.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.5.0.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.5.0.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.5.0.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.5.0.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.5.0.svg#fontawesome) format("svg");unicode-range:U+f185,U+f2dc}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(../webfonts/fa-regular-400-pro-5.5.0.eot);src:url(../webfonts/fa-regular-400-pro-5.5.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400-pro-5.5.0.woff2) format("woff2"),url(../webfonts/fa-regular-400-pro-5.5.0.woff) format("woff"),url(../webfonts/fa-regular-400-pro-5.5.0.ttf) format("truetype"),url(../webfonts/fa-regular-400-pro-5.5.0.svg#fontawesome) format("svg");unicode-range:U+f0e7,U+f6c3-f6c4,U+f72e,U+f732-f750,U+f752-f758,U+f75a,U+f75c,U+f75e-f777}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(../webfonts/fa-regular-400-pro-5.6.0.eot);src:url(../webfonts/fa-regular-400-pro-5.6.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400-pro-5.6.0.woff2) format("woff2"),url(../webfonts/fa-regular-400-pro-5.6.0.woff) format("woff"),url(../webfonts/fa-regular-400-pro-5.6.0.ttf) format("truetype"),url(../webfonts/fa-regular-400-pro-5.6.0.svg#fontawesome) format("svg");unicode-range:U+f06b,U+f5b7,U+f77d,U+f77f,U+f781-f784,U+f788,U+f78a-f78c,U+f78e-f78f,U+f792-f796,U+f79a-f7aa,U+f7ac-f7ae,U+f7b4-f7b6,U+f7b8,U+f7bd-f7be,U+f7c0-f7c3,U+f7c5,U+f7c7-f7d2,U+f7d4-f7d5,U+f7d7-f7de,U+f7e2}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(../webfonts/fa-regular-400-pro-5.6.1.eot);src:url(../webfonts/fa-regular-400-pro-5.6.1.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400-pro-5.6.1.woff2) format("woff2"),url(../webfonts/fa-regular-400-pro-5.6.1.woff) format("woff"),url(../webfonts/fa-regular-400-pro-5.6.1.ttf) format("truetype"),url(../webfonts/fa-regular-400-pro-5.6.1.svg#fontawesome) format("svg");unicode-range:U+f071}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(../webfonts/fa-regular-400-pro-5.6.3.eot);src:url(../webfonts/fa-regular-400-pro-5.6.3.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400-pro-5.6.3.woff2) format("woff2"),url(../webfonts/fa-regular-400-pro-5.6.3.woff) format("woff"),url(../webfonts/fa-regular-400-pro-5.6.3.ttf) format("truetype"),url(../webfonts/fa-regular-400-pro-5.6.3.svg#fontawesome) format("svg");unicode-range:U+f7e4}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.7.0.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.7.0.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.7.0.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.7.0.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.7.0.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.7.0.svg#fontawesome) format("svg");unicode-range:U+f06e,U+f070,U+f073,U+f1c6,U+f2ed}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(../webfonts/fa-regular-400-pro-5.7.0.eot);src:url(../webfonts/fa-regular-400-pro-5.7.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400-pro-5.7.0.woff2) format("woff2"),url(../webfonts/fa-regular-400-pro-5.7.0.woff) format("woff"),url(../webfonts/fa-regular-400-pro-5.7.0.ttf) format("truetype"),url(../webfonts/fa-regular-400-pro-5.7.0.svg#fontawesome) format("svg");unicode-range:U+f00a,U+f015,U+f135,U+f1e4,U+f1f8,U+f2a0,U+f377,U+f470,U+f49c,U+f49e,U+f4c9,U+f56e-f56f,U+f664,U+f6d6-f6d7,U+f705,U+f710,U+f725,U+f77e,U+f780,U+f7e5-f7e7,U+f7e9-f7f0,U+f7f2-f7fe,U+f800-f812,U+f814-f833}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(../webfonts/fa-regular-400-pro-5.7.1.eot);src:url(../webfonts/fa-regular-400-pro-5.7.1.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400-pro-5.7.1.woff2) format("woff2"),url(../webfonts/fa-regular-400-pro-5.7.1.woff) format("woff"),url(../webfonts/fa-regular-400-pro-5.7.1.ttf) format("truetype"),url(../webfonts/fa-regular-400-pro-5.7.1.svg#fontawesome) format("svg");unicode-range:U+f7f1}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(../webfonts/fa-regular-400-pro-5.8.0.eot);src:url(../webfonts/fa-regular-400-pro-5.8.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400-pro-5.8.0.woff2) format("woff2"),url(../webfonts/fa-regular-400-pro-5.8.0.woff) format("woff"),url(../webfonts/fa-regular-400-pro-5.8.0.ttf) format("truetype"),url(../webfonts/fa-regular-400-pro-5.8.0.svg#fontawesome) format("svg");unicode-range:U+f01e,U+f021,U+f026,U+f076,U+f12d,U+f31e,U+f356,U+f45f,U+f5b0,U+f7ff,U+f83e}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(../webfonts/fa-regular-400-pro-5.8.2.eot);src:url(../webfonts/fa-regular-400-pro-5.8.2.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400-pro-5.8.2.woff2) format("woff2"),url(../webfonts/fa-regular-400-pro-5.8.2.woff) format("woff"),url(../webfonts/fa-regular-400-pro-5.8.2.ttf) format("truetype"),url(../webfonts/fa-regular-400-pro-5.8.2.svg#fontawesome) format("svg");unicode-range:U+f560,U+f7b9-f7ba,U+f7c4}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(../webfonts/fa-regular-400-pro-5.9.0.eot);src:url(../webfonts/fa-regular-400-pro-5.9.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400-pro-5.9.0.woff2) format("woff2"),url(../webfonts/fa-regular-400-pro-5.9.0.woff) format("woff"),url(../webfonts/fa-regular-400-pro-5.9.0.ttf) format("truetype"),url(../webfonts/fa-regular-400-pro-5.9.0.svg#fontawesome) format("svg");unicode-range:U+f031-f032,U+f034-f03c,U+f0ae,U+f0ca-f0cd,U+f12b-f12c,U+f15d-f15e,U+f160-f163,U+f1dd,U+f313-f315,U+f34e,U+f439-f448,U+f502,U+f5dc,U+f677,U+f6a0,U+f843-f85e,U+f860-f862,U+f864-f878,U+f87a,U+f87c-f892,U+f894-f89b}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.10.1.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.10.1.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.10.1.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.10.1.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.10.1.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-regular-400-free-5.10.1.svg#fontawesome) format("svg");unicode-range:U+f004,U+f03e,U+f075,U+f07b,U+f0a0,U+f0c8,U+f111,U+f15b,U+f1f9,U+f20a,U+f247-f248,U+f254,U+f25d,U+f27a,U+f2b6,U+f2c2,U+f2d1,U+f302,U+f3a5}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:400;src:url(../webfonts/fa-regular-400-pro-5.10.1.eot);src:url(../webfonts/fa-regular-400-pro-5.10.1.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400-pro-5.10.1.woff2) format("woff2"),url(../webfonts/fa-regular-400-pro-5.10.1.woff) format("woff"),url(../webfonts/fa-regular-400-pro-5.10.1.ttf) format("truetype"),url(../webfonts/fa-regular-400-pro-5.10.1.svg#fontawesome) format("svg");unicode-range:U+f000,U+f012,U+f029,U+f033,U+f06d,U+f083-f084,U+f0a3,U+f0b0,U+f0dd-f0de,U+f11e,U+f129-f12a,U+f140,U+f145,U+f19d,U+f1dc,U+f1eb,U+f219,U+f251-f253,U+f275,U+f306,U+f310-f312,U+f327,U+f34d,U+f354,U+f357,U+f435,U+f454,U+f456,U+f476,U+f47f-f480,U+f4ba,U+f4e3,U+f51f,U+f52f,U+f534,U+f561,U+f578,U+f591,U+f5ce,U+f5db,U+f5e7,U+f5f6,U+f611,U+f613,U+f615,U+f654,U+f657-f658,U+f681-f682,U+f68c-f693,U+f6aa-f6ab,U+f6bd-f6be,U+f6da,U+f6e4,U+f6ed,U+f6ef-f6f0,U+f6f4,U+f6fa-f6fb,U+f6fe,U+f72c,U+f751,U+f759,U+f75b,U+f779,U+f77c,U+f786-f787,U+f7ab,U+f7b2,U+f7b7,U+f7bf,U+f7e8,U+f813,U+f85f,U+f863,U+f879,U+f87b,U+f893,U+f89c-f89d}.fal,.far{font-family:"font awesome 5 pro"}.far{font-weight:400}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.0.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.0.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.0.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.0.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.0.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.0.svg#fontawesome) format("svg");unicode-range:U+f002,U+f005,U+f008-f009,U+f00b-f00c,U+f00e,U+f011,U+f013,U+f017,U+f019,U+f01c,U+f022-f025,U+f02a-f02e,U+f030,U+f041-f042,U+f044,U+f048-f04e,U+f050-f05b,U+f05e,U+f060-f066,U+f068-f06a,U+f074,U+f077-f07a,U+f07c,U+f085,U+f089,U+f08d,U+f091,U+f093-f095,U+f098,U+f09c-f09e,U+f0a4-f0ab,U+f0b2,U+f0c1,U+f0c3,U+f0c5-f0c7,U+f0c9,U+f0ce,U+f0d7-f0dc,U+f0e0,U+f0e2-f0e3,U+f0e9-f0ea,U+f0f4,U+f0f8,U+f0fa-f0fe,U+f100-f108,U+f10a-f10b,U+f110,U+f11b-f11c,U+f120-f122,U+f124,U+f126-f128,U+f12e,U+f133-f134,U+f137-f13a,U+f13d-f13e,U+f141-f144,U+f146,U+f14a-f14b,U+f14d,U+f150-f154,U+f156-f159,U+f15c,U+f164-f165,U+f182-f183,U+f186,U+f188,U+f191-f193,U+f195,U+f197,U+f199,U+f1ab,U+f1ad-f1ae,U+f1b0,U+f1b2-f1b3,U+f1b8,U+f1bb,U+f1c0-f1c5,U+f1c7-f1c9,U+f1cd-f1ce,U+f1d8,U+f1da,U+f1e0-f1e2,U+f1e6,U+f1ea,U+f1fa,U+f1fd-f1fe,U+f204-f206,U+f20b,U+f217-f218,U+f21a,U+f21c,U+f221-f22d,U+f233,U+f238-f239,U+f240-f244,U+f246,U+f249,U+f24d,U+f255-f25c,U+f26c,U+f271-f274,U+f28b,U+f28d,U+f290-f292,U+f295,U+f29a,U+f29d-f29e,U+f2a1-f2a4,U+f2a7-f2a8,U+f2c7-f2ce,U+f2d0,U+f2d2,U+f2db,U+f2e5,U+f2e7,U+f2ea,U+f2f1-f2f2,U+f2f5-f2f6,U+f2f9,U+f303,U+f309-f30c,U+f328,U+f337-f338,U+f358-f35b,U+f35d,U+f360,U+f362,U+f3be-f3bf,U+f3c5,U+f3cd,U+f3e5,U+f3ed,U+f3fa,U+f3ff,U+f410}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(../webfonts/fa-solid-900-pro-5.0.0.eot);src:url(../webfonts/fa-solid-900-pro-5.0.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900-pro-5.0.0.woff2) format("woff2"),url(../webfonts/fa-solid-900-pro-5.0.0.woff) format("woff"),url(../webfonts/fa-solid-900-pro-5.0.0.ttf) format("truetype"),url(../webfonts/fa-solid-900-pro-5.0.0.svg#fontawesome) format("svg");unicode-range:U+f040,U+f047,U+f07d-f07e,U+f08b,U+f08e,U+f090,U+f0ec,U+f132,U+f148-f149,U+f14c,U+f175-f178,U+f2d3,U+f2e1,U+f2e3-f2e4,U+f2e6,U+f2eb-f2ec,U+f2ee,U+f2f0,U+f2f3-f2f4,U+f2f7-f2f8,U+f2fa-f2fd,U+f300-f301,U+f307-f308,U+f30d-f30f,U+f316-f31a,U+f31c-f31d,U+f320-f326,U+f329-f32e,U+f330-f336,U+f339-f33e,U+f340-f34c,U+f350-f353,U+f355,U+f361,U+f363-f367,U+f376,U+f37e,U+f387,U+f389-f38a,U+f390,U+f39b-f39c,U+f3a0,U+f3b3,U+f3c2,U+f3ce-f3cf,U+f3de,U+f3f0,U+f3f2,U+f3f4,U+f3fb-f3fc,U+f400-f401,U+f40e-f40f,U+f422,U+f424}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.1.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.1.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.1.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.1.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.1.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.1.svg#fontawesome) format("svg");unicode-range:U+f3c1}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.3.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.3.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.3.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.3.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.3.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.3.svg#fontawesome) format("svg");unicode-range:U+f19c,U+f245,U+f2b9,U+f2bb,U+f2c1,U+f3e0}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.5.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.5.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.5.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.5.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.5.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.5.svg#fontawesome) format("svg");unicode-range:U+f1e3,U+f433-f434,U+f436,U+f44b,U+f44e,U+f450,U+f453,U+f458,U+f45c-f45d}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(../webfonts/fa-solid-900-pro-5.0.5.eot);src:url(../webfonts/fa-solid-900-pro-5.0.5.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900-pro-5.0.5.woff2) format("woff2"),url(../webfonts/fa-solid-900-pro-5.0.5.woff) format("woff"),url(../webfonts/fa-solid-900-pro-5.0.5.ttf) format("truetype"),url(../webfonts/fa-solid-900-pro-5.0.5.svg#fontawesome) format("svg");unicode-range:U+f432,U+f437-f438,U+f449-f44a,U+f44c,U+f44f,U+f451,U+f455,U+f45a-f45b,U+f45e}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.7.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.7.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.7.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.7.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.7.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.7.svg#fontawesome) format("svg");unicode-range:U+f0d1,U+f0f1,U+f0f9,U+f21e,U+f461-f462,U+f466,U+f468-f46d,U+f472,U+f474,U+f477-f479,U+f47d-f47e,U+f481-f482,U+f484-f487,U+f48b,U+f48d-f48e,U+f490-f494,U+f496-f497}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(../webfonts/fa-solid-900-pro-5.0.7.eot);src:url(../webfonts/fa-solid-900-pro-5.0.7.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900-pro-5.0.7.woff2) format("woff2"),url(../webfonts/fa-solid-900-pro-5.0.7.woff) format("woff"),url(../webfonts/fa-solid-900-pro-5.0.7.ttf) format("truetype"),url(../webfonts/fa-solid-900-pro-5.0.7.svg#fontawesome) format("svg");unicode-range:U+f460,U+f463-f465,U+f467,U+f46e-f46f,U+f473,U+f475,U+f47a,U+f483,U+f488-f48a,U+f48c,U+f48f,U+f495}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.9.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.9.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.9.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.9.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.9.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.9.svg#fontawesome) format("svg");unicode-range:U+f03d,U+f06c,U+f086,U+f0ac,U+f0f2,U+f10d-f10e,U+f155,U+f187,U+f2b5,U+f2fe,U+f3dd,U+f4ad,U+f4b3,U+f4b8-f4b9,U+f4bd-f4be,U+f4c0,U+f4c2,U+f4c4,U+f4cd-f4ce,U+f4d3,U+f4d6,U+f4d8-f4d9,U+f4db,U+f4de-f4df,U+f4e2}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(../webfonts/fa-solid-900-pro-5.0.9.eot);src:url(../webfonts/fa-solid-900-pro-5.0.9.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900-pro-5.0.9.woff2) format("woff2"),url(../webfonts/fa-solid-900-pro-5.0.9.woff) format("woff"),url(../webfonts/fa-solid-900-pro-5.0.9.ttf) format("truetype"),url(../webfonts/fa-solid-900-pro-5.0.9.svg#fontawesome) format("svg");unicode-range:U+f2e8-f2e9,U+f47b-f47c,U+f498,U+f49a-f49b,U+f49d,U+f49f-f4ac,U+f4ae-f4b2,U+f4b4-f4b7,U+f4bb-f4bc,U+f4bf,U+f4c1,U+f4c3,U+f4c5-f4c8,U+f4cb-f4cc,U+f4cf-f4d2,U+f4d4,U+f4dc-f4dd,U+f4e0-f4e1}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.10.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.10.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.10.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.10.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.10.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.10.svg#fontawesome) format("svg");unicode-range:U+f471}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(../webfonts/fa-solid-900-pro-5.0.10.eot);src:url(../webfonts/fa-solid-900-pro-5.0.10.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900-pro-5.0.10.woff2) format("woff2"),url(../webfonts/fa-solid-900-pro-5.0.10.woff) format("woff"),url(../webfonts/fa-solid-900-pro-5.0.10.ttf) format("truetype"),url(../webfonts/fa-solid-900-pro-5.0.10.svg#fontawesome) format("svg");unicode-range:U+f4ca}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.11.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.11.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.11.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.11.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.11.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.11.svg#fontawesome) format("svg");unicode-range:U+f007,U+f0c0,U+f0c2,U+f0f0,U+f1de,U+f21b,U+f234-f235,U+f2bd,U+f381-f382,U+f406,U+f4e6,U+f4fa-f501,U+f503-f509}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(../webfonts/fa-solid-900-pro-5.0.11.eot);src:url(../webfonts/fa-solid-900-pro-5.0.11.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900-pro-5.0.11.woff2) format("woff2"),url(../webfonts/fa-solid-900-pro-5.0.11.woff) format("woff"),url(../webfonts/fa-solid-900-pro-5.0.11.ttf) format("truetype"),url(../webfonts/fa-solid-900-pro-5.0.11.svg#fontawesome) format("svg");unicode-range:U+f0ed-f0ee,U+f3f1}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.13.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.13.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.13.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.13.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.13.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.0.13.svg#fontawesome) format("svg");unicode-range:U+f00d,U+f010,U+f067,U+f072,U+f0ad,U+f0d6,U+f0e8,U+f130-f131,U+f24e,U+f3c9,U+f3d1,U+f515-f517,U+f519-f51e,U+f520-f52c,U+f52e,U+f530-f533,U+f535-f555}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.1.0.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.1.0.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.1.0.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.1.0.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.1.0.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.1.0.svg#fontawesome) format("svg");unicode-range:U+f043,U+f0c4,U+f0d0,U+f118-f11a,U+f125,U+f1ba,U+f1fb-f1fc,U+f207,U+f236,U+f279,U+f304-f305,U+f4da,U+f52d,U+f556-f558,U+f55a-f55f,U+f562-f56d,U+f570-f577,U+f579-f58b,U+f58d-f590,U+f593-f595,U+f597-f59d,U+f59f-f5a2,U+f5a4-f5a7,U+f5aa-f5af,U+f5b1,U+f5b3-f5b4,U+f5b6,U+f5b8,U+f5ba-f5bd,U+f5bf-f5c5,U+f5c7-f5cb,U+f5cd}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(../webfonts/fa-solid-900-pro-5.1.0.eot);src:url(../webfonts/fa-solid-900-pro-5.1.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900-pro-5.1.0.woff2) format("woff2"),url(../webfonts/fa-solid-900-pro-5.1.0.woff) format("woff"),url(../webfonts/fa-solid-900-pro-5.1.0.ttf) format("truetype"),url(../webfonts/fa-solid-900-pro-5.1.0.svg#fontawesome) format("svg");unicode-range:U+f5a9,U+f5b9}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.1.1.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.1.1.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.1.1.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.1.1.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.1.1.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.1.1.svg#fontawesome) format("svg");unicode-range:U+f58c,U+f596}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(../webfonts/fa-solid-900-pro-5.1.1.eot);src:url(../webfonts/fa-solid-900-pro-5.1.1.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900-pro-5.1.1.woff2) format("woff2"),url(../webfonts/fa-solid-900-pro-5.1.1.woff) format("woff"),url(../webfonts/fa-solid-900-pro-5.1.1.ttf) format("truetype"),url(../webfonts/fa-solid-900-pro-5.1.1.svg#fontawesome) format("svg");unicode-range:U+f386}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.2.0.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.2.0.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.2.0.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.2.0.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.2.0.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.2.0.svg#fontawesome) format("svg");unicode-range:U+f001,U+f018,U+f0f3,U+f109,U+f14e,U+f1b9,U+f1e5,U+f1f6,U+f21d,U+f276-f277,U+f3fd,U+f4d7,U+f518,U+f559,U+f5d0-f5d2,U+f5d7,U+f5da,U+f5de-f5df,U+f5e1,U+f5e4,U+f5eb,U+f5ee,U+f5fc-f5fd,U+f610,U+f619,U+f61f,U+f621,U+f62e-f630,U+f637,U+f63b-f63c}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(../webfonts/fa-solid-900-pro-5.2.0.eot);src:url(../webfonts/fa-solid-900-pro-5.2.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900-pro-5.2.0.woff2) format("woff2"),url(../webfonts/fa-solid-900-pro-5.2.0.woff) format("woff"),url(../webfonts/fa-solid-900-pro-5.2.0.ttf) format("truetype"),url(../webfonts/fa-solid-900-pro-5.2.0.svg#fontawesome) format("svg");unicode-range:U+f0e4,U+f5d3-f5d6,U+f5d8-f5d9,U+f5dd,U+f5e0,U+f5e2-f5e3,U+f5e5-f5e6,U+f5e8-f5ea,U+f5ec-f5ed,U+f5ef-f5f0,U+f5f2-f5f5,U+f5f8-f5f9,U+f5fb,U+f5fe-f60e,U+f614,U+f616-f618,U+f61c-f61e,U+f620,U+f622-f62d,U+f631-f636,U+f638-f63a,U+f63d-f63e}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.3.0.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.3.0.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.3.0.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.3.0.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.3.0.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.3.0.svg#fontawesome) format("svg");unicode-range:U+f027-f028,U+f02f,U+f080,U+f0a1,U+f0b1,U+f0eb,U+f1ac,U+f1ec,U+f200-f201,U+f641,U+f644,U+f647,U+f64a,U+f64f,U+f651,U+f653,U+f655,U+f65d-f65e,U+f662,U+f665-f666,U+f669-f66b,U+f66d,U+f66f,U+f674,U+f678-f679,U+f67b-f67c,U+f67f,U+f683-f684,U+f687-f689,U+f696,U+f698-f69b,U+f6a1,U+f6a7,U+f6a9,U+f6ad}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(../webfonts/fa-solid-900-pro-5.3.0.eot);src:url(../webfonts/fa-solid-900-pro-5.3.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900-pro-5.3.0.woff2) format("woff2"),url(../webfonts/fa-solid-900-pro-5.3.0.woff) format("woff"),url(../webfonts/fa-solid-900-pro-5.3.0.ttf) format("truetype"),url(../webfonts/fa-solid-900-pro-5.3.0.svg#fontawesome) format("svg");unicode-range:U+f2e2,U+f61a-f61b,U+f640,U+f643,U+f645-f646,U+f648-f649,U+f64b-f64e,U+f650,U+f652,U+f656,U+f659-f65c,U+f65f-f661,U+f663,U+f667-f668,U+f66c,U+f66e,U+f670-f673,U+f675,U+f67a,U+f67d-f67e,U+f680,U+f685-f686,U+f68a-f68b,U+f694-f695,U+f697,U+f69c,U+f69e-f69f,U+f6a2-f6a6,U+f6a8,U+f6ac}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.4.0.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.4.0.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.4.0.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.4.0.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.4.0.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.4.0.svg#fontawesome) format("svg");unicode-range:U+f676,U+f6b6-f6b7,U+f6bb,U+f6c0,U+f6cf,U+f6d1,U+f6d3,U+f6d5,U+f6d9,U+f6dd-f6de,U+f6e2-f6e3,U+f6e6,U+f6e8,U+f6ec,U+f6f1-f6f2,U+f6fc,U+f6ff-f700,U+f70b-f70c,U+f70e,U+f714-f715,U+f717,U+f71e,U+f722,U+f728-f729,U+f72f}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(../webfonts/fa-solid-900-pro-5.4.0.eot);src:url(../webfonts/fa-solid-900-pro-5.4.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900-pro-5.4.0.woff2) format("woff2"),url(../webfonts/fa-solid-900-pro-5.4.0.woff) format("woff"),url(../webfonts/fa-solid-900-pro-5.4.0.ttf) format("truetype"),url(../webfonts/fa-solid-900-pro-5.4.0.svg#fontawesome) format("svg");unicode-range:U+f499,U+f6ae,U+f6b0-f6b5,U+f6b8-f6ba,U+f6bc,U+f6bf,U+f6c1-f6c2,U+f6c5-f6c8,U+f6cb,U+f6cd-f6ce,U+f6d0,U+f6d2,U+f6d4,U+f6d8,U+f6db,U+f6df-f6e1,U+f6e5,U+f6e7,U+f6e9-f6eb,U+f6ee,U+f6f3,U+f6f5-f6f9,U+f6fd,U+f701-f703,U+f706-f70a,U+f70d,U+f70f,U+f711-f713,U+f716,U+f718-f71d,U+f71f-f721,U+f723-f724,U+f726-f727,U+f72b,U+f72d}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(../webfonts/fa-solid-900-pro-5.4.1.eot);src:url(../webfonts/fa-solid-900-pro-5.4.1.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900-pro-5.4.1.woff2) format("woff2"),url(../webfonts/fa-solid-900-pro-5.4.1.woff) format("woff"),url(../webfonts/fa-solid-900-pro-5.4.1.ttf) format("truetype"),url(../webfonts/fa-solid-900-pro-5.4.1.svg#fontawesome) format("svg");unicode-range:U+f72a}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.5.0.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.5.0.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.5.0.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.5.0.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.5.0.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.5.0.svg#fontawesome) format("svg");unicode-range:U+f0e7,U+f185,U+f2dc,U+f6c3-f6c4,U+f72e,U+f73b-f73d,U+f740,U+f743,U+f747,U+f74d,U+f753,U+f756,U+f75a,U+f75e-f75f,U+f769,U+f76b,U+f772-f773}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(../webfonts/fa-solid-900-pro-5.5.0.eot);src:url(../webfonts/fa-solid-900-pro-5.5.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900-pro-5.5.0.woff2) format("woff2"),url(../webfonts/fa-solid-900-pro-5.5.0.woff) format("woff"),url(../webfonts/fa-solid-900-pro-5.5.0.ttf) format("truetype"),url(../webfonts/fa-solid-900-pro-5.5.0.svg#fontawesome) format("svg");unicode-range:U+f732-f73a,U+f73e-f73f,U+f741-f742,U+f744-f746,U+f748-f74c,U+f74e-f750,U+f752,U+f754-f755,U+f757-f758,U+f75c,U+f760-f768,U+f76a,U+f76c-f771,U+f774-f777}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.6.0.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.6.0.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.6.0.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.6.0.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.6.0.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.6.0.svg#fontawesome) format("svg");unicode-range:U+f06b,U+f5b7,U+f77d,U+f781,U+f783-f784,U+f788,U+f78c,U+f793-f794,U+f796,U+f79c,U+f79f-f7a0,U+f7a2,U+f7a4-f7a6,U+f7a9-f7aa,U+f7ad-f7ae,U+f7b5-f7b6,U+f7bd,U+f7c0,U+f7c2,U+f7c5,U+f7c9-f7ca,U+f7cc-f7ce,U+f7d0,U+f7d2,U+f7d7-f7da}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(../webfonts/fa-solid-900-pro-5.6.0.eot);src:url(../webfonts/fa-solid-900-pro-5.6.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900-pro-5.6.0.woff2) format("woff2"),url(../webfonts/fa-solid-900-pro-5.6.0.woff) format("woff"),url(../webfonts/fa-solid-900-pro-5.6.0.ttf) format("truetype"),url(../webfonts/fa-solid-900-pro-5.6.0.svg#fontawesome) format("svg");unicode-range:U+f77f,U+f782,U+f78a-f78b,U+f78e-f78f,U+f792,U+f795,U+f79a-f79b,U+f79d-f79e,U+f7a1,U+f7a3,U+f7a7-f7a8,U+f7ac,U+f7b4,U+f7b8,U+f7be,U+f7c1,U+f7c3,U+f7c7-f7c8,U+f7cb,U+f7cf,U+f7d1,U+f7d4-f7d5,U+f7db-f7de,U+f7e2}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.6.1.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.6.1.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.6.1.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.6.1.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.6.1.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.6.1.svg#fontawesome) format("svg");unicode-range:U+f071}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.6.3.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.6.3.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.6.3.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.6.3.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.6.3.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.6.3.svg#fontawesome) format("svg");unicode-range:U+f7e4}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.7.0.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.7.0.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.7.0.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.7.0.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.7.0.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.7.0.svg#fontawesome) format("svg");unicode-range:U+f00a,U+f015,U+f06e,U+f070,U+f073,U+f135,U+f1c6,U+f1e4,U+f1f8,U+f2a0,U+f2ed,U+f470,U+f49e,U+f56e-f56f,U+f664,U+f6d7,U+f780,U+f7e5-f7e6,U+f7ec,U+f7ef,U+f7f2,U+f7f5,U+f7f7,U+f7fb,U+f805-f807,U+f80f-f810,U+f812,U+f815-f816,U+f818,U+f829-f82a,U+f82f}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(../webfonts/fa-solid-900-pro-5.7.0.eot);src:url(../webfonts/fa-solid-900-pro-5.7.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900-pro-5.7.0.woff2) format("woff2"),url(../webfonts/fa-solid-900-pro-5.7.0.woff) format("woff"),url(../webfonts/fa-solid-900-pro-5.7.0.ttf) format("truetype"),url(../webfonts/fa-solid-900-pro-5.7.0.svg#fontawesome) format("svg");unicode-range:U+f377,U+f49c,U+f4c9,U+f6d6,U+f705,U+f710,U+f725,U+f77e,U+f7e7,U+f7e9-f7eb,U+f7ed-f7ee,U+f7f0,U+f7f3-f7f4,U+f7f6,U+f7f8-f7fa,U+f7fc-f7fe,U+f800-f804,U+f808-f80e,U+f811,U+f814,U+f817,U+f819-f828,U+f82b-f82e,U+f830-f833}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(../webfonts/fa-solid-900-pro-5.7.1.eot);src:url(../webfonts/fa-solid-900-pro-5.7.1.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900-pro-5.7.1.woff2) format("woff2"),url(../webfonts/fa-solid-900-pro-5.7.1.woff) format("woff"),url(../webfonts/fa-solid-900-pro-5.7.1.ttf) format("truetype"),url(../webfonts/fa-solid-900-pro-5.7.1.svg#fontawesome) format("svg");unicode-range:U+f7f1}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.8.0.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.8.0.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.8.0.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.8.0.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.8.0.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.8.0.svg#fontawesome) format("svg");unicode-range:U+f01e,U+f021,U+f026,U+f076,U+f12d,U+f31e,U+f45f,U+f5b0,U+f83e}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(../webfonts/fa-solid-900-pro-5.8.0.eot);src:url(../webfonts/fa-solid-900-pro-5.8.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900-pro-5.8.0.woff2) format("woff2"),url(../webfonts/fa-solid-900-pro-5.8.0.woff) format("woff"),url(../webfonts/fa-solid-900-pro-5.8.0.ttf) format("truetype"),url(../webfonts/fa-solid-900-pro-5.8.0.svg#fontawesome) format("svg");unicode-range:U+f356,U+f7ff}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.8.2.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.8.2.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.8.2.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.8.2.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.8.2.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.8.2.svg#fontawesome) format("svg");unicode-range:U+f560,U+f7b9-f7ba,U+f7c4}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.9.0.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.9.0.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.9.0.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.9.0.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.9.0.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.9.0.svg#fontawesome) format("svg");unicode-range:U+f031-f032,U+f034-f03c,U+f0ae,U+f0ca-f0cd,U+f12b-f12c,U+f15d-f15e,U+f160-f163,U+f1dd,U+f439-f43a,U+f43c,U+f43f,U+f441,U+f443,U+f445,U+f447,U+f502,U+f5dc,U+f6a0,U+f84a,U+f84c,U+f850,U+f853,U+f86d,U+f87c-f87d,U+f881-f882,U+f884-f887,U+f891,U+f897}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(../webfonts/fa-solid-900-pro-5.9.0.eot);src:url(../webfonts/fa-solid-900-pro-5.9.0.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900-pro-5.9.0.woff2) format("woff2"),url(../webfonts/fa-solid-900-pro-5.9.0.woff) format("woff"),url(../webfonts/fa-solid-900-pro-5.9.0.ttf) format("truetype"),url(../webfonts/fa-solid-900-pro-5.9.0.svg#fontawesome) format("svg");unicode-range:U+f313-f315,U+f34e,U+f43b,U+f43d-f43e,U+f440,U+f442,U+f444,U+f446,U+f448,U+f677,U+f843-f849,U+f84b,U+f84d-f84f,U+f851-f852,U+f854-f85e,U+f860-f862,U+f864-f86c,U+f86e-f878,U+f87a,U+f87e-f880,U+f883,U+f888-f890,U+f892,U+f894-f896,U+f898-f89b}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.10.1.eot);src:url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.10.1.eot#iefix) format("embedded-opentype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.10.1.woff2) format("woff2"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.10.1.woff) format("woff"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.10.1.ttf) format("truetype"),url(https://kit-free.fontawesome.com/algo/2/webfonts/fa-solid-900-free-5.10.1.svg#fontawesome) format("svg");unicode-range:U+f000,U+f004,U+f012,U+f029,U+f033,U+f03e,U+f06d,U+f075,U+f07b,U+f083-f084,U+f0a0,U+f0a3,U+f0b0,U+f0c8,U+f0dd-f0de,U+f111,U+f11e,U+f129-f12a,U+f140,U+f15b,U+f19d,U+f1dc,U+f1eb,U+f1f9,U+f20a,U+f247-f248,U+f251-f254,U+f25d,U+f275,U+f27a,U+f2b6,U+f2c2,U+f2d1,U+f302,U+f3a5,U+f47f,U+f4ba,U+f4e3,U+f51f,U+f52f,U+f534,U+f561,U+f578,U+f591,U+f5ce,U+f5e7,U+f613,U+f654,U+f658,U+f681-f682,U+f6be,U+f6ed,U+f6f0,U+f6fa,U+f75b,U+f77c,U+f786-f787,U+f7ab,U+f7bf,U+f863,U+f879,U+f87b}@font-face{font-family:"font awesome 5 pro";font-style:normal;font-weight:900;src:url(../webfonts/fa-solid-900-pro-5.10.1.eot);src:url(../webfonts/fa-solid-900-pro-5.10.1.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900-pro-5.10.1.woff2) format("woff2"),url(../webfonts/fa-solid-900-pro-5.10.1.woff) format("woff"),url(../webfonts/fa-solid-900-pro-5.10.1.ttf) format("truetype"),url(../webfonts/fa-solid-900-pro-5.10.1.svg#fontawesome) format("svg");unicode-range:U+f145,U+f219,U+f306,U+f310-f312,U+f327,U+f34d,U+f354,U+f357,U+f435,U+f454,U+f456,U+f476,U+f480,U+f5db,U+f5f6,U+f611,U+f615,U+f657,U+f68c-f693,U+f6aa-f6ab,U+f6bd,U+f6da,U+f6e4,U+f6ef,U+f6f4,U+f6fb,U+f6fe,U+f72c,U+f751,U+f759,U+f779,U+f7b2,U+f7b7,U+f7e8,U+f813,U+f85f,U+f893,U+f89c-f89d}.fa,.fas{font-family:"font awesome 5 pro";font-weight:900}
\ No newline at end of file
diff --git a/public/static/css/main-96wMDN.css b/public/static/css/main-96wMDN.css
new file mode 100644
index 0000000..0a44a8e
--- /dev/null
+++ b/public/static/css/main-96wMDN.css
@@ -0,0 +1,672 @@
+:root {
+ --blue: #039be5;
+ --indigo: #6610f2;
+ --purple: #ba68c8;
+ --pink: #e83e8c;
+ --red: #e3342f;
+ --orange: #fd7e14;
+ --yellow: #ffb300;
+ --green: #00b857;
+ --teal: #20c997;
+ --cyan: #17a2b8;
+ --white: #fff;
+ --gray: #6c757d;
+ --gray-dark: #343a40;
+ --primary: #039be5;
+ --secondary: #6c757d;
+ --success: #00b857;
+ --info: #ba68c8;
+ --warning: #ffb300;
+ --danger: #e3342f;
+ --light: #f8f9fa;
+ --dark: #343a40;
+ --breakpoint-xs: 0;
+ --breakpoint-sm: 576px;
+ --breakpoint-md: 768px;
+ --breakpoint-lg: 992px;
+ --breakpoint-xl: 1200px;
+ --font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
+ --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
+}
+
+canvas {
+ background: #FFF;
+ width: auto;
+ height: 100%;
+}
+
+p {
+ color: #FFF;
+ margin: 0;
+}
+
+body {
+ margin: 0;
+ padding: 0;
+ font-family: Arial, sans-serif;
+ background-color: #FFC0CB;
+}
+
+.top-bar {
+ background-color: #f78397;
+ color: #fff;
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
+ z-index: 9999999999999;
+}
+
+.logo img {
+ max-width: auto;
+ height: 45px;
+ padding: 5px;
+}
+
+.menu ul {
+ list-style-type: none;
+ margin: 0;
+ margin-right: 20px;
+ padding: 0;
+ display: flex;
+}
+
+.menu li {
+ padding: 10px;
+}
+
+.menu a {
+ text-decoration: none;
+ color: #fff;
+}
+
+.canvasWrapper {
+ position: relative;
+ z-index: 0;
+ width: 100%;
+ height: calc(100vh - 65px);
+ pointer-events: auto;
+ overflow: hidden;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+}
+
+.canvasContainer {
+ position: absolute;
+}
+
+.canvas-main {
+ transition: opacity 0.5s ease-in, transform.translate 0.5s ease-in;
+ opacity: 0;
+ visibility: hidden;
+ z-index: 1;
+ pointer-events: auto;
+ image-rendering: pixelated;
+}
+
+.pan-buttons {
+ transition: 0.25s ease-in;
+ opacity: 0;
+ position: absolute;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 100%;
+ z-index: 2;
+ display: flex;
+ justify-content: center;
+}
+
+.content-wrapper {
+ position: relative;
+ width: 100%;
+ height: 100%;
+ pointer-events: auto;
+}
+
+.pan-buttons .top {
+ position: absolute;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 10%;
+ z-index: 2;
+ display: flex;
+ justify-content: center;
+}
+
+.pan-buttons .top .up {
+ height: 10vh;
+ width: 25%;
+ margin: 10px auto;
+ opacity: 25%;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ border-radius: 5px;
+}
+
+.pan-buttons .top .up:hover {
+ opacity: 50%;
+ cursor: pointer;
+}
+
+.pan-buttons .middle {
+ position: absolute;
+ top: 50%;
+ left: 0;
+ height: 100%;
+ width: 100%;
+ z-index: 2;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ transform: translateY(-50%);
+}
+
+.pan-buttons .middle .right {
+ height: 35vh;
+ width: 12.5vh;
+ margin-right: 10px;
+ margin-left: auto;
+ opacity: 25%;
+ margin: 10px;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ border-radius: 5px;
+}
+
+.pan-buttons .middle .right:hover {
+ opacity: 50%;
+ cursor: pointer;
+}
+
+.pan-buttons .middle .left {
+ height: 35vh;
+ width: 12.5vh;
+ margin-right: auto;
+ margin-left: 10px;
+ opacity: 25%;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ border-radius: 5px;
+}
+
+.pan-buttons .middle .left:hover {
+ opacity: 50%;
+ cursor: pointer;
+}
+
+.pan-buttons .base {
+ position: absolute;
+ bottom: 0;
+ left: 0;
+ width: 100%;
+ height: 15%;
+ z-index: 2;
+ display: flex;
+ justify-content: center;
+}
+
+.pan-buttons .base .down {
+ height: 10vh;
+ width: 25%;
+ margin: 25px auto;
+ opacity: 25%;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ border-radius: 5px;
+}
+
+.pan-buttons .base .down:hover {
+ opacity: 50%;
+ cursor: pointer;
+}
+
+.pan-buttons button {
+ pointer-events: auto;
+}
+
+.pan-buttons {
+ pointer-events: none;
+}
+
+.buttonTog {
+ position: absolute;
+ top: 10px;
+ left: 10px;
+ height: 50px;
+ width: 50px;
+ opacity: 25%;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ border-radius: 5px;
+ pointer-events: auto;
+ z-index: 1;
+}
+
+.resetView {
+ position: absolute;
+ top: 10px;
+ left: 70px;
+ height: 50px;
+ width: 50px;
+ opacity: 25%;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ border-radius: 5px;
+ pointer-events: auto;
+ z-index: 1;
+}
+
+.chat-container {
+ display: none;
+ flex-direction: column;
+ position: absolute;
+ top: 10px;
+ right: 10px;
+ width: 30%;
+ height: 25%;
+ color: #FFF;
+ border: 0px;
+ pointer-events: auto;
+ z-index: 1;
+}
+
+.chat-messages {
+ height: 95%;
+ opacity: 25%;
+ padding: 10px;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ pointer-events: auto;
+ z-index: 1;
+ word-wrap: break-word;
+ word-break: break-all;
+ white-space: normal;
+}
+
+.chat-messages ul {
+ flex-direction: column-reverse;
+ list-style-type: none;
+ padding: 0;
+ margin: 0;
+ overflow-y: auto;
+ max-height: 100%;
+}
+
+.chat-input {
+ width: 100%;
+}
+
+#chat-input {
+ margin-top: 5px;
+ width: 100%;
+ opacity: 25%;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ pointer-events: auto;
+ z-index: 1;
+}
+
+#chat-input:focus {
+ outline: none;
+ border-radius: 0;
+}
+
+.buttonTog:hover {
+ opacity: 50%;
+ cursor: pointer;
+}
+
+.resetView:hover {
+ opacity: 50%;
+ cursor: pointer;
+}
+
+.dropdown-content {
+ display: none;
+ position: absolute;
+ background-color: #f9f9f9;
+ min-width: 160px;
+ z-index: 1000;
+}
+
+.dropdown:hover .dropdown-content {
+ display: block;
+}
+
+.dropdown-content {
+ top: 45px;
+ right: 1%;
+ max-height: 200px;
+ width: 15%;
+ overflow-y: auto;
+ background-color: #de7688;
+ padding: 10px;
+ box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
+ animation: fadeInUp 0.15s ease;
+}
+
+.coordinates {
+ position: absolute;
+ left: 10px;
+ bottom: 10px;
+ display: flex;
+ flex-direction: row;
+ opacity: 25%;
+ background: #000;
+ border-radius: 3px;
+ padding: 5px;
+ z-index: 500;
+}
+
+.clients {
+ transition: 0.5s ease-in;
+ position: absolute;
+ left: 10px;
+ bottom: 45px;
+ display: flex;
+ flex-direction: row;
+ opacity: 0;
+ background: #000;
+ border-radius: 3px;
+ padding: 5px;
+ z-index: 500;
+}
+
+.collavas {
+ position: absolute;
+ right: 10px;
+ bottom: 10px;
+ display: flex;
+ flex-direction: row;
+ opacity: 25%;
+ background: #000;
+ border-radius: 3px;
+ padding: 5px;
+ z-index: 500;
+}
+
+.client-version {
+ transition: 0.5s ease-in;
+ position: absolute;
+ right: 10px;
+ bottom: 45px;
+ display: flex;
+ flex-direction: row;
+ opacity: 0;
+ background: #000;
+ border-radius: 3px;
+ padding: 5px;
+ z-index: 500;
+}
+
+.ping {
+ transition: 0.5s ease-in;
+ position: absolute;
+ right: 10px;
+ bottom: 80px;
+ display: flex;
+ flex-direction: row;
+ opacity: 0;
+ background: #000;
+ border-radius: 3px;
+ padding: 5px;
+ z-index: 500;
+}
+
+.data-size {
+ transition: 0.5s ease-in;
+ position: absolute;
+ right: 10px;
+ bottom: 115px;
+ display: flex;
+ flex-direction: row;
+ opacity: 0;
+ background: #000;
+ border-radius: 3px;
+ padding: 5px;
+ z-index: 500;
+}
+
+.coordinates p {
+ display: flex;
+ flex-direction: row;
+ margin-left: 5px;
+}
+
+.messages {
+ display: flex;
+ justify-content: center;
+ position: absolute;
+ left: 50%;
+ right: 50%;
+ top: 0px;
+ z-index: 99999999999999999999;
+}
+
+.message {
+ display: flex;
+ justify-content: center;
+ margin-top: 40px;
+ width: auto;
+ min-width: 250px;
+ max-width: 750px;
+ margin-left: 20px;
+}
+
+#welcome>.message {
+ display: flex;
+ flex-direction: column;
+ text-align: center;
+ width: 1000px;
+ padding: 20px;
+}
+
+.spinner,
+.spinner::before,
+.spinner::after {
+ width: 10px;
+ height: 10px;
+ border-radius: 2px;
+ box-shadow: -60px 10px 0 rgba(255, 255, 255, 0);
+ animation: spinner 1.0s linear infinite;
+}
+
+.spinner {
+ position: relative;
+}
+
+.spinner::before {
+ content: "";
+ position: absolute;
+ left: 0px;
+ top: 0px;
+ animation-delay: -0.1s;
+}
+
+.spinner::after {
+ content: "";
+ position: absolute;
+ top: 0px;
+ left: 0px;
+ animation-delay: 0.1s;
+}
+
+#transition {
+ transition: 0.5s ease-in-out;
+ position: fixed;
+ top: 0;
+ left: 0;
+ bottom: 0;
+ right: 0;
+ color: white;
+ background: rgba(0, 0, 0, 0.5);
+ z-index: 1;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ flex-direction: column;
+}
+
+#welcome {
+ transition: 0.5s ease-in-out;
+ position: fixed;
+ top: 0;
+ left: 0;
+ bottom: 0;
+ right: 0;
+ color: white;
+ background: rgba(0, 0, 0, 0.5);
+ z-index: 1;
+ opacity: 0;
+ display: none;
+ align-items: center;
+ justify-content: center;
+ flex-direction: column;
+}
+
+.fadeup {
+ animation: fadeInUp 0.25s ease;
+}
+
+.fadedown {
+ opacity: 0;
+ animation: fadeOutDown 0.25s ease;
+}
+
+.green {
+ background-color: var(--green);
+}
+
+.blue {
+ background-color: var(--blue);
+}
+
+.indigo {
+ background-color: var(--indigo);
+}
+
+.purple {
+ background-color: var(--purple);
+}
+
+.pink {
+ background-color: var(--pink);
+}
+
+.red {
+ background-color: var(--red);
+}
+
+.orange {
+ background-color: var(--orange);
+}
+
+.yellow {
+ background-color: var(--yellow);
+}
+
+.teal {
+ background-color: var(--teal);
+}
+
+.cyan {
+ background-color: var(--cyan);
+}
+
+.white {
+ background-color: var(--white);
+}
+
+.gray {
+ background-color: var(--gray);
+}
+
+.gray-dark {
+ background-color: var(--gray-dark);
+}
+
+.primary {
+ background-color: var(--primary);
+}
+
+.secondary {
+ background-color: var(--secondary);
+}
+
+.success {
+ background-color: var(--success);
+}
+
+.info {
+ background-color: var(--info);
+}
+
+.warning {
+ background-color: var(--warning);
+}
+
+.danger {
+ background-color: var(--danger);
+}
+
+.light {
+ background-color: var(--light);
+}
+
+.dark {
+ background-color: var(--dark);
+}
+
+@keyframes fadeInUp {
+ 0% {
+ opacity: 0;
+ -webkit-transform: translate3d(0, 100%, 0);
+ transform: translate3d(0, 100%, 0)
+ }
+
+ to {
+ opacity: 1;
+ -webkit-transform: none;
+ transform: none
+ }
+}
+
+@keyframes fadeOutDown {
+ 0% {
+ opacity: 1
+ }
+
+ to {
+ opacity: 0;
+ -webkit-transform: translate3d(0, 100%, 0);
+ transform: translate3d(0, 100%, 0)
+ }
+}
+
+@keyframes spinner {
+ 0% {
+ box-shadow: -60px 10px 0 rgba(255, 255, 255, 0);
+ width: 20px;
+ }
+
+ 25% {
+ box-shadow: 20px 10px 0 rgba(255, 255, 255, 1);
+ width: 10px;
+ }
+
+ 50% {
+ box-shadow: 60px 10px 0 rgba(255, 255, 255, 0);
+ width: 10px;
+ }
+}
\ No newline at end of file
diff --git a/public/static/css/main-AGdHCP.css b/public/static/css/main-AGdHCP.css
new file mode 100644
index 0000000..fd89fa1
--- /dev/null
+++ b/public/static/css/main-AGdHCP.css
@@ -0,0 +1,615 @@
+:root {
+ --blue: #039be5;
+ --indigo: #6610f2;
+ --purple: #ba68c8;
+ --pink: #e83e8c;
+ --red: #e3342f;
+ --orange: #fd7e14;
+ --yellow: #ffb300;
+ --green: #00b857;
+ --teal: #20c997;
+ --cyan: #17a2b8;
+ --white: #fff;
+ --gray: #6c757d;
+ --gray-dark: #343a40;
+ --primary: #039be5;
+ --secondary: #6c757d;
+ --success: #00b857;
+ --info: #ba68c8;
+ --warning: #ffb300;
+ --danger: #e3342f;
+ --light: #f8f9fa;
+ --dark: #343a40;
+ --breakpoint-xs: 0;
+ --breakpoint-sm: 576px;
+ --breakpoint-md: 768px;
+ --breakpoint-lg: 992px;
+ --breakpoint-xl: 1200px;
+ --font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
+ --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
+}
+
+canvas {
+ background: #FFF;
+ width: auto;
+ height: 100%;
+}
+
+p {
+ color: #FFF;
+ margin: 0;
+}
+
+body {
+ margin: 0;
+ padding: 0;
+ font-family: Arial, sans-serif;
+ background-color: #FFC0CB;
+}
+
+.top-bar {
+ background-color: #f78397;
+ color: #fff;
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
+ z-index: 9999999999999;
+}
+
+.logo img {
+ max-width: auto;
+ height: 45px;
+ padding: 5px;
+}
+
+.menu ul {
+ list-style-type: none;
+ margin: 0;
+ margin-right: 20px;
+ padding: 0;
+ display: flex;
+}
+
+.menu li {
+ padding: 10px;
+}
+
+.menu a {
+ text-decoration: none;
+ color: #fff;
+}
+
+.canvasWrapper {
+ position: relative;
+ z-index: 0;
+ width: 100%;
+ height: calc(100vh - 65px);
+ pointer-events: auto;
+ overflow: hidden;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+}
+
+.canvasContainer {
+ position: absolute;
+}
+
+.canvas-main {
+ transition: opacity 0.5s ease-in, transform.translate 0.5s ease-in;
+ opacity: 0;
+ visibility: hidden;
+ z-index: 1;
+ pointer-events: auto;
+ image-rendering: pixelated;
+}
+
+.pan-buttons {
+ transition: 0.25s ease-in;
+ opacity: 0;
+ position: absolute;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 100%;
+ z-index: 2;
+ display: flex;
+ justify-content: center;
+}
+
+.content-wrapper {
+ position: relative;
+ width: 100%;
+ height: 100%;
+ pointer-events: auto;
+}
+
+.pan-buttons .top {
+ position: absolute;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 10%;
+ z-index: 2;
+ display: flex;
+ justify-content: center;
+}
+
+.pan-buttons .top .up {
+ height: 10vh;
+ width: 25%;
+ margin: 10px auto;
+ opacity: 25%;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ border-radius: 5px;
+}
+
+.pan-buttons .top .up:hover {
+ opacity: 50%;
+ cursor: pointer;
+}
+
+.pan-buttons .middle {
+ position: absolute;
+ top: 50%;
+ left: 0;
+ height: 100%;
+ width: 100%;
+ z-index: 2;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ transform: translateY(-50%);
+}
+
+.pan-buttons .middle .right {
+ height: 35vh;
+ width: 12.5vh;
+ margin-right: 10px;
+ margin-left: auto;
+ opacity: 25%;
+ margin: 10px;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ border-radius: 5px;
+}
+
+.pan-buttons .middle .right:hover {
+ opacity: 50%;
+ cursor: pointer;
+}
+
+.pan-buttons .middle .left {
+ height: 35vh;
+ width: 12.5vh;
+ margin-right: auto;
+ margin-left: 10px;
+ opacity: 25%;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ border-radius: 5px;
+}
+
+.pan-buttons .middle .left:hover {
+ opacity: 50%;
+ cursor: pointer;
+}
+
+.pan-buttons .base {
+ position: absolute;
+ bottom: 0;
+ left: 0;
+ width: 100%;
+ height: 15%;
+ z-index: 2;
+ display: flex;
+ justify-content: center;
+}
+
+.pan-buttons .base .down {
+ height: 10vh;
+ width: 25%;
+ margin: 25px auto;
+ opacity: 25%;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ border-radius: 5px;
+}
+
+.pan-buttons .base .down:hover {
+ opacity: 50%;
+ cursor: pointer;
+}
+
+.pan-buttons button {
+ pointer-events: auto;
+}
+
+.pan-buttons {
+ pointer-events: none;
+}
+
+.buttonTog {
+ position: absolute;
+ top: 10px;
+ left: 10px;
+ height: 50px;
+ width: 50px;
+ opacity: 25%;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ border-radius: 5px;
+ pointer-events: auto;
+ z-index: 1;
+}
+
+.resetView {
+ position: absolute;
+ top: 10px;
+ left: 70px;
+ height: 50px;
+ width: 50px;
+ opacity: 25%;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ border-radius: 5px;
+ pointer-events: auto;
+ z-index: 1;
+}
+
+.buttonTog:hover {
+ opacity: 50%;
+ cursor: pointer;
+}
+
+.resetView:hover {
+ opacity: 50%;
+ cursor: pointer;
+}
+
+.dropdown-content {
+ display: none;
+ position: absolute;
+ background-color: #f9f9f9;
+ min-width: 160px;
+ z-index: 1000;
+}
+
+.dropdown:hover .dropdown-content {
+ display: block;
+}
+
+.dropdown-content {
+ top: 45px;
+ right: 1%;
+ max-height: 200px;
+ width: 15%;
+ overflow-y: auto;
+ background-color: #de7688;
+ padding: 10px;
+ box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
+ animation: fadeInUp 0.15s ease;
+}
+
+.coordinates {
+ position: absolute;
+ left: 10px;
+ bottom: 10px;
+ display: flex;
+ flex-direction: row;
+ opacity: 25%;
+ background: #000;
+ border-radius: 3px;
+ padding: 5px;
+ z-index: 500;
+}
+
+.clients {
+ transition: 0.5s ease-in;
+ position: absolute;
+ left: 10px;
+ bottom: 45px;
+ display: flex;
+ flex-direction: row;
+ opacity: 0;
+ background: #000;
+ border-radius: 3px;
+ padding: 5px;
+ z-index: 500;
+}
+
+.collavas {
+ position: absolute;
+ right: 10px;
+ bottom: 10px;
+ display: flex;
+ flex-direction: row;
+ opacity: 25%;
+ background: #000;
+ border-radius: 3px;
+ padding: 5px;
+ z-index: 500;
+}
+
+.client-version {
+ transition: 0.5s ease-in;
+ position: absolute;
+ right: 10px;
+ bottom: 45px;
+ display: flex;
+ flex-direction: row;
+ opacity: 0;
+ background: #000;
+ border-radius: 3px;
+ padding: 5px;
+ z-index: 500;
+}
+
+.ping {
+ transition: 0.5s ease-in;
+ position: absolute;
+ right: 10px;
+ bottom: 80px;
+ display: flex;
+ flex-direction: row;
+ opacity: 0;
+ background: #000;
+ border-radius: 3px;
+ padding: 5px;
+ z-index: 500;
+}
+
+.data-size {
+ transition: 0.5s ease-in;
+ position: absolute;
+ right: 10px;
+ bottom: 115px;
+ display: flex;
+ flex-direction: row;
+ opacity: 0;
+ background: #000;
+ border-radius: 3px;
+ padding: 5px;
+ z-index: 500;
+}
+
+.coordinates p {
+ display: flex;
+ flex-direction: row;
+ margin-left: 5px;
+}
+
+.messages {
+ display: flex;
+ justify-content: center;
+ position: absolute;
+ left: 50%;
+ right: 50%;
+ top: 0px;
+ z-index: 99999999999999999999;
+}
+
+.message {
+ display: flex;
+ justify-content: center;
+ margin-top: 40px;
+ width: auto;
+ min-width: 250px;
+ max-width: 750px;
+ margin-left: 20px;
+}
+
+#welcome>.message {
+ display: flex;
+ flex-direction: column;
+ text-align: center;
+ width: 1000px;
+ padding: 20px;
+}
+
+.spinner,
+.spinner::before,
+.spinner::after {
+ width: 10px;
+ height: 10px;
+ border-radius: 2px;
+ box-shadow: -60px 10px 0 rgba(255, 255, 255, 0);
+ animation: spinner 1.0s linear infinite;
+}
+
+.spinner {
+ position: relative;
+}
+
+.spinner::before {
+ content: "";
+ position: absolute;
+ left: 0px;
+ top: 0px;
+ animation-delay: -0.1s;
+}
+
+.spinner::after {
+ content: "";
+ position: absolute;
+ top: 0px;
+ left: 0px;
+ animation-delay: 0.1s;
+}
+
+#transition {
+ transition: 0.5s ease-in-out;
+ position: fixed;
+ top: 0;
+ left: 0;
+ bottom: 0;
+ right: 0;
+ color: white;
+ background: rgba(0, 0, 0, 0.5);
+ z-index: 1;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ flex-direction: column;
+}
+
+#welcome {
+ transition: 0.5s ease-in-out;
+ position: fixed;
+ top: 0;
+ left: 0;
+ bottom: 0;
+ right: 0;
+ color: white;
+ background: rgba(0, 0, 0, 0.5);
+ z-index: 1;
+ opacity: 0;
+ display: none;
+ align-items: center;
+ justify-content: center;
+ flex-direction: column;
+}
+
+.fadeup {
+ animation: fadeInUp 0.25s ease;
+}
+
+.fadedown {
+ opacity: 0;
+ animation: fadeOutDown 0.25s ease;
+}
+
+.green {
+ background-color: var(--green);
+}
+
+.blue {
+ background-color: var(--blue);
+}
+
+.indigo {
+ background-color: var(--indigo);
+}
+
+.purple {
+ background-color: var(--purple);
+}
+
+.pink {
+ background-color: var(--pink);
+}
+
+.red {
+ background-color: var(--red);
+}
+
+.orange {
+ background-color: var(--orange);
+}
+
+.yellow {
+ background-color: var(--yellow);
+}
+
+.teal {
+ background-color: var(--teal);
+}
+
+.cyan {
+ background-color: var(--cyan);
+}
+
+.white {
+ background-color: var(--white);
+}
+
+.gray {
+ background-color: var(--gray);
+}
+
+.gray-dark {
+ background-color: var(--gray-dark);
+}
+
+.primary {
+ background-color: var(--primary);
+}
+
+.secondary {
+ background-color: var(--secondary);
+}
+
+.success {
+ background-color: var(--success);
+}
+
+.info {
+ background-color: var(--info);
+}
+
+.warning {
+ background-color: var(--warning);
+}
+
+.danger {
+ background-color: var(--danger);
+}
+
+.light {
+ background-color: var(--light);
+}
+
+.dark {
+ background-color: var(--dark);
+}
+
+@keyframes fadeInUp {
+ 0% {
+ opacity: 0;
+ -webkit-transform: translate3d(0, 100%, 0);
+ transform: translate3d(0, 100%, 0)
+ }
+
+ to {
+ opacity: 1;
+ -webkit-transform: none;
+ transform: none
+ }
+}
+
+@keyframes fadeOutDown {
+ 0% {
+ opacity: 1
+ }
+
+ to {
+ opacity: 0;
+ -webkit-transform: translate3d(0, 100%, 0);
+ transform: translate3d(0, 100%, 0)
+ }
+}
+
+@keyframes spinner {
+ 0% {
+ box-shadow: -60px 10px 0 rgba(255, 255, 255, 0);
+ width: 20px;
+ }
+
+ 25% {
+ box-shadow: 20px 10px 0 rgba(255, 255, 255, 1);
+ width: 10px;
+ }
+
+ 50% {
+ box-shadow: 60px 10px 0 rgba(255, 255, 255, 0);
+ width: 10px;
+ }
+}
\ No newline at end of file
diff --git a/public/static/css/main-P50wHw.css b/public/static/css/main-P50wHw.css
new file mode 100644
index 0000000..3488a08
--- /dev/null
+++ b/public/static/css/main-P50wHw.css
@@ -0,0 +1,669 @@
+:root {
+ --blue: #039be5;
+ --indigo: #6610f2;
+ --purple: #ba68c8;
+ --pink: #e83e8c;
+ --red: #e3342f;
+ --orange: #fd7e14;
+ --yellow: #ffb300;
+ --green: #00b857;
+ --teal: #20c997;
+ --cyan: #17a2b8;
+ --white: #fff;
+ --gray: #6c757d;
+ --gray-dark: #343a40;
+ --primary: #039be5;
+ --secondary: #6c757d;
+ --success: #00b857;
+ --info: #ba68c8;
+ --warning: #ffb300;
+ --danger: #e3342f;
+ --light: #f8f9fa;
+ --dark: #343a40;
+ --breakpoint-xs: 0;
+ --breakpoint-sm: 576px;
+ --breakpoint-md: 768px;
+ --breakpoint-lg: 992px;
+ --breakpoint-xl: 1200px;
+ --font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
+ --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
+}
+
+canvas {
+ background: #FFF;
+ width: auto;
+ height: 100%;
+}
+
+p {
+ color: #FFF;
+ margin: 0;
+}
+
+body {
+ margin: 0;
+ padding: 0;
+ font-family: Arial, sans-serif;
+ background-color: #FFC0CB;
+}
+
+.top-bar {
+ background-color: #f78397;
+ color: #fff;
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
+ z-index: 9999999999999;
+}
+
+.logo img {
+ max-width: auto;
+ height: 45px;
+ padding: 5px;
+}
+
+.menu ul {
+ list-style-type: none;
+ margin: 0;
+ margin-right: 20px;
+ padding: 0;
+ display: flex;
+}
+
+.menu li {
+ padding: 10px;
+}
+
+.menu a {
+ text-decoration: none;
+ color: #fff;
+}
+
+.canvasWrapper {
+ position: relative;
+ z-index: 0;
+ width: 100%;
+ height: calc(100vh - 65px);
+ pointer-events: auto;
+ overflow: hidden;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+}
+
+.canvasContainer {
+ position: absolute;
+}
+
+.canvas-main {
+ transition: opacity 0.5s ease-in, transform.translate 0.5s ease-in;
+ opacity: 0;
+ visibility: hidden;
+ z-index: 1;
+ pointer-events: auto;
+ image-rendering: pixelated;
+}
+
+.pan-buttons {
+ transition: 0.25s ease-in;
+ opacity: 0;
+ position: absolute;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 100%;
+ z-index: 2;
+ display: flex;
+ justify-content: center;
+}
+
+.content-wrapper {
+ position: relative;
+ width: 100%;
+ height: 100%;
+ pointer-events: auto;
+}
+
+.pan-buttons .top {
+ position: absolute;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 10%;
+ z-index: 2;
+ display: flex;
+ justify-content: center;
+}
+
+.pan-buttons .top .up {
+ height: 10vh;
+ width: 25%;
+ margin: 10px auto;
+ opacity: 25%;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ border-radius: 5px;
+}
+
+.pan-buttons .top .up:hover {
+ opacity: 50%;
+ cursor: pointer;
+}
+
+.pan-buttons .middle {
+ position: absolute;
+ top: 50%;
+ left: 0;
+ height: 100%;
+ width: 100%;
+ z-index: 2;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ transform: translateY(-50%);
+}
+
+.pan-buttons .middle .right {
+ height: 35vh;
+ width: 12.5vh;
+ margin-right: 10px;
+ margin-left: auto;
+ opacity: 25%;
+ margin: 10px;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ border-radius: 5px;
+}
+
+.pan-buttons .middle .right:hover {
+ opacity: 50%;
+ cursor: pointer;
+}
+
+.pan-buttons .middle .left {
+ height: 35vh;
+ width: 12.5vh;
+ margin-right: auto;
+ margin-left: 10px;
+ opacity: 25%;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ border-radius: 5px;
+}
+
+.pan-buttons .middle .left:hover {
+ opacity: 50%;
+ cursor: pointer;
+}
+
+.pan-buttons .base {
+ position: absolute;
+ bottom: 0;
+ left: 0;
+ width: 100%;
+ height: 15%;
+ z-index: 2;
+ display: flex;
+ justify-content: center;
+}
+
+.pan-buttons .base .down {
+ height: 10vh;
+ width: 25%;
+ margin: 25px auto;
+ opacity: 25%;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ border-radius: 5px;
+}
+
+.pan-buttons .base .down:hover {
+ opacity: 50%;
+ cursor: pointer;
+}
+
+.pan-buttons button {
+ pointer-events: auto;
+}
+
+.pan-buttons {
+ pointer-events: none;
+}
+
+.buttonTog {
+ position: absolute;
+ top: 10px;
+ left: 10px;
+ height: 50px;
+ width: 50px;
+ opacity: 25%;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ border-radius: 5px;
+ pointer-events: auto;
+ z-index: 1;
+}
+
+.resetView {
+ position: absolute;
+ top: 10px;
+ left: 70px;
+ height: 50px;
+ width: 50px;
+ opacity: 25%;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ border-radius: 5px;
+ pointer-events: auto;
+ z-index: 1;
+}
+
+.chat-container {
+ display: none;
+ flex-direction: column;
+ position: absolute;
+ top: 10px;
+ right: 10px;
+ width: 30%;
+ height: 25%;
+ color: #FFF;
+ border: 0px;
+ pointer-events: auto;
+ z-index: 1;
+}
+
+.chat-messages {
+ height: 95%;
+ opacity: 25%;
+ padding: 10px;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ pointer-events: auto;
+ z-index: 1;
+}
+
+.chat-messages ul {
+ flex-direction: column-reverse;
+ list-style-type: none;
+ padding: 0;
+ margin: 0;
+ overflow-y: auto;
+ max-height: 100%;
+}
+
+.chat-input {
+ width: 100%;
+}
+
+#chat-input {
+ margin-top: 5px;
+ width: 100%;
+ opacity: 25%;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ pointer-events: auto;
+ z-index: 1;
+}
+
+#chat-input:focus {
+ outline: none;
+ border-radius: 0;
+}
+
+.buttonTog:hover {
+ opacity: 50%;
+ cursor: pointer;
+}
+
+.resetView:hover {
+ opacity: 50%;
+ cursor: pointer;
+}
+
+.dropdown-content {
+ display: none;
+ position: absolute;
+ background-color: #f9f9f9;
+ min-width: 160px;
+ z-index: 1000;
+}
+
+.dropdown:hover .dropdown-content {
+ display: block;
+}
+
+.dropdown-content {
+ top: 45px;
+ right: 1%;
+ max-height: 200px;
+ width: 15%;
+ overflow-y: auto;
+ background-color: #de7688;
+ padding: 10px;
+ box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
+ animation: fadeInUp 0.15s ease;
+}
+
+.coordinates {
+ position: absolute;
+ left: 10px;
+ bottom: 10px;
+ display: flex;
+ flex-direction: row;
+ opacity: 25%;
+ background: #000;
+ border-radius: 3px;
+ padding: 5px;
+ z-index: 500;
+}
+
+.clients {
+ transition: 0.5s ease-in;
+ position: absolute;
+ left: 10px;
+ bottom: 45px;
+ display: flex;
+ flex-direction: row;
+ opacity: 0;
+ background: #000;
+ border-radius: 3px;
+ padding: 5px;
+ z-index: 500;
+}
+
+.collavas {
+ position: absolute;
+ right: 10px;
+ bottom: 10px;
+ display: flex;
+ flex-direction: row;
+ opacity: 25%;
+ background: #000;
+ border-radius: 3px;
+ padding: 5px;
+ z-index: 500;
+}
+
+.client-version {
+ transition: 0.5s ease-in;
+ position: absolute;
+ right: 10px;
+ bottom: 45px;
+ display: flex;
+ flex-direction: row;
+ opacity: 0;
+ background: #000;
+ border-radius: 3px;
+ padding: 5px;
+ z-index: 500;
+}
+
+.ping {
+ transition: 0.5s ease-in;
+ position: absolute;
+ right: 10px;
+ bottom: 80px;
+ display: flex;
+ flex-direction: row;
+ opacity: 0;
+ background: #000;
+ border-radius: 3px;
+ padding: 5px;
+ z-index: 500;
+}
+
+.data-size {
+ transition: 0.5s ease-in;
+ position: absolute;
+ right: 10px;
+ bottom: 115px;
+ display: flex;
+ flex-direction: row;
+ opacity: 0;
+ background: #000;
+ border-radius: 3px;
+ padding: 5px;
+ z-index: 500;
+}
+
+.coordinates p {
+ display: flex;
+ flex-direction: row;
+ margin-left: 5px;
+}
+
+.messages {
+ display: flex;
+ justify-content: center;
+ position: absolute;
+ left: 50%;
+ right: 50%;
+ top: 0px;
+ z-index: 99999999999999999999;
+}
+
+.message {
+ display: flex;
+ justify-content: center;
+ margin-top: 40px;
+ width: auto;
+ min-width: 250px;
+ max-width: 750px;
+ margin-left: 20px;
+}
+
+#welcome>.message {
+ display: flex;
+ flex-direction: column;
+ text-align: center;
+ width: 1000px;
+ padding: 20px;
+}
+
+.spinner,
+.spinner::before,
+.spinner::after {
+ width: 10px;
+ height: 10px;
+ border-radius: 2px;
+ box-shadow: -60px 10px 0 rgba(255, 255, 255, 0);
+ animation: spinner 1.0s linear infinite;
+}
+
+.spinner {
+ position: relative;
+}
+
+.spinner::before {
+ content: "";
+ position: absolute;
+ left: 0px;
+ top: 0px;
+ animation-delay: -0.1s;
+}
+
+.spinner::after {
+ content: "";
+ position: absolute;
+ top: 0px;
+ left: 0px;
+ animation-delay: 0.1s;
+}
+
+#transition {
+ transition: 0.5s ease-in-out;
+ position: fixed;
+ top: 0;
+ left: 0;
+ bottom: 0;
+ right: 0;
+ color: white;
+ background: rgba(0, 0, 0, 0.5);
+ z-index: 1;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ flex-direction: column;
+}
+
+#welcome {
+ transition: 0.5s ease-in-out;
+ position: fixed;
+ top: 0;
+ left: 0;
+ bottom: 0;
+ right: 0;
+ color: white;
+ background: rgba(0, 0, 0, 0.5);
+ z-index: 1;
+ opacity: 0;
+ display: none;
+ align-items: center;
+ justify-content: center;
+ flex-direction: column;
+}
+
+.fadeup {
+ animation: fadeInUp 0.25s ease;
+}
+
+.fadedown {
+ opacity: 0;
+ animation: fadeOutDown 0.25s ease;
+}
+
+.green {
+ background-color: var(--green);
+}
+
+.blue {
+ background-color: var(--blue);
+}
+
+.indigo {
+ background-color: var(--indigo);
+}
+
+.purple {
+ background-color: var(--purple);
+}
+
+.pink {
+ background-color: var(--pink);
+}
+
+.red {
+ background-color: var(--red);
+}
+
+.orange {
+ background-color: var(--orange);
+}
+
+.yellow {
+ background-color: var(--yellow);
+}
+
+.teal {
+ background-color: var(--teal);
+}
+
+.cyan {
+ background-color: var(--cyan);
+}
+
+.white {
+ background-color: var(--white);
+}
+
+.gray {
+ background-color: var(--gray);
+}
+
+.gray-dark {
+ background-color: var(--gray-dark);
+}
+
+.primary {
+ background-color: var(--primary);
+}
+
+.secondary {
+ background-color: var(--secondary);
+}
+
+.success {
+ background-color: var(--success);
+}
+
+.info {
+ background-color: var(--info);
+}
+
+.warning {
+ background-color: var(--warning);
+}
+
+.danger {
+ background-color: var(--danger);
+}
+
+.light {
+ background-color: var(--light);
+}
+
+.dark {
+ background-color: var(--dark);
+}
+
+@keyframes fadeInUp {
+ 0% {
+ opacity: 0;
+ -webkit-transform: translate3d(0, 100%, 0);
+ transform: translate3d(0, 100%, 0)
+ }
+
+ to {
+ opacity: 1;
+ -webkit-transform: none;
+ transform: none
+ }
+}
+
+@keyframes fadeOutDown {
+ 0% {
+ opacity: 1
+ }
+
+ to {
+ opacity: 0;
+ -webkit-transform: translate3d(0, 100%, 0);
+ transform: translate3d(0, 100%, 0)
+ }
+}
+
+@keyframes spinner {
+ 0% {
+ box-shadow: -60px 10px 0 rgba(255, 255, 255, 0);
+ width: 20px;
+ }
+
+ 25% {
+ box-shadow: 20px 10px 0 rgba(255, 255, 255, 1);
+ width: 10px;
+ }
+
+ 50% {
+ box-shadow: 60px 10px 0 rgba(255, 255, 255, 0);
+ width: 10px;
+ }
+}
\ No newline at end of file
diff --git a/public/static/css/main-UujD4m.css b/public/static/css/main-UujD4m.css
new file mode 100644
index 0000000..fd89fa1
--- /dev/null
+++ b/public/static/css/main-UujD4m.css
@@ -0,0 +1,615 @@
+:root {
+ --blue: #039be5;
+ --indigo: #6610f2;
+ --purple: #ba68c8;
+ --pink: #e83e8c;
+ --red: #e3342f;
+ --orange: #fd7e14;
+ --yellow: #ffb300;
+ --green: #00b857;
+ --teal: #20c997;
+ --cyan: #17a2b8;
+ --white: #fff;
+ --gray: #6c757d;
+ --gray-dark: #343a40;
+ --primary: #039be5;
+ --secondary: #6c757d;
+ --success: #00b857;
+ --info: #ba68c8;
+ --warning: #ffb300;
+ --danger: #e3342f;
+ --light: #f8f9fa;
+ --dark: #343a40;
+ --breakpoint-xs: 0;
+ --breakpoint-sm: 576px;
+ --breakpoint-md: 768px;
+ --breakpoint-lg: 992px;
+ --breakpoint-xl: 1200px;
+ --font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
+ --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
+}
+
+canvas {
+ background: #FFF;
+ width: auto;
+ height: 100%;
+}
+
+p {
+ color: #FFF;
+ margin: 0;
+}
+
+body {
+ margin: 0;
+ padding: 0;
+ font-family: Arial, sans-serif;
+ background-color: #FFC0CB;
+}
+
+.top-bar {
+ background-color: #f78397;
+ color: #fff;
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
+ z-index: 9999999999999;
+}
+
+.logo img {
+ max-width: auto;
+ height: 45px;
+ padding: 5px;
+}
+
+.menu ul {
+ list-style-type: none;
+ margin: 0;
+ margin-right: 20px;
+ padding: 0;
+ display: flex;
+}
+
+.menu li {
+ padding: 10px;
+}
+
+.menu a {
+ text-decoration: none;
+ color: #fff;
+}
+
+.canvasWrapper {
+ position: relative;
+ z-index: 0;
+ width: 100%;
+ height: calc(100vh - 65px);
+ pointer-events: auto;
+ overflow: hidden;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+}
+
+.canvasContainer {
+ position: absolute;
+}
+
+.canvas-main {
+ transition: opacity 0.5s ease-in, transform.translate 0.5s ease-in;
+ opacity: 0;
+ visibility: hidden;
+ z-index: 1;
+ pointer-events: auto;
+ image-rendering: pixelated;
+}
+
+.pan-buttons {
+ transition: 0.25s ease-in;
+ opacity: 0;
+ position: absolute;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 100%;
+ z-index: 2;
+ display: flex;
+ justify-content: center;
+}
+
+.content-wrapper {
+ position: relative;
+ width: 100%;
+ height: 100%;
+ pointer-events: auto;
+}
+
+.pan-buttons .top {
+ position: absolute;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 10%;
+ z-index: 2;
+ display: flex;
+ justify-content: center;
+}
+
+.pan-buttons .top .up {
+ height: 10vh;
+ width: 25%;
+ margin: 10px auto;
+ opacity: 25%;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ border-radius: 5px;
+}
+
+.pan-buttons .top .up:hover {
+ opacity: 50%;
+ cursor: pointer;
+}
+
+.pan-buttons .middle {
+ position: absolute;
+ top: 50%;
+ left: 0;
+ height: 100%;
+ width: 100%;
+ z-index: 2;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ transform: translateY(-50%);
+}
+
+.pan-buttons .middle .right {
+ height: 35vh;
+ width: 12.5vh;
+ margin-right: 10px;
+ margin-left: auto;
+ opacity: 25%;
+ margin: 10px;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ border-radius: 5px;
+}
+
+.pan-buttons .middle .right:hover {
+ opacity: 50%;
+ cursor: pointer;
+}
+
+.pan-buttons .middle .left {
+ height: 35vh;
+ width: 12.5vh;
+ margin-right: auto;
+ margin-left: 10px;
+ opacity: 25%;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ border-radius: 5px;
+}
+
+.pan-buttons .middle .left:hover {
+ opacity: 50%;
+ cursor: pointer;
+}
+
+.pan-buttons .base {
+ position: absolute;
+ bottom: 0;
+ left: 0;
+ width: 100%;
+ height: 15%;
+ z-index: 2;
+ display: flex;
+ justify-content: center;
+}
+
+.pan-buttons .base .down {
+ height: 10vh;
+ width: 25%;
+ margin: 25px auto;
+ opacity: 25%;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ border-radius: 5px;
+}
+
+.pan-buttons .base .down:hover {
+ opacity: 50%;
+ cursor: pointer;
+}
+
+.pan-buttons button {
+ pointer-events: auto;
+}
+
+.pan-buttons {
+ pointer-events: none;
+}
+
+.buttonTog {
+ position: absolute;
+ top: 10px;
+ left: 10px;
+ height: 50px;
+ width: 50px;
+ opacity: 25%;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ border-radius: 5px;
+ pointer-events: auto;
+ z-index: 1;
+}
+
+.resetView {
+ position: absolute;
+ top: 10px;
+ left: 70px;
+ height: 50px;
+ width: 50px;
+ opacity: 25%;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ border-radius: 5px;
+ pointer-events: auto;
+ z-index: 1;
+}
+
+.buttonTog:hover {
+ opacity: 50%;
+ cursor: pointer;
+}
+
+.resetView:hover {
+ opacity: 50%;
+ cursor: pointer;
+}
+
+.dropdown-content {
+ display: none;
+ position: absolute;
+ background-color: #f9f9f9;
+ min-width: 160px;
+ z-index: 1000;
+}
+
+.dropdown:hover .dropdown-content {
+ display: block;
+}
+
+.dropdown-content {
+ top: 45px;
+ right: 1%;
+ max-height: 200px;
+ width: 15%;
+ overflow-y: auto;
+ background-color: #de7688;
+ padding: 10px;
+ box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
+ animation: fadeInUp 0.15s ease;
+}
+
+.coordinates {
+ position: absolute;
+ left: 10px;
+ bottom: 10px;
+ display: flex;
+ flex-direction: row;
+ opacity: 25%;
+ background: #000;
+ border-radius: 3px;
+ padding: 5px;
+ z-index: 500;
+}
+
+.clients {
+ transition: 0.5s ease-in;
+ position: absolute;
+ left: 10px;
+ bottom: 45px;
+ display: flex;
+ flex-direction: row;
+ opacity: 0;
+ background: #000;
+ border-radius: 3px;
+ padding: 5px;
+ z-index: 500;
+}
+
+.collavas {
+ position: absolute;
+ right: 10px;
+ bottom: 10px;
+ display: flex;
+ flex-direction: row;
+ opacity: 25%;
+ background: #000;
+ border-radius: 3px;
+ padding: 5px;
+ z-index: 500;
+}
+
+.client-version {
+ transition: 0.5s ease-in;
+ position: absolute;
+ right: 10px;
+ bottom: 45px;
+ display: flex;
+ flex-direction: row;
+ opacity: 0;
+ background: #000;
+ border-radius: 3px;
+ padding: 5px;
+ z-index: 500;
+}
+
+.ping {
+ transition: 0.5s ease-in;
+ position: absolute;
+ right: 10px;
+ bottom: 80px;
+ display: flex;
+ flex-direction: row;
+ opacity: 0;
+ background: #000;
+ border-radius: 3px;
+ padding: 5px;
+ z-index: 500;
+}
+
+.data-size {
+ transition: 0.5s ease-in;
+ position: absolute;
+ right: 10px;
+ bottom: 115px;
+ display: flex;
+ flex-direction: row;
+ opacity: 0;
+ background: #000;
+ border-radius: 3px;
+ padding: 5px;
+ z-index: 500;
+}
+
+.coordinates p {
+ display: flex;
+ flex-direction: row;
+ margin-left: 5px;
+}
+
+.messages {
+ display: flex;
+ justify-content: center;
+ position: absolute;
+ left: 50%;
+ right: 50%;
+ top: 0px;
+ z-index: 99999999999999999999;
+}
+
+.message {
+ display: flex;
+ justify-content: center;
+ margin-top: 40px;
+ width: auto;
+ min-width: 250px;
+ max-width: 750px;
+ margin-left: 20px;
+}
+
+#welcome>.message {
+ display: flex;
+ flex-direction: column;
+ text-align: center;
+ width: 1000px;
+ padding: 20px;
+}
+
+.spinner,
+.spinner::before,
+.spinner::after {
+ width: 10px;
+ height: 10px;
+ border-radius: 2px;
+ box-shadow: -60px 10px 0 rgba(255, 255, 255, 0);
+ animation: spinner 1.0s linear infinite;
+}
+
+.spinner {
+ position: relative;
+}
+
+.spinner::before {
+ content: "";
+ position: absolute;
+ left: 0px;
+ top: 0px;
+ animation-delay: -0.1s;
+}
+
+.spinner::after {
+ content: "";
+ position: absolute;
+ top: 0px;
+ left: 0px;
+ animation-delay: 0.1s;
+}
+
+#transition {
+ transition: 0.5s ease-in-out;
+ position: fixed;
+ top: 0;
+ left: 0;
+ bottom: 0;
+ right: 0;
+ color: white;
+ background: rgba(0, 0, 0, 0.5);
+ z-index: 1;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ flex-direction: column;
+}
+
+#welcome {
+ transition: 0.5s ease-in-out;
+ position: fixed;
+ top: 0;
+ left: 0;
+ bottom: 0;
+ right: 0;
+ color: white;
+ background: rgba(0, 0, 0, 0.5);
+ z-index: 1;
+ opacity: 0;
+ display: none;
+ align-items: center;
+ justify-content: center;
+ flex-direction: column;
+}
+
+.fadeup {
+ animation: fadeInUp 0.25s ease;
+}
+
+.fadedown {
+ opacity: 0;
+ animation: fadeOutDown 0.25s ease;
+}
+
+.green {
+ background-color: var(--green);
+}
+
+.blue {
+ background-color: var(--blue);
+}
+
+.indigo {
+ background-color: var(--indigo);
+}
+
+.purple {
+ background-color: var(--purple);
+}
+
+.pink {
+ background-color: var(--pink);
+}
+
+.red {
+ background-color: var(--red);
+}
+
+.orange {
+ background-color: var(--orange);
+}
+
+.yellow {
+ background-color: var(--yellow);
+}
+
+.teal {
+ background-color: var(--teal);
+}
+
+.cyan {
+ background-color: var(--cyan);
+}
+
+.white {
+ background-color: var(--white);
+}
+
+.gray {
+ background-color: var(--gray);
+}
+
+.gray-dark {
+ background-color: var(--gray-dark);
+}
+
+.primary {
+ background-color: var(--primary);
+}
+
+.secondary {
+ background-color: var(--secondary);
+}
+
+.success {
+ background-color: var(--success);
+}
+
+.info {
+ background-color: var(--info);
+}
+
+.warning {
+ background-color: var(--warning);
+}
+
+.danger {
+ background-color: var(--danger);
+}
+
+.light {
+ background-color: var(--light);
+}
+
+.dark {
+ background-color: var(--dark);
+}
+
+@keyframes fadeInUp {
+ 0% {
+ opacity: 0;
+ -webkit-transform: translate3d(0, 100%, 0);
+ transform: translate3d(0, 100%, 0)
+ }
+
+ to {
+ opacity: 1;
+ -webkit-transform: none;
+ transform: none
+ }
+}
+
+@keyframes fadeOutDown {
+ 0% {
+ opacity: 1
+ }
+
+ to {
+ opacity: 0;
+ -webkit-transform: translate3d(0, 100%, 0);
+ transform: translate3d(0, 100%, 0)
+ }
+}
+
+@keyframes spinner {
+ 0% {
+ box-shadow: -60px 10px 0 rgba(255, 255, 255, 0);
+ width: 20px;
+ }
+
+ 25% {
+ box-shadow: 20px 10px 0 rgba(255, 255, 255, 1);
+ width: 10px;
+ }
+
+ 50% {
+ box-shadow: 60px 10px 0 rgba(255, 255, 255, 0);
+ width: 10px;
+ }
+}
\ No newline at end of file
diff --git a/public/static/css/main-nVhE2N.css b/public/static/css/main-nVhE2N.css
new file mode 100644
index 0000000..19c42c4
--- /dev/null
+++ b/public/static/css/main-nVhE2N.css
@@ -0,0 +1,601 @@
+:root {
+ --blue: #039be5;
+ --indigo: #6610f2;
+ --purple: #ba68c8;
+ --pink: #e83e8c;
+ --red: #e3342f;
+ --orange: #fd7e14;
+ --yellow: #ffb300;
+ --green: #00b857;
+ --teal: #20c997;
+ --cyan: #17a2b8;
+ --white: #fff;
+ --gray: #6c757d;
+ --gray-dark: #343a40;
+ --primary: #039be5;
+ --secondary: #6c757d;
+ --success: #00b857;
+ --info: #ba68c8;
+ --warning: #ffb300;
+ --danger: #e3342f;
+ --light: #f8f9fa;
+ --dark: #343a40;
+ --breakpoint-xs: 0;
+ --breakpoint-sm: 576px;
+ --breakpoint-md: 768px;
+ --breakpoint-lg: 992px;
+ --breakpoint-xl: 1200px;
+ --font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
+ --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
+}
+
+canvas {
+ background: #FFF;
+ width: auto;
+ height: 100%;
+}
+
+p {
+ color: #FFF;
+ margin: 0;
+}
+
+body {
+ margin: 0;
+ padding: 0;
+ font-family: Arial, sans-serif;
+ background-color: #FFC0CB;
+}
+
+.top-bar {
+ background-color: #f78397;
+ color: #fff;
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
+ z-index: 9999999999999;
+}
+
+.logo img {
+ max-width: auto;
+ height: 45px;
+ padding: 5px;
+}
+
+.menu ul {
+ list-style-type: none;
+ margin: 0;
+ margin-right: 20px;
+ padding: 0;
+ display: flex;
+}
+
+.menu li {
+ padding: 10px;
+}
+
+.menu a {
+ text-decoration: none;
+ color: #fff;
+}
+
+.canvasWrapper {
+ position: relative;
+ z-index: 0;
+ width: 100%;
+ height: calc(100vh - 65px);
+ pointer-events: auto;
+ overflow: hidden;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+}
+
+.canvasContainer {
+ position: absolute;
+}
+
+.canvas-main {
+ transition: opacity 0.5s ease-in, transform.translate 0.5s ease-in;
+ opacity: 0;
+ visibility: hidden;
+ z-index: 1;
+ pointer-events: auto;
+ image-rendering: pixelated;
+}
+
+.pan-buttons {
+ transition: 0.25s ease-in;
+ opacity: 0;
+ position: absolute;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 100%;
+ z-index: 2;
+ display: flex;
+ justify-content: center;
+}
+
+.content-wrapper {
+ position: relative;
+ width: 100%;
+ height: 100%;
+ pointer-events: auto;
+}
+
+.pan-buttons .top {
+ position: absolute;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 10%;
+ z-index: 2;
+ display: flex;
+ justify-content: center;
+}
+
+.pan-buttons .top .up {
+ height: 10vh;
+ width: 25%;
+ margin: 10px auto;
+ opacity: 25%;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ border-radius: 5px;
+}
+
+.pan-buttons .top .up:hover {
+ opacity: 50%;
+ cursor: pointer;
+}
+
+.pan-buttons .middle {
+ position: absolute;
+ top: 50%;
+ left: 0;
+ height: 100%;
+ width: 100%;
+ z-index: 2;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ transform: translateY(-50%);
+}
+
+.pan-buttons .middle .right {
+ height: 35vh;
+ width: 12.5vh;
+ margin-right: 10px;
+ margin-left: auto;
+ opacity: 25%;
+ margin: 10px;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ border-radius: 5px;
+}
+
+.pan-buttons .middle .right:hover {
+ opacity: 50%;
+ cursor: pointer;
+}
+
+.pan-buttons .middle .left {
+ height: 35vh;
+ width: 12.5vh;
+ margin-right: auto;
+ margin-left: 10px;
+ opacity: 25%;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ border-radius: 5px;
+}
+
+.pan-buttons .middle .left:hover {
+ opacity: 50%;
+ cursor: pointer;
+}
+
+.pan-buttons .base {
+ position: absolute;
+ bottom: 0;
+ left: 0;
+ width: 100%;
+ height: 15%;
+ z-index: 2;
+ display: flex;
+ justify-content: center;
+}
+
+.pan-buttons .base .down {
+ height: 10vh;
+ width: 25%;
+ margin: 25px auto;
+ opacity: 25%;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ border-radius: 5px;
+}
+
+.pan-buttons .base .down:hover {
+ opacity: 50%;
+ cursor: pointer;
+}
+
+.pan-buttons button {
+ pointer-events: auto;
+}
+
+.pan-buttons {
+ pointer-events: none;
+}
+
+.buttonTog {
+ position: absolute;
+ top: 10px;
+ left: 10px;
+ height: 50px;
+ width: 50px;
+ opacity: 25%;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ border-radius: 5px;
+ pointer-events: auto;
+ z-index: 1;
+}
+
+.resetView {
+ position: absolute;
+ top: 10px;
+ left: 70px;
+ height: 50px;
+ width: 50px;
+ opacity: 25%;
+ background: #000;
+ color: #FFF;
+ border: 0px;
+ border-radius: 5px;
+ pointer-events: auto;
+ z-index: 1;
+}
+
+.buttonTog:hover {
+ opacity: 50%;
+ cursor: pointer;
+}
+
+.resetView:hover {
+ opacity: 50%;
+ cursor: pointer;
+}
+
+.dropdown-content {
+ display: none;
+ position: absolute;
+ background-color: #f9f9f9;
+ min-width: 160px;
+ z-index: 1000;
+}
+
+.dropdown:hover .dropdown-content {
+ display: block;
+}
+
+.dropdown-content {
+ top: 45px;
+ right: 1%;
+ max-height: 200px;
+ width: 15%;
+ overflow-y: auto;
+ background-color: #de7688;
+ padding: 10px;
+ box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
+ animation: fadeInUp 0.15s ease;
+}
+
+.coordinates {
+ position: absolute;
+ left: 10px;
+ bottom: 10px;
+ display: flex;
+ flex-direction: row;
+ opacity: 25%;
+ background: #000;
+ border-radius: 3px;
+ padding: 5px;
+ z-index: 500;
+}
+
+.clients {
+ transition: 0.5s ease-in;
+ position: absolute;
+ left: 10px;
+ bottom: 45px;
+ display: flex;
+ flex-direction: row;
+ opacity: 0;
+ background: #000;
+ border-radius: 3px;
+ padding: 5px;
+ z-index: 500;
+}
+
+.collavas {
+ position: absolute;
+ right: 10px;
+ bottom: 10px;
+ display: flex;
+ flex-direction: row;
+ opacity: 25%;
+ background: #000;
+ border-radius: 3px;
+ padding: 5px;
+ z-index: 500;
+}
+
+.client-version {
+ transition: 0.5s ease-in;
+ position: absolute;
+ right: 10px;
+ bottom: 45px;
+ display: flex;
+ flex-direction: row;
+ opacity: 0;
+ background: #000;
+ border-radius: 3px;
+ padding: 5px;
+ z-index: 500;
+}
+
+.ping {
+ transition: 0.5s ease-in;
+ position: absolute;
+ right: 10px;
+ bottom: 80px;
+ display: flex;
+ flex-direction: row;
+ opacity: 0;
+ background: #000;
+ border-radius: 3px;
+ padding: 5px;
+ z-index: 500;
+}
+
+.coordinates p {
+ display: flex;
+ flex-direction: row;
+ margin-left: 5px;
+}
+
+.messages {
+ display: flex;
+ justify-content: center;
+ position: absolute;
+ left: 50%;
+ right: 50%;
+ top: 0px;
+ z-index: 99999999999999999999;
+}
+
+.message {
+ display: flex;
+ justify-content: center;
+ margin-top: 40px;
+ width: auto;
+ min-width: 250px;
+ max-width: 750px;
+ margin-left: 20px;
+}
+
+#welcome>.message {
+ display: flex;
+ flex-direction: column;
+ text-align: center;
+ width: 1000px;
+ padding: 20px;
+}
+
+.spinner,
+.spinner::before,
+.spinner::after {
+ width: 10px;
+ height: 10px;
+ border-radius: 2px;
+ box-shadow: -60px 10px 0 rgba(255, 255, 255, 0);
+ animation: spinner 1.0s linear infinite;
+}
+
+.spinner {
+ position: relative;
+}
+
+.spinner::before {
+ content: "";
+ position: absolute;
+ left: 0px;
+ top: 0px;
+ animation-delay: -0.1s;
+}
+
+.spinner::after {
+ content: "";
+ position: absolute;
+ top: 0px;
+ left: 0px;
+ animation-delay: 0.1s;
+}
+
+#transition {
+ transition: 0.5s ease-in-out;
+ position: fixed;
+ top: 0;
+ left: 0;
+ bottom: 0;
+ right: 0;
+ color: white;
+ background: rgba(0, 0, 0, 0.5);
+ z-index: 1;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ flex-direction: column;
+}
+
+#welcome {
+ transition: 0.5s ease-in-out;
+ position: fixed;
+ top: 0;
+ left: 0;
+ bottom: 0;
+ right: 0;
+ color: white;
+ background: rgba(0, 0, 0, 0.5);
+ z-index: 1;
+ opacity: 0;
+ display: none;
+ align-items: center;
+ justify-content: center;
+ flex-direction: column;
+}
+
+.fadeup {
+ animation: fadeInUp 0.25s ease;
+}
+
+.fadedown {
+ opacity: 0;
+ animation: fadeOutDown 0.25s ease;
+}
+
+.green {
+ background-color: var(--green);
+}
+
+.blue {
+ background-color: var(--blue);
+}
+
+.indigo {
+ background-color: var(--indigo);
+}
+
+.purple {
+ background-color: var(--purple);
+}
+
+.pink {
+ background-color: var(--pink);
+}
+
+.red {
+ background-color: var(--red);
+}
+
+.orange {
+ background-color: var(--orange);
+}
+
+.yellow {
+ background-color: var(--yellow);
+}
+
+.teal {
+ background-color: var(--teal);
+}
+
+.cyan {
+ background-color: var(--cyan);
+}
+
+.white {
+ background-color: var(--white);
+}
+
+.gray {
+ background-color: var(--gray);
+}
+
+.gray-dark {
+ background-color: var(--gray-dark);
+}
+
+.primary {
+ background-color: var(--primary);
+}
+
+.secondary {
+ background-color: var(--secondary);
+}
+
+.success {
+ background-color: var(--success);
+}
+
+.info {
+ background-color: var(--info);
+}
+
+.warning {
+ background-color: var(--warning);
+}
+
+.danger {
+ background-color: var(--danger);
+}
+
+.light {
+ background-color: var(--light);
+}
+
+.dark {
+ background-color: var(--dark);
+}
+
+@keyframes fadeInUp {
+ 0% {
+ opacity: 0;
+ -webkit-transform: translate3d(0, 100%, 0);
+ transform: translate3d(0, 100%, 0)
+ }
+
+ to {
+ opacity: 1;
+ -webkit-transform: none;
+ transform: none
+ }
+}
+
+@keyframes fadeOutDown {
+ 0% {
+ opacity: 1
+ }
+
+ to {
+ opacity: 0;
+ -webkit-transform: translate3d(0, 100%, 0);
+ transform: translate3d(0, 100%, 0)
+ }
+}
+
+@keyframes spinner {
+ 0% {
+ box-shadow: -60px 10px 0 rgba(255, 255, 255, 0);
+ width: 20px;
+ }
+
+ 25% {
+ box-shadow: 20px 10px 0 rgba(255, 255, 255, 1);
+ width: 10px;
+ }
+
+ 50% {
+ box-shadow: 60px 10px 0 rgba(255, 255, 255, 0);
+ width: 10px;
+ }
+}
\ No newline at end of file
diff --git a/public/static/img/Untitled-1.png b/public/static/img/Untitled-1.png
new file mode 100644
index 0000000..a800172
Binary files /dev/null and b/public/static/img/Untitled-1.png differ
diff --git a/public/static/img/assets/logo.png b/public/static/img/assets/logo.png
new file mode 100644
index 0000000..c7ca2c0
Binary files /dev/null and b/public/static/img/assets/logo.png differ
diff --git a/public/static/img/logo-big.png b/public/static/img/logo-big.png
new file mode 100644
index 0000000..c7ca2c0
Binary files /dev/null and b/public/static/img/logo-big.png differ
diff --git a/public/static/img/logo.png b/public/static/img/logo.png
new file mode 100644
index 0000000..020c825
Binary files /dev/null and b/public/static/img/logo.png differ
diff --git a/public/static/img/logo1.png b/public/static/img/logo1.png
new file mode 100644
index 0000000..e1891a0
Binary files /dev/null and b/public/static/img/logo1.png differ
diff --git a/public/static/js/app-UujD4m.js b/public/static/js/app-UujD4m.js
new file mode 100644
index 0000000..df0ef77
--- /dev/null
+++ b/public/static/js/app-UujD4m.js
@@ -0,0 +1,53 @@
+document.addEventListener("DOMContentLoaded", () => {
+ const canvas = document.getElementById("canvas");
+ const ctx = canvas.getContext("2d");
+ const socket = new WebSocket("ws://10.0.0.132:7777"); // Change the server address
+
+ let drawing = false;
+
+ canvas.addEventListener("mousedown", startDrawing);
+ canvas.addEventListener("mouseup", stopDrawing);
+ canvas.addEventListener("mousemove", draw);
+
+ function startDrawing(e) {
+ drawing = true;
+ draw(e);
+ }
+
+ function stopDrawing() {
+ drawing = false;
+ ctx.beginPath();
+ sendDrawingData();
+ }
+
+ function draw(e) {
+ if (!drawing) return;
+
+ ctx.lineWidth = 2;
+ ctx.lineCap = "round";
+ ctx.strokeStyle = "#000";
+
+ ctx.lineTo(e.clientX - canvas.offsetLeft, e.clientY - canvas.offsetTop);
+ ctx.stroke();
+ ctx.beginPath();
+ ctx.moveTo(e.clientX - canvas.offsetLeft, e.clientY - canvas.offsetTop);
+
+ sendDrawingData();
+ }
+
+ function sendDrawingData() {
+ const imageData = canvas.toDataURL("image/png");
+ socket.send(JSON.stringify({ type: "draw", data: imageData }));
+ }
+
+ socket.addEventListener("message", (event) => {
+ const data = JSON.parse(event.data);
+ if (data.type === "draw") {
+ const image = new Image();
+ image.onload = function () {
+ ctx.drawImage(image, 0, 0);
+ };
+ image.src = data.data;
+ }
+ });
+});
diff --git a/public/static/js/app-nVhE2N.js b/public/static/js/app-nVhE2N.js
new file mode 100644
index 0000000..df0ef77
--- /dev/null
+++ b/public/static/js/app-nVhE2N.js
@@ -0,0 +1,53 @@
+document.addEventListener("DOMContentLoaded", () => {
+ const canvas = document.getElementById("canvas");
+ const ctx = canvas.getContext("2d");
+ const socket = new WebSocket("ws://10.0.0.132:7777"); // Change the server address
+
+ let drawing = false;
+
+ canvas.addEventListener("mousedown", startDrawing);
+ canvas.addEventListener("mouseup", stopDrawing);
+ canvas.addEventListener("mousemove", draw);
+
+ function startDrawing(e) {
+ drawing = true;
+ draw(e);
+ }
+
+ function stopDrawing() {
+ drawing = false;
+ ctx.beginPath();
+ sendDrawingData();
+ }
+
+ function draw(e) {
+ if (!drawing) return;
+
+ ctx.lineWidth = 2;
+ ctx.lineCap = "round";
+ ctx.strokeStyle = "#000";
+
+ ctx.lineTo(e.clientX - canvas.offsetLeft, e.clientY - canvas.offsetTop);
+ ctx.stroke();
+ ctx.beginPath();
+ ctx.moveTo(e.clientX - canvas.offsetLeft, e.clientY - canvas.offsetTop);
+
+ sendDrawingData();
+ }
+
+ function sendDrawingData() {
+ const imageData = canvas.toDataURL("image/png");
+ socket.send(JSON.stringify({ type: "draw", data: imageData }));
+ }
+
+ socket.addEventListener("message", (event) => {
+ const data = JSON.parse(event.data);
+ if (data.type === "draw") {
+ const image = new Image();
+ image.onload = function () {
+ ctx.drawImage(image, 0, 0);
+ };
+ image.src = data.data;
+ }
+ });
+});
diff --git a/public/static/js/main-96wMDN.js b/public/static/js/main-96wMDN.js
new file mode 100644
index 0000000..5851cc3
--- /dev/null
+++ b/public/static/js/main-96wMDN.js
@@ -0,0 +1 @@
+const _0x4a2fee=_0x1229;(function(_0x123ba9,_0xa960f7){const _0xd79cf7=_0x1229,_0x532974=_0x123ba9();while(!![]){try{const _0x5ad226=-parseInt(_0xd79cf7(0x1b4))/(0x4be*0x2+0x26b0+-0x1*0x302b)+-parseInt(_0xd79cf7(0x27e))/(0x5e4+-0x1034+0xa52)+-parseInt(_0xd79cf7(0x125))/(0x1718+0xf*0x6f+-0x1d96)+-parseInt(_0xd79cf7(0x16e))/(-0x129*-0x5+-0x15*-0x34+-0xa0d)*(-parseInt(_0xd79cf7(0x1ff))/(-0x25dd+0x1df7+0x1*0x7eb))+parseInt(_0xd79cf7(0x1cc))/(-0x3b*-0x59+-0x1*-0x304+-0x1781*0x1)+-parseInt(_0xd79cf7(0x235))/(-0x3*-0xce2+-0x1*0x1c57+-0x4*0x292)*(parseInt(_0xd79cf7(0x250))/(0x1c+0xe62+-0xe76))+parseInt(_0xd79cf7(0x228))/(-0x2521+0x16e7+0xe43)*(parseInt(_0xd79cf7(0x1d4))/(-0x31*0x87+0x1f51+0x2*-0x2b8));if(_0x5ad226===_0xa960f7)break;else _0x532974['push'](_0x532974['shift']());}catch(_0x2827d4){_0x532974['push'](_0x532974['shift']());}}}(_0x37a6,0xa3c48+-0x672c8+0x9341a));const socket=io({'timeout':0x1f4}),canvas=document[_0x4a2fee(0x1a3)+_0x4a2fee(0x1b5)](_0x4a2fee(0x1b2)+_0x4a2fee(0x1f4)),canvasContainer=document[_0x4a2fee(0x1a3)+_0x4a2fee(0x1b5)](_0x4a2fee(0x21c)+_0x4a2fee(0x10c)),buttons=document[_0x4a2fee(0x1a3)+_0x4a2fee(0x1b5)](_0x4a2fee(0x1a7)),tx=document[_0x4a2fee(0x1a3)+_0x4a2fee(0x1b5)]('x'),ty=document[_0x4a2fee(0x1a3)+_0x4a2fee(0x1b5)]('y'),context=canvas[_0x4a2fee(0x1f6)]('2d'),chat=document[_0x4a2fee(0x25f)+_0x4a2fee(0x145)](_0x4a2fee(0x1e4)+_0x4a2fee(0x10c)),nameinput=document[_0x4a2fee(0x1a3)+_0x4a2fee(0x1b5)](_0x4a2fee(0x17c)),drawingEmitDelay=-0x295+-0x22*0x11b+0x2a1f;let lastDrawingEmitTime=0x8dd*-0x2+-0xc15+0x1*0x1dcf,drawings=[],announcementIDs=[],currentDrawing=[],isDrawing=![],uiVisible=!![],currentColor=_0x4a2fee(0x18e),announceCount=0x1a38+-0x17fb+-0x23c,connectionTimer=null,connectionSeconds=-0x1591+0x18ad+-0x31c,versionSet=![],ping=null,uuid='';context[_0x4a2fee(0x122)+_0x4a2fee(0x257)+'d']=!![],canvasContainer[_0x4a2fee(0x1e8)][_0x4a2fee(0x10d)]=_0x4a2fee(0x200)+')';function getCookie(_0x54774a){const _0x18c415=_0x4a2fee,_0xddc675={'ylPDb':function(_0xcc003f,_0x5d4907){return _0xcc003f===_0x5d4907;}},_0x53b042=document[_0x18c415(0x24a)][_0x18c415(0x276)](';')[_0x18c415(0x199)](_0x2450b0=>_0x2450b0[_0x18c415(0x1dc)]());for(const _0x390815 of _0x53b042){const [_0x28bbb4,_0x53fe99]=_0x390815[_0x18c415(0x276)]('=')[_0x18c415(0x199)](_0x2475af=>decodeURIComponent(_0x2475af));if(_0xddc675[_0x18c415(0x150)](_0x28bbb4,_0x54774a))return _0x53fe99;}return null;}function setCookie(_0xcac3fd,_0x1ef456,_0x239f02){const _0x351deb=_0x4a2fee,_0x19a965={'RrVEf':function(_0x37b694,_0xa41293){return _0x37b694+_0xa41293;},'KGXWL':function(_0x58e785,_0x126568){return _0x58e785+_0x126568;},'mIjog':function(_0x3e237c,_0x3f97c6){return _0x3e237c(_0x3f97c6);}},_0x4fd21e=new Date();_0x4fd21e[_0x351deb(0x24d)](_0x19a965[_0x351deb(0x14a)](_0x4fd21e[_0x351deb(0x1f1)](),_0x239f02));const _0x28b739=_0x19a965[_0x351deb(0x170)](_0x19a965[_0x351deb(0x135)](encodeURIComponent,_0x1ef456),_0x239f02?_0x351deb(0x143)+_0x4fd21e[_0x351deb(0x182)+'g']():'');document[_0x351deb(0x24a)]=_0xcac3fd+'='+_0x28b739+_0x351deb(0x23f);}function pinger(){const _0x26e25f=_0x4a2fee,_0x572823={'UksCe':function(_0x32693d,_0x4dfb5c){return _0x32693d-_0x4dfb5c;},'kRzbC':function(_0xffca32,_0x317b15){return _0xffca32+_0x317b15;},'gCKot':function(_0x3d48ee,_0x1c5e79){return _0x3d48ee+_0x1c5e79;},'mXacA':_0x26e25f(0x1fb),'llfhi':_0x26e25f(0x1c8),'DGDrD':_0x26e25f(0x175)},_0x4680bd=Date[_0x26e25f(0x1e2)](),_0x58b027=document[_0x26e25f(0x1a3)+_0x26e25f(0x1b5)](_0x572823[_0x26e25f(0x1ae)])[_0x26e25f(0x25f)+_0x26e25f(0x145)]('p');socket['on'](_0x572823[_0x26e25f(0x1be)],()=>{const _0x17db05=_0x26e25f,_0x236d1f=_0x572823[_0x17db05(0x163)](Date[_0x17db05(0x1e2)](),_0x4680bd);_0x58b027[_0x17db05(0x272)+'t']=_0x572823[_0x17db05(0x17b)](_0x572823[_0x17db05(0x11d)](_0x572823[_0x17db05(0x27a)],_0x236d1f),'ms'),document[_0x17db05(0x1a3)+_0x17db05(0x1b5)](_0x572823[_0x17db05(0x1ae)])[_0x17db05(0x1e8)][_0x17db05(0x1ad)]=-0xbe*0x13+-0x3*-0x48b+-0x1*-0x79+0.25;}),socket[_0x26e25f(0x211)](_0x572823[_0x26e25f(0x1ae)]);}ping=setInterval(pinger,0x5e6+-0x61*0x4f+-0x137*-0x17);function startConnectionTimer(){const _0x28e57e=_0x4a2fee,_0x231802={'AEakE':_0x28e57e(0x10b),'XLhFM':function(_0x2ff54d,_0x442e79){return _0x2ff54d+_0x442e79;},'xMFLc':_0x28e57e(0x17e)+_0x28e57e(0x12f)+_0x28e57e(0x245),'EFfVz':_0x28e57e(0x1cb),'cuXyx':function(_0x192a5e,_0x5f17d1){return _0x192a5e>_0x5f17d1;},'KgdWe':_0x28e57e(0x1a4)+_0x28e57e(0x1a1),'Ccvce':function(_0x3b5897,_0x4e3e43){return _0x3b5897(_0x4e3e43);},'PUXnD':_0x28e57e(0x194),'ThfMy':_0x28e57e(0x17d),'BjQZL':_0x28e57e(0x212)+_0x28e57e(0x20f),'HAIRN':_0x28e57e(0x13c),'MdJme':_0x28e57e(0x256)+_0x28e57e(0x271)+_0x28e57e(0x1d8),'aaZsi':_0x28e57e(0x1c5),'qUHvv':_0x28e57e(0x1e8),'ncSOu':_0x28e57e(0x16c)+_0x28e57e(0x21e)+_0x28e57e(0x16d)+_0x28e57e(0x240)+_0x28e57e(0x191),'ReNol':function(_0x3ba502,_0x1bd207){return _0x3ba502+_0x1bd207;},'cRztF':_0x28e57e(0x274),'YxNZd':function(_0x4dc570){return _0x4dc570();},'GslOP':function(_0x4c8333,_0x233dcf,_0x3141b8){return _0x4c8333(_0x233dcf,_0x3141b8);}},_0x28e95c=document[_0x28e57e(0x25f)+_0x28e57e(0x145)](_0x231802[_0x28e57e(0x115)]);if(_0x231802[_0x28e57e(0x1cf)](_0x28e95c[_0x28e57e(0x25f)+_0x28e57e(0x15e)](_0x231802[_0x28e57e(0x1ee)])[_0x28e57e(0x241)],-0x965+0x43e+0x527))return;_0x231802[_0x28e57e(0x19d)](clearInterval,ping);const _0x9e5952=document[_0x28e57e(0x1c9)+_0x28e57e(0x24c)](_0x231802[_0x28e57e(0x128)]);_0x9e5952[_0x28e57e(0x1e7)+'te'](_0x231802[_0x28e57e(0x132)],_0x231802[_0x28e57e(0x169)]),_0x9e5952[_0x28e57e(0x1e7)+'te']('id',_0x231802[_0x28e57e(0x124)]),_0x9e5952[_0x28e57e(0x1e8)][_0x28e57e(0x140)]=_0x231802[_0x28e57e(0x244)],_0x9e5952[_0x28e57e(0x1e8)][_0x28e57e(0x226)]=_0x231802[_0x28e57e(0x110)];const _0x5c2ed2=document[_0x28e57e(0x1c9)+_0x28e57e(0x24c)]('p');_0x5c2ed2[_0x28e57e(0x1e7)+'te']('id',_0x231802[_0x28e57e(0x268)]),_0x5c2ed2[_0x28e57e(0x1e7)+'te'](_0x231802[_0x28e57e(0x202)],_0x231802[_0x28e57e(0x246)]),_0x5c2ed2[_0x28e57e(0x272)+'t']=_0x231802[_0x28e57e(0x146)](_0x231802[_0x28e57e(0x24e)],connectionSeconds[_0x28e57e(0x239)](-0x1*-0x1726+0xd48+-0x246d)),_0x9e5952[_0x28e57e(0x243)+'d'](_0x5c2ed2),_0x28e95c[_0x28e57e(0x243)+'d'](_0x9e5952),canvas[_0x28e57e(0x1e8)][_0x28e57e(0x1ad)]=-0x104a+-0x2*-0x11c9+-0x4*0x4d2,buttons[_0x28e57e(0x1e8)][_0x28e57e(0x1ad)]=0x134d+0xbb9*0x1+-0x16*0x169,canvas[_0x28e57e(0x1aa)][_0x28e57e(0x165)](_0x231802[_0x28e57e(0x1a6)]),drawings=[],currentDrawing=[],_0x231802[_0x28e57e(0x168)](draw),connectionTimer=_0x231802[_0x28e57e(0x1c6)](setInterval,()=>{const _0xe66b26=_0x28e57e;connectionSeconds+=-0x3*0x88d+-0x26e1+0x4088+0.1,document[_0xe66b26(0x1a3)+_0xe66b26(0x1b5)](_0x231802[_0xe66b26(0x268)])[_0xe66b26(0x272)+'t']=_0x231802[_0xe66b26(0x269)](_0x231802[_0xe66b26(0x24e)],connectionSeconds[_0xe66b26(0x239)](0x5*0xa2+-0x2413+0x20ea*0x1));},-0x205d+0x2*-0xef2+0x3ea5);}function stopConnectionTimer(){const _0x520502=_0x4a2fee,_0x35bcf1={'cfJMu':_0x520502(0x21a),'DUsUf':_0x520502(0x274),'wbZNo':function(_0x3457dd,_0x43c392,_0x38f1cb){return _0x3457dd(_0x43c392,_0x38f1cb);},'JlTtH':function(_0x3c3dba,_0x579a66){return _0x3c3dba(_0x579a66);},'dYrwt':function(_0x4f8125,_0x1f4601,_0x5a4d77){return _0x4f8125(_0x1f4601,_0x5a4d77);},'YhreQ':_0x520502(0x1cb),'XIrzF':_0x520502(0x1a4)+_0x520502(0x1a1),'BfABZ':_0x520502(0x194),'YfFlu':_0x520502(0x17d),'XbnMi':_0x520502(0x212)+_0x520502(0x190),'veGRl':_0x520502(0x21f),'wyley':_0x520502(0x256)+_0x520502(0x271)+_0x520502(0x1d8),'VJlSn':_0x520502(0x1e8),'foDSY':_0x520502(0x103)+_0x520502(0x107),'CeXuv':_0x520502(0x10b),'icGfP':_0x520502(0x16c)+_0x520502(0x21e)+_0x520502(0x16d)+_0x520502(0x240)+_0x520502(0x191),'DoQCA':_0x520502(0x16b)+_0x520502(0x1eb)+_0x520502(0x12e)+_0x520502(0x260)};_0x35bcf1[_0x520502(0x1de)](clearInterval,connectionTimer),ping=_0x35bcf1[_0x520502(0xff)](setInterval,pinger,-0x22ed*0x1+-0x4*-0x2cf+0x1b99),connectionSeconds=0x1781+-0x68d+-0x10f4;const _0x3249ed=document[_0x520502(0x25f)+_0x520502(0x145)](_0x35bcf1[_0x520502(0x261)]);_0x3249ed[_0x520502(0x25f)+_0x520502(0x15e)](_0x35bcf1[_0x520502(0x1ba)])[_0x520502(0x13a)](_0x3c9a35=>{const _0x51c705=_0x520502;_0x3c9a35[_0x51c705(0x1aa)][_0x51c705(0x278)](_0x35bcf1[_0x51c705(0x196)]),_0x3c9a35[_0x51c705(0x1aa)][_0x51c705(0x165)](_0x35bcf1[_0x51c705(0x206)]),_0x35bcf1[_0x51c705(0x207)](setTimeout,()=>{const _0x394069=_0x51c705;_0x3c9a35[_0x394069(0x278)]();},0x1*0x5a4+0x7*-0x2ab+-0xefd*-0x1);});const _0x48d7b9=document[_0x520502(0x1c9)+_0x520502(0x24c)](_0x35bcf1[_0x520502(0x1e1)]);_0x48d7b9[_0x520502(0x1e7)+'te'](_0x35bcf1[_0x520502(0x18f)],_0x35bcf1[_0x520502(0x20e)]),_0x48d7b9[_0x520502(0x1e7)+'te']('id',_0x35bcf1[_0x520502(0x119)]),_0x48d7b9[_0x520502(0x1e8)][_0x520502(0x140)]=_0x35bcf1[_0x520502(0x1db)],_0x48d7b9[_0x520502(0x1e7)+'te'](_0x35bcf1[_0x520502(0x141)],_0x35bcf1[_0x520502(0x225)]);const _0x26ae13=document[_0x520502(0x1c9)+_0x520502(0x24c)]('p');_0x26ae13[_0x520502(0x1e7)+'te']('id',_0x35bcf1[_0x520502(0x27d)]),_0x26ae13[_0x520502(0x1e7)+'te'](_0x35bcf1[_0x520502(0x141)],_0x35bcf1[_0x520502(0x10e)]),_0x26ae13[_0x520502(0x272)+'t']=_0x35bcf1[_0x520502(0x1bd)],_0x48d7b9[_0x520502(0x243)+'d'](_0x26ae13),_0x3249ed[_0x520502(0x243)+'d'](_0x48d7b9),canvas[_0x520502(0x1e8)][_0x520502(0x1ad)]=-0x5*0x149+0x1599+-0xf2b,buttons[_0x520502(0x1e8)][_0x520502(0x1ad)]=-0x34c*0x6+-0x2490+0xb45*0x5,canvas[_0x520502(0x1aa)][_0x520502(0x278)](_0x35bcf1[_0x520502(0x206)]),canvas[_0x520502(0x1aa)][_0x520502(0x165)](_0x35bcf1[_0x520502(0x196)]);const _0x326c50=document[_0x520502(0x1a3)+_0x520502(0x1b5)](_0x35bcf1[_0x520502(0x119)]);_0x35bcf1[_0x520502(0xff)](setTimeout,()=>{const _0x4e7b80=_0x520502;_0x326c50[_0x4e7b80(0x1aa)][_0x4e7b80(0x278)](_0x35bcf1[_0x4e7b80(0x196)]),_0x326c50[_0x4e7b80(0x1aa)][_0x4e7b80(0x165)](_0x35bcf1[_0x4e7b80(0x206)]),_0x35bcf1[_0x4e7b80(0x207)](setTimeout,()=>{const _0x3e8343=_0x4e7b80;_0x326c50[_0x3e8343(0x278)]();},-0x9*0x154+-0x2*-0x417+-0x1*-0x5ba);},-0x229b*0x1+-0x2f*0x3+0x2cec);}socket['on'](_0x4a2fee(0x1ef),()=>{const _0x151c3b=_0x4a2fee,_0x112f8a={'OWeDu':function(_0x1bb1e8,_0x57bba9){return _0x1bb1e8!=_0x57bba9;},'gyTwn':function(_0x57a139){return _0x57a139();}};_0x112f8a[_0x151c3b(0x18b)](connectionSeconds,-0x8d8+0x714+0x1c4)&&_0x112f8a[_0x151c3b(0x1ed)](stopConnectionTimer);}),socket['on'](_0x4a2fee(0x19a)+_0x4a2fee(0x26f),()=>{const _0x24c102=_0x4a2fee,_0x41f726={'NLjRX':function(_0xb8ca80){return _0xb8ca80();}};_0x41f726[_0x24c102(0x183)](startConnectionTimer);}),socket['on'](_0x4a2fee(0x1c2)+_0x4a2fee(0x152),()=>{const _0x57b685=_0x4a2fee,_0x2e41a2={'sdSIu':function(_0x18499d){return _0x18499d();}};_0x2e41a2[_0x57b685(0x15c)](startConnectionTimer);});function _0x1229(_0x2f6113,_0x79952a){const _0xae771d=_0x37a6();return _0x1229=function(_0x395301,_0xce8989){_0x395301=_0x395301-(-0x118a+-0x1017+0x1*0x229d);let _0x730988=_0xae771d[_0x395301];return _0x730988;},_0x1229(_0x2f6113,_0x79952a);}function toggleOP(){const _0x45f651=_0x4a2fee,_0x509d76={'NwbTv':_0x45f651(0x237)+_0x45f651(0x116),'sZXTy':_0x45f651(0x254),'pGkDN':_0x45f651(0x1bc),'hVhne':_0x45f651(0x222)+_0x45f651(0x201),'qcKag':_0x45f651(0x221),'ppurz':_0x45f651(0x11b),'koBGP':_0x45f651(0x219),'aOkFl':_0x45f651(0x1c8)},_0x52847d=_0x509d76[_0x45f651(0x1ea)][_0x45f651(0x276)]('|');let _0xf90bb7=-0x1b41+0x2280+0x109*-0x7;while(!![]){switch(_0x52847d[_0xf90bb7++]){case'0':document[_0x45f651(0x1a3)+_0x45f651(0x1b5)](_0x509d76[_0x45f651(0x277)])[_0x45f651(0x1e8)][_0x45f651(0x253)]=uiVisible?'':_0x509d76[_0x45f651(0x1b3)];continue;case'1':uiVisible=!uiVisible;continue;case'2':document[_0x45f651(0x1a3)+_0x45f651(0x1b5)](_0x509d76[_0x45f651(0x1b6)])[_0x45f651(0x1e8)][_0x45f651(0x253)]=uiVisible?'':_0x509d76[_0x45f651(0x1b3)];continue;case'3':document[_0x45f651(0x1a3)+_0x45f651(0x1b5)](_0x509d76[_0x45f651(0x1da)])[_0x45f651(0x1e8)][_0x45f651(0x253)]=uiVisible?'':_0x509d76[_0x45f651(0x1b3)];continue;case'4':chat[_0x45f651(0x1e8)][_0x45f651(0x253)]=uiVisible?_0x509d76[_0x45f651(0x22d)]:_0x509d76[_0x45f651(0x1b3)];continue;case'5':buttons[_0x45f651(0x1e8)][_0x45f651(0x253)]=uiVisible?'':_0x509d76[_0x45f651(0x1b3)];continue;case'6':document[_0x45f651(0x1a3)+_0x45f651(0x1b5)]('xy')[_0x45f651(0x1e8)][_0x45f651(0x253)]=uiVisible?'':_0x509d76[_0x45f651(0x1b3)];continue;case'7':document[_0x45f651(0x1a3)+_0x45f651(0x1b5)](_0x509d76[_0x45f651(0x247)])[_0x45f651(0x1e8)][_0x45f651(0x253)]=uiVisible?'':_0x509d76[_0x45f651(0x1b3)];continue;case'8':document[_0x45f651(0x1a3)+_0x45f651(0x1b5)](_0x509d76[_0x45f651(0x16f)])[_0x45f651(0x1e8)][_0x45f651(0x253)]=uiVisible?'':_0x509d76[_0x45f651(0x1b3)];continue;}break;}}function resetView(){const _0x4ca48f=_0x4a2fee,_0x94c0c9={'YXOML':_0x4ca48f(0x215)},_0x2e1c09=_0x94c0c9[_0x4ca48f(0x19f)][_0x4ca48f(0x276)]('|');let _0x16fa09=-0x14b5+0x1985+-0x4d0;while(!![]){switch(_0x2e1c09[_0x16fa09++]){case'0':offsetY=-0xe*-0x129+0x6e*0x54+0xcb*-0x42;continue;case'1':offsetX=0xb*-0x388+-0x199*0x15+0x4865*0x1;continue;case'2':canvasContainer[_0x4ca48f(0x1e8)][_0x4ca48f(0x10d)]=_0x4ca48f(0x200)+')';continue;case'3':zoomLevel=-0xc8f+0x373+-0x2c*-0x35+0.08;continue;case'4':canvas[_0x4ca48f(0x1e8)][_0x4ca48f(0x10d)]=_0x4ca48f(0x20a)+_0x4ca48f(0x1d5);continue;}break;}}function changeColor(_0xde0e4f){const _0x2b6acc=_0x4a2fee;currentColor=_0xde0e4f[_0x2b6acc(0x227)][_0x2b6acc(0x19b)];}document[_0x4a2fee(0x176)+_0x4a2fee(0x10f)](_0x4a2fee(0x1d3),()=>{isDrawing=![];}),canvas[_0x4a2fee(0x176)+_0x4a2fee(0x10f)](_0x4a2fee(0x266),()=>{isDrawing=![];}),canvas[_0x4a2fee(0x176)+_0x4a2fee(0x10f)](_0x4a2fee(0x181),_0x2ff823=>{const _0x37abc6=_0x4a2fee,_0x1e33af={'jawEc':function(_0x3acd3d,_0x223bd0){return _0x3acd3d(_0x223bd0);}};isDrawing=!![],_0x1e33af[_0x37abc6(0x13b)](addPoint,_0x2ff823);}),canvas[_0x4a2fee(0x176)+_0x4a2fee(0x10f)](_0x4a2fee(0x1d3),()=>{const _0x23bf64=_0x4a2fee,_0x191147={'Excug':function(_0x2cf95b,_0x22c1e5){return _0x2cf95b>_0x22c1e5;},'elzaZ':_0x23bf64(0x213),'rAIqr':function(_0x2c79ae){return _0x2c79ae();},'kCNDP':_0x23bf64(0x264)};isDrawing=![];if(_0x191147[_0x23bf64(0x15b)](currentDrawing[_0x23bf64(0x241)],-0x2*0x3f6+-0x155d+0x1d49)){const _0x293c0e=_0x191147[_0x23bf64(0x22f)][_0x23bf64(0x276)]('|');let _0x3b579a=-0x1196+-0x25ae+0x3744;while(!![]){switch(_0x293c0e[_0x3b579a++]){case'0':drawings[_0x23bf64(0x282)](currentDrawing);continue;case'1':_0x191147[_0x23bf64(0x1fc)](draw);continue;case'2':currentDrawing=[];continue;case'3':lastDrawingEmitTime=Date[_0x23bf64(0x1e2)]();continue;case'4':socket[_0x23bf64(0x211)](_0x191147[_0x23bf64(0x1d2)],{'type':_0x191147[_0x23bf64(0x1d2)],'drawing':currentDrawing,'valid':uuid});continue;}break;}}}),canvas[_0x4a2fee(0x176)+_0x4a2fee(0x10f)](_0x4a2fee(0x10a),_0x16d14=>{const _0x47663e=_0x4a2fee,_0x5207f0={'WhGej':function(_0x531260,_0x503a74){return _0x531260/_0x503a74;},'KLVBK':function(_0x2adc04,_0x223c04){return _0x2adc04*_0x223c04;},'ENqqH':function(_0x45ec25,_0x11d32d){return _0x45ec25-_0x11d32d;},'InDDV':function(_0x1aa476,_0x3d59a9){return _0x1aa476*_0x3d59a9;},'UCnVM':function(_0x239227,_0x5822d3){return _0x239227-_0x5822d3;},'UadAl':function(_0x4ed303,_0x463b63){return _0x4ed303(_0x463b63);},'nfjxd':function(_0x1d9527,_0x28c88f){return _0x1d9527>=_0x28c88f;}},_0x4039a4=canvas[_0x47663e(0x11f)+_0x47663e(0x20b)+'t'](),_0x3e7dde=_0x5207f0[_0x47663e(0x242)](canvas[_0x47663e(0x226)],_0x4039a4[_0x47663e(0x226)]),_0x2dd61a=_0x5207f0[_0x47663e(0x242)](canvas[_0x47663e(0x21b)],_0x4039a4[_0x47663e(0x21b)]),_0x7a1a07=Math[_0x47663e(0x184)](_0x5207f0[_0x47663e(0x189)](_0x5207f0[_0x47663e(0x22b)](_0x16d14[_0x47663e(0x1f9)],_0x4039a4[_0x47663e(0x1fd)]),_0x3e7dde)),_0x3c085a=Math[_0x47663e(0x184)](_0x5207f0[_0x47663e(0x230)](_0x5207f0[_0x47663e(0x1fe)](_0x16d14[_0x47663e(0x17f)],_0x4039a4[_0x47663e(0x25c)]),_0x2dd61a));tx[_0x47663e(0x111)]=_0x7a1a07,ty[_0x47663e(0x111)]=_0x3c085a;if(isDrawing){_0x5207f0[_0x47663e(0x158)](addPoint,_0x16d14);const _0x23e56e=Date[_0x47663e(0x1e2)]();_0x5207f0[_0x47663e(0x1d6)](_0x5207f0[_0x47663e(0x22b)](_0x23e56e,lastDrawingEmitTime),drawingEmitDelay)&&(lastDrawingEmitTime=_0x23e56e);}}),document[_0x4a2fee(0x1a3)+_0x4a2fee(0x1b5)](_0x4a2fee(0x1e5))[_0x4a2fee(0x176)+_0x4a2fee(0x10f)](_0x4a2fee(0x20d),function(_0x48a928){const _0x298790=_0x4a2fee,_0x120207={'dkdXo':function(_0x2d0abd,_0x296d19){return _0x2d0abd==_0x296d19;},'hhjZN':_0x298790(0x153),'UCYHB':_0x298790(0x1e5)};_0x120207[_0x298790(0x1c0)](_0x48a928[_0x298790(0x148)],-0x1*-0x1794+-0x1748*0x1+-0x7*0x9)&&(socket[_0x298790(0x211)](_0x120207[_0x298790(0x1c4)],{'uuid':uuid,'content':document[_0x298790(0x1a3)+_0x298790(0x1b5)](_0x120207[_0x298790(0x133)])[_0x298790(0x19b)]}),document[_0x298790(0x1a3)+_0x298790(0x1b5)](_0x120207[_0x298790(0x133)])[_0x298790(0x19b)]='');}),nameinput[_0x4a2fee(0x176)+_0x4a2fee(0x10f)](_0x4a2fee(0x20d),function(_0x34884c){const _0x53dd24=_0x4a2fee,_0x2fe762={'DJjOn':function(_0x27080e,_0x5ed753){return _0x27080e==_0x5ed753;},'TPlvT':_0x53dd24(0xfd)};_0x2fe762[_0x53dd24(0x1e9)](_0x34884c[_0x53dd24(0x148)],-0x16*-0x4a+-0x1da9+0x356*0x7)&&socket[_0x53dd24(0x211)](_0x2fe762[_0x53dd24(0x19e)],{'uuid':uuid,'name':nameinput[_0x53dd24(0x19b)]});}),document[_0x4a2fee(0x176)+_0x4a2fee(0x10f)](_0x4a2fee(0x20d),function(_0x1a6455){const _0xe24e95=_0x4a2fee,_0x545214={'ylfUx':function(_0x3b01b5,_0x496f8d){return _0x3b01b5===_0x496f8d;},'jiBiz':_0xe24e95(0x131),'PfsoJ':function(_0x26ed25,_0x395825){return _0x26ed25(_0x395825);},'OtCgk':_0xe24e95(0x12c),'OPpbA':_0xe24e95(0x248),'TEAbR':function(_0x4d0455,_0x217391){return _0x4d0455===_0x217391;},'ClOTP':_0xe24e95(0x224),'CcRvi':_0xe24e95(0x1fd),'lZpBW':function(_0x5b06d2,_0x777d62){return _0x5b06d2===_0x777d62;},'Cufuv':_0xe24e95(0x13d),'MDDcU':function(_0x539af1,_0x227ead){return _0x539af1(_0x227ead);},'hyojn':_0xe24e95(0x236)};if(_0x545214[_0xe24e95(0x19c)](_0x1a6455[_0xe24e95(0x154)],_0x545214[_0xe24e95(0x179)]))_0x545214[_0xe24e95(0x223)](pan,'up');else{if(_0x545214[_0xe24e95(0x19c)](_0x1a6455[_0xe24e95(0x154)],_0x545214[_0xe24e95(0x23b)]))_0x545214[_0xe24e95(0x223)](pan,_0x545214[_0xe24e95(0x21d)]);else{if(_0x545214[_0xe24e95(0x100)](_0x1a6455[_0xe24e95(0x154)],_0x545214[_0xe24e95(0x280)]))_0x545214[_0xe24e95(0x223)](pan,_0x545214[_0xe24e95(0x171)]);else _0x545214[_0xe24e95(0x26e)](_0x1a6455[_0xe24e95(0x154)],_0x545214[_0xe24e95(0x14b)])&&_0x545214[_0xe24e95(0x27c)](pan,_0x545214[_0xe24e95(0x270)]);}}});function addPoint(_0x38d873){const _0x2ee932=_0x4a2fee,_0x2c98ca={'TvzEz':function(_0x2319bd,_0x1270d9){return _0x2319bd/_0x1270d9;},'OXfzI':function(_0x333489,_0x394764){return _0x333489/_0x394764;},'YMjFQ':function(_0x1c570f,_0xb4183){return _0x1c570f*_0xb4183;},'VekHj':function(_0x3f17bd,_0x75e641){return _0x3f17bd-_0x75e641;},'lcEZM':function(_0x287796,_0x5c7603){return _0x287796-_0x5c7603;},'yEMxz':function(_0x48fefb){return _0x48fefb();}};if(!isDrawing)return;const _0x13aa36=canvas[_0x2ee932(0x11f)+_0x2ee932(0x20b)+'t'](),_0x22b8d6=_0x2c98ca[_0x2ee932(0x1c1)](canvas[_0x2ee932(0x226)],_0x13aa36[_0x2ee932(0x226)]),_0x42729d=_0x2c98ca[_0x2ee932(0x18a)](canvas[_0x2ee932(0x21b)],_0x13aa36[_0x2ee932(0x21b)]),_0x1144f2=_0x2c98ca[_0x2ee932(0x17a)](_0x2c98ca[_0x2ee932(0x195)](_0x38d873[_0x2ee932(0x1f9)],_0x13aa36[_0x2ee932(0x1fd)]),_0x22b8d6),_0x58e901=_0x2c98ca[_0x2ee932(0x17a)](_0x2c98ca[_0x2ee932(0x1f3)](_0x38d873[_0x2ee932(0x17f)],_0x13aa36[_0x2ee932(0x25c)]),_0x42729d);currentDrawing[_0x2ee932(0x282)]({'x':Math[_0x2ee932(0x184)](_0x1144f2),'y':Math[_0x2ee932(0x184)](_0x58e901),'color':currentColor}),_0x2c98ca[_0x2ee932(0x262)](draw);}function draw(){const _0x1060c9=_0x4a2fee,_0xd064b3={'sHace':function(_0x11492c,_0x3f1d6d){return _0x11492c<_0x3f1d6d;},'rZqMG':function(_0x4515b5,_0x3f197){return _0x4515b5-_0x3f197;},'MWmye':function(_0x5f04eb,_0x28fcec){return _0x5f04eb>_0x28fcec;},'fvHOr':function(_0x6f0216,_0x271475){return _0x6f0216<_0x271475;}};context[_0x1060c9(0x113)](0x3*0x191+0x5d9*-0x2+0x6ff,-0x22c4+0x177+-0x37*-0x9b,canvas[_0x1060c9(0x226)],canvas[_0x1060c9(0x21b)]);for(const _0x22c1f7 of drawings){if(_0xd064b3[_0x1060c9(0x204)](_0x22c1f7[_0x1060c9(0x241)],-0x19f3+-0x1*0x52+0x1a47))continue;for(let _0x5a2da0=0xdba+-0x19d7+0xc1e;_0xd064b3[_0x1060c9(0x204)](_0x5a2da0,_0x22c1f7[_0x1060c9(0x241)]);_0x5a2da0++){const _0x2fe267=_0x22c1f7[_0xd064b3[_0x1060c9(0x13e)](_0x5a2da0,-0x229*0x1+-0x2*0x5a5+-0x23e*-0x6)],_0x4a91c5=_0x22c1f7[_0x5a2da0];context[_0x1060c9(0x234)](),context[_0x1060c9(0x162)+'e']=_0x2fe267[_0x1060c9(0x24b)],context[_0x1060c9(0x1f2)](Math[_0x1060c9(0x184)](_0x2fe267['x']),Math[_0x1060c9(0x184)](_0x2fe267['y'])),context[_0x1060c9(0x273)](Math[_0x1060c9(0x184)](_0x4a91c5['x']),Math[_0x1060c9(0x184)](_0x4a91c5['y'])),context[_0x1060c9(0x249)]();}}context[_0x1060c9(0x249)]();if(_0xd064b3[_0x1060c9(0x1a2)](currentDrawing[_0x1060c9(0x241)],-0x1*-0x1511+-0x48b*0x5+0x1a6)){context[_0x1060c9(0x234)](),context[_0x1060c9(0x162)+'e']=currentColor,context[_0x1060c9(0x1f2)](Math[_0x1060c9(0x184)](currentDrawing[0x24cd+-0x1*0x213d+-0x390]['x']),Math[_0x1060c9(0x184)](currentDrawing[0x1b9e+0x107e+-0x2c1c]['y']));for(let _0x35a636=0xb*0x35+0x15ad+0x17f3*-0x1;_0xd064b3[_0x1060c9(0x210)](_0x35a636,currentDrawing[_0x1060c9(0x241)]);_0x35a636++){const _0x2159a6=currentDrawing[_0x35a636];context[_0x1060c9(0x273)](Math[_0x1060c9(0x184)](_0x2159a6['x']),Math[_0x1060c9(0x184)](_0x2159a6['y']));}context[_0x1060c9(0x249)]();}}socket['on'](_0x4a2fee(0xfd),_0x465a6a=>{const _0x4e5b6c=_0x4a2fee,_0x382f5b={'yVpeG':_0x4e5b6c(0x279),'PTBDy':_0x4e5b6c(0x1bc),'OSKuL':function(_0x1c5ab0,_0x387058,_0x41896a){return _0x1c5ab0(_0x387058,_0x41896a);}};document[_0x4e5b6c(0x1a3)+_0x4e5b6c(0x1b5)](_0x382f5b[_0x4e5b6c(0x157)])[_0x4e5b6c(0x272)+'t']=_0x465a6a[_0x4e5b6c(0x166)][_0x4e5b6c(0x153)],document[_0x4e5b6c(0x1a3)+_0x4e5b6c(0x1b5)](_0x382f5b[_0x4e5b6c(0x157)])[_0x4e5b6c(0x1e8)][_0x4e5b6c(0x253)]='',_0x382f5b[_0x4e5b6c(0x15d)](setTimeout,()=>{const _0x4f54c6=_0x4e5b6c;document[_0x4f54c6(0x1a3)+_0x4f54c6(0x1b5)](_0x382f5b[_0x4f54c6(0x157)])[_0x4f54c6(0x1e8)][_0x4f54c6(0x253)]=_0x382f5b[_0x4f54c6(0x101)];},-0x15*0x12+-0x1*-0x246b+-0xf69);}),socket['on'](_0x4a2fee(0x218),_0x44f035=>{const _0x375eb3=_0x4a2fee,_0x3d5ab6={'wHGCu':function(_0x51a269,_0x393e8e){return _0x51a269+_0x393e8e;},'DshWB':function(_0x382368,_0x1a8e83){return _0x382368+_0x1a8e83;},'NqpsT':function(_0x35bd4f,_0x39f80e){return _0x35bd4f+_0x39f80e;},'sPvXX':_0x375eb3(0x259)+_0x375eb3(0x1f8),'UXFpy':function(_0x879307,_0x38152b){return _0x879307==_0x38152b;},'xlHpz':_0x375eb3(0x153),'qBoZy':function(_0x24cfbb,_0x4148ff){return _0x24cfbb+_0x4148ff;},'NZLna':function(_0x38e2a8,_0x1c44be){return _0x38e2a8+_0x1c44be;},'yPPtZ':function(_0x2c4004,_0x56f6f7){return _0x2c4004+_0x56f6f7;},'BtCYa':_0x375eb3(0x121)+_0x375eb3(0x178)};if(_0x3d5ab6[_0x375eb3(0x156)](_0x44f035[_0x375eb3(0x26b)],_0x3d5ab6[_0x375eb3(0x14e)])){const _0x50b27a=document[_0x375eb3(0x1c9)+_0x375eb3(0x24c)]('li');_0x50b27a[_0x375eb3(0x272)+'t']=_0x3d5ab6[_0x375eb3(0x1c3)](_0x3d5ab6[_0x375eb3(0x16a)](_0x3d5ab6[_0x375eb3(0x214)]('<',_0x44f035[_0x375eb3(0x25a)]),'>\x20'),_0x44f035[_0x375eb3(0x109)]),chat[_0x375eb3(0x25f)+_0x375eb3(0x145)]('ul')[_0x375eb3(0x243)+'d'](_0x50b27a),chat[_0x375eb3(0x25f)+_0x375eb3(0x145)](_0x3d5ab6[_0x375eb3(0x167)])[_0x375eb3(0x25f)+_0x375eb3(0x145)]('ul')[_0x375eb3(0x1ca)]=chat[_0x375eb3(0x25f)+_0x375eb3(0x145)](_0x3d5ab6[_0x375eb3(0x167)])[_0x375eb3(0x25f)+_0x375eb3(0x145)]('ul')[_0x375eb3(0x229)+'ht'];}else{if(_0x3d5ab6[_0x375eb3(0x156)](_0x44f035[_0x375eb3(0x26b)],_0x3d5ab6[_0x375eb3(0x144)])){const _0x42e60c=JSON[_0x375eb3(0x258)](_0x44f035[_0x375eb3(0x198)]);chat[_0x375eb3(0x25f)+_0x375eb3(0x145)]('ul')[_0x375eb3(0x111)]='',_0x42e60c[_0x375eb3(0x13a)](_0x194915=>{const _0x139847=_0x375eb3,_0x3c6e2=document[_0x139847(0x1c9)+_0x139847(0x24c)]('li');_0x3c6e2[_0x139847(0x272)+'t']=_0x3d5ab6[_0x139847(0x104)](_0x3d5ab6[_0x139847(0x1f5)](_0x3d5ab6[_0x139847(0x1f7)]('<',_0x194915[_0x139847(0x25a)]),'>\x20'),_0x194915[_0x139847(0x109)]),chat[_0x139847(0x25f)+_0x139847(0x145)]('ul')[_0x139847(0x243)+'d'](_0x3c6e2),chat[_0x139847(0x25f)+_0x139847(0x145)](_0x3d5ab6[_0x139847(0x167)])[_0x139847(0x25f)+_0x139847(0x145)]('ul')[_0x139847(0x1ca)]=chat[_0x139847(0x25f)+_0x139847(0x145)](_0x3d5ab6[_0x139847(0x167)])[_0x139847(0x25f)+_0x139847(0x145)]('ul')[_0x139847(0x229)+'ht'];});}}}),socket['on'](_0x4a2fee(0x26c),_0x5e84f3=>{const _0x21a201=_0x4a2fee,_0x494207={'kEVvF':_0x21a201(0x254),'AHebG':function(_0x12cc10,_0x1c6b26){return _0x12cc10+_0x1c6b26;},'PYvgQ':function(_0x7a75cb,_0x59cf9c){return _0x7a75cb+_0x59cf9c;},'zfFuN':_0x21a201(0x102)};document[_0x21a201(0x1a3)+_0x21a201(0x1b5)](_0x494207[_0x21a201(0x134)])[_0x21a201(0x25f)+_0x21a201(0x145)]('p')[_0x21a201(0x272)+'t']=_0x494207[_0x21a201(0x106)](_0x494207[_0x21a201(0x193)](_0x494207[_0x21a201(0x25e)],_0x5e84f3[_0x21a201(0x164)]),'MB'),document[_0x21a201(0x1a3)+_0x21a201(0x1b5)](_0x494207[_0x21a201(0x134)])[_0x21a201(0x1e8)][_0x21a201(0x1ad)]=-0x1fc0+0xa68+0x1558+0.25;}),socket['on'](_0x4a2fee(0x20c),_0x2f6bb6=>{const _0xf576da=_0x4a2fee,_0x541a38={'LQAAp':function(_0xf932d6,_0x38ff84){return _0xf932d6!=_0x38ff84;},'cHryV':_0xf576da(0x12d),'PwLvV':_0xf576da(0x1e3)+'er'};_0x541a38[_0xf576da(0x27f)](_0x2f6bb6[_0xf576da(0x127)],_0x541a38[_0xf576da(0x129)])?(document[_0xf576da(0x1a3)+_0xf576da(0x1b5)](_0x541a38[_0xf576da(0x11a)])[_0xf576da(0x151)]=_0x2f6bb6[_0xf576da(0x127)],document[_0xf576da(0x1a3)+_0xf576da(0x1b5)](_0x541a38[_0xf576da(0x11a)])[_0xf576da(0x20c)]()):document[_0xf576da(0x1a3)+_0xf576da(0x1b5)](_0x541a38[_0xf576da(0x11a)])[_0xf576da(0x180)]();}),socket['on'](_0x4a2fee(0x238)+'nt',_0xb8ce9a=>{const _0x4ebc1b=_0x4a2fee,_0x28f0d5={'LqFlk':_0x4ebc1b(0x1bc),'yjXOs':function(_0x2bf9d8,_0x47bce2){return _0x2bf9d8-_0x47bce2;},'JHrJQ':_0x4ebc1b(0x21a),'nyAuQ':_0x4ebc1b(0x274),'ZVplc':function(_0x434d11,_0x430e4d,_0x532064){return _0x434d11(_0x430e4d,_0x532064);},'amxMB':_0x4ebc1b(0x1cb),'AZQYj':_0x4ebc1b(0x194),'IbCSC':_0x4ebc1b(0x17d),'hpVsM':function(_0x1d05ed,_0x2d15eb){return _0x1d05ed+_0x2d15eb;},'Ropwx':_0x4ebc1b(0x212)+_0x4ebc1b(0x15a),'erbuU':_0x4ebc1b(0x256)+_0x4ebc1b(0x271)+_0x4ebc1b(0x1d8),'hdPst':_0x4ebc1b(0x1e8),'JAOKL':_0x4ebc1b(0x16c)+_0x4ebc1b(0x108)+_0x4ebc1b(0x16d)+_0x4ebc1b(0x240)+_0x4ebc1b(0x191),'aqPkQ':function(_0x2de833,_0x51d4b2){return _0x2de833-_0x51d4b2;},'cXBsH':function(_0x3cf814,_0x793a34,_0x2626d3){return _0x3cf814(_0x793a34,_0x2626d3);}};if(_0xb8ce9a[_0x4ebc1b(0x153)]&&_0xb8ce9a[_0x4ebc1b(0x24b)]){const _0x176bb3=_0xb8ce9a[_0x4ebc1b(0x153)],_0x59f8cc=document[_0x4ebc1b(0x25f)+_0x4ebc1b(0x145)](_0x28f0d5[_0x4ebc1b(0x263)]),_0x442772=document[_0x4ebc1b(0x1c9)+_0x4ebc1b(0x24c)](_0x28f0d5[_0x4ebc1b(0x231)]);_0x442772[_0x4ebc1b(0x1e7)+'te'](_0x28f0d5[_0x4ebc1b(0x1fa)],_0x28f0d5[_0x4ebc1b(0x217)](_0x28f0d5[_0x4ebc1b(0x105)],_0xb8ce9a[_0x4ebc1b(0x24b)])),_0x442772[_0x4ebc1b(0x1e7)+'te']('id',announceCount),_0x442772[_0x4ebc1b(0x1e8)][_0x4ebc1b(0x140)]=_0x28f0d5[_0x4ebc1b(0x24f)];const _0x101c63=document[_0x4ebc1b(0x1c9)+_0x4ebc1b(0x24c)]('p');_0x101c63[_0x4ebc1b(0x1e7)+'te'](_0x28f0d5[_0x4ebc1b(0x1b7)],_0x28f0d5[_0x4ebc1b(0x26d)]),_0x101c63[_0x4ebc1b(0x272)+'t']=_0x176bb3,_0x442772[_0x4ebc1b(0x243)+'d'](_0x101c63),_0x59f8cc[_0x4ebc1b(0x243)+'d'](_0x442772),announceCount++,announcementIDs[_0x4ebc1b(0x282)](_0x28f0d5[_0x4ebc1b(0x139)](announceCount,-0x43*-0x25+-0x22ca+0x191c)),_0x28f0d5[_0x4ebc1b(0x120)](setTimeout,()=>{const _0x3b0657=_0x4ebc1b,_0x518aae=document[_0x3b0657(0x1a3)+_0x3b0657(0x1b5)](_0x28f0d5[_0x3b0657(0x185)](announceCount,-0x5*0x6be+-0x1667*-0x1+0xb50));_0x518aae[_0x3b0657(0x1aa)][_0x3b0657(0x278)](_0x28f0d5[_0x3b0657(0x255)]),_0x518aae[_0x3b0657(0x1aa)][_0x3b0657(0x165)](_0x28f0d5[_0x3b0657(0x275)]),_0x28f0d5[_0x3b0657(0x1bf)](setTimeout,()=>{const _0x3bf892=_0x3b0657;_0x518aae[_0x3bf892(0x1e8)][_0x3bf892(0x253)]=_0x28f0d5[_0x3bf892(0xfe)],_0x518aae[_0x3bf892(0x278)]();},-0x562*0x2+0x424*0x4+-0x3d8);},-0x22ad+-0x123a*0x2+-0x5aa9*-0x1);}});function hideMessages(){const _0x3a018e=_0x4a2fee,_0x3e621b={'PrKAY':function(_0x5c4b14,_0x56200a){return _0x5c4b14!=_0x56200a;},'WiMJS':_0x3a018e(0x13c),'cYgWY':_0x3a018e(0x274),'LJaER':function(_0x27005e,_0x1ce2be){return _0x27005e!=_0x1ce2be;},'dibJz':_0x3a018e(0x1bc),'uWOMD':_0x3a018e(0x1cb),'aKljj':_0x3a018e(0x194),'sToAC':function(_0x4f4dc6,_0x96b836){return _0x4f4dc6>_0x96b836;},'jhDkI':function(_0x3d6b75,_0x4a9013,_0x35146e){return _0x3d6b75(_0x4a9013,_0x35146e);}},_0x2f3b9e=document[_0x3a018e(0x25f)+_0x3a018e(0x145)](_0x3e621b[_0x3a018e(0x192)]);if(_0x2f3b9e){const _0x4a1264=_0x2f3b9e[_0x3a018e(0x25f)+_0x3a018e(0x15e)](_0x3e621b[_0x3a018e(0x173)]);_0x3e621b[_0x3a018e(0x161)](_0x4a1264[_0x3a018e(0x241)],0x1c*-0x4d+-0x17f3*0x1+0x70*0x4a)&&(_0x4a1264[_0x3a018e(0x13a)](_0x3af973=>{const _0x18a1d3=_0x3a018e;_0x3e621b[_0x18a1d3(0x118)](_0x3af973[_0x18a1d3(0x155)+'te']('id'),_0x3e621b[_0x18a1d3(0x1df)])&&_0x3af973[_0x18a1d3(0x1aa)][_0x18a1d3(0x165)](_0x3e621b[_0x18a1d3(0x14d)]);}),_0x3e621b[_0x3a018e(0x283)](setTimeout,()=>{const _0x12357a=_0x3a018e;_0x4a1264[_0x12357a(0x13a)](_0x32e2c6=>{const _0x5e5924=_0x12357a;_0x3e621b[_0x5e5924(0x267)](_0x32e2c6[_0x5e5924(0x155)+'te']('id'),_0x3e621b[_0x5e5924(0x1df)])&&(_0x32e2c6[_0x5e5924(0x1e8)][_0x5e5924(0x253)]=_0x3e621b[_0x5e5924(0x220)],_0x32e2c6[_0x5e5924(0x278)]());});},0xe3+0x1604+0x1*-0x14f3));}}setInterval(hideMessages,0x1fed*-0x1+0x150c+-0x2d*-0xad),socket['on'](_0x4a2fee(0x222)+_0x4a2fee(0x201),_0x2edee6=>{const _0x444941=_0x4a2fee,_0x24be13={'AATja':_0x444941(0x1b9),'chPeM':_0x444941(0x222)+_0x444941(0x201)};document[_0x444941(0x1a3)+_0x444941(0x1b5)](_0x24be13[_0x444941(0x1b0)])[_0x444941(0x272)+'t']=_0x444941(0x23d)+_0x444941(0x23c)+_0x2edee6,document[_0x444941(0x1a3)+_0x444941(0x1b5)](_0x24be13[_0x444941(0x216)])[_0x444941(0x1e8)][_0x444941(0x1ad)]=0x2ab*0x2+0xd*0x82+-0xbf0+0.25;}),socket['on'](_0x4a2fee(0x174),_0xb5a8de=>{const _0x3ffc85=_0x4a2fee;location[_0x3ffc85(0x174)](!![]);}),socket['on'](_0x4a2fee(0x219),_0x5477db=>{const _0x3fe2dc=_0x4a2fee,_0x31e94b={'xqahE':_0x3fe2dc(0x1cd),'NaspW':_0x3fe2dc(0x219),'EkGAi':function(_0x24bc67,_0x320b0e){return _0x24bc67+_0x320b0e;},'AHhnJ':_0x3fe2dc(0x123),'EInIp':_0x3fe2dc(0x160),'RbTGU':_0x3fe2dc(0x1a0)},_0x288d2a=_0x31e94b[_0x3fe2dc(0x232)][_0x3fe2dc(0x276)]('|');let _0x27ef79=-0x11*0x239+-0x14c5+-0x1d47*-0x2;while(!![]){switch(_0x288d2a[_0x27ef79++]){case'0':document[_0x3fe2dc(0x1a3)+_0x3fe2dc(0x1b5)](_0x31e94b[_0x3fe2dc(0x1a5)])[_0x3fe2dc(0x1e8)][_0x3fe2dc(0x1ad)]=0xf44+0xff2+-0x1f36+0.25;continue;case'1':versionSet=!![];continue;case'2':document[_0x3fe2dc(0x1a3)+_0x3fe2dc(0x1b5)](_0x31e94b[_0x3fe2dc(0x1a5)])[_0x3fe2dc(0x25f)+_0x3fe2dc(0x145)]('p')[_0x3fe2dc(0x272)+'t']=_0x31e94b[_0x3fe2dc(0x1ce)](_0x31e94b[_0x3fe2dc(0x1d7)],_0x5477db);continue;case'3':document[_0x3fe2dc(0x1b8)]=_0x31e94b[_0x3fe2dc(0x1ce)](_0x31e94b[_0x3fe2dc(0x1b1)],_0x5477db);continue;case'4':document[_0x3fe2dc(0x1a3)+_0x3fe2dc(0x1b5)](_0x31e94b[_0x3fe2dc(0x252)])[_0x3fe2dc(0x272)+'t']=_0x31e94b[_0x3fe2dc(0x1ce)](_0x31e94b[_0x3fe2dc(0x1b1)],_0x5477db);continue;}break;}}),socket['on'](_0x4a2fee(0x264),_0x4603a2=>{const _0x43cfb2=_0x4a2fee,_0x505b96={'dognU':function(_0x5f47e5,_0x46d667){return _0x5f47e5+_0x46d667;},'ACOUp':function(_0x4d6cdb,_0x34f792){return _0x4d6cdb+_0x34f792;},'aUcnR':function(_0x2678c2,_0xa016ad){return _0x2678c2+_0xa016ad;},'FMmJG':_0x43cfb2(0x259)+_0x43cfb2(0x1f8),'fpjDb':_0x43cfb2(0x1bc),'NSQlH':_0x43cfb2(0x194),'EzVIF':_0x43cfb2(0x21a),'mYnuF':_0x43cfb2(0x274),'kDYcc':function(_0x26ad85,_0x24390f,_0x133002){return _0x26ad85(_0x24390f,_0x133002);},'uOshF':function(_0x1d9d33,_0x2e8e4b){return _0x1d9d33===_0x2e8e4b;},'mCSly':_0x43cfb2(0x264),'LlsYg':function(_0x8a7e0d){return _0x8a7e0d();},'JhEVw':function(_0x32598f,_0x3003fe){return _0x32598f===_0x3003fe;},'vXnKy':_0x43cfb2(0x23a)+_0x43cfb2(0x138),'GNHPq':function(_0x44287b,_0x212e08,_0x4872ec,_0x236b0f){return _0x44287b(_0x212e08,_0x4872ec,_0x236b0f);},'wuLlc':_0x43cfb2(0x1ab),'ElISd':function(_0x35e7b6){return _0x35e7b6();},'VhuRv':_0x43cfb2(0x15f),'SiCmY':_0x43cfb2(0x1f0),'zCbDT':_0x43cfb2(0x22a),'OYEmL':_0x43cfb2(0x11b),'FBDlh':function(_0x7a9b1e,_0xe0039b){return _0x7a9b1e(_0xe0039b);},'wHRur':_0x43cfb2(0x114),'PVUvX':_0x43cfb2(0x1a8),'MFVXU':function(_0x3fbb75,_0x56aa59,_0x24185c,_0x1f6b18){return _0x3fbb75(_0x56aa59,_0x24185c,_0x1f6b18);},'aBpzg':_0x43cfb2(0x12b),'EuOnc':_0x43cfb2(0x27b),'vBozk':_0x43cfb2(0x1ec)};if(_0x505b96[_0x43cfb2(0x137)](_0x4603a2[_0x43cfb2(0x26b)],_0x505b96[_0x43cfb2(0x197)])&&_0x4603a2[_0x43cfb2(0x1c7)])drawings[_0x43cfb2(0x282)](_0x4603a2[_0x43cfb2(0x1c7)]),_0x505b96[_0x43cfb2(0x251)](draw);else{if(_0x505b96[_0x43cfb2(0x112)](_0x4603a2[_0x43cfb2(0x26b)],_0x505b96[_0x43cfb2(0x18d)])&&_0x4603a2[_0x43cfb2(0xfc)]){const _0x58e224=JSON[_0x43cfb2(0x258)](_0x4603a2[_0x43cfb2(0xfc)]),_0x2bb54c=JSON[_0x43cfb2(0x258)](_0x4603a2[_0x43cfb2(0x218)]);drawings=[],chat[_0x43cfb2(0x25f)+_0x43cfb2(0x145)]('ul')[_0x43cfb2(0x111)]='',_0x2bb54c[_0x43cfb2(0x13a)](_0x3a94a5=>{const _0x28b51e=_0x43cfb2,_0x31a25d=document[_0x28b51e(0x1c9)+_0x28b51e(0x24c)]('li');_0x31a25d[_0x28b51e(0x272)+'t']=_0x505b96[_0x28b51e(0x159)](_0x505b96[_0x28b51e(0x136)](_0x505b96[_0x28b51e(0x208)]('<',_0x3a94a5[_0x28b51e(0x25a)]),'>\x20'),_0x3a94a5[_0x28b51e(0x109)]),chat[_0x28b51e(0x25f)+_0x28b51e(0x145)]('ul')[_0x28b51e(0x243)+'d'](_0x31a25d),chat[_0x28b51e(0x25f)+_0x28b51e(0x145)](_0x505b96[_0x28b51e(0x1d1)])[_0x28b51e(0x25f)+_0x28b51e(0x145)]('ul')[_0x28b51e(0x1ca)]=chat[_0x28b51e(0x25f)+_0x28b51e(0x145)](_0x505b96[_0x28b51e(0x1d1)])[_0x28b51e(0x25f)+_0x28b51e(0x145)]('ul')[_0x28b51e(0x229)+'ht'];}),uuid=_0x4603a2['id'],nameinput[_0x43cfb2(0x19b)]=_0x4603a2[_0x43cfb2(0x25a)],_0x505b96[_0x43cfb2(0x1dd)](setCookie,_0x505b96[_0x43cfb2(0x11e)],uuid,0x709+-0x1*-0x17ea+-0xf79*0x2),drawings[_0x43cfb2(0x282)](..._0x58e224),_0x505b96[_0x43cfb2(0x149)](draw),document[_0x43cfb2(0x1a3)+_0x43cfb2(0x1b5)](_0x505b96[_0x43cfb2(0x25d)])[_0x43cfb2(0x1e8)][_0x43cfb2(0x1ad)]=0xc9c+0x1*-0x12cd+0x632,document[_0x43cfb2(0x1a3)+_0x43cfb2(0x1b5)](_0x505b96[_0x43cfb2(0x25d)])[_0x43cfb2(0x1e8)][_0x43cfb2(0x13f)]=_0x505b96[_0x43cfb2(0x1d9)],canvas[_0x43cfb2(0x1e8)][_0x43cfb2(0x1ad)]=-0x136+-0x10ed+0x12*0x102,canvas[_0x43cfb2(0x1e8)][_0x43cfb2(0x13f)]=_0x505b96[_0x43cfb2(0x14f)],buttons[_0x43cfb2(0x1e8)][_0x43cfb2(0x1ad)]=-0x19b6+0x333+0x1684,chat[_0x43cfb2(0x1e8)][_0x43cfb2(0x253)]=_0x505b96[_0x43cfb2(0x205)];if(!_0x505b96[_0x43cfb2(0x233)](getCookie,_0x505b96[_0x43cfb2(0x265)])){var _0x5e1586=document[_0x43cfb2(0x1a3)+_0x43cfb2(0x1b5)](_0x505b96[_0x43cfb2(0x14c)]);_0x5e1586[_0x43cfb2(0x1e8)][_0x43cfb2(0x253)]=_0x505b96[_0x43cfb2(0x205)],_0x5e1586[_0x43cfb2(0x1e8)][_0x43cfb2(0x1ad)]=0xfa8*-0x2+0x31*0x21+0x8*0x320,_0x5e1586[_0x43cfb2(0x25f)+_0x43cfb2(0x145)](_0x505b96[_0x43cfb2(0x130)])[_0x43cfb2(0x1aa)][_0x43cfb2(0x165)](_0x505b96[_0x43cfb2(0x23e)]),_0x505b96[_0x43cfb2(0x22c)](setCookie,_0x505b96[_0x43cfb2(0x265)],_0x505b96[_0x43cfb2(0x187)],0xd96*-0x1+-0x59*0x64+-0x1*-0x305b),document[_0x43cfb2(0x1a3)+_0x43cfb2(0x1b5)](_0x505b96[_0x43cfb2(0x26a)])[_0x43cfb2(0x176)+_0x43cfb2(0x10f)](_0x505b96[_0x43cfb2(0x1e6)],_0x49a190=>{const _0x4b3674=_0x43cfb2,_0x5d26eb={'wASpK':_0x505b96[_0x4b3674(0x186)]};_0x5e1586[_0x4b3674(0x1e8)][_0x4b3674(0x1ad)]=0x8*0x34e+-0x10fc+0xa*-0xf2,_0x5e1586[_0x4b3674(0x25f)+_0x4b3674(0x145)](_0x505b96[_0x4b3674(0x130)])[_0x4b3674(0x1aa)][_0x4b3674(0x278)](_0x505b96[_0x4b3674(0x23e)]),_0x5e1586[_0x4b3674(0x25f)+_0x4b3674(0x145)](_0x505b96[_0x4b3674(0x130)])[_0x4b3674(0x1aa)][_0x4b3674(0x165)](_0x505b96[_0x4b3674(0x172)]),_0x505b96[_0x4b3674(0x12a)](setTimeout,()=>{const _0x3e1b50=_0x4b3674;_0x5e1586[_0x3e1b50(0x1e8)][_0x3e1b50(0x253)]=_0x5d26eb[_0x3e1b50(0x281)];},-0x24a4+0x91*-0x5+0x296d);});}}}});let zoomLevel=-0x26c2+0x1437+0x128b*0x1+0.08;const zoomFactor=-0x1435+-0xce3+0x2118+0.1;let offsetX=-0x121*0x1f+-0x1a38+-0x1*-0x3d37,offsetY=-0x10a8+0x149*-0xe+-0x377*-0xa;function pan(_0x327583){const _0x5aedbd=_0x4a2fee,_0x29ccc2={'lFDJY':_0x5aedbd(0x1fd),'tsnHm':_0x5aedbd(0x236),'WBzBo':_0x5aedbd(0x248),'TNGzj':function(_0x1f97a8){return _0x1f97a8();}},_0x4dc767=-0x28d*0xd+-0x1*-0x1480+0xcd1;switch(_0x327583){case _0x29ccc2[_0x5aedbd(0x18c)]:offsetX+=_0x4dc767;break;case _0x29ccc2[_0x5aedbd(0x1e0)]:offsetX-=_0x4dc767;break;case'up':offsetY+=_0x4dc767;break;case _0x29ccc2[_0x5aedbd(0x147)]:offsetY-=_0x4dc767;break;default:break;}_0x29ccc2[_0x5aedbd(0x1af)](updateCanvasContainerPosition);}function updateCanvasContainerPosition(){const _0x421e30=_0x4a2fee,_0x13f7a2={'gCyTA':function(_0x5cd175,_0x3fa2d3){return _0x5cd175==_0x3fa2d3;}};_0x13f7a2[_0x421e30(0x188)](zoomLevel,0x240a+0x539*-0x2+-0x1998+0.08)?(canvas[_0x421e30(0x1e8)][_0x421e30(0x10d)]=_0x421e30(0x1d5),offsetX=-0x1bb1+-0x1df5*0x1+0x39a6,offsetY=0x776+0x9*0x1fc+0x7*-0x39e):canvas[_0x421e30(0x1e8)][_0x421e30(0x10d)]=_0x421e30(0x20a)+offsetX+_0x421e30(0x117)+offsetY+_0x421e30(0x209);}function _0x37a6(){const _0x15b825=['Size:\x20','min-width:','wHGCu','Ropwx','AHebG','\x20auto;','e:\x20normal;','content','mousemove','timeout','ainer','transform','icGfP','stener','aaZsi','innerHTML','JhEVw','clearRect','visited','EFfVz','7|8|0|4','px,\x20','PrKAY','veGRl','PwLvV','flex','vWmPy','gCKot','wuLlc','getBoundin','cXBsH','existingMe','imageSmoot','Version:\x20','HAIRN','1673142KkAHSv','ZlCpH','audio','PUXnD','cHryV','kDYcc','true','ArrowDown','stop','s\x20been\x20res','nection\x20Ti','NSQlH','ArrowUp','ThfMy','UCYHB','kEVvF','mIjog','ACOUp','uOshF','awings','aqPkQ','forEach','jawEc','connection','ArrowRight','rZqMG','visibility','boxShadow','VJlSn','wheel',';\x20expires=','BtCYa','tor','ReNol','WBzBo','keyCode','ElISd','RrVEf','Cufuv','PVUvX','cYgWY','xlHpz','zCbDT','ylPDb','src','meout','message','key','getAttribu','UXFpy','yVpeG','UadAl','dognU','deup\x20','Excug','sdSIu','OSKuL','torAll','transition','Collavas\x20v','sToAC','strokeStyl','UksCe','size','add','status','sPvXX','YxNZd','BjQZL','NZLna','Server\x20con','white-spac','margin:\x2025','1333036xIxFFn','aOkFl','KGXWL','CcRvi','mYnuF','aKljj','reload','pong','addEventLi','scale(','ssages','jiBiz','YMjFQ','kRzbC','username','class','Server\x20Con','clientY','pause','mousedown','toUTCStrin','NLjRX','round','yjXOs','fpjDb','aBpzg','gCyTA','KLVBK','OXfzI','OWeDu','lFDJY','vXnKy','#000000','YfFlu','deup\x20green','px\x2050px','uWOMD','PYvgQ','div','VekHj','cfJMu','mCSly','messages','map','connect_er','value','ylfUx','Ccvce','TPlvT','YXOML','w-version','ction\x22]','MWmye','getElement','[id=\x22conne','NaspW','cRztF','buttons','welcome','nnwDo','classList','uuid','deltaY','opacity','llfhi','TNGzj','AATja','EInIp','drawingCan','pGkDN','1230768oRDXIa','ById','hVhne','hdPst','title','clientNum','XIrzF','nkeTp','none','DoQCA','DGDrD','ZVplc','dkdXo','TvzEz','connect_ti','qBoZy','hhjZN','300px','GslOP','drawing','ping','createElem','scrollTop','.messages','9920844LgXEuF','3|2|0|1|4','EkGAi','cuXyx','lxJCj','FMmJG','kCNDP','mouseup','5921500tEyhXg','0px,\x200px)','nfjxd','AHhnJ','\x200,\x200.1)','SiCmY','qcKag','wyley','trim','GNHPq','JlTtH','WiMJS','tsnHm','BfABZ','now','audio-play','.chat-cont','chat-input','vBozk','setAttribu','style','DJjOn','NwbTv','nection\x20ha','click','gyTwn','KgdWe','connect','hidden','getDate','moveTo','lcEZM','vas','DshWB','getContext','NqpsT','ages','clientX','IbCSC','Ping:\x20','rAIqr','left','UCnVM','10yPOHhf','scale(0.08','lients','qUHvv','preventDef','sHace','OYEmL','DUsUf','wbZNo','aUcnR','px)','translate(','gClientRec','play','keydown','XbnMi','deup\x20red','fvHOr','emit','message\x20fa','4|0|1|2|3','yPPtZ','2|4|3|1|0','chPeM','hpVsM','chat','version','fadeup','height','canvasCont','OPpbA','e:\x20nowrap;','success','dibJz','resetView','connectedC','PfsoJ','ArrowLeft','foDSY','width','target','45bzxpfH','scrollHeig','visible','ENqqH','MFVXU','ppurz','HRBGh','elzaZ','InDDV','AZQYj','xqahE','FBDlh','beginPath','7VvZzPl','right','1|5|3|6|2|','announceme','toFixed','existingDr','OtCgk','Clients:\x20','Connected\x20','EzVIF',';\x20path=/','px\x2050px\x2025','length','WhGej','appendChil','MdJme','meout:\x20','ncSOu','koBGP','down','stroke','cookie','color','ent','setDate','xMFLc','erbuU','9176848dlEOlf','LlsYg','RbTGU','display','data','JHrJQ','0\x204px\x208px\x20','hingEnable','parse','.chat-mess','name','ault','top','VhuRv','zfFuN','querySelec','tored','YhreQ','yEMxz','amxMB','draw','wHRur','mouseleave','LJaER','AEakE','XLhFM','EuOnc','type','dataSize','JAOKL','lZpBW','ror','hyojn','rgba(0,\x200,','textConten','lineTo','fadedown','nyAuQ','split','sZXTy','remove','nameStatus','mXacA','w-close','MDDcU','CeXuv','2987600UzyIjh','LQAAp','ClOTP','wASpK','push','jhDkI','drawings','changeName','LqFlk','dYrwt','TEAbR','PTBDy'];_0x37a6=function(){return _0x15b825;};return _0x37a6();}canvasContainer[_0x4a2fee(0x176)+_0x4a2fee(0x10f)](_0x4a2fee(0x142),_0x50dabb=>{const _0x104273=_0x4a2fee,_0x502628={'ZlCpH':function(_0x4d78fe,_0x455b2d){return _0x4d78fe>_0x455b2d;},'HRBGh':function(_0x2556d6,_0x1dcb7c){return _0x2556d6+_0x1dcb7c;},'nnwDo':function(_0xd3ca93,_0x878f17){return _0xd3ca93*_0x878f17;},'nkeTp':function(_0x402e3e,_0x5a3eb3){return _0x402e3e<_0x5a3eb3;},'lxJCj':function(_0x45118e){return _0x45118e();},'vWmPy':function(_0x243157,_0x66ad79){return _0x243157>_0x66ad79;}};_0x50dabb[_0x104273(0x203)+_0x104273(0x25b)]();const _0x2eb6e8=_0x502628[_0x104273(0x126)](_0x50dabb[_0x104273(0x1ac)],-0x1f7d+0xc1*0x16+0x23*0x6d)?-(0x1a1e+-0x224a+0x82d):0x367+-0x1053+0xced*0x1,_0x4d0867=_0x502628[_0x104273(0x22e)](-0x2507+-0x5*0x28d+0x31c9,_0x502628[_0x104273(0x1a9)](_0x2eb6e8,zoomFactor));zoomLevel*=_0x4d0867;_0x502628[_0x104273(0x1bb)](zoomLevel,0x22d*-0x5+-0x15b6+-0x3*-0xadd+0.08)&&(zoomLevel=0x1*-0x25f1+0xc2c+0x19c5+0.08,canvas[_0x104273(0x1e8)][_0x104273(0x10d)]=_0x104273(0x20a)+_0x104273(0x1d5),_0x502628[_0x104273(0x1d0)](updateCanvasContainerPosition));if(_0x502628[_0x104273(0x11c)](zoomLevel,-0x1*-0x47f+-0xf1*0x10+0x1*0xaa5))zoomLevel=0xc28+-0x410+-0x804;canvasContainer[_0x104273(0x1e8)][_0x104273(0x10d)]=_0x104273(0x177)+zoomLevel+')';});
\ No newline at end of file
diff --git a/public/static/js/main-AGdHCP.js b/public/static/js/main-AGdHCP.js
new file mode 100644
index 0000000..7c65147
--- /dev/null
+++ b/public/static/js/main-AGdHCP.js
@@ -0,0 +1 @@
+const _0x566993=_0x3691;(function(_0x5e08d5,_0x3442b4){const _0x59c81f=_0x3691,_0x27396b=_0x5e08d5();while(!![]){try{const _0x2bdacf=-parseInt(_0x59c81f(0xfb))/(0xb9*-0x26+0x17fe+0x379)*(parseInt(_0x59c81f(0x1ec))/(0x2342+-0x678+0x18*-0x133))+parseInt(_0x59c81f(0x14f))/(0x13*-0xd4+-0x1a12+0x29d1)*(-parseInt(_0x59c81f(0xf8))/(-0x8c8+0x6af+0x1*0x21d))+-parseInt(_0x59c81f(0x213))/(0x1*-0x12fd+0xbf5*-0x3+0xdf*0x3f)*(-parseInt(_0x59c81f(0x13f))/(-0x18f9+0x3*-0x405+-0x66*-0x5d))+-parseInt(_0x59c81f(0x191))/(-0x66+0x1c25+-0x1bb8)*(parseInt(_0x59c81f(0x123))/(0xdf*-0x19+0x1f97+-0x9c8))+-parseInt(_0x59c81f(0x1d0))/(0x1858+-0xc0c+-0x49*0x2b)*(-parseInt(_0x59c81f(0x1b5))/(0xd9d+0x1b0*-0x11+0xf1d))+parseInt(_0x59c81f(0x1dd))/(-0x772+-0x10ad+0x182a*0x1)+-parseInt(_0x59c81f(0x18a))/(0xed7+-0x163a+-0xad*-0xb)*(-parseInt(_0x59c81f(0x16c))/(0x1c93+0x1*-0x15d5+0x23b*-0x3));if(_0x2bdacf===_0x3442b4)break;else _0x27396b['push'](_0x27396b['shift']());}catch(_0x3842f2){_0x27396b['push'](_0x27396b['shift']());}}}(_0x2de7,-0xa8ce8+0x8e2f*-0xd+0x5ec02*0x4));const socket=io({'timeout':0x1f4}),canvas=document[_0x566993(0x17a)+_0x566993(0x1e1)](_0x566993(0x12d)+_0x566993(0x178)),canvasContainer=document[_0x566993(0x17a)+_0x566993(0x1e1)](_0x566993(0x20c)+_0x566993(0x174)),buttons=document[_0x566993(0x17a)+_0x566993(0x1e1)](_0x566993(0x1fe)),tx=document[_0x566993(0x17a)+_0x566993(0x1e1)]('x'),ty=document[_0x566993(0x17a)+_0x566993(0x1e1)]('y'),context=canvas[_0x566993(0x13c)]('2d');let drawings=[],announcementIDs=[],currentDrawing=[],isDrawing=![],uiVisible=!![],currentColor=_0x566993(0x1ff),announceCount=-0xe*0x9b+0x1*0x230c+0x1a91*-0x1,connectionTimer=null,connectionSeconds=-0x17b6*-0x1+-0x1*-0x431+0x94d*-0x3,versionSet=![],ping=null;context[_0x566993(0x1b3)+_0x566993(0x23d)+'d']=!![],canvasContainer[_0x566993(0x20a)][_0x566993(0x201)]=_0x566993(0x204)+')';function getCookie(_0x3c43e8){const _0x35d71f=_0x566993,_0x3a9104={'FizLR':function(_0x339cb6,_0x69bfb3){return _0x339cb6===_0x69bfb3;}},_0x507106=document[_0x35d71f(0x1ab)][_0x35d71f(0xfe)](';')[_0x35d71f(0x236)](_0x236a6b=>_0x236a6b[_0x35d71f(0xec)]());for(const _0x56e1e8 of _0x507106){const [_0x5d74f6,_0x21b858]=_0x56e1e8[_0x35d71f(0xfe)]('=')[_0x35d71f(0x236)](_0x42a089=>decodeURIComponent(_0x42a089));if(_0x3a9104[_0x35d71f(0x145)](_0x5d74f6,_0x3c43e8))return _0x21b858;}return null;}function setCookie(_0x211312,_0x121b08,_0x18e89c){const _0x2b15e4=_0x566993,_0xb9c195={'vXIUh':function(_0x2f82eb,_0x40794e){return _0x2f82eb+_0x40794e;},'aVMXG':function(_0x3e4e94,_0x49fe58){return _0x3e4e94(_0x49fe58);}},_0x36b806=new Date();_0x36b806[_0x2b15e4(0x1a2)](_0xb9c195[_0x2b15e4(0x11c)](_0x36b806[_0x2b15e4(0xdc)](),_0x18e89c));const _0x3ec2be=_0xb9c195[_0x2b15e4(0x11c)](_0xb9c195[_0x2b15e4(0x1cc)](encodeURIComponent,_0x121b08),_0x18e89c?_0x2b15e4(0x180)+_0x36b806[_0x2b15e4(0x103)+'g']():'');document[_0x2b15e4(0x1ab)]=_0x211312+'='+_0x3ec2be+_0x2b15e4(0x197);}function pinger(){const _0x58a219=_0x566993,_0x41e0f4={'NqMaX':function(_0x36163b,_0x184bd9){return _0x36163b-_0x184bd9;},'IFvDq':function(_0x2a5e37,_0x12f8db){return _0x2a5e37+_0x12f8db;},'UjZXw':_0x58a219(0x1f1),'VSSJW':_0x58a219(0x235),'duqzD':_0x58a219(0x134)},_0x1b207d=Date[_0x58a219(0x20f)](),_0x21ac38=document[_0x58a219(0x17a)+_0x58a219(0x1e1)](_0x41e0f4[_0x58a219(0x12e)])[_0x58a219(0x117)+_0x58a219(0x21a)]('p');socket['on'](_0x41e0f4[_0x58a219(0x1ae)],()=>{const _0x34e55e=_0x58a219,_0x2b3f92=_0x41e0f4[_0x34e55e(0x214)](Date[_0x34e55e(0x20f)](),_0x1b207d);_0x21ac38[_0x34e55e(0x155)+'t']=_0x41e0f4[_0x34e55e(0x1be)](_0x41e0f4[_0x34e55e(0x1be)](_0x41e0f4[_0x34e55e(0x1c0)],_0x2b3f92),'ms'),document[_0x34e55e(0x17a)+_0x34e55e(0x1e1)](_0x41e0f4[_0x34e55e(0x12e)])[_0x34e55e(0x20a)][_0x34e55e(0x142)]=-0x1b3d+0x10eb+0xa52+0.25;}),socket[_0x58a219(0x133)](_0x41e0f4[_0x58a219(0x12e)]);}ping=setInterval(pinger,-0x123*-0x15+-0x1e8a+0x1*0xa93);function startConnectionTimer(){const _0x4d3e80=_0x566993,_0x4cfcef={'PVDeP':_0x4d3e80(0x14b),'rpudV':function(_0x1b4b67,_0x597b01){return _0x1b4b67+_0x597b01;},'XAdDv':_0x4d3e80(0x15d)+_0x4d3e80(0x1fa)+_0x4d3e80(0x23c),'keHhx':_0x4d3e80(0x12a),'Ficqt':function(_0x1cf854,_0x121fcc){return _0x1cf854>_0x121fcc;},'sAQBQ':_0x4d3e80(0x102)+_0x4d3e80(0x1e2),'saUmI':function(_0x175385,_0xf3187a){return _0x175385(_0xf3187a);},'wlLDo':_0x4d3e80(0x1fb),'WpHIw':_0x4d3e80(0x1fd),'AdqEp':_0x4d3e80(0x16d)+_0x4d3e80(0x132),'pQKfs':_0x4d3e80(0x19b),'qnnwq':_0x4d3e80(0x159)+_0x4d3e80(0x1de)+_0x4d3e80(0xfa),'gBdxr':_0x4d3e80(0x1cd),'wOBfK':_0x4d3e80(0x20a),'sfGne':_0x4d3e80(0x13b)+_0x4d3e80(0x101)+_0x4d3e80(0xf4)+_0x4d3e80(0x1a8)+_0x4d3e80(0x23e),'fOWql':_0x4d3e80(0x185),'YxvXl':function(_0x5b3619){return _0x5b3619();},'KpVpS':function(_0x2d0fef,_0x5e0d54,_0x40aa92){return _0x2d0fef(_0x5e0d54,_0x40aa92);}},_0x52df69=document[_0x4d3e80(0x117)+_0x4d3e80(0x21a)](_0x4cfcef[_0x4d3e80(0x1c4)]);if(_0x4cfcef[_0x4d3e80(0x249)](_0x52df69[_0x4d3e80(0x117)+_0x4d3e80(0xe2)](_0x4cfcef[_0x4d3e80(0x1af)])[_0x4d3e80(0x122)],-0x18a*-0x6+-0x67*-0x4a+-0x2702))return;_0x4cfcef[_0x4d3e80(0x1ee)](clearInterval,ping);const _0x4a5649=document[_0x4d3e80(0x203)+_0x4d3e80(0x19c)](_0x4cfcef[_0x4d3e80(0x107)]);_0x4a5649[_0x4d3e80(0x211)+'te'](_0x4cfcef[_0x4d3e80(0x1c8)],_0x4cfcef[_0x4d3e80(0x1bb)]),_0x4a5649[_0x4d3e80(0x211)+'te']('id',_0x4cfcef[_0x4d3e80(0x127)]),_0x4a5649[_0x4d3e80(0x20a)][_0x4d3e80(0xef)]=_0x4cfcef[_0x4d3e80(0x104)],_0x4a5649[_0x4d3e80(0x20a)][_0x4d3e80(0xea)]=_0x4cfcef[_0x4d3e80(0x184)];const _0x17c6a2=document[_0x4d3e80(0x203)+_0x4d3e80(0x19c)]('p');_0x17c6a2[_0x4d3e80(0x211)+'te']('id',_0x4cfcef[_0x4d3e80(0x124)]),_0x17c6a2[_0x4d3e80(0x211)+'te'](_0x4cfcef[_0x4d3e80(0xf3)],_0x4cfcef[_0x4d3e80(0x11d)]),_0x17c6a2[_0x4d3e80(0x155)+'t']=_0x4cfcef[_0x4d3e80(0x154)](_0x4cfcef[_0x4d3e80(0x161)],connectionSeconds[_0x4d3e80(0x113)](0x1cc9+-0xe*-0x33+-0x1f92)),_0x4a5649[_0x4d3e80(0x179)+'d'](_0x17c6a2),_0x52df69[_0x4d3e80(0x179)+'d'](_0x4a5649),canvas[_0x4d3e80(0x20a)][_0x4d3e80(0x142)]=-0x1b98+-0x77*-0x2+0xd55*0x2,buttons[_0x4d3e80(0x20a)][_0x4d3e80(0x142)]=0x2439*-0x1+-0x1*0x116+0x254f,canvas[_0x4d3e80(0x18b)][_0x4d3e80(0x17e)](_0x4cfcef[_0x4d3e80(0x19f)]),drawings=[],currentDrawing=[],_0x4cfcef[_0x4d3e80(0x244)](draw),connectionTimer=_0x4cfcef[_0x4d3e80(0x200)](setInterval,()=>{const _0xb9f3d2=_0x4d3e80;connectionSeconds+=0xb65*-0x3+0x1d*-0xb2+-0x1*-0x3659+0.1,document[_0xb9f3d2(0x17a)+_0xb9f3d2(0x1e1)](_0x4cfcef[_0xb9f3d2(0x124)])[_0xb9f3d2(0x155)+'t']=_0x4cfcef[_0xb9f3d2(0x154)](_0x4cfcef[_0xb9f3d2(0x161)],connectionSeconds[_0xb9f3d2(0x113)](-0xd15+-0x604+0x131a));},-0xf99+-0x1*-0x144a+0x16f*-0x3);}function stopConnectionTimer(){const _0x2b525f=_0x566993,_0x4c9e4d={'ZADxi':_0x2b525f(0x1f9),'LenFG':_0x2b525f(0x185),'QQGRD':function(_0x4c7e91,_0x4ed07e,_0x4bba17){return _0x4c7e91(_0x4ed07e,_0x4bba17);},'bJoHe':function(_0x1a09cd,_0x232044,_0x511095){return _0x1a09cd(_0x232044,_0x511095);},'hRwLP':function(_0x451afd,_0x1fa598){return _0x451afd(_0x1fa598);},'CHYZe':function(_0x2433fe,_0x6e7482,_0x56b3da){return _0x2433fe(_0x6e7482,_0x56b3da);},'ZoxrQ':_0x2b525f(0x12a),'XGWvY':_0x2b525f(0x102)+_0x2b525f(0x1e2),'xUydQ':_0x2b525f(0x1fb),'uJfKX':_0x2b525f(0x1fd),'kPTRC':_0x2b525f(0x16d)+_0x2b525f(0x115),'TUgdA':_0x2b525f(0x1ba),'ziRkd':_0x2b525f(0x159)+_0x2b525f(0x1de)+_0x2b525f(0xfa),'VUjzR':_0x2b525f(0x20a),'YajIt':_0x2b525f(0x1aa)+_0x2b525f(0x16f),'kCdsv':_0x2b525f(0x14b),'YBalV':_0x2b525f(0x13b)+_0x2b525f(0x101)+_0x2b525f(0xf4)+_0x2b525f(0x1a8)+_0x2b525f(0x23e),'zqfBR':_0x2b525f(0x1a7)+_0x2b525f(0x1b4)+_0x2b525f(0x22d)+_0x2b525f(0x165),'nrSJa':function(_0x26c3dd,_0x25953a,_0x572e63){return _0x26c3dd(_0x25953a,_0x572e63);}};_0x4c9e4d[_0x2b525f(0x176)](clearInterval,connectionTimer),ping=_0x4c9e4d[_0x2b525f(0x189)](setInterval,pinger,0x11a8+0x3b5+-0x1*0x1175),connectionSeconds=-0x162*-0x13+-0x3*0xf7+-0x1761;const _0x49ce6b=document[_0x2b525f(0x117)+_0x2b525f(0x21a)](_0x4c9e4d[_0x2b525f(0x20b)]);_0x49ce6b[_0x2b525f(0x117)+_0x2b525f(0xe2)](_0x4c9e4d[_0x2b525f(0x141)])[_0x2b525f(0x21c)](_0x18498f=>{const _0x3fa276=_0x2b525f;_0x18498f[_0x3fa276(0x18b)][_0x3fa276(0xf1)](_0x4c9e4d[_0x3fa276(0x1f5)]),_0x18498f[_0x3fa276(0x18b)][_0x3fa276(0x17e)](_0x4c9e4d[_0x3fa276(0x229)]),_0x4c9e4d[_0x3fa276(0x1b8)](setTimeout,()=>{const _0x800616=_0x3fa276;_0x18498f[_0x800616(0xf1)]();},0xe81+-0x3*0x34+-0xbf1*0x1);});const _0x2f7abe=document[_0x2b525f(0x203)+_0x2b525f(0x19c)](_0x4c9e4d[_0x2b525f(0x1a4)]);_0x2f7abe[_0x2b525f(0x211)+'te'](_0x4c9e4d[_0x2b525f(0x129)],_0x4c9e4d[_0x2b525f(0x238)]),_0x2f7abe[_0x2b525f(0x211)+'te']('id',_0x4c9e4d[_0x2b525f(0x149)]),_0x2f7abe[_0x2b525f(0x20a)][_0x2b525f(0xef)]=_0x4c9e4d[_0x2b525f(0x157)],_0x2f7abe[_0x2b525f(0x211)+'te'](_0x4c9e4d[_0x2b525f(0xf2)],_0x4c9e4d[_0x2b525f(0x120)]);const _0x1886a0=document[_0x2b525f(0x203)+_0x2b525f(0x19c)]('p');_0x1886a0[_0x2b525f(0x211)+'te']('id',_0x4c9e4d[_0x2b525f(0x1e4)]),_0x1886a0[_0x2b525f(0x211)+'te'](_0x4c9e4d[_0x2b525f(0xf2)],_0x4c9e4d[_0x2b525f(0x17f)]),_0x1886a0[_0x2b525f(0x155)+'t']=_0x4c9e4d[_0x2b525f(0x22a)],_0x2f7abe[_0x2b525f(0x179)+'d'](_0x1886a0),_0x49ce6b[_0x2b525f(0x179)+'d'](_0x2f7abe),canvas[_0x2b525f(0x20a)][_0x2b525f(0x142)]=-0xe24+-0xf50+0x1d75,buttons[_0x2b525f(0x20a)][_0x2b525f(0x142)]=-0x1*-0xa75+0x14dc+-0x1f50,canvas[_0x2b525f(0x18b)][_0x2b525f(0xf1)](_0x4c9e4d[_0x2b525f(0x229)]),canvas[_0x2b525f(0x18b)][_0x2b525f(0x17e)](_0x4c9e4d[_0x2b525f(0x1f5)]);const _0x209d24=document[_0x2b525f(0x17a)+_0x2b525f(0x1e1)](_0x4c9e4d[_0x2b525f(0x149)]);_0x4c9e4d[_0x2b525f(0x210)](setTimeout,()=>{const _0xa72947=_0x2b525f;_0x209d24[_0xa72947(0x18b)][_0xa72947(0xf1)](_0x4c9e4d[_0xa72947(0x1f5)]),_0x209d24[_0xa72947(0x18b)][_0xa72947(0x17e)](_0x4c9e4d[_0xa72947(0x229)]),_0x4c9e4d[_0xa72947(0x105)](setTimeout,()=>{const _0x50517e=_0xa72947;_0x209d24[_0x50517e(0xf1)]();},0x19a1*0x1+-0xa80*0x1+-0xd2d);},-0x1*-0x1be2+-0x183*-0x13+-0x2ed7);}socket['on'](_0x566993(0x21f),()=>{const _0x4ff6df=_0x566993,_0x11ed65={'facWC':function(_0x11f1cc,_0x1cbf5b){return _0x11f1cc!=_0x1cbf5b;},'kjowC':function(_0x2e051e){return _0x2e051e();}};_0x11ed65[_0x4ff6df(0x1ef)](connectionSeconds,-0xa1e+-0x5e*0x17+0x4*0x4a4)&&_0x11ed65[_0x4ff6df(0x1db)](stopConnectionTimer);}),socket['on'](_0x566993(0x163)+_0x566993(0x190),()=>{const _0x4332ce=_0x566993,_0x37a76c={'DsNUl':function(_0x181003){return _0x181003();}};_0x37a76c[_0x4332ce(0x19d)](startConnectionTimer);}),socket['on'](_0x566993(0x1a1)+_0x566993(0x14c),()=>{const _0x1c0ed3=_0x566993,_0x5e2db6={'PrIXT':function(_0x58f6d8){return _0x58f6d8();}};_0x5e2db6[_0x1c0ed3(0x147)](startConnectionTimer);});function toggleOP(){const _0x5633b1=_0x566993,_0x51639e={'rdsYK':_0x5633b1(0x12b)+_0x5633b1(0x14d),'FlbwQ':_0x5633b1(0x216),'JVpCu':_0x5633b1(0x199),'qdvVQ':_0x5633b1(0x235),'qqyYZ':_0x5633b1(0x112)+_0x5633b1(0x1e0),'FkaFU':_0x5633b1(0x1f8),'jKTmg':_0x5633b1(0x1d7)},_0x5d7800=_0x51639e[_0x5633b1(0x228)][_0x5633b1(0xfe)]('|');let _0x12ec85=-0xc7*0x29+0x162a*0x1+0x9b5;while(!![]){switch(_0x5d7800[_0x12ec85++]){case'0':document[_0x5633b1(0x17a)+_0x5633b1(0x1e1)](_0x51639e[_0x5633b1(0xff)])[_0x5633b1(0x20a)][_0x5633b1(0x1e5)]=uiVisible?'':_0x51639e[_0x5633b1(0x16e)];continue;case'1':document[_0x5633b1(0x17a)+_0x5633b1(0x1e1)](_0x51639e[_0x5633b1(0x152)])[_0x5633b1(0x20a)][_0x5633b1(0x1e5)]=uiVisible?'':_0x51639e[_0x5633b1(0x16e)];continue;case'2':document[_0x5633b1(0x17a)+_0x5633b1(0x1e1)](_0x51639e[_0x5633b1(0x198)])[_0x5633b1(0x20a)][_0x5633b1(0x1e5)]=uiVisible?'':_0x51639e[_0x5633b1(0x16e)];continue;case'3':document[_0x5633b1(0x17a)+_0x5633b1(0x1e1)](_0x51639e[_0x5633b1(0x220)])[_0x5633b1(0x20a)][_0x5633b1(0x1e5)]=uiVisible?'':_0x51639e[_0x5633b1(0x16e)];continue;case'4':uiVisible=!uiVisible;continue;case'5':document[_0x5633b1(0x17a)+_0x5633b1(0x1e1)](_0x51639e[_0x5633b1(0x221)])[_0x5633b1(0x20a)][_0x5633b1(0x1e5)]=uiVisible?'':_0x51639e[_0x5633b1(0x16e)];continue;case'6':buttons[_0x5633b1(0x20a)][_0x5633b1(0x1e5)]=uiVisible?'':_0x51639e[_0x5633b1(0x16e)];continue;case'7':document[_0x5633b1(0x17a)+_0x5633b1(0x1e1)]('xy')[_0x5633b1(0x20a)][_0x5633b1(0x1e5)]=uiVisible?'':_0x51639e[_0x5633b1(0x16e)];continue;}break;}}function resetView(){const _0x5c4145=_0x566993,_0x50cef0={'XaOPb':_0x5c4145(0x151)},_0x2e5c15=_0x50cef0[_0x5c4145(0x121)][_0x5c4145(0xfe)]('|');let _0x3e8a4f=-0x1b6c+0x14f1*-0x1+0x305d;while(!![]){switch(_0x2e5c15[_0x3e8a4f++]){case'0':zoomLevel=-0x1297*0x1+-0x10*0x9f+0x1c87+0.08;continue;case'1':offsetY=-0x1*-0x250f+-0xb2*0x19+0x49*-0x45;continue;case'2':canvasContainer[_0x5c4145(0x20a)][_0x5c4145(0x201)]=_0x5c4145(0x204)+')';continue;case'3':offsetX=-0x198a+0x47f*0x2+0x108c*0x1;continue;case'4':canvas[_0x5c4145(0x20a)][_0x5c4145(0x201)]=_0x5c4145(0x207)+_0x5c4145(0x181);continue;}break;}}function changeColor(_0x5780c9){const _0xc52ba5=_0x566993;currentColor=_0x5780c9[_0xc52ba5(0x10e)][_0xc52ba5(0x215)];}document[_0x566993(0x1b0)+_0x566993(0x1c9)](_0x566993(0x1a6),()=>{isDrawing=![];}),canvas[_0x566993(0x1b0)+_0x566993(0x1c9)](_0x566993(0x1fc),()=>{isDrawing=![];}),canvas[_0x566993(0x1b0)+_0x566993(0x1c9)](_0x566993(0x1bc),_0x4bf92f=>{const _0x1c7c7c=_0x566993,_0x1fdf2f={'QfZKN':function(_0x28995a,_0x41e110){return _0x28995a(_0x41e110);}};isDrawing=!![],_0x1fdf2f[_0x1c7c7c(0x208)](addPoint,_0x4bf92f);}),canvas[_0x566993(0x1b0)+_0x566993(0x1c9)](_0x566993(0x187),_0x2bcc05=>{const _0x1b0d27=_0x566993,_0xfe5aa6={'qCDXm':function(_0x23e082,_0x1f1ead){return _0x23e082/_0x1f1ead;},'ytrBc':function(_0x1ab7dd,_0x5eb91f){return _0x1ab7dd*_0x5eb91f;},'qVXfq':function(_0x172d16,_0x28e470){return _0x172d16-_0x28e470;},'uJLeB':function(_0x532934,_0x4ada3b){return _0x532934*_0x4ada3b;},'ZPBbn':function(_0x29afc1,_0x2c1c2f){return _0x29afc1-_0x2c1c2f;},'vTAPs':function(_0x51c841,_0x3f6975){return _0x51c841(_0x3f6975);},'LUZHZ':_0x1b0d27(0x108)},_0x592953=canvas[_0x1b0d27(0x110)+_0x1b0d27(0x153)+'t'](),_0x36b894=_0xfe5aa6[_0x1b0d27(0x125)](canvas[_0x1b0d27(0xea)],_0x592953[_0x1b0d27(0xea)]),_0x31ebd6=_0xfe5aa6[_0x1b0d27(0x125)](canvas[_0x1b0d27(0x175)],_0x592953[_0x1b0d27(0x175)]),_0x2bc2ba=Math[_0x1b0d27(0x143)](_0xfe5aa6[_0x1b0d27(0x10b)](_0xfe5aa6[_0x1b0d27(0xfc)](_0x2bcc05[_0x1b0d27(0x195)],_0x592953[_0x1b0d27(0x1eb)]),_0x36b894)),_0x1e1827=Math[_0x1b0d27(0x143)](_0xfe5aa6[_0x1b0d27(0x116)](_0xfe5aa6[_0x1b0d27(0x11e)](_0x2bcc05[_0x1b0d27(0x209)],_0x592953[_0x1b0d27(0x13a)]),_0x31ebd6));tx[_0x1b0d27(0x140)]=_0x2bc2ba,ty[_0x1b0d27(0x140)]=_0x1e1827,isDrawing&&(_0xfe5aa6[_0x1b0d27(0x1d1)](addPoint,_0x2bcc05),socket[_0x1b0d27(0x133)](_0xfe5aa6[_0x1b0d27(0x10f)],{'type':_0xfe5aa6[_0x1b0d27(0x10f)],'points':currentDrawing}));}),canvas[_0x566993(0x1b0)+_0x566993(0x1c9)](_0x566993(0x1a6),()=>{const _0x449e7a=_0x566993,_0x7e2fd5={'nWGaJ':function(_0x7cf17c,_0x646df7){return _0x7cf17c>_0x646df7;},'Lvndp':_0x449e7a(0x108),'RlXeU':function(_0x52c16f){return _0x52c16f();}};isDrawing=![],_0x7e2fd5[_0x449e7a(0x128)](currentDrawing[_0x449e7a(0x122)],-0x35+-0xed*0x5+0x26b*0x2)&&(socket[_0x449e7a(0x133)](_0x7e2fd5[_0x449e7a(0x18f)],{'type':_0x7e2fd5[_0x449e7a(0x18f)],'drawing':currentDrawing}),drawings[_0x449e7a(0x10a)](currentDrawing),_0x7e2fd5[_0x449e7a(0x183)](draw),currentDrawing=[]);}),document[_0x566993(0x1b0)+_0x566993(0x1c9)](_0x566993(0xf0),function(_0x1b69f4){const _0x6b2cf3=_0x566993,_0x1bb3da={'wGinM':function(_0x591d4e,_0x49db64){return _0x591d4e===_0x49db64;},'avBnA':_0x6b2cf3(0x109),'bkypd':function(_0xf6ccff,_0x560fee){return _0xf6ccff(_0x560fee);},'RxtPu':_0x6b2cf3(0xee),'gZAAl':_0x6b2cf3(0x15b),'UqskI':function(_0x4c3dad,_0x6941bf){return _0x4c3dad===_0x6941bf;},'fdKDz':_0x6b2cf3(0x13d),'vpVCu':function(_0x15664a,_0x55c2b1){return _0x15664a(_0x55c2b1);},'DoWAn':_0x6b2cf3(0x1eb),'mvXyG':function(_0x441a63,_0x170f36){return _0x441a63===_0x170f36;},'OPeoT':_0x6b2cf3(0x245),'bCSUg':_0x6b2cf3(0xed)};if(_0x1bb3da[_0x6b2cf3(0x224)](_0x1b69f4[_0x6b2cf3(0x156)],_0x1bb3da[_0x6b2cf3(0x1d3)]))_0x1bb3da[_0x6b2cf3(0x11f)](pan,'up');else{if(_0x1bb3da[_0x6b2cf3(0x224)](_0x1b69f4[_0x6b2cf3(0x156)],_0x1bb3da[_0x6b2cf3(0x14a)]))_0x1bb3da[_0x6b2cf3(0x11f)](pan,_0x1bb3da[_0x6b2cf3(0x162)]);else{if(_0x1bb3da[_0x6b2cf3(0x1e6)](_0x1b69f4[_0x6b2cf3(0x156)],_0x1bb3da[_0x6b2cf3(0x182)]))_0x1bb3da[_0x6b2cf3(0xf6)](pan,_0x1bb3da[_0x6b2cf3(0x1f2)]);else _0x1bb3da[_0x6b2cf3(0x1c5)](_0x1b69f4[_0x6b2cf3(0x156)],_0x1bb3da[_0x6b2cf3(0x23b)])&&_0x1bb3da[_0x6b2cf3(0xf6)](pan,_0x1bb3da[_0x6b2cf3(0x23a)]);}}});function addPoint(_0x2194e4){const _0x267828=_0x566993,_0xdf1816={'qlrhw':function(_0xc01d59,_0xf588f5){return _0xc01d59/_0xf588f5;},'RYeEQ':function(_0x32e0db,_0x382d3d){return _0x32e0db*_0x382d3d;},'qJEXk':function(_0x43de60,_0x4d6719){return _0x43de60-_0x4d6719;},'fJmMu':function(_0x3aa030){return _0x3aa030();}};if(!isDrawing)return;const _0x48d2cd=canvas[_0x267828(0x110)+_0x267828(0x153)+'t'](),_0x56c65c=_0xdf1816[_0x267828(0x196)](canvas[_0x267828(0xea)],_0x48d2cd[_0x267828(0xea)]),_0x33f1d2=_0xdf1816[_0x267828(0x196)](canvas[_0x267828(0x175)],_0x48d2cd[_0x267828(0x175)]),_0x24edcc=_0xdf1816[_0x267828(0x167)](_0xdf1816[_0x267828(0x247)](_0x2194e4[_0x267828(0x195)],_0x48d2cd[_0x267828(0x1eb)]),_0x56c65c),_0x40d68d=_0xdf1816[_0x267828(0x167)](_0xdf1816[_0x267828(0x247)](_0x2194e4[_0x267828(0x209)],_0x48d2cd[_0x267828(0x13a)]),_0x33f1d2);currentDrawing[_0x267828(0x10a)]({'x':Math[_0x267828(0x143)](_0x24edcc),'y':Math[_0x267828(0x143)](_0x40d68d),'color':currentColor}),_0xdf1816[_0x267828(0x1b7)](draw);}function draw(){const _0x5ac6aa=_0x566993,_0x12c06e={'EVPst':function(_0x47366c,_0x325a54){return _0x47366c<_0x325a54;},'hnzEV':function(_0x3b2ca4,_0x393375){return _0x3b2ca4<_0x393375;},'tpNZJ':function(_0x5b72ca,_0x12b2cb){return _0x5b72ca-_0x12b2cb;},'yZIrN':function(_0x16a4a7,_0x27ca40){return _0x16a4a7>_0x27ca40;}};context[_0x5ac6aa(0x242)](0x1*0x280+-0x1a0+0x7*-0x20,0x4*0x49+-0x1984+0x1860,canvas[_0x5ac6aa(0xea)],canvas[_0x5ac6aa(0x175)]);for(const _0x21687b of drawings){if(_0x12c06e[_0x5ac6aa(0x1f7)](_0x21687b[_0x5ac6aa(0x122)],-0xb45+-0x18df+-0x295*-0xe))continue;for(let _0x41e358=-0x1*0x1549+-0x1*-0x677+0xed3;_0x12c06e[_0x5ac6aa(0x239)](_0x41e358,_0x21687b[_0x5ac6aa(0x122)]);_0x41e358++){const _0x307e51=_0x21687b[_0x12c06e[_0x5ac6aa(0x234)](_0x41e358,0x6ad*0x5+0xef5+-0x3055)],_0xb959b8=_0x21687b[_0x41e358];context[_0x5ac6aa(0x158)](),context[_0x5ac6aa(0x1c7)+'e']=_0x307e51[_0x5ac6aa(0x14e)],context[_0x5ac6aa(0x1bf)](Math[_0x5ac6aa(0x143)](_0x307e51['x']),Math[_0x5ac6aa(0x143)](_0x307e51['y'])),context[_0x5ac6aa(0x233)](Math[_0x5ac6aa(0x143)](_0xb959b8['x']),Math[_0x5ac6aa(0x143)](_0xb959b8['y'])),context[_0x5ac6aa(0x1a0)]();}}context[_0x5ac6aa(0x1a0)]();if(_0x12c06e[_0x5ac6aa(0x146)](currentDrawing[_0x5ac6aa(0x122)],0x2*-0x1273+0x1639*-0x1+0x3b1f)){context[_0x5ac6aa(0x158)](),context[_0x5ac6aa(0x1c7)+'e']=currentColor,context[_0x5ac6aa(0x1bf)](Math[_0x5ac6aa(0x143)](currentDrawing[-0x17*0x3+0x26a3+0x665*-0x6]['x']),Math[_0x5ac6aa(0x143)](currentDrawing[0x512*-0x2+-0x2*-0x112a+-0x102*0x18]['y']));for(let _0x371c8b=0x925+-0x443*-0x8+-0xacf*0x4;_0x12c06e[_0x5ac6aa(0x239)](_0x371c8b,currentDrawing[_0x5ac6aa(0x122)]);_0x371c8b++){const _0x27f8f6=currentDrawing[_0x371c8b];context[_0x5ac6aa(0x233)](Math[_0x5ac6aa(0x143)](_0x27f8f6['x']),Math[_0x5ac6aa(0x143)](_0x27f8f6['y']));}context[_0x5ac6aa(0x1a0)]();}}socket['on'](_0x566993(0xfd),_0x55372a=>{const _0x4a8429=_0x566993,_0x5d2675={'PNGUI':_0x4a8429(0x1f8),'Tbjqr':function(_0x20e592,_0xecf4f9){return _0x20e592+_0xecf4f9;},'DHUmE':_0x4a8429(0x192)};document[_0x4a8429(0x17a)+_0x4a8429(0x1e1)](_0x5d2675[_0x4a8429(0x111)])[_0x4a8429(0x117)+_0x4a8429(0x21a)]('p')[_0x4a8429(0x155)+'t']=_0x5d2675[_0x4a8429(0x170)](_0x5d2675[_0x4a8429(0x170)](_0x5d2675[_0x4a8429(0x100)],_0x55372a[_0x4a8429(0x1ca)]),'MB'),document[_0x4a8429(0x17a)+_0x4a8429(0x1e1)](_0x5d2675[_0x4a8429(0x111)])[_0x4a8429(0x20a)][_0x4a8429(0x142)]=0x7*-0x35d+-0x9e*-0x17+0x959+0.25;}),socket['on'](_0x566993(0x1e3),_0x1f4441=>{const _0x116204=_0x566993,_0x2ebf40={'AvtgH':_0x116204(0x199),'mVrlG':function(_0x4d0c91,_0x5a11ae){return _0x4d0c91-_0x5a11ae;},'obdUi':_0x116204(0x1f9),'RRxfP':_0x116204(0x185),'YaOLG':function(_0x3ae6b4,_0x3e0f14,_0x4c3967){return _0x3ae6b4(_0x3e0f14,_0x4c3967);},'RdHmy':_0x116204(0x12a),'ZlnLU':_0x116204(0x1fb),'wbVzR':_0x116204(0x1fd),'Uyeni':_0x116204(0x16d)+_0x116204(0x132),'SkvDW':_0x116204(0x159)+_0x116204(0x1de)+_0x116204(0xfa),'whArh':_0x116204(0x20a),'bgaCD':_0x116204(0x13b)+_0x116204(0x240)+_0x116204(0xf4)+_0x116204(0x1a8)+_0x116204(0x23e),'lZgbX':_0x116204(0x1df)+_0x116204(0xe1)+_0x116204(0x1d9)+_0x116204(0x1ac),'XMrmn':function(_0x50bef4,_0x2fbb49,_0x402183){return _0x50bef4(_0x2fbb49,_0x402183);}},_0x11b1a2=document[_0x116204(0x117)+_0x116204(0x21a)](_0x2ebf40[_0x116204(0x130)]),_0x13763e=document[_0x116204(0x203)+_0x116204(0x19c)](_0x2ebf40[_0x116204(0xeb)]);_0x13763e[_0x116204(0x211)+'te'](_0x2ebf40[_0x116204(0x18c)],_0x2ebf40[_0x116204(0x20d)]),_0x13763e[_0x116204(0x211)+'te']('id',announceCount),_0x13763e[_0x116204(0x20a)][_0x116204(0xef)]=_0x2ebf40[_0x116204(0x1c1)];const _0x13b1e5=document[_0x116204(0x203)+_0x116204(0x19c)]('p');_0x13b1e5[_0x116204(0x211)+'te'](_0x2ebf40[_0x116204(0x137)],_0x2ebf40[_0x116204(0x246)]),_0x13b1e5[_0x116204(0x155)+'t']=_0x2ebf40[_0x116204(0x1ea)],_0x13763e[_0x116204(0x179)+'d'](_0x13b1e5),_0x11b1a2[_0x116204(0x179)+'d'](_0x13763e),announceCount++,announcementIDs[_0x116204(0x10a)](_0x2ebf40[_0x116204(0x22e)](announceCount,-0x49c+0x56*0x5e+0xb1*-0x27)),_0x2ebf40[_0x116204(0xf9)](setTimeout,()=>{const _0xf008c7=_0x116204,_0x5a30ef=document[_0xf008c7(0x17a)+_0xf008c7(0x1e1)](_0x2ebf40[_0xf008c7(0x22e)](announceCount,-0x1*-0x2395+-0xdf9+-0x159b));_0x5a30ef[_0xf008c7(0x18b)][_0xf008c7(0xf1)](_0x2ebf40[_0xf008c7(0x131)]),_0x5a30ef[_0xf008c7(0x18b)][_0xf008c7(0x17e)](_0x2ebf40[_0xf008c7(0xde)]),_0x2ebf40[_0xf008c7(0x18e)](setTimeout,()=>{const _0x323584=_0xf008c7;_0x5a30ef[_0x323584(0x20a)][_0x323584(0x1e5)]=_0x2ebf40[_0x323584(0x15e)],_0x5a30ef[_0x323584(0xf1)]();},0x26e6+0x2b6*0xb+-0x42c4);},0x2*-0x7db+-0x18fc+0x3c3a);}),socket['on'](_0x566993(0x10c),_0x44202c=>{const _0x22258b=_0x566993,_0x32c999={'VZYTU':function(_0x1b4d2a,_0x5b17eb){return _0x1b4d2a!=_0x5b17eb;},'vWFuQ':_0x22258b(0x243),'gPjVd':_0x22258b(0x227)+'er'};_0x32c999[_0x22258b(0x193)](_0x44202c[_0x22258b(0x150)],_0x32c999[_0x22258b(0x11b)])?(document[_0x22258b(0x17a)+_0x22258b(0x1e1)](_0x32c999[_0x22258b(0xf5)])[_0x22258b(0xe3)]=_0x44202c[_0x22258b(0x150)],document[_0x22258b(0x17a)+_0x22258b(0x1e1)](_0x32c999[_0x22258b(0xf5)])[_0x22258b(0x10c)]()):document[_0x22258b(0x17a)+_0x22258b(0x1e1)](_0x32c999[_0x22258b(0xf5)])[_0x22258b(0x1e8)]();}),socket['on'](_0x566993(0x119)+'nt',_0x3f2bfe=>{const _0x3556f8=_0x566993,_0x5552be={'AsNWC':_0x3556f8(0x199),'vIzlU':function(_0x5a4125,_0x1fde58){return _0x5a4125-_0x1fde58;},'QlufK':_0x3556f8(0x1f9),'qHxHZ':_0x3556f8(0x185),'XoZAy':function(_0x5a9af4,_0x19dd76,_0x19d3b1){return _0x5a9af4(_0x19dd76,_0x19d3b1);},'eHtmH':_0x3556f8(0x12a),'aphjG':_0x3556f8(0x1fb),'rvXJf':_0x3556f8(0x1fd),'mJgSp':function(_0x788ca8,_0x55a72b){return _0x788ca8+_0x55a72b;},'WOGWF':_0x3556f8(0x16d)+_0x3556f8(0x226),'dwVSd':_0x3556f8(0x159)+_0x3556f8(0x1de)+_0x3556f8(0xfa),'QDAYX':_0x3556f8(0x20a),'dDasf':_0x3556f8(0x13b)+_0x3556f8(0x240)+_0x3556f8(0xf4)+_0x3556f8(0x1a8)+_0x3556f8(0x23e),'Plbag':function(_0x216003,_0x4b1742){return _0x216003-_0x4b1742;},'Vbiyd':function(_0x9717f5,_0x125eaf,_0x36851e){return _0x9717f5(_0x125eaf,_0x36851e);}};if(_0x3f2bfe[_0x3556f8(0x15c)]&&_0x3f2bfe[_0x3556f8(0x14e)]){const _0x389ab1=_0x3f2bfe[_0x3556f8(0x15c)],_0x18c624=document[_0x3556f8(0x117)+_0x3556f8(0x21a)](_0x5552be[_0x3556f8(0x1ad)]),_0x50748d=document[_0x3556f8(0x203)+_0x3556f8(0x19c)](_0x5552be[_0x3556f8(0x223)]);_0x50748d[_0x3556f8(0x211)+'te'](_0x5552be[_0x3556f8(0x1e7)],_0x5552be[_0x3556f8(0x166)](_0x5552be[_0x3556f8(0x12c)],_0x3f2bfe[_0x3556f8(0x14e)])),_0x50748d[_0x3556f8(0x211)+'te']('id',announceCount),_0x50748d[_0x3556f8(0x20a)][_0x3556f8(0xef)]=_0x5552be[_0x3556f8(0x1a9)];const _0x2dac6b=document[_0x3556f8(0x203)+_0x3556f8(0x19c)]('p');_0x2dac6b[_0x3556f8(0x211)+'te'](_0x5552be[_0x3556f8(0x231)],_0x5552be[_0x3556f8(0x205)]),_0x2dac6b[_0x3556f8(0x155)+'t']=_0x389ab1,_0x50748d[_0x3556f8(0x179)+'d'](_0x2dac6b),_0x18c624[_0x3556f8(0x179)+'d'](_0x50748d),announceCount++,announcementIDs[_0x3556f8(0x10a)](_0x5552be[_0x3556f8(0x21d)](announceCount,0xe57+-0x25e3+-0x178d*-0x1)),_0x5552be[_0x3556f8(0x1f3)](setTimeout,()=>{const _0x479b63=_0x3556f8,_0x5e9bd9={'EspsH':_0x5552be[_0x479b63(0x202)]},_0x5c56fb=document[_0x479b63(0x17a)+_0x479b63(0x1e1)](_0x5552be[_0x479b63(0x1d5)](announceCount,-0xe6e*0x1+0x215e+-0x12ef*0x1));_0x5c56fb[_0x479b63(0x18b)][_0x479b63(0xf1)](_0x5552be[_0x479b63(0x1d4)]),_0x5c56fb[_0x479b63(0x18b)][_0x479b63(0x17e)](_0x5552be[_0x479b63(0x1f4)]),_0x5552be[_0x479b63(0x139)](setTimeout,()=>{const _0x4b4a91=_0x479b63;_0x5c56fb[_0x4b4a91(0x20a)][_0x4b4a91(0x1e5)]=_0x5e9bd9[_0x4b4a91(0x1a5)],_0x5c56fb[_0x4b4a91(0xf1)]();},-0x13ef+0x1e50+-0x86d*0x1);},0x1*0x1245+-0x1cff+0x1e42);}});function hideMessages(){const _0x1253f8=_0x566993,_0x360f66={'bRcQw':function(_0x5b7212,_0x391f0e){return _0x5b7212!=_0x391f0e;},'YGJla':_0x1253f8(0x19b),'oaUvv':_0x1253f8(0x185),'nPbVA':function(_0x372f14,_0x5bdb4a){return _0x372f14!=_0x5bdb4a;},'DUBYo':_0x1253f8(0x199),'oIprH':_0x1253f8(0x12a),'ShlkK':_0x1253f8(0x1fb),'BMnRq':function(_0x266d9d,_0x3c05ee){return _0x266d9d>_0x3c05ee;},'HAJJW':function(_0x11868c,_0x2943af,_0x86ed1f){return _0x11868c(_0x2943af,_0x86ed1f);}},_0x2abb8a=document[_0x1253f8(0x117)+_0x1253f8(0x21a)](_0x360f66[_0x1253f8(0x217)]);if(_0x2abb8a){const _0x3b2e55=_0x2abb8a[_0x1253f8(0x117)+_0x1253f8(0xe2)](_0x360f66[_0x1253f8(0x1c6)]);_0x360f66[_0x1253f8(0xe9)](_0x3b2e55[_0x1253f8(0x122)],-0x49*-0x2b+0x6*0x2d5+-0x1d40)&&(_0x3b2e55[_0x1253f8(0x21c)](_0x182bf9=>{const _0x1e9cbf=_0x1253f8;_0x360f66[_0x1e9cbf(0xe8)](_0x182bf9[_0x1e9cbf(0xe4)+'te']('id'),_0x360f66[_0x1e9cbf(0x206)])&&_0x182bf9[_0x1e9cbf(0x18b)][_0x1e9cbf(0x17e)](_0x360f66[_0x1e9cbf(0x212)]);}),_0x360f66[_0x1253f8(0x1ce)](setTimeout,()=>{const _0x2d6956=_0x1253f8;_0x3b2e55[_0x2d6956(0x21c)](_0x17c090=>{const _0x2c1196=_0x2d6956;_0x360f66[_0x2c1196(0xdf)](_0x17c090[_0x2c1196(0xe4)+'te']('id'),_0x360f66[_0x2c1196(0x206)])&&(_0x17c090[_0x2c1196(0x20a)][_0x2c1196(0x1e5)]=_0x360f66[_0x2c1196(0x171)],_0x17c090[_0x2c1196(0xf1)]());});},0x16*-0xb4+-0xb*-0x97+0xaef));}}setInterval(hideMessages,-0xc34+-0x966+0x2922),socket['on'](_0x566993(0x112)+_0x566993(0x1e0),_0x1ef155=>{const _0xa69171=_0x566993,_0x1994c2={'PLYBa':_0xa69171(0x10d),'MNaqJ':_0xa69171(0x112)+_0xa69171(0x1e0)};document[_0xa69171(0x17a)+_0xa69171(0x1e1)](_0x1994c2[_0xa69171(0x1b9)])[_0xa69171(0x155)+'t']=_0xa69171(0x11a)+_0xa69171(0x1a3)+_0x1ef155,document[_0xa69171(0x17a)+_0xa69171(0x1e1)](_0x1994c2[_0xa69171(0x138)])[_0xa69171(0x20a)][_0xa69171(0x142)]=0x3f8*0x1+-0x1ca5+0x18ad+0.25;}),socket['on'](_0x566993(0x22b),_0x3028f1=>{const _0x6d3833=_0x566993;location[_0x6d3833(0x22b)](!![]);}),socket['on'](_0x566993(0x216),_0x38bdda=>{const _0x1d6915=_0x566993,_0x265763={'TSryX':_0x1d6915(0x222),'vSWxB':_0x1d6915(0x216),'jrDlP':function(_0x2d171c,_0x123fb5){return _0x2d171c+_0x123fb5;},'CuxtG':_0x1d6915(0xdd),'rFqmh':_0x1d6915(0x106),'WHHrj':function(_0x10b25a,_0x5cc9c1){return _0x10b25a+_0x5cc9c1;},'SEsif':function(_0x4e0acd,_0x5e808e){return _0x4e0acd+_0x5e808e;},'GSsFq':_0x1d6915(0x118)},_0x5ca507=_0x265763[_0x1d6915(0x12f)][_0x1d6915(0xfe)]('|');let _0x42201d=0x138f*0x1+-0x10*0x160+0x271;while(!![]){switch(_0x5ca507[_0x42201d++]){case'0':document[_0x1d6915(0x17a)+_0x1d6915(0x1e1)](_0x265763[_0x1d6915(0x1ed)])[_0x1d6915(0x20a)][_0x1d6915(0x142)]=-0x935+0x2561+-0x1c2c+0.25;continue;case'1':document[_0x1d6915(0x19a)]=_0x265763[_0x1d6915(0x1b1)](_0x265763[_0x1d6915(0x144)],_0x38bdda);continue;case'2':document[_0x1d6915(0x17a)+_0x1d6915(0x1e1)](_0x265763[_0x1d6915(0x230)])[_0x1d6915(0x155)+'t']=_0x265763[_0x1d6915(0x126)](_0x265763[_0x1d6915(0x144)],_0x38bdda);continue;case'3':versionSet=!![];continue;case'4':document[_0x1d6915(0x17a)+_0x1d6915(0x1e1)](_0x265763[_0x1d6915(0x1ed)])[_0x1d6915(0x117)+_0x1d6915(0x21a)]('p')[_0x1d6915(0x155)+'t']=_0x265763[_0x1d6915(0x114)](_0x265763[_0x1d6915(0x248)],_0x38bdda);continue;}break;}}),socket['on'](_0x566993(0x108),_0x24ddbd=>{const _0x3ce051=_0x566993,_0x3282f2={'zyTIu':_0x3ce051(0x199),'GkdZh':_0x3ce051(0x1fb),'djARF':_0x3ce051(0x1f9),'KJfvZ':_0x3ce051(0x185),'TfvmC':function(_0x16a40b,_0xf58c4f,_0x45fae4){return _0x16a40b(_0xf58c4f,_0x45fae4);},'UKcQH':function(_0x42366e,_0x414646){return _0x42366e===_0x414646;},'HwXgZ':_0x3ce051(0x108),'hgBHx':function(_0x49398f){return _0x49398f();},'fdwXy':_0x3ce051(0x135)+_0x3ce051(0x169),'KwsSs':_0x3ce051(0x1cf),'oPSjb':_0x3ce051(0x241),'gvwPl':_0x3ce051(0x1b6),'TMcku':function(_0x3f7ceb,_0x413bb4){return _0x3f7ceb(_0x413bb4);},'FtYoM':_0x3ce051(0xe5),'blskS':_0x3ce051(0x1d6)+'1','nZPXd':_0x3ce051(0x1f0),'fjUoX':_0x3ce051(0x1e9),'FUSze':_0x3ce051(0x177),'FZRvS':_0x3ce051(0x232),'yZHPB':function(_0x5dcc38,_0x234fbd,_0x3fe67e,_0x41a481){return _0x5dcc38(_0x234fbd,_0x3fe67e,_0x41a481);},'HlgUi':_0x3ce051(0x1b2)};if(_0x3282f2[_0x3ce051(0x1c3)](_0x24ddbd[_0x3ce051(0xe0)],_0x3282f2[_0x3ce051(0x1bd)])&&_0x24ddbd[_0x3ce051(0x16a)])drawings[_0x3ce051(0x10a)](_0x24ddbd[_0x3ce051(0x16a)]),_0x3282f2[_0x3ce051(0xe7)](draw);else{if(_0x3282f2[_0x3ce051(0x1c3)](_0x24ddbd[_0x3ce051(0xe0)],_0x3282f2[_0x3ce051(0x16b)])&&_0x24ddbd[_0x3ce051(0x17d)]){const _0x46293a=JSON[_0x3ce051(0x21b)](_0x24ddbd[_0x3ce051(0x17d)]);drawings[_0x3ce051(0x10a)](..._0x46293a),_0x3282f2[_0x3ce051(0xe7)](draw),document[_0x3ce051(0x17a)+_0x3ce051(0x1e1)](_0x3282f2[_0x3ce051(0x23f)])[_0x3ce051(0x20a)][_0x3ce051(0x142)]=0x1095+-0x2b*-0xbf+-0x30a9,document[_0x3ce051(0x17a)+_0x3ce051(0x1e1)](_0x3282f2[_0x3ce051(0x23f)])[_0x3ce051(0x20a)][_0x3ce051(0x219)]=_0x3282f2[_0x3ce051(0x237)],canvas[_0x3ce051(0x20a)][_0x3ce051(0x142)]=0x2*0xe08+0x128+-0x1d37,canvas[_0x3ce051(0x20a)][_0x3ce051(0x219)]=_0x3282f2[_0x3ce051(0x17b)],buttons[_0x3ce051(0x20a)][_0x3ce051(0x142)]=0x909*-0x1+0x1c51+-0xf*0x149;if(!_0x3282f2[_0x3ce051(0x173)](getCookie,_0x3282f2[_0x3ce051(0x194)])){const _0x14163f=_0x3282f2[_0x3ce051(0x22f)][_0x3ce051(0xfe)]('|');let _0x4cc4e1=-0x16a2+-0xe73+-0x2515*-0x1;while(!![]){switch(_0x14163f[_0x4cc4e1++]){case'0':_0x181402[_0x3ce051(0x117)+_0x3ce051(0x21a)](_0x3282f2[_0x3ce051(0x18d)])[_0x3ce051(0x18b)][_0x3ce051(0x17e)](_0x3282f2[_0x3ce051(0x21e)]);continue;case'1':document[_0x3ce051(0x17a)+_0x3ce051(0x1e1)](_0x3282f2[_0x3ce051(0x1d2)])[_0x3ce051(0x1b0)+_0x3ce051(0x1c9)](_0x3282f2[_0x3ce051(0x13e)],_0x429c22=>{const _0x469033=_0x3ce051;_0x181402[_0x469033(0x20a)][_0x469033(0x142)]=0x16d*0x10+0x1a44+-0x3114,_0x181402[_0x469033(0x117)+_0x469033(0x21a)](_0x3282f2[_0x469033(0x18d)])[_0x469033(0x18b)][_0x469033(0xf1)](_0x3282f2[_0x469033(0x21e)]),_0x181402[_0x469033(0x117)+_0x469033(0x21a)](_0x3282f2[_0x469033(0x18d)])[_0x469033(0x18b)][_0x469033(0x17e)](_0x3282f2[_0x469033(0x19e)]),_0x3282f2[_0x469033(0x1da)](setTimeout,()=>{const _0x463cfb=_0x469033;_0x181402[_0x463cfb(0x20a)][_0x463cfb(0x1e5)]=_0x3282f2[_0x463cfb(0x186)];},-0x14e9+0x4cd+0x1210);});continue;case'2':var _0x181402=document[_0x3ce051(0x17a)+_0x3ce051(0x1e1)](_0x3282f2[_0x3ce051(0x172)]);continue;case'3':_0x181402[_0x3ce051(0x20a)][_0x3ce051(0x1e5)]=_0x3282f2[_0x3ce051(0x17c)];continue;case'4':_0x181402[_0x3ce051(0x20a)][_0x3ce051(0x142)]=0x317+0x23*-0x97+0x118f;continue;case'5':_0x3282f2[_0x3ce051(0x22c)](setCookie,_0x3282f2[_0x3ce051(0x194)],_0x3282f2[_0x3ce051(0x164)],0x1*0x175+-0x1952+0x2*0xca5);continue;}break;}}}}});let zoomLevel=0x92*-0x1a+-0x359*-0x8+-0x44*0x2d+0.08;function _0x2de7(){const _0x59208d=['toFixed','SEsif','deup\x20green','uJLeB','querySelec','Version:\x20','announceme','Connected\x20','vWFuQ','vXIUh','sfGne','ZPBbn','bkypd','YajIt','XaOPb','length','14440BcmHFu','PVDeP','qCDXm','WHHrj','pQKfs','nWGaJ','uJfKX','.messages','4|6|5|7|2|','WOGWF','drawingCan','VSSJW','TSryX','RdHmy','obdUi','deup\x20red','emit','pong','existingDr','preventDef','whArh','MNaqJ','XoZAy','top','white-spac','getContext','ArrowLeft','fjUoX','104742ZgvhFK','innerHTML','XGWvY','opacity','round','CuxtG','FizLR','yZIrN','PrIXT','deltaY','TUgdA','RxtPu','timeout','meout','0|1|3','color','2105217TarUtI','audio','2|4|0|3|1','qdvVQ','gClientRec','rpudV','textConten','key','ziRkd','beginPath','0\x204px\x208px\x20','scale(','down','message','Server\x20Con','AvtgH','HNimE','oUFAM','XAdDv','gZAAl','connect_er','HlgUi','tored','mJgSp','RYeEQ','MSHRM','awings','drawing','fdwXy','76141tvaNUv','message\x20fa','JVpCu','\x20auto;','Tbjqr','DUBYo','FUSze','TMcku','ainer','height','hRwLP','welcome','vas','appendChil','getElement','gvwPl','FZRvS','drawings','add','YBalV',';\x20expires=','0px,\x200px)','fdKDz','RlXeU','gBdxr','fadedown','zyTIu','mousemove','YuEuW','CHYZe','2628OSWOWE','classList','wbVzR','GkdZh','YaOLG','Lvndp','ror','2723CZXbiV','Size:\x20','VZYTU','FtYoM','clientX','qlrhw',';\x20path=/','qqyYZ','none','title','connection','ent','DsNUl','KJfvZ','fOWql','stroke','connect_ti','setDate','Clients:\x20','xUydQ','EspsH','mouseup','Server\x20con','px\x2050px\x2025','dwVSd','min-width:','cookie','mited','eHtmH','duqzD','sAQBQ','addEventLi','jrDlP','true','imageSmoot','nection\x20ha','30GAQosq','visible','fJmMu','QQGRD','PLYBa','success','AdqEp','mousedown','HwXgZ','IFvDq','moveTo','UjZXw','SkvDW','idXvm','UKcQH','keHhx','mvXyG','ShlkK','strokeStyl','WpHIw','stener','size','ZwWia','aVMXG','300px','HAJJW','transition','500616CdwYjZ','vTAPs','nZPXd','avBnA','QlufK','vIzlU','2|3|4|0|5|','resetView','px)','en\x20rate\x20li','TfvmC','kjowC','px,\x20','8056092RmielH','rgba(0,\x200,','You\x20are\x20cu','lients','ById','ction\x22]','drawLimit','kCdsv','display','UqskI','rvXJf','pause','click','lZgbX','left','112968KqSxvJ','vSWxB','saUmI','facWC','w-close','Ping:\x20','DoWAn','Vbiyd','qHxHZ','ZADxi','ault','EVPst','data','fadeup','nection\x20Ti','div','mouseleave','class','buttons','#000000','KpVpS','transform','AsNWC','createElem','scale(0.08','dDasf','YGJla','translate(','QfZKN','clientY','style','ZoxrQ','canvasCont','Uyeni','bWnSD','now','nrSJa','setAttribu','oaUvv','50vkfYdE','NqMaX','value','version','oIprH','zXRvM','visibility','tor','parse','forEach','Plbag','djARF','connect','FkaFU','jKTmg','1|4|0|3|2','aphjG','wGinM','fRrRS','deup\x20','audio-play','rdsYK','LenFG','zqfBR','reload','yZHPB','s\x20been\x20res','mVrlG','blskS','rFqmh','QDAYX','flex','lineTo','tpNZJ','ping','map','oPSjb','kPTRC','hnzEV','bCSUg','OPeoT','meout:\x20','hingEnable','px\x2050px','KwsSs','e:\x20normal;','hidden','clearRect','stop','YxvXl','ArrowRight','bgaCD','qJEXk','GSsFq','Ficqt','getDate','Collavas\x20v','RRxfP','nPbVA','type','rrently\x20be','torAll','src','getAttribu','visited','MlrTo','hgBHx','bRcQw','BMnRq','width','ZlnLU','trim','right','ArrowDown','boxShadow','keydown','remove','VUjzR','wOBfK','margin:\x2025','gPjVd','vpVCu','wheel','4oYTOIU','XMrmn','\x200,\x200.1)','10stIeHr','qVXfq','dataSize','split','FlbwQ','DHUmE','e:\x20nowrap;','[id=\x22conne','toUTCStrin','qnnwq','bJoHe','w-version','wlLDo','draw','ArrowUp','push','ytrBc','play','clientNum','target','LUZHZ','getBoundin','PNGUI','connectedC'];_0x2de7=function(){return _0x59208d;};return _0x2de7();}const zoomFactor=0x1*0xb45+-0x1a2c+0xee7+0.1;let offsetX=0x5*0x66d+-0x7c+-0x1fa5,offsetY=0x1329+0x10*-0x25f+0x12c7;function _0x3691(_0x1c7fdc,_0x3e5e20){const _0x1b9fcd=_0x2de7();return _0x3691=function(_0x143a08,_0x5f3f25){_0x143a08=_0x143a08-(0xc95+-0x2*0x1154+-0x7a5*-0x3);let _0x256e6a=_0x1b9fcd[_0x143a08];return _0x256e6a;},_0x3691(_0x1c7fdc,_0x3e5e20);}function pan(_0x47c279){const _0x50b832=_0x566993,_0x5c4b5a={'idXvm':_0x50b832(0x1eb),'zXRvM':_0x50b832(0xed),'MSHRM':_0x50b832(0x15b),'MlrTo':function(_0x114916){return _0x114916();}},_0x2c5369=0x1162+-0x2f*0x7f+0x617;switch(_0x47c279){case _0x5c4b5a[_0x50b832(0x1c2)]:offsetX+=_0x2c5369;break;case _0x5c4b5a[_0x50b832(0x218)]:offsetX-=_0x2c5369;break;case'up':offsetY+=_0x2c5369;break;case _0x5c4b5a[_0x50b832(0x168)]:offsetY-=_0x2c5369;break;default:break;}_0x5c4b5a[_0x50b832(0xe6)](updateCanvasContainerPosition);}function updateCanvasContainerPosition(){const _0xdf7d0f=_0x566993,_0x231104={'bWnSD':function(_0xc51f78,_0x5a032f){return _0xc51f78==_0x5a032f;}};_0x231104[_0xdf7d0f(0x20e)](zoomLevel,0x1*0x2099+0x1494+-0x352d*0x1+0.08)?(canvas[_0xdf7d0f(0x20a)][_0xdf7d0f(0x201)]=_0xdf7d0f(0x181),offsetX=-0x752+0xdbe*-0x1+0x1510,offsetY=-0x1014+-0xce4+0x1cf8):canvas[_0xdf7d0f(0x20a)][_0xdf7d0f(0x201)]=_0xdf7d0f(0x207)+offsetX+_0xdf7d0f(0x1dc)+offsetY+_0xdf7d0f(0x1d8);}canvasContainer[_0x566993(0x1b0)+_0x566993(0x1c9)](_0x566993(0xf7),_0x5a6264=>{const _0x20aa58=_0x566993,_0x29f27d={'HNimE':function(_0x221eed,_0x2ccfc2){return _0x221eed>_0x2ccfc2;},'oUFAM':function(_0x226dd2,_0x12210c){return _0x226dd2+_0x12210c;},'fRrRS':function(_0x9f70f4,_0x4daf3e){return _0x9f70f4*_0x4daf3e;},'YuEuW':function(_0x1db9d3,_0x50ad50){return _0x1db9d3<_0x50ad50;},'ZwWia':function(_0xd73325){return _0xd73325();}};_0x5a6264[_0x20aa58(0x136)+_0x20aa58(0x1f6)]();const _0x21bad3=_0x29f27d[_0x20aa58(0x15f)](_0x5a6264[_0x20aa58(0x148)],0x254c+0x1483+-0x39cf)?-(-0xaa*-0x1f+-0x139*-0x11+-0x295e):-0x580+-0x26db+-0x29c*-0x11,_0x46ed3c=_0x29f27d[_0x20aa58(0x160)](-0x1b93+0x79*-0x29+0x3*0xfa7,_0x29f27d[_0x20aa58(0x225)](_0x21bad3,zoomFactor));zoomLevel*=_0x46ed3c;_0x29f27d[_0x20aa58(0x188)](zoomLevel,0xf63+-0xb*0x33c+0x1431+0.08)&&(zoomLevel=0x6b3+-0x1293+0xbe0+0.08,canvas[_0x20aa58(0x20a)][_0x20aa58(0x201)]=_0x20aa58(0x207)+_0x20aa58(0x181),_0x29f27d[_0x20aa58(0x1cb)](updateCanvasContainerPosition));if(_0x29f27d[_0x20aa58(0x15f)](zoomLevel,-0x58c+-0x52+-0x2f9*-0x2))zoomLevel=0x1979+-0x109d*0x2+0x7d5;canvasContainer[_0x20aa58(0x20a)][_0x20aa58(0x201)]=_0x20aa58(0x15a)+zoomLevel+')';});
\ No newline at end of file
diff --git a/public/static/js/main-P50wHw-1.js b/public/static/js/main-P50wHw-1.js
new file mode 100644
index 0000000..0a5f4fd
--- /dev/null
+++ b/public/static/js/main-P50wHw-1.js
@@ -0,0 +1 @@
+const _0x193ac2=_0x4207;(function(_0x2d82f6,_0x2bafde){const _0x3cd5b0=_0x4207,_0x1cdbfc=_0x2d82f6();while(!![]){try{const _0x518468=-parseInt(_0x3cd5b0(0x15d))/0x1*(parseInt(_0x3cd5b0(0x1d5))/0x2)+-parseInt(_0x3cd5b0(0x188))/0x3+-parseInt(_0x3cd5b0(0x176))/0x4+parseInt(_0x3cd5b0(0x166))/0x5+parseInt(_0x3cd5b0(0x1b5))/0x6+-parseInt(_0x3cd5b0(0x16d))/0x7*(-parseInt(_0x3cd5b0(0x177))/0x8)+parseInt(_0x3cd5b0(0x159))/0x9;if(_0x518468===_0x2bafde)break;else _0x1cdbfc['push'](_0x1cdbfc['shift']());}catch(_0x33d663){_0x1cdbfc['push'](_0x1cdbfc['shift']());}}}(_0x2bcc,0x75513));function _0x4207(_0x5cbf46,_0x13dc32){const _0x2bcc1e=_0x2bcc();return _0x4207=function(_0x4207e2,_0x21a39e){_0x4207e2=_0x4207e2-0x14e;let _0xcb52cc=_0x2bcc1e[_0x4207e2];return _0xcb52cc;},_0x4207(_0x5cbf46,_0x13dc32);}const socket=io({'timeout':0x1f4}),canvas=document[_0x193ac2(0x1c9)]('drawingCanvas'),canvasContainer=document[_0x193ac2(0x1c9)](_0x193ac2(0x1c2)),buttons=document[_0x193ac2(0x1c9)](_0x193ac2(0x19a)),tx=document[_0x193ac2(0x1c9)]('x'),ty=document[_0x193ac2(0x1c9)]('y'),context=canvas['getContext']('2d'),chat=document[_0x193ac2(0x191)](_0x193ac2(0x15c)),nameinput=document['getElementById'](_0x193ac2(0x156)),drawingEmitDelay=0x1f4;let lastDrawingEmitTime=0x0,drawings=[],announcementIDs=[],currentDrawing=[],isDrawing=![],uiVisible=!![],currentColor=_0x193ac2(0x1be),announceCount=0x1,connectionTimer=null,connectionSeconds=0x0,versionSet=![],ping=null,uuid='';context[_0x193ac2(0x1cd)]=!![],canvasContainer[_0x193ac2(0x1af)][_0x193ac2(0x183)]=_0x193ac2(0x1a6);function getCookie(_0x412d35){const _0x16c6c5=_0x193ac2,_0x5f2cf4=document['cookie'][_0x16c6c5(0x1c0)](';')[_0x16c6c5(0x184)](_0x9a1b9e=>_0x9a1b9e[_0x16c6c5(0x1a7)]());for(const _0x133762 of _0x5f2cf4){const [_0x1032c1,_0x13d356]=_0x133762[_0x16c6c5(0x1c0)]('=')[_0x16c6c5(0x184)](_0x56adb9=>decodeURIComponent(_0x56adb9));if(_0x1032c1===_0x412d35)return _0x13d356;}return null;}function setCookie(_0x1433a8,_0x38d8fa,_0x360b6e){const _0x16d389=_0x193ac2,_0x334096=new Date();_0x334096[_0x16d389(0x182)](_0x334096[_0x16d389(0x1c3)]()+_0x360b6e);const _0x556c96=encodeURIComponent(_0x38d8fa)+(_0x360b6e?_0x16d389(0x1d4)+_0x334096[_0x16d389(0x1d7)]():'');document[_0x16d389(0x1e1)]=_0x1433a8+'='+_0x556c96+_0x16d389(0x150);}function pinger(){const _0x230f47=_0x193ac2,_0x1124fc=Date[_0x230f47(0x1a9)](),_0x3a57a9=document[_0x230f47(0x1c9)](_0x230f47(0x1d0))[_0x230f47(0x191)]('p');socket['on'](_0x230f47(0x1a3),()=>{const _0x436db7=_0x230f47,_0x30ce96=Date['now']()-_0x1124fc;_0x3a57a9[_0x436db7(0x171)]=_0x436db7(0x193)+_0x30ce96+'ms',document['getElementById']('ping')[_0x436db7(0x1af)][_0x436db7(0x1c6)]=0.25;}),socket[_0x230f47(0x157)](_0x230f47(0x1d0));}ping=setInterval(pinger,0x3e8);function startConnectionTimer(){const _0x35641d=_0x193ac2,_0x44b94a=document['querySelector'](_0x35641d(0x19b));if(_0x44b94a[_0x35641d(0x1de)](_0x35641d(0x17c))[_0x35641d(0x1a5)]>0x0)return;clearInterval(ping);const _0x2ed1c8=document['createElement']('div');_0x2ed1c8[_0x35641d(0x172)](_0x35641d(0x19f),_0x35641d(0x1ad)),_0x2ed1c8[_0x35641d(0x172)]('id',_0x35641d(0x185)),_0x2ed1c8[_0x35641d(0x1af)][_0x35641d(0x196)]=_0x35641d(0x1b8),_0x2ed1c8[_0x35641d(0x1af)][_0x35641d(0x17d)]=_0x35641d(0x1c4);const _0x41e904=document['createElement']('p');_0x41e904[_0x35641d(0x172)]('id',_0x35641d(0x15e)),_0x41e904[_0x35641d(0x172)](_0x35641d(0x1af),_0x35641d(0x19d)),_0x41e904[_0x35641d(0x171)]=_0x35641d(0x179)+connectionSeconds[_0x35641d(0x161)](0x1),_0x2ed1c8[_0x35641d(0x187)](_0x41e904),_0x44b94a[_0x35641d(0x187)](_0x2ed1c8),canvas['style'][_0x35641d(0x1c6)]=0x0,buttons[_0x35641d(0x1af)]['opacity']=0x0,canvas[_0x35641d(0x1b9)][_0x35641d(0x1b0)]('fadedown'),drawings=[],currentDrawing=[],draw(),connectionTimer=setInterval(()=>{const _0x3e57e1=_0x35641d;connectionSeconds+=0.1,document['getElementById'](_0x3e57e1(0x15e))['textContent']='Server\x20Connection\x20Timeout:\x20'+connectionSeconds[_0x3e57e1(0x161)](0x1);},0x64);}function stopConnectionTimer(){const _0x3b2260=_0x193ac2;clearInterval(connectionTimer),ping=setInterval(pinger,0x3e8),connectionSeconds=0x0;const _0x52fd3e=document[_0x3b2260(0x191)]('.messages');_0x52fd3e[_0x3b2260(0x1de)](_0x3b2260(0x17c))['forEach'](_0x2c9460=>{const _0x295c2d=_0x3b2260;_0x2c9460[_0x295c2d(0x1b9)][_0x295c2d(0x1c5)]('fadeup'),_0x2c9460['classList'][_0x295c2d(0x1b0)](_0x295c2d(0x16b)),setTimeout(()=>{const _0x9af0fe=_0x295c2d;_0x2c9460[_0x9af0fe(0x1c5)]();},0x1f4);});const _0x79b9e6=document[_0x3b2260(0x160)](_0x3b2260(0x16c));_0x79b9e6[_0x3b2260(0x172)](_0x3b2260(0x19f),_0x3b2260(0x173)),_0x79b9e6[_0x3b2260(0x172)]('id','success'),_0x79b9e6['style']['boxShadow']=_0x3b2260(0x1b8),_0x79b9e6[_0x3b2260(0x172)]('style','min-width:\x20auto;');const _0x1b7c3b=document[_0x3b2260(0x160)]('p');_0x1b7c3b[_0x3b2260(0x172)]('id','timeout'),_0x1b7c3b['setAttribute'](_0x3b2260(0x1af),'white-space:\x20nowrap;margin:\x2025px\x2050px\x2025px\x2050px'),_0x1b7c3b['textContent']=_0x3b2260(0x19e),_0x79b9e6['appendChild'](_0x1b7c3b),_0x52fd3e[_0x3b2260(0x187)](_0x79b9e6),canvas['style'][_0x3b2260(0x1c6)]=0x1,buttons[_0x3b2260(0x1af)][_0x3b2260(0x1c6)]=0x1,canvas[_0x3b2260(0x1b9)][_0x3b2260(0x1c5)](_0x3b2260(0x16b)),canvas[_0x3b2260(0x1b9)][_0x3b2260(0x1b0)](_0x3b2260(0x1a0));const _0x5e1a99=document[_0x3b2260(0x1c9)]('success');setTimeout(()=>{const _0x47d7f2=_0x3b2260;_0x5e1a99['classList'][_0x47d7f2(0x1c5)](_0x47d7f2(0x1a0)),_0x5e1a99[_0x47d7f2(0x1b9)][_0x47d7f2(0x1b0)]('fadedown'),setTimeout(()=>{const _0x3023a5=_0x47d7f2;_0x5e1a99[_0x3023a5(0x1c5)]();},0x1f4);},0x9c4);}socket['on'](_0x193ac2(0x1b3),()=>{connectionSeconds!=0x0&&stopConnectionTimer();}),socket['on']('connect_error',()=>{startConnectionTimer();}),socket['on'](_0x193ac2(0x17b),()=>{startConnectionTimer();});function toggleOP(){const _0x2752f6=_0x193ac2;uiVisible=!uiVisible,buttons[_0x2752f6(0x1af)][_0x2752f6(0x16e)]=uiVisible?'':_0x2752f6(0x1cc),document[_0x2752f6(0x1c9)]('resetView')['style'][_0x2752f6(0x16e)]=uiVisible?'':_0x2752f6(0x1cc),document[_0x2752f6(0x1c9)]('xy')[_0x2752f6(0x1af)][_0x2752f6(0x16e)]=uiVisible?'':_0x2752f6(0x1cc),document['getElementById']('connectedClients')[_0x2752f6(0x1af)][_0x2752f6(0x16e)]=uiVisible?'':_0x2752f6(0x1cc),document[_0x2752f6(0x1c9)](_0x2752f6(0x1c1))[_0x2752f6(0x1af)][_0x2752f6(0x16e)]=uiVisible?'':_0x2752f6(0x1cc),document['getElementById']('ping')[_0x2752f6(0x1af)][_0x2752f6(0x16e)]=uiVisible?'':'none',document[_0x2752f6(0x1c9)](_0x2752f6(0x1ac))[_0x2752f6(0x1af)][_0x2752f6(0x16e)]=uiVisible?'':'none',document['querySelector'](_0x2752f6(0x15c))[_0x2752f6(0x1af)]['display']=uiVisible?'':_0x2752f6(0x1cc);}function resetView(){const _0x25b271=_0x193ac2;canvasContainer[_0x25b271(0x1af)][_0x25b271(0x183)]=_0x25b271(0x1a6),canvas[_0x25b271(0x1af)][_0x25b271(0x183)]='translate(0px,\x200px)',zoomLevel=0.08,offsetX=0x0,offsetY=0x0;}function changeColor(_0x1815dd){const _0xd739=_0x193ac2;currentColor=_0x1815dd['target'][_0xd739(0x167)];}document[_0x193ac2(0x165)](_0x193ac2(0x198),()=>{isDrawing=![];}),canvas[_0x193ac2(0x165)]('mouseleave',()=>{isDrawing=![];}),canvas[_0x193ac2(0x165)](_0x193ac2(0x170),_0x2a9996=>{isDrawing=!![],addPoint(_0x2a9996);}),canvas[_0x193ac2(0x165)](_0x193ac2(0x198),()=>{const _0x135811=_0x193ac2;isDrawing=![],currentDrawing['length']>0x0&&(socket[_0x135811(0x157)](_0x135811(0x1b1),{'type':_0x135811(0x1b1),'drawing':currentDrawing,'valid':uuid}),drawings[_0x135811(0x17f)](currentDrawing),draw(),currentDrawing=[],lastDrawingEmitTime=Date[_0x135811(0x1a9)]());}),canvas[_0x193ac2(0x165)]('mousemove',_0xfd3a86=>{const _0x5b25c7=_0x193ac2,_0x1d97c4=canvas[_0x5b25c7(0x194)](),_0x55ea36=canvas[_0x5b25c7(0x17d)]/_0x1d97c4['width'],_0x38081f=canvas[_0x5b25c7(0x18d)]/_0x1d97c4[_0x5b25c7(0x18d)],_0xdb130d=Math['round']((_0xfd3a86[_0x5b25c7(0x18a)]-_0x1d97c4[_0x5b25c7(0x195)])*_0x55ea36),_0x227ef7=Math[_0x5b25c7(0x169)]((_0xfd3a86[_0x5b25c7(0x1d8)]-_0x1d97c4[_0x5b25c7(0x1dd)])*_0x38081f);tx['innerHTML']=_0xdb130d,ty[_0x5b25c7(0x16f)]=_0x227ef7;if(isDrawing){addPoint(_0xfd3a86);const _0x9fa947=Date[_0x5b25c7(0x1a9)]();_0x9fa947-lastDrawingEmitTime>=drawingEmitDelay&&(lastDrawingEmitTime=_0x9fa947);}}),document[_0x193ac2(0x1c9)](_0x193ac2(0x1d1))['addEventListener'](_0x193ac2(0x1b6),function(_0x3f16fc){const _0x26c7e3=_0x193ac2;_0x3f16fc[_0x26c7e3(0x16a)]==0xd&&(socket['emit'](_0x26c7e3(0x154),{'uuid':uuid,'content':document[_0x26c7e3(0x1c9)](_0x26c7e3(0x1d1))[_0x26c7e3(0x167)]}),document[_0x26c7e3(0x1c9)](_0x26c7e3(0x1d1))[_0x26c7e3(0x167)]='');}),nameinput[_0x193ac2(0x165)]('keydown',function(_0x2d998f){const _0x416a6e=_0x193ac2;_0x2d998f[_0x416a6e(0x16a)]==0xd&&socket[_0x416a6e(0x157)](_0x416a6e(0x17a),{'uuid':uuid,'name':nameinput['value']});}),document[_0x193ac2(0x165)](_0x193ac2(0x1b6),function(_0x439e65){const _0x12e19a=_0x193ac2;if(_0x439e65[_0x12e19a(0x1d2)]===_0x12e19a(0x1dc))pan('up');else{if(_0x439e65[_0x12e19a(0x1d2)]===_0x12e19a(0x1d3))pan(_0x12e19a(0x175));else{if(_0x439e65[_0x12e19a(0x1d2)]===_0x12e19a(0x1d6))pan('left');else _0x439e65[_0x12e19a(0x1d2)]===_0x12e19a(0x181)&&pan(_0x12e19a(0x1ae));}}});function addPoint(_0x2fc82e){const _0x301ab4=_0x193ac2;if(!isDrawing)return;const _0x3c715a=canvas[_0x301ab4(0x194)](),_0x58845c=canvas[_0x301ab4(0x17d)]/_0x3c715a[_0x301ab4(0x17d)],_0x676f4a=canvas[_0x301ab4(0x18d)]/_0x3c715a['height'],_0x488835=(_0x2fc82e[_0x301ab4(0x18a)]-_0x3c715a['left'])*_0x58845c,_0x372c5b=(_0x2fc82e[_0x301ab4(0x1d8)]-_0x3c715a[_0x301ab4(0x1dd)])*_0x676f4a;currentDrawing[_0x301ab4(0x17f)]({'x':Math['round'](_0x488835),'y':Math['round'](_0x372c5b),'color':currentColor}),draw();}function draw(){const _0x3e2876=_0x193ac2;context['clearRect'](0x0,0x0,canvas['width'],canvas[_0x3e2876(0x18d)]);for(const _0x44297c of drawings){if(_0x44297c[_0x3e2876(0x1a5)]<0x2)continue;for(let _0x4b1fb4=0x1;_0x4b1fb4<_0x44297c['length'];_0x4b1fb4++){const _0x46a74f=_0x44297c[_0x4b1fb4-0x1],_0x283385=_0x44297c[_0x4b1fb4];context[_0x3e2876(0x1bd)](),context[_0x3e2876(0x1aa)]=_0x46a74f[_0x3e2876(0x1a2)],context['moveTo'](Math['round'](_0x46a74f['x']),Math[_0x3e2876(0x169)](_0x46a74f['y'])),context[_0x3e2876(0x1c7)](Math[_0x3e2876(0x169)](_0x283385['x']),Math['round'](_0x283385['y'])),context[_0x3e2876(0x1ca)]();}}context[_0x3e2876(0x1ca)]();if(currentDrawing[_0x3e2876(0x1a5)]>0x0){context[_0x3e2876(0x1bd)](),context[_0x3e2876(0x1aa)]=currentColor,context[_0x3e2876(0x1ce)](Math[_0x3e2876(0x169)](currentDrawing[0x0]['x']),Math[_0x3e2876(0x169)](currentDrawing[0x0]['y']));for(let _0x1cca06=0x1;_0x1cca06{const _0x510efc=_0x193ac2;document[_0x510efc(0x1c9)](_0x510efc(0x18e))[_0x510efc(0x171)]=_0xaeceb4[_0x510efc(0x174)][_0x510efc(0x154)],document[_0x510efc(0x1c9)](_0x510efc(0x18e))[_0x510efc(0x1af)]['display']='',setTimeout(()=>{const _0x2f204=_0x510efc;document[_0x2f204(0x1c9)](_0x2f204(0x18e))[_0x2f204(0x1af)][_0x2f204(0x16e)]=_0x2f204(0x1cc);},0x1388);}),socket['on']('chat',_0x2a288a=>{const _0x4d825c=_0x193ac2;if(_0x2a288a['type']==_0x4d825c(0x154)){const _0x14278c=document[_0x4d825c(0x160)]('li');_0x14278c[_0x4d825c(0x171)]='<'+_0x2a288a[_0x4d825c(0x1bb)]+'>\x20'+_0x2a288a[_0x4d825c(0x1df)],chat['querySelector']('ul')[_0x4d825c(0x187)](_0x14278c),chat['querySelector'](_0x4d825c(0x18c))['querySelector']('ul')[_0x4d825c(0x1db)]=chat[_0x4d825c(0x191)](_0x4d825c(0x18c))[_0x4d825c(0x191)]('ul')[_0x4d825c(0x19c)];}else{if(_0x2a288a['type']=='existingMessages'){const _0xba0dc4=JSON[_0x4d825c(0x163)](_0x2a288a[_0x4d825c(0x14f)]);_0xba0dc4[_0x4d825c(0x178)](_0x30fbb9=>{const _0x2a4328=_0x4d825c,_0x2d32e2=document[_0x2a4328(0x160)]('li');_0x2d32e2['textContent']='<'+_0x30fbb9['name']+'>\x20'+_0x30fbb9[_0x2a4328(0x1df)],chat[_0x2a4328(0x191)]('ul')['appendChild'](_0x2d32e2),chat[_0x2a4328(0x191)](_0x2a4328(0x18c))['querySelector']('ul')[_0x2a4328(0x1db)]=chat['querySelector']('.chat-messages')[_0x2a4328(0x191)]('ul')['scrollHeight'];});}}}),socket['on'](_0x193ac2(0x186),_0x1fcedc=>{const _0xf945cf=_0x193ac2;document[_0xf945cf(0x1c9)](_0xf945cf(0x1ac))[_0xf945cf(0x191)]('p')['textContent']=_0xf945cf(0x1d9)+_0x1fcedc['size']+'MB',document[_0xf945cf(0x1c9)](_0xf945cf(0x1ac))[_0xf945cf(0x1af)]['opacity']=0.25;}),socket['on'](_0x193ac2(0x164),_0x37367d=>{const _0x36cce3=_0x193ac2;_0x37367d['audio']!='stop'?(document[_0x36cce3(0x1c9)]('audio-player')[_0x36cce3(0x1b7)]=_0x37367d[_0x36cce3(0x15f)],document[_0x36cce3(0x1c9)](_0x36cce3(0x192))[_0x36cce3(0x164)]()):document[_0x36cce3(0x1c9)](_0x36cce3(0x192))[_0x36cce3(0x1ab)]();}),socket['on'](_0x193ac2(0x1e0),_0x2afa47=>{const _0x37d81f=_0x193ac2;if(_0x2afa47[_0x37d81f(0x154)]&&_0x2afa47[_0x37d81f(0x1a2)]){const _0x45b02a=_0x2afa47[_0x37d81f(0x154)],_0x11d0c2=document['querySelector']('.messages'),_0x45fe4b=document['createElement'](_0x37d81f(0x16c));_0x45fe4b['setAttribute'](_0x37d81f(0x19f),_0x37d81f(0x1b4)+_0x2afa47['color']),_0x45fe4b[_0x37d81f(0x172)]('id',announceCount),_0x45fe4b['style']['boxShadow']=_0x37d81f(0x1b8);const _0x40db46=document[_0x37d81f(0x160)]('p');_0x40db46['setAttribute'](_0x37d81f(0x1af),_0x37d81f(0x1a8)),_0x40db46['textContent']=_0x45b02a,_0x45fe4b[_0x37d81f(0x187)](_0x40db46),_0x11d0c2['appendChild'](_0x45fe4b),announceCount++,announcementIDs['push'](announceCount-0x1),setTimeout(()=>{const _0x459f3c=_0x37d81f,_0x503a30=document[_0x459f3c(0x1c9)](announceCount-0x1);_0x503a30[_0x459f3c(0x1b9)][_0x459f3c(0x1c5)](_0x459f3c(0x1a0)),_0x503a30[_0x459f3c(0x1b9)]['add'](_0x459f3c(0x16b)),setTimeout(()=>{const _0x3b147b=_0x459f3c;_0x503a30[_0x3b147b(0x1af)][_0x3b147b(0x16e)]=_0x3b147b(0x1cc),_0x503a30[_0x3b147b(0x1c5)]();},0x1f4);},0x1388);}});function _0x2bcc(){const _0x53916a=['trim','white-space:\x20normal;margin:\x2025px\x2050px\x2025px\x2050px','now','strokeStyle','pause','data','message\x20fadeup\x20red','right','style','add','draw','flex','connect','message\x20fadeup\x20','1180560GfjDnH','keydown','src','0\x204px\x208px\x20rgba(0,\x200,\x200,\x200.1)','classList','reload','name','Version:\x20','beginPath','#000000','drawings','split','version','canvasContainer','getDate','300px','remove','opacity','lineTo','translate(0px,\x200px)','getElementById','stroke','connectedClients','none','imageSmoothingEnabled','moveTo','Connected\x20Clients:\x20','ping','chat-input','key','ArrowDown',';\x20expires=','2AqdiHa','ArrowLeft','toUTCString','clientY','Size:\x20','type','scrollTop','ArrowUp','top','querySelectorAll','content','announcement','cookie','getAttribute','messages',';\x20path=/','deltaY','drawing','w-version','message','visibility','username','emit','translate(','18491454ECjxFH','w-close','hidden','.chat-container','940747dmJvht','timeout','audio','createElement','toFixed','true','parse','play','addEventListener','1222280IAIOGc','value','uuid','round','keyCode','fadedown','div','791KkLpML','display','innerHTML','mousedown','textContent','setAttribute','message\x20fadeup\x20green','status','down','3149824BHZKSw','2008jsbBEe','forEach','Server\x20Connection\x20Timeout:\x20','changeName','connect_timeout','[id=\x22connection\x22]','width','existingDrawings','push','0px,\x200px)','ArrowRight','setDate','transform','map','connection','dataSize','appendChild','946353dRwTSq','wheel','clientX','preventDefault','.chat-messages','height','nameStatus','Collavas\x20v','visited','querySelector','audio-player','Ping:\x20','getBoundingClientRect','left','boxShadow','title','mouseup','visible','buttons','.messages','scrollHeight','white-space:\x20nowrap;margin:\x2025px\x2050px\x2025px\x2050px','Server\x20connection\x20has\x20been\x20restored','class','fadeup','clientNum','color','pong','transition','length','scale(0.08)'];_0x2bcc=function(){return _0x53916a;};return _0x2bcc();}function hideMessages(){const _0x1ad25c=_0x193ac2,_0xdb2d06=document[_0x1ad25c(0x191)](_0x1ad25c(0x19b));if(_0xdb2d06){const _0x3fd302=_0xdb2d06[_0x1ad25c(0x1de)](_0x1ad25c(0x16c));_0x3fd302[_0x1ad25c(0x1a5)]>0x1&&(_0x3fd302[_0x1ad25c(0x178)](_0x2bdef6=>{const _0x342ca=_0x1ad25c;_0x2bdef6[_0x342ca(0x14e)]('id')!='connection'&&_0x2bdef6[_0x342ca(0x1b9)]['add'](_0x342ca(0x16b));}),setTimeout(()=>{const _0x1abed1=_0x1ad25c;_0x3fd302[_0x1abed1(0x178)](_0x1f88a0=>{const _0xc37f67=_0x1abed1;_0x1f88a0['getAttribute']('id')!='connection'&&(_0x1f88a0[_0xc37f67(0x1af)][_0xc37f67(0x16e)]=_0xc37f67(0x1cc),_0x1f88a0[_0xc37f67(0x1c5)]());});},0x1f4));}}setInterval(hideMessages,0x1388),socket['on'](_0x193ac2(0x1cb),_0x155142=>{const _0x10c1bc=_0x193ac2;document[_0x10c1bc(0x1c9)](_0x10c1bc(0x1a1))[_0x10c1bc(0x171)]=_0x10c1bc(0x1cf)+_0x155142,document[_0x10c1bc(0x1c9)](_0x10c1bc(0x1cb))[_0x10c1bc(0x1af)][_0x10c1bc(0x1c6)]=0.25;}),socket['on'](_0x193ac2(0x1ba),_0x2a01cc=>{location['reload'](!![]);}),socket['on'](_0x193ac2(0x1c1),_0x5e67bb=>{const _0x5c1181=_0x193ac2;document[_0x5c1181(0x197)]=_0x5c1181(0x18f)+_0x5e67bb,document['getElementById'](_0x5c1181(0x1c1))[_0x5c1181(0x191)]('p')[_0x5c1181(0x171)]=_0x5c1181(0x1bc)+_0x5e67bb,document[_0x5c1181(0x1c9)](_0x5c1181(0x1c1))['style'][_0x5c1181(0x1c6)]=0.25,versionSet=!![],document['getElementById'](_0x5c1181(0x153))[_0x5c1181(0x171)]=_0x5c1181(0x18f)+_0x5e67bb;}),socket['on'](_0x193ac2(0x1b1),_0x2ef9e5=>{const _0x291f09=_0x193ac2;if(_0x2ef9e5[_0x291f09(0x1da)]===_0x291f09(0x1b1)&&_0x2ef9e5['drawing'])drawings[_0x291f09(0x17f)](_0x2ef9e5[_0x291f09(0x152)]),draw();else{if(_0x2ef9e5['type']===_0x291f09(0x17e)&&_0x2ef9e5[_0x291f09(0x1bf)]){const _0xa2a8c0=JSON[_0x291f09(0x163)](_0x2ef9e5[_0x291f09(0x1bf)]);drawings=[],uuid=_0x2ef9e5['id'],nameinput[_0x291f09(0x167)]=_0x2ef9e5[_0x291f09(0x1bb)],setCookie(_0x291f09(0x168),uuid,0x1),drawings[_0x291f09(0x17f)](..._0xa2a8c0),draw(),document[_0x291f09(0x1c9)](_0x291f09(0x1a4))[_0x291f09(0x1af)][_0x291f09(0x1c6)]=0x1,document['getElementById']('transition')[_0x291f09(0x1af)]['visibility']=_0x291f09(0x15b),canvas[_0x291f09(0x1af)][_0x291f09(0x1c6)]=0x1,canvas[_0x291f09(0x1af)][_0x291f09(0x155)]=_0x291f09(0x199),buttons[_0x291f09(0x1af)][_0x291f09(0x1c6)]=0x1,chat[_0x291f09(0x1af)][_0x291f09(0x16e)]=_0x291f09(0x1b2);var _0x1fe578=document[_0x291f09(0x1c9)]('welcome');_0x1fe578[_0x291f09(0x1af)][_0x291f09(0x16e)]=_0x291f09(0x1b2),_0x1fe578[_0x291f09(0x1af)][_0x291f09(0x1c6)]=0x1,_0x1fe578[_0x291f09(0x191)](_0x291f09(0x16c))[_0x291f09(0x1b9)][_0x291f09(0x1b0)](_0x291f09(0x1a0)),setCookie(_0x291f09(0x190),_0x291f09(0x162),0x1),document['getElementById'](_0x291f09(0x15a))[_0x291f09(0x165)]('click',_0x3fa6e3=>{const _0x2eb4cb=_0x291f09;_0x1fe578[_0x2eb4cb(0x1af)][_0x2eb4cb(0x1c6)]=0x0,_0x1fe578[_0x2eb4cb(0x191)]('div')[_0x2eb4cb(0x1b9)][_0x2eb4cb(0x1c5)](_0x2eb4cb(0x1a0)),_0x1fe578[_0x2eb4cb(0x191)]('div')['classList']['add'](_0x2eb4cb(0x16b)),setTimeout(()=>{_0x1fe578['style']['display']='none';},0x1f4);});}}});let zoomLevel=0.08;const zoomFactor=0.1;let offsetX=0x0,offsetY=0x0;function pan(_0x489622){const _0x4ea91d=_0x193ac2,_0x52d398=0x28;switch(_0x489622){case _0x4ea91d(0x195):offsetX+=_0x52d398;break;case _0x4ea91d(0x1ae):offsetX-=_0x52d398;break;case'up':offsetY+=_0x52d398;break;case _0x4ea91d(0x175):offsetY-=_0x52d398;break;default:break;}updateCanvasContainerPosition();}function updateCanvasContainerPosition(){const _0x3beaff=_0x193ac2;zoomLevel==0.08?(canvas[_0x3beaff(0x1af)][_0x3beaff(0x183)]=_0x3beaff(0x180),offsetX=0x0,offsetY=0x0):canvas['style'][_0x3beaff(0x183)]=_0x3beaff(0x158)+offsetX+'px,\x20'+offsetY+'px)';}canvasContainer[_0x193ac2(0x165)](_0x193ac2(0x189),_0x4803fb=>{const _0x27a479=_0x193ac2;_0x4803fb[_0x27a479(0x18b)]();const _0x500d24=_0x4803fb[_0x27a479(0x151)]>0x0?-0x1:0x1,_0x386839=0x1+_0x500d24*zoomFactor;zoomLevel*=_0x386839;zoomLevel<0.08&&(zoomLevel=0.08,canvas[_0x27a479(0x1af)][_0x27a479(0x183)]=_0x27a479(0x1c8),updateCanvasContainerPosition());if(zoomLevel>0x14)zoomLevel=0x14;canvasContainer[_0x27a479(0x1af)][_0x27a479(0x183)]='scale('+zoomLevel+')';});
\ No newline at end of file
diff --git a/public/static/js/main-P50wHw-2.js b/public/static/js/main-P50wHw-2.js
new file mode 100644
index 0000000..4eaaa86
--- /dev/null
+++ b/public/static/js/main-P50wHw-2.js
@@ -0,0 +1 @@
+const _0x25730a=_0x1b1c;(function(_0x204028,_0x3a9e32){const _0x31358e=_0x1b1c,_0x4b7de=_0x204028();while(!![]){try{const _0x100fbe=parseInt(_0x31358e(0x230))/0x1*(-parseInt(_0x31358e(0x1a9))/0x2)+-parseInt(_0x31358e(0x1af))/0x3*(-parseInt(_0x31358e(0x217))/0x4)+-parseInt(_0x31358e(0x21f))/0x5*(parseInt(_0x31358e(0x1be))/0x6)+parseInt(_0x31358e(0x233))/0x7*(-parseInt(_0x31358e(0x21a))/0x8)+-parseInt(_0x31358e(0x218))/0x9*(-parseInt(_0x31358e(0x205))/0xa)+parseInt(_0x31358e(0x1d2))/0xb*(-parseInt(_0x31358e(0x1dc))/0xc)+parseInt(_0x31358e(0x1b8))/0xd*(parseInt(_0x31358e(0x1e5))/0xe);if(_0x100fbe===_0x3a9e32)break;else _0x4b7de['push'](_0x4b7de['shift']());}catch(_0x5d106c){_0x4b7de['push'](_0x4b7de['shift']());}}}(_0x4899,0xac8ed));const socket=io({'timeout':0x1f4}),canvas=document[_0x25730a(0x21b)](_0x25730a(0x1ff)),canvasContainer=document[_0x25730a(0x21b)](_0x25730a(0x1a8)),buttons=document[_0x25730a(0x21b)](_0x25730a(0x1f8)),tx=document[_0x25730a(0x21b)]('x'),ty=document[_0x25730a(0x21b)]('y'),context=canvas[_0x25730a(0x222)]('2d'),chat=document[_0x25730a(0x22e)](_0x25730a(0x1d7)),nameinput=document[_0x25730a(0x21b)](_0x25730a(0x1f4)),drawingEmitDelay=0x1f4;let lastDrawingEmitTime=0x0,drawings=[],announcementIDs=[],currentDrawing=[],isDrawing=![],uiVisible=!![],currentColor='#000000',announceCount=0x1,connectionTimer=null,connectionSeconds=0x0,versionSet=![],ping=null,uuid='';context[_0x25730a(0x1a5)]=!![],canvasContainer['style']['transform']=_0x25730a(0x211);function getCookie(_0x1386d8){const _0x3a95db=_0x25730a,_0x4fc9d4=document[_0x3a95db(0x204)]['split'](';')[_0x3a95db(0x1e7)](_0x409a14=>_0x409a14[_0x3a95db(0x213)]());for(const _0x448477 of _0x4fc9d4){const [_0x2095c8,_0x46f5fa]=_0x448477['split']('=')[_0x3a95db(0x1e7)](_0x203fe1=>decodeURIComponent(_0x203fe1));if(_0x2095c8===_0x1386d8)return _0x46f5fa;}return null;}function setCookie(_0x15e2a5,_0x3d0e3b,_0x2e634a){const _0x1c0ff7=_0x25730a,_0x5a1c27=new Date();_0x5a1c27[_0x1c0ff7(0x1b0)](_0x5a1c27['getDate']()+_0x2e634a);const _0x1cb1c3=encodeURIComponent(_0x3d0e3b)+(_0x2e634a?_0x1c0ff7(0x206)+_0x5a1c27[_0x1c0ff7(0x1ac)]():'');document[_0x1c0ff7(0x204)]=_0x15e2a5+'='+_0x1cb1c3+_0x1c0ff7(0x20f);}function pinger(){const _0x377bfb=_0x25730a,_0x3e1eb1=Date[_0x377bfb(0x1f5)](),_0x3635ae=document[_0x377bfb(0x21b)](_0x377bfb(0x220))['querySelector']('p');socket['on'](_0x377bfb(0x1d6),()=>{const _0x2b7ae8=_0x377bfb,_0x5625ec=Date[_0x2b7ae8(0x1f5)]()-_0x3e1eb1;_0x3635ae[_0x2b7ae8(0x1e3)]=_0x2b7ae8(0x1b7)+_0x5625ec+'ms',document[_0x2b7ae8(0x21b)](_0x2b7ae8(0x220))['style']['opacity']=0.25;}),socket[_0x377bfb(0x209)](_0x377bfb(0x220));}ping=setInterval(pinger,0x3e8);function startConnectionTimer(){const _0x3c2065=_0x25730a,_0x36380b=document['querySelector'](_0x3c2065(0x19f));if(_0x36380b[_0x3c2065(0x1e0)]('[id=\x22connection\x22]')[_0x3c2065(0x1c8)]>0x0)return;clearInterval(ping);const _0x3ff475=document['createElement']('div');_0x3ff475[_0x3c2065(0x232)](_0x3c2065(0x1ad),_0x3c2065(0x1a7)),_0x3ff475['setAttribute']('id',_0x3c2065(0x1ec)),_0x3ff475[_0x3c2065(0x226)]['boxShadow']=_0x3c2065(0x221),_0x3ff475['style']['width']=_0x3c2065(0x1ae);const _0x5c5c63=document[_0x3c2065(0x219)]('p');_0x5c5c63[_0x3c2065(0x232)]('id',_0x3c2065(0x216)),_0x5c5c63[_0x3c2065(0x232)](_0x3c2065(0x226),_0x3c2065(0x210)),_0x5c5c63[_0x3c2065(0x1e3)]=_0x3c2065(0x1c9)+connectionSeconds[_0x3c2065(0x1df)](0x1),_0x3ff475[_0x3c2065(0x1b1)](_0x5c5c63),_0x36380b[_0x3c2065(0x1b1)](_0x3ff475),canvas['style'][_0x3c2065(0x1cc)]=0x0,buttons['style']['opacity']=0x0,canvas[_0x3c2065(0x1ce)][_0x3c2065(0x208)]('fadedown'),drawings=[],currentDrawing=[],draw(),connectionTimer=setInterval(()=>{const _0x51aaf8=_0x3c2065;connectionSeconds+=0.1,document[_0x51aaf8(0x21b)]('timeout')[_0x51aaf8(0x1e3)]=_0x51aaf8(0x1c9)+connectionSeconds['toFixed'](0x1);},0x64);}function stopConnectionTimer(){const _0x5761a3=_0x25730a;clearInterval(connectionTimer),ping=setInterval(pinger,0x3e8),connectionSeconds=0x0;const _0x5e0b04=document['querySelector'](_0x5761a3(0x19f));_0x5e0b04['querySelectorAll'](_0x5761a3(0x1c0))['forEach'](_0x15f789=>{const _0x3b1179=_0x5761a3;_0x15f789[_0x3b1179(0x1ce)][_0x3b1179(0x1d8)](_0x3b1179(0x207)),_0x15f789[_0x3b1179(0x1ce)]['add'](_0x3b1179(0x1a1)),setTimeout(()=>{const _0x2ee7a0=_0x3b1179;_0x15f789[_0x2ee7a0(0x1d8)]();},0x1f4);});const _0x5c4498=document['createElement'](_0x5761a3(0x1a4));_0x5c4498[_0x5761a3(0x232)]('class',_0x5761a3(0x227)),_0x5c4498[_0x5761a3(0x232)]('id',_0x5761a3(0x1ee)),_0x5c4498[_0x5761a3(0x226)]['boxShadow']='0\x204px\x208px\x20rgba(0,\x200,\x200,\x200.1)',_0x5c4498[_0x5761a3(0x232)]('style',_0x5761a3(0x1d4));const _0x347d4c=document[_0x5761a3(0x219)]('p');_0x347d4c['setAttribute']('id','timeout'),_0x347d4c[_0x5761a3(0x232)](_0x5761a3(0x226),'white-space:\x20nowrap;margin:\x2025px\x2050px\x2025px\x2050px'),_0x347d4c['textContent']='Server\x20connection\x20has\x20been\x20restored',_0x5c4498[_0x5761a3(0x1b1)](_0x347d4c),_0x5e0b04[_0x5761a3(0x1b1)](_0x5c4498),canvas[_0x5761a3(0x226)][_0x5761a3(0x1cc)]=0x1,buttons[_0x5761a3(0x226)][_0x5761a3(0x1cc)]=0x1,canvas[_0x5761a3(0x1ce)]['remove']('fadedown'),canvas['classList'][_0x5761a3(0x208)](_0x5761a3(0x207));const _0x12b7a3=document[_0x5761a3(0x21b)](_0x5761a3(0x1ee));setTimeout(()=>{const _0x5b1749=_0x5761a3;_0x12b7a3[_0x5b1749(0x1ce)][_0x5b1749(0x1d8)]('fadeup'),_0x12b7a3[_0x5b1749(0x1ce)][_0x5b1749(0x208)](_0x5b1749(0x1a1)),setTimeout(()=>{const _0x4ddee1=_0x5b1749;_0x12b7a3[_0x4ddee1(0x1d8)]();},0x1f4);},0x9c4);}function _0x1b1c(_0x210579,_0x5cdf3c){const _0x489905=_0x4899();return _0x1b1c=function(_0x1b1c92,_0x5d354f){_0x1b1c92=_0x1b1c92-0x19f;let _0x536ae3=_0x489905[_0x1b1c92];return _0x536ae3;},_0x1b1c(_0x210579,_0x5cdf3c);}socket['on'](_0x25730a(0x215),()=>{connectionSeconds!=0x0&&stopConnectionTimer();}),socket['on']('connect_error',()=>{startConnectionTimer();}),socket['on'](_0x25730a(0x1f9),()=>{startConnectionTimer();});function toggleOP(){const _0x33970f=_0x25730a;uiVisible=!uiVisible,buttons[_0x33970f(0x226)]['display']=uiVisible?'':_0x33970f(0x1aa),document['getElementById'](_0x33970f(0x1c7))['style'][_0x33970f(0x21e)]=uiVisible?'':_0x33970f(0x1aa),document[_0x33970f(0x21b)]('xy')[_0x33970f(0x226)][_0x33970f(0x21e)]=uiVisible?'':'none',document[_0x33970f(0x21b)]('connectedClients')[_0x33970f(0x226)][_0x33970f(0x21e)]=uiVisible?'':_0x33970f(0x1aa),document[_0x33970f(0x21b)](_0x33970f(0x20b))[_0x33970f(0x226)][_0x33970f(0x21e)]=uiVisible?'':_0x33970f(0x1aa),document[_0x33970f(0x21b)](_0x33970f(0x220))[_0x33970f(0x226)][_0x33970f(0x21e)]=uiVisible?'':_0x33970f(0x1aa),document['getElementById'](_0x33970f(0x1a2))[_0x33970f(0x226)]['display']=uiVisible?'':'none',chat[_0x33970f(0x226)]['display']=uiVisible?'flex':_0x33970f(0x1aa);}function resetView(){const _0x112135=_0x25730a;canvasContainer[_0x112135(0x226)][_0x112135(0x1de)]=_0x112135(0x211),canvas[_0x112135(0x226)][_0x112135(0x1de)]='translate(0px,\x200px)',zoomLevel=0.08,offsetX=0x0,offsetY=0x0;}function changeColor(_0x39e440){const _0x44b92d=_0x25730a;currentColor=_0x39e440[_0x44b92d(0x1b3)][_0x44b92d(0x1fd)];}function _0x4899(){const _0x28b140=['fadedown','data','.chat-messages','div','imageSmoothingEnabled','chat','message\x20fadeup\x20red','canvasContainer','75206EDVJDv','none','right','toUTCString','class','300px','75681zCdgBy','setDate','appendChild','down','target','forEach','clientY','title','Ping:\x20','43321278gonnKd','welcome','getBoundingClientRect','true','keyCode','audio-player','108NzSJzI','strokeStyle','[id=\x22connection\x22]','top','scrollTop','scale(','px)','width','0px,\x200px)','resetView','length','Server\x20Connection\x20Timeout:\x20','draw','transition','opacity','status','classList','audio','play','Version:\x20','10203479QmUWuM','ArrowLeft','min-width:\x20auto;','reload','pong','.chat-container','remove','addEventListener','src','connectedClients','12vagAWT','mouseleave','transform','toFixed','querySelectorAll','drawing','preventDefault','textContent','push','14mwHAMa','message','map','changeName','type','hidden','deltaY','connection','w-version','success','wheel','clearRect','moveTo','drawings','messages','username','now','ArrowDown','left','buttons','connect_timeout','nameStatus','scrollHeight','clientNum','value','visibility','drawingCanvas','uuid','round','lineTo','Collavas\x20v','cookie','4930EhlzWW',';\x20expires=','fadeup','add','emit','color','version','height','announcement','stroke',';\x20path=/','white-space:\x20nowrap;margin:\x2025px\x2050px\x2025px\x2050px','scale(0.08)','innerHTML','trim','w-close','connect','timeout','4PwWwZh','2637JUKmFA','createElement','4088HGQqJg','getElementById','translate(','existingDrawings','display','68825FDsCMq','ping','0\x204px\x208px\x20rgba(0,\x200,\x200,\x200.1)','getContext','key','keydown','beginPath','style','message\x20fadeup\x20green','ArrowRight','visible','flex','name','getAttribute','chat-input','querySelector','dataSize','7eyHUyr','Size:\x20','setAttribute','18585ifUGWj','ArrowUp','clientX','existingMessages','.messages','content'];_0x4899=function(){return _0x28b140;};return _0x4899();}document[_0x25730a(0x1d9)]('mouseup',()=>{isDrawing=![];}),canvas[_0x25730a(0x1d9)](_0x25730a(0x1dd),()=>{isDrawing=![];}),canvas['addEventListener']('mousedown',_0x5e574f=>{isDrawing=!![],addPoint(_0x5e574f);}),canvas[_0x25730a(0x1d9)]('mouseup',()=>{const _0x1896ad=_0x25730a;isDrawing=![],currentDrawing['length']>0x0&&(socket[_0x1896ad(0x209)](_0x1896ad(0x1ca),{'type':_0x1896ad(0x1ca),'drawing':currentDrawing,'valid':uuid}),drawings[_0x1896ad(0x1e4)](currentDrawing),draw(),currentDrawing=[],lastDrawingEmitTime=Date[_0x1896ad(0x1f5)]());}),canvas[_0x25730a(0x1d9)]('mousemove',_0x4375fa=>{const _0x56d6c8=_0x25730a,_0xf420d8=canvas[_0x56d6c8(0x1ba)](),_0xa8cd21=canvas[_0x56d6c8(0x1c5)]/_0xf420d8[_0x56d6c8(0x1c5)],_0x2c3aa3=canvas[_0x56d6c8(0x20c)]/_0xf420d8[_0x56d6c8(0x20c)],_0x3c37cd=Math[_0x56d6c8(0x201)]((_0x4375fa['clientX']-_0xf420d8[_0x56d6c8(0x1f7)])*_0xa8cd21),_0x4479b5=Math[_0x56d6c8(0x201)]((_0x4375fa[_0x56d6c8(0x1b5)]-_0xf420d8[_0x56d6c8(0x1c1)])*_0x2c3aa3);tx[_0x56d6c8(0x212)]=_0x3c37cd,ty[_0x56d6c8(0x212)]=_0x4479b5;if(isDrawing){addPoint(_0x4375fa);const _0x16780e=Date['now']();_0x16780e-lastDrawingEmitTime>=drawingEmitDelay&&(lastDrawingEmitTime=_0x16780e);}}),document['getElementById'](_0x25730a(0x22d))[_0x25730a(0x1d9)](_0x25730a(0x224),function(_0x3161eb){const _0xa427cd=_0x25730a;_0x3161eb['keyCode']==0xd&&(socket[_0xa427cd(0x209)]('message',{'uuid':uuid,'content':document['getElementById'](_0xa427cd(0x22d))[_0xa427cd(0x1fd)]}),document[_0xa427cd(0x21b)]('chat-input')[_0xa427cd(0x1fd)]='');}),nameinput[_0x25730a(0x1d9)](_0x25730a(0x224),function(_0x11253b){const _0x390cf2=_0x25730a;_0x11253b[_0x390cf2(0x1bc)]==0xd&&socket[_0x390cf2(0x209)](_0x390cf2(0x1e8),{'uuid':uuid,'name':nameinput['value']});}),document[_0x25730a(0x1d9)]('keydown',function(_0x1d6bc7){const _0x1d6b0a=_0x25730a;if(_0x1d6bc7[_0x1d6b0a(0x223)]===_0x1d6b0a(0x234))pan('up');else{if(_0x1d6bc7['key']===_0x1d6b0a(0x1f6))pan('down');else{if(_0x1d6bc7['key']===_0x1d6b0a(0x1d3))pan(_0x1d6b0a(0x1f7));else _0x1d6bc7[_0x1d6b0a(0x223)]===_0x1d6b0a(0x228)&&pan(_0x1d6b0a(0x1ab));}}});function addPoint(_0x5d441a){const _0x11636c=_0x25730a;if(!isDrawing)return;const _0x46c0c8=canvas[_0x11636c(0x1ba)](),_0x22d438=canvas[_0x11636c(0x1c5)]/_0x46c0c8[_0x11636c(0x1c5)],_0x34e19c=canvas[_0x11636c(0x20c)]/_0x46c0c8[_0x11636c(0x20c)],_0x5e8870=(_0x5d441a[_0x11636c(0x235)]-_0x46c0c8[_0x11636c(0x1f7)])*_0x22d438,_0x11696f=(_0x5d441a[_0x11636c(0x1b5)]-_0x46c0c8[_0x11636c(0x1c1)])*_0x34e19c;currentDrawing[_0x11636c(0x1e4)]({'x':Math[_0x11636c(0x201)](_0x5e8870),'y':Math[_0x11636c(0x201)](_0x11696f),'color':currentColor}),draw();}function draw(){const _0x47f060=_0x25730a;context[_0x47f060(0x1f0)](0x0,0x0,canvas[_0x47f060(0x1c5)],canvas['height']);for(const _0x581d9c of drawings){if(_0x581d9c[_0x47f060(0x1c8)]<0x2)continue;for(let _0x538903=0x1;_0x538903<_0x581d9c[_0x47f060(0x1c8)];_0x538903++){const _0x7df059=_0x581d9c[_0x538903-0x1],_0xbb047e=_0x581d9c[_0x538903];context[_0x47f060(0x225)](),context[_0x47f060(0x1bf)]=_0x7df059[_0x47f060(0x20a)],context[_0x47f060(0x1f1)](Math[_0x47f060(0x201)](_0x7df059['x']),Math[_0x47f060(0x201)](_0x7df059['y'])),context[_0x47f060(0x202)](Math['round'](_0xbb047e['x']),Math[_0x47f060(0x201)](_0xbb047e['y'])),context[_0x47f060(0x20e)]();}}context[_0x47f060(0x20e)]();if(currentDrawing['length']>0x0){context[_0x47f060(0x225)](),context['strokeStyle']=currentColor,context['moveTo'](Math['round'](currentDrawing[0x0]['x']),Math[_0x47f060(0x201)](currentDrawing[0x0]['y']));for(let _0x68de02=0x1;_0x68de02{const _0x5f4550=_0x25730a;document[_0x5f4550(0x21b)](_0x5f4550(0x1fa))[_0x5f4550(0x1e3)]=_0x324942[_0x5f4550(0x1cd)][_0x5f4550(0x1e6)],document[_0x5f4550(0x21b)](_0x5f4550(0x1fa))[_0x5f4550(0x226)][_0x5f4550(0x21e)]='',setTimeout(()=>{const _0x115a19=_0x5f4550;document['getElementById'](_0x115a19(0x1fa))[_0x115a19(0x226)]['display']=_0x115a19(0x1aa);},0x1388);}),socket['on'](_0x25730a(0x1a6),_0x1b2e79=>{const _0x49b108=_0x25730a;if(_0x1b2e79[_0x49b108(0x1e9)]==_0x49b108(0x1e6)){const _0x164898=document[_0x49b108(0x219)]('li');_0x164898[_0x49b108(0x1e3)]='<'+_0x1b2e79[_0x49b108(0x22b)]+'>\x20'+_0x1b2e79['content'],chat['querySelector']('ul')['appendChild'](_0x164898),chat[_0x49b108(0x22e)](_0x49b108(0x1a3))['querySelector']('ul')[_0x49b108(0x1c2)]=chat[_0x49b108(0x22e)](_0x49b108(0x1a3))[_0x49b108(0x22e)]('ul')[_0x49b108(0x1fb)];}else{if(_0x1b2e79[_0x49b108(0x1e9)]==_0x49b108(0x236)){const _0xb92316=JSON['parse'](_0x1b2e79[_0x49b108(0x1f3)]);_0xb92316[_0x49b108(0x1b4)](_0x114f4a=>{const _0x2ed1b6=_0x49b108,_0x291aff=document[_0x2ed1b6(0x219)]('li');_0x291aff[_0x2ed1b6(0x1e3)]='<'+_0x114f4a[_0x2ed1b6(0x22b)]+'>\x20'+_0x114f4a[_0x2ed1b6(0x1a0)],chat[_0x2ed1b6(0x22e)]('ul')[_0x2ed1b6(0x1b1)](_0x291aff),chat['querySelector'](_0x2ed1b6(0x1a3))['querySelector']('ul')['scrollTop']=chat[_0x2ed1b6(0x22e)](_0x2ed1b6(0x1a3))[_0x2ed1b6(0x22e)]('ul')[_0x2ed1b6(0x1fb)];});}}}),socket['on'](_0x25730a(0x22f),_0x270890=>{const _0x253ba9=_0x25730a;document['getElementById'](_0x253ba9(0x1a2))[_0x253ba9(0x22e)]('p')[_0x253ba9(0x1e3)]=_0x253ba9(0x231)+_0x270890['size']+'MB',document['getElementById'](_0x253ba9(0x1a2))[_0x253ba9(0x226)]['opacity']=0.25;}),socket['on']('play',_0x7bc66=>{const _0x1f2f4b=_0x25730a;_0x7bc66[_0x1f2f4b(0x1cf)]!='stop'?(document[_0x1f2f4b(0x21b)]('audio-player')[_0x1f2f4b(0x1da)]=_0x7bc66[_0x1f2f4b(0x1cf)],document['getElementById'](_0x1f2f4b(0x1bd))[_0x1f2f4b(0x1d0)]()):document[_0x1f2f4b(0x21b)](_0x1f2f4b(0x1bd))['pause']();}),socket['on'](_0x25730a(0x20d),_0x55517c=>{const _0x5c7b1=_0x25730a;if(_0x55517c[_0x5c7b1(0x1e6)]&&_0x55517c[_0x5c7b1(0x20a)]){const _0x3e5444=_0x55517c[_0x5c7b1(0x1e6)],_0x2578a4=document[_0x5c7b1(0x22e)]('.messages'),_0x4573d6=document['createElement']('div');_0x4573d6['setAttribute']('class','message\x20fadeup\x20'+_0x55517c[_0x5c7b1(0x20a)]),_0x4573d6[_0x5c7b1(0x232)]('id',announceCount),_0x4573d6['style']['boxShadow']='0\x204px\x208px\x20rgba(0,\x200,\x200,\x200.1)';const _0x529a92=document[_0x5c7b1(0x219)]('p');_0x529a92[_0x5c7b1(0x232)](_0x5c7b1(0x226),'white-space:\x20normal;margin:\x2025px\x2050px\x2025px\x2050px'),_0x529a92['textContent']=_0x3e5444,_0x4573d6[_0x5c7b1(0x1b1)](_0x529a92),_0x2578a4[_0x5c7b1(0x1b1)](_0x4573d6),announceCount++,announcementIDs[_0x5c7b1(0x1e4)](announceCount-0x1),setTimeout(()=>{const _0x48b1db=_0x5c7b1,_0x391622=document[_0x48b1db(0x21b)](announceCount-0x1);_0x391622[_0x48b1db(0x1ce)][_0x48b1db(0x1d8)](_0x48b1db(0x207)),_0x391622['classList'][_0x48b1db(0x208)]('fadedown'),setTimeout(()=>{const _0x5acafb=_0x48b1db;_0x391622['style'][_0x5acafb(0x21e)]=_0x5acafb(0x1aa),_0x391622[_0x5acafb(0x1d8)]();},0x1f4);},0x1388);}});function hideMessages(){const _0xcb9fd3=_0x25730a,_0x4b77fc=document['querySelector'](_0xcb9fd3(0x19f));if(_0x4b77fc){const _0x5b5446=_0x4b77fc['querySelectorAll'](_0xcb9fd3(0x1a4));_0x5b5446[_0xcb9fd3(0x1c8)]>0x1&&(_0x5b5446[_0xcb9fd3(0x1b4)](_0x163128=>{const _0x37cdfd=_0xcb9fd3;_0x163128[_0x37cdfd(0x22c)]('id')!=_0x37cdfd(0x1ec)&&_0x163128[_0x37cdfd(0x1ce)][_0x37cdfd(0x208)](_0x37cdfd(0x1a1));}),setTimeout(()=>{const _0x4a8a44=_0xcb9fd3;_0x5b5446[_0x4a8a44(0x1b4)](_0x232686=>{const _0x100813=_0x4a8a44;_0x232686[_0x100813(0x22c)]('id')!=_0x100813(0x1ec)&&(_0x232686[_0x100813(0x226)][_0x100813(0x21e)]='none',_0x232686[_0x100813(0x1d8)]());});},0x1f4));}}setInterval(hideMessages,0x1388),socket['on'](_0x25730a(0x1db),_0x13e9d0=>{const _0x4a1738=_0x25730a;document[_0x4a1738(0x21b)](_0x4a1738(0x1fc))[_0x4a1738(0x1e3)]='Connected\x20Clients:\x20'+_0x13e9d0,document[_0x4a1738(0x21b)](_0x4a1738(0x1db))['style'][_0x4a1738(0x1cc)]=0.25;}),socket['on'](_0x25730a(0x1d5),_0x5b46c7=>{const _0xf2c200=_0x25730a;location[_0xf2c200(0x1d5)](!![]);}),socket['on'](_0x25730a(0x20b),_0xf82184=>{const _0xf85134=_0x25730a;document[_0xf85134(0x1b6)]=_0xf85134(0x203)+_0xf82184,document[_0xf85134(0x21b)](_0xf85134(0x20b))[_0xf85134(0x22e)]('p')[_0xf85134(0x1e3)]=_0xf85134(0x1d1)+_0xf82184,document[_0xf85134(0x21b)](_0xf85134(0x20b))[_0xf85134(0x226)][_0xf85134(0x1cc)]=0.25,versionSet=!![],document[_0xf85134(0x21b)](_0xf85134(0x1ed))[_0xf85134(0x1e3)]=_0xf85134(0x203)+_0xf82184;}),socket['on'](_0x25730a(0x1ca),_0x5ef436=>{const _0x3c76e9=_0x25730a;if(_0x5ef436[_0x3c76e9(0x1e9)]===_0x3c76e9(0x1ca)&&_0x5ef436[_0x3c76e9(0x1e1)])drawings[_0x3c76e9(0x1e4)](_0x5ef436[_0x3c76e9(0x1e1)]),draw();else{if(_0x5ef436[_0x3c76e9(0x1e9)]===_0x3c76e9(0x21d)&&_0x5ef436[_0x3c76e9(0x1f2)]){const _0x574612=JSON['parse'](_0x5ef436['drawings']);drawings=[],uuid=_0x5ef436['id'],nameinput[_0x3c76e9(0x1fd)]=_0x5ef436[_0x3c76e9(0x22b)],setCookie(_0x3c76e9(0x200),uuid,0x1),drawings[_0x3c76e9(0x1e4)](..._0x574612),draw(),document[_0x3c76e9(0x21b)](_0x3c76e9(0x1cb))[_0x3c76e9(0x226)][_0x3c76e9(0x1cc)]=0x1,document[_0x3c76e9(0x21b)]('transition')[_0x3c76e9(0x226)][_0x3c76e9(0x1fe)]=_0x3c76e9(0x1ea),canvas[_0x3c76e9(0x226)][_0x3c76e9(0x1cc)]=0x1,canvas[_0x3c76e9(0x226)][_0x3c76e9(0x1fe)]=_0x3c76e9(0x229),buttons[_0x3c76e9(0x226)][_0x3c76e9(0x1cc)]=0x1,chat['style'][_0x3c76e9(0x21e)]=_0x3c76e9(0x22a);var _0x41d421=document['getElementById'](_0x3c76e9(0x1b9));_0x41d421['style']['display']=_0x3c76e9(0x22a),_0x41d421[_0x3c76e9(0x226)]['opacity']=0x1,_0x41d421['querySelector'](_0x3c76e9(0x1a4))[_0x3c76e9(0x1ce)]['add'](_0x3c76e9(0x207)),setCookie('visited',_0x3c76e9(0x1bb),0x1),document['getElementById'](_0x3c76e9(0x214))[_0x3c76e9(0x1d9)]('click',_0x6fad2=>{const _0x2096cb=_0x3c76e9;_0x41d421[_0x2096cb(0x226)][_0x2096cb(0x1cc)]=0x0,_0x41d421[_0x2096cb(0x22e)](_0x2096cb(0x1a4))['classList'][_0x2096cb(0x1d8)](_0x2096cb(0x207)),_0x41d421[_0x2096cb(0x22e)]('div')[_0x2096cb(0x1ce)][_0x2096cb(0x208)](_0x2096cb(0x1a1)),setTimeout(()=>{const _0x32291d=_0x2096cb;_0x41d421[_0x32291d(0x226)][_0x32291d(0x21e)]=_0x32291d(0x1aa);},0x1f4);});}}});let zoomLevel=0.08;const zoomFactor=0.1;let offsetX=0x0,offsetY=0x0;function pan(_0x2d7ff5){const _0x1bec9f=_0x25730a,_0x9278b8=0x28;switch(_0x2d7ff5){case _0x1bec9f(0x1f7):offsetX+=_0x9278b8;break;case _0x1bec9f(0x1ab):offsetX-=_0x9278b8;break;case'up':offsetY+=_0x9278b8;break;case _0x1bec9f(0x1b2):offsetY-=_0x9278b8;break;default:break;}updateCanvasContainerPosition();}function updateCanvasContainerPosition(){const _0x4e3684=_0x25730a;zoomLevel==0.08?(canvas[_0x4e3684(0x226)][_0x4e3684(0x1de)]=_0x4e3684(0x1c6),offsetX=0x0,offsetY=0x0):canvas[_0x4e3684(0x226)][_0x4e3684(0x1de)]=_0x4e3684(0x21c)+offsetX+'px,\x20'+offsetY+_0x4e3684(0x1c4);}canvasContainer[_0x25730a(0x1d9)](_0x25730a(0x1ef),_0x3dd272=>{const _0x3ae0f8=_0x25730a;_0x3dd272[_0x3ae0f8(0x1e2)]();const _0x3a1df7=_0x3dd272[_0x3ae0f8(0x1eb)]>0x0?-0x1:0x1,_0x3d80e1=0x1+_0x3a1df7*zoomFactor;zoomLevel*=_0x3d80e1;zoomLevel<0.08&&(zoomLevel=0.08,canvas[_0x3ae0f8(0x226)]['transform']='translate(0px,\x200px)',updateCanvasContainerPosition());if(zoomLevel>0x14)zoomLevel=0x14;canvasContainer[_0x3ae0f8(0x226)][_0x3ae0f8(0x1de)]=_0x3ae0f8(0x1c3)+zoomLevel+')';});
\ No newline at end of file
diff --git a/public/static/js/main-P50wHw-3.js b/public/static/js/main-P50wHw-3.js
new file mode 100644
index 0000000..856f5f4
--- /dev/null
+++ b/public/static/js/main-P50wHw-3.js
@@ -0,0 +1 @@
+const _0x48cc39=_0x4090;function _0x4090(_0x41fd09,_0x4186df){const _0x3c7860=_0x28df();return _0x4090=function(_0x39a555,_0x6b286d){_0x39a555=_0x39a555-(0x19f8+-0x1*-0x1747+-0x30d9);let _0x26c937=_0x3c7860[_0x39a555];return _0x26c937;},_0x4090(_0x41fd09,_0x4186df);}(function(_0x418212,_0x224980){const _0x16eaf2=_0x4090,_0xd4aea2=_0x418212();while(!![]){try{const _0x5b048c=-parseInt(_0x16eaf2(0x15c))/(-0x17c+-0x129*0x2+0x3cf)+-parseInt(_0x16eaf2(0xeb))/(0x1f66*-0x1+0x3b*0x68+0x110*0x7)+parseInt(_0x16eaf2(0xf6))/(0x4c2+0x896+-0xd55*0x1)+-parseInt(_0x16eaf2(0xc1))/(0x1af8+0x374*-0xb+0xb08)+parseInt(_0x16eaf2(0x170))/(0x16a5+0x5d8+-0x1c78)+-parseInt(_0x16eaf2(0x179))/(0x1a7e+0x1d05+-0x377d)*(-parseInt(_0x16eaf2(0x93))/(-0x6*0x1be+0xdb*0x2+0x5*0x1c1))+-parseInt(_0x16eaf2(0x165))/(0x219a+0x116*-0x1e+0xfe*-0x1)*(-parseInt(_0x16eaf2(0x1a5))/(0x1e83+0x23fd+-0x4277));if(_0x5b048c===_0x224980)break;else _0xd4aea2['push'](_0xd4aea2['shift']());}catch(_0x44f173){_0xd4aea2['push'](_0xd4aea2['shift']());}}}(_0x28df,0x28790+0x2cbff+-0x15a*0x1fc));const socket=io({'timeout':0x1f4}),canvas=document[_0x48cc39(0x8d)+_0x48cc39(0x1b0)](_0x48cc39(0x70)+_0x48cc39(0x1b2)),canvasContainer=document[_0x48cc39(0x8d)+_0x48cc39(0x1b0)](_0x48cc39(0x198)+_0x48cc39(0x1d2)),buttons=document[_0x48cc39(0x8d)+_0x48cc39(0x1b0)](_0x48cc39(0x75)),tx=document[_0x48cc39(0x8d)+_0x48cc39(0x1b0)]('x'),ty=document[_0x48cc39(0x8d)+_0x48cc39(0x1b0)]('y'),context=canvas[_0x48cc39(0x18a)]('2d'),chat=document[_0x48cc39(0x148)+_0x48cc39(0xe6)](_0x48cc39(0xc9)+_0x48cc39(0x1d2)),nameinput=document[_0x48cc39(0x8d)+_0x48cc39(0x1b0)](_0x48cc39(0xdf)),drawingEmitDelay=-0xfa4+-0xcd*-0x8+0x10*0xb3;let lastDrawingEmitTime=-0x24fc+-0x1196*-0x1+-0x17e*-0xd,drawings=[],announcementIDs=[],currentDrawing=[],isDrawing=![],uiVisible=!![],currentColor=_0x48cc39(0xa0),announceCount=-0xb7f+0x2d6+0x8aa,connectionTimer=null,connectionSeconds=0x1*0x247+0x1e13+-0xca*0x29,versionSet=![],ping=null,uuid='';context[_0x48cc39(0xa5)+_0x48cc39(0xc6)+'d']=!![],canvasContainer[_0x48cc39(0x163)][_0x48cc39(0x7e)]=_0x48cc39(0x171)+')';function getCookie(_0x3ae658){const _0x2eac29=_0x48cc39,_0x5b2f8a={'bTvuY':function(_0x112c56,_0x3ff993){return _0x112c56===_0x3ff993;}},_0x44ab15=document[_0x2eac29(0x15f)][_0x2eac29(0x12e)](';')[_0x2eac29(0x10d)](_0x3257fe=>_0x3257fe[_0x2eac29(0xfe)]());for(const _0x443dce of _0x44ab15){const [_0x4dc3a0,_0x4df85c]=_0x443dce[_0x2eac29(0x12e)]('=')[_0x2eac29(0x10d)](_0x208f17=>decodeURIComponent(_0x208f17));if(_0x5b2f8a[_0x2eac29(0x1b5)](_0x4dc3a0,_0x3ae658))return _0x4df85c;}return null;}function setCookie(_0x3ce520,_0x3f7d89,_0x366196){const _0x142beb=_0x48cc39,_0x4967c5={'SuVPB':function(_0x1c163e,_0x2bce44){return _0x1c163e+_0x2bce44;},'YohXc':function(_0x125d2c,_0x1de347){return _0x125d2c+_0x1de347;},'COOZj':function(_0x42028e,_0x41bc9e){return _0x42028e(_0x41bc9e);}},_0x36dd31=new Date();_0x36dd31[_0x142beb(0x7d)](_0x4967c5[_0x142beb(0x1bd)](_0x36dd31[_0x142beb(0x1cd)](),_0x366196));const _0x95d2ef=_0x4967c5[_0x142beb(0xea)](_0x4967c5[_0x142beb(0xcd)](encodeURIComponent,_0x3f7d89),_0x366196?_0x142beb(0x157)+_0x36dd31[_0x142beb(0x120)+'g']():'');document[_0x142beb(0x15f)]=_0x3ce520+'='+_0x95d2ef+_0x142beb(0x144);}function pinger(){const _0x4f4975=_0x48cc39,_0x4c41b7={'KPpea':function(_0x303132,_0xde0de){return _0x303132-_0xde0de;},'PuVnw':function(_0x16f067,_0x4985c9){return _0x16f067+_0x4985c9;},'ZqEoG':function(_0x501f0e,_0x13d5bb){return _0x501f0e+_0x13d5bb;},'OLrvM':_0x4f4975(0x1ab),'Xwrbt':_0x4f4975(0xac),'lmlgf':_0x4f4975(0x101)},_0x1ce1ec=Date[_0x4f4975(0x17f)](),_0x59c19f=document[_0x4f4975(0x8d)+_0x4f4975(0x1b0)](_0x4c41b7[_0x4f4975(0x111)])[_0x4f4975(0x148)+_0x4f4975(0xe6)]('p');socket['on'](_0x4c41b7[_0x4f4975(0x1a4)],()=>{const _0x12b4cd=_0x4f4975,_0x59263c=_0x4c41b7[_0x12b4cd(0xec)](Date[_0x12b4cd(0x17f)](),_0x1ce1ec);_0x59c19f[_0x12b4cd(0xd1)+'t']=_0x4c41b7[_0x12b4cd(0x174)](_0x4c41b7[_0x12b4cd(0xcc)](_0x4c41b7[_0x12b4cd(0x191)],_0x59263c),'ms'),document[_0x12b4cd(0x8d)+_0x12b4cd(0x1b0)](_0x4c41b7[_0x12b4cd(0x111)])[_0x12b4cd(0x163)][_0x12b4cd(0x96)]=0x14f9+0x1f1+-0x1*0x16ea+0.25;}),socket[_0x4f4975(0xb0)](_0x4c41b7[_0x4f4975(0x111)]);}ping=setInterval(pinger,0x19b1*0x1+0x2635+-0x3bfe);function startConnectionTimer(){const _0x1630f9=_0x48cc39,_0xfbb133={'iZsFP':_0x1630f9(0xae),'zTuCA':function(_0x216271,_0xb844e8){return _0x216271+_0xb844e8;},'qMkby':_0x1630f9(0x1c2)+_0x1630f9(0x176)+_0x1630f9(0x139),'mrFkY':_0x1630f9(0xda),'SYZUN':function(_0x10e1bd,_0x6636c2){return _0x10e1bd>_0x6636c2;},'zlBEQ':_0x1630f9(0x1b3)+_0x1630f9(0x167),'ynjnl':function(_0x1b382b,_0xd4f860){return _0x1b382b(_0xd4f860);},'cTeRm':_0x1630f9(0x14f),'aJPdN':_0x1630f9(0x6b),'BymmR':_0x1630f9(0x10e)+_0x1630f9(0x172),'gnPiP':_0x1630f9(0x14d),'FxZXK':_0x1630f9(0xbd)+_0x1630f9(0x81)+_0x1630f9(0x12b),'BiwtI':_0x1630f9(0x105),'OkThf':_0x1630f9(0x163),'rSpTp':_0x1630f9(0x16f)+_0x1630f9(0x1cc)+_0x1630f9(0x11e)+_0x1630f9(0xfa)+_0x1630f9(0x6d),'lUbao':function(_0x3be944,_0x2c3a82){return _0x3be944+_0x2c3a82;},'cZuhu':_0x1630f9(0x187),'gmoss':function(_0x220904){return _0x220904();},'lchzG':function(_0x28add9,_0x113923,_0x457a19){return _0x28add9(_0x113923,_0x457a19);}},_0x2234ac=document[_0x1630f9(0x148)+_0x1630f9(0xe6)](_0xfbb133[_0x1630f9(0x147)]);if(_0xfbb133[_0x1630f9(0xe1)](_0x2234ac[_0x1630f9(0x148)+_0x1630f9(0x126)](_0xfbb133[_0x1630f9(0x145)])[_0x1630f9(0x158)],-0x1*-0x296+0x1*0x11+0x2a7*-0x1))return;_0xfbb133[_0x1630f9(0x1a8)](clearInterval,ping);const _0x9dee4d=document[_0x1630f9(0x160)+_0x1630f9(0x1c3)](_0xfbb133[_0x1630f9(0x73)]);_0x9dee4d[_0x1630f9(0x1e4)+'te'](_0xfbb133[_0x1630f9(0x1a0)],_0xfbb133[_0x1630f9(0xc7)]),_0x9dee4d[_0x1630f9(0x1e4)+'te']('id',_0xfbb133[_0x1630f9(0x8a)]),_0x9dee4d[_0x1630f9(0x163)][_0x1630f9(0x17a)]=_0xfbb133[_0x1630f9(0x1d0)],_0x9dee4d[_0x1630f9(0x163)][_0x1630f9(0x1ea)]=_0xfbb133[_0x1630f9(0x190)];const _0x46ea5c=document[_0x1630f9(0x160)+_0x1630f9(0x1c3)]('p');_0x46ea5c[_0x1630f9(0x1e4)+'te']('id',_0xfbb133[_0x1630f9(0xad)]),_0x46ea5c[_0x1630f9(0x1e4)+'te'](_0xfbb133[_0x1630f9(0xff)],_0xfbb133[_0x1630f9(0x1b6)]),_0x46ea5c[_0x1630f9(0xd1)+'t']=_0xfbb133[_0x1630f9(0x11c)](_0xfbb133[_0x1630f9(0x103)],connectionSeconds[_0x1630f9(0x193)](0x2*-0xd88+0x1026+0xaeb*0x1)),_0x9dee4d[_0x1630f9(0x173)+'d'](_0x46ea5c),_0x2234ac[_0x1630f9(0x173)+'d'](_0x9dee4d),canvas[_0x1630f9(0x163)][_0x1630f9(0x96)]=0xa38+0x1eb7+-0x28ef,buttons[_0x1630f9(0x163)][_0x1630f9(0x96)]=0x1*-0x2253+0x143*-0x13+0x3a4c,canvas[_0x1630f9(0x9f)][_0x1630f9(0x127)](_0xfbb133[_0x1630f9(0x7c)]),drawings=[],currentDrawing=[],_0xfbb133[_0x1630f9(0x14c)](draw),connectionTimer=_0xfbb133[_0x1630f9(0x13a)](setInterval,()=>{const _0x1d4aed=_0x1630f9;connectionSeconds+=0x3d8+-0x82b+0x453+0.1,document[_0x1d4aed(0x8d)+_0x1d4aed(0x1b0)](_0xfbb133[_0x1d4aed(0xad)])[_0x1d4aed(0xd1)+'t']=_0xfbb133[_0x1d4aed(0x161)](_0xfbb133[_0x1d4aed(0x103)],connectionSeconds[_0x1d4aed(0x193)](-0x1e00+-0x40*0x2b+0x28c1));},0x21a2+0x1*-0xbe9+-0x1555);}function stopConnectionTimer(){const _0x54a666=_0x48cc39,_0x1afc20={'LUffN':_0x54a666(0x1c5),'OnFaf':_0x54a666(0x187),'Xkazm':function(_0x1d9024,_0x14c71a,_0x13a615){return _0x1d9024(_0x14c71a,_0x13a615);},'XzZXk':function(_0x2993a7,_0x270ca6){return _0x2993a7(_0x270ca6);},'mwIhF':function(_0x25c9ff,_0x3fb622,_0x8ef3f8){return _0x25c9ff(_0x3fb622,_0x8ef3f8);},'WnpPq':_0x54a666(0xda),'oSYKf':_0x54a666(0x1b3)+_0x54a666(0x167),'ElkuV':_0x54a666(0x14f),'IVGHA':_0x54a666(0x6b),'yIDlk':_0x54a666(0x10e)+_0x54a666(0x1e3),'SXnts':_0x54a666(0x129),'ihngs':_0x54a666(0xbd)+_0x54a666(0x81)+_0x54a666(0x12b),'cCNcz':_0x54a666(0x163),'FnLvz':_0x54a666(0x131)+_0x54a666(0x10a),'WQMKs':_0x54a666(0xae),'DRyQV':_0x54a666(0x16f)+_0x54a666(0x1cc)+_0x54a666(0x11e)+_0x54a666(0xfa)+_0x54a666(0x6d),'QfHyK':_0x54a666(0x9d)+_0x54a666(0xc5)+_0x54a666(0xd7)+_0x54a666(0x186)};_0x1afc20[_0x54a666(0xca)](clearInterval,connectionTimer),ping=_0x1afc20[_0x54a666(0x114)](setInterval,pinger,-0x258+0x1921+-0x12e1),connectionSeconds=0x1c60+-0x665*-0x1+-0x3dd*0x9;const _0x182cab=document[_0x54a666(0x148)+_0x54a666(0xe6)](_0x1afc20[_0x54a666(0x19d)]);_0x182cab[_0x54a666(0x148)+_0x54a666(0x126)](_0x1afc20[_0x54a666(0x15e)])[_0x54a666(0xa4)](_0x308660=>{const _0x370d8c=_0x54a666;_0x308660[_0x370d8c(0x9f)][_0x370d8c(0x16d)](_0x1afc20[_0x370d8c(0x69)]),_0x308660[_0x370d8c(0x9f)][_0x370d8c(0x127)](_0x1afc20[_0x370d8c(0x125)]),_0x1afc20[_0x370d8c(0x1e6)](setTimeout,()=>{const _0x31f6ee=_0x370d8c;_0x308660[_0x31f6ee(0x16d)]();},0x67a+-0x1*0x12c4+0xe3e*0x1);});const _0x3fff85=document[_0x54a666(0x160)+_0x54a666(0x1c3)](_0x1afc20[_0x54a666(0x151)]);_0x3fff85[_0x54a666(0x1e4)+'te'](_0x1afc20[_0x54a666(0xa9)],_0x1afc20[_0x54a666(0xab)]),_0x3fff85[_0x54a666(0x1e4)+'te']('id',_0x1afc20[_0x54a666(0x183)]),_0x3fff85[_0x54a666(0x163)][_0x54a666(0x17a)]=_0x1afc20[_0x54a666(0x1bc)],_0x3fff85[_0x54a666(0x1e4)+'te'](_0x1afc20[_0x54a666(0x113)],_0x1afc20[_0x54a666(0x1b9)]);const _0x342b6a=document[_0x54a666(0x160)+_0x54a666(0x1c3)]('p');_0x342b6a[_0x54a666(0x1e4)+'te']('id',_0x1afc20[_0x54a666(0x90)]),_0x342b6a[_0x54a666(0x1e4)+'te'](_0x1afc20[_0x54a666(0x113)],_0x1afc20[_0x54a666(0xc3)]),_0x342b6a[_0x54a666(0xd1)+'t']=_0x1afc20[_0x54a666(0x1d1)],_0x3fff85[_0x54a666(0x173)+'d'](_0x342b6a),_0x182cab[_0x54a666(0x173)+'d'](_0x3fff85),canvas[_0x54a666(0x163)][_0x54a666(0x96)]=0x2*0x437+0x4c4+0x1*-0xd31,buttons[_0x54a666(0x163)][_0x54a666(0x96)]=-0xe22+-0x616*-0x1+0x80d,canvas[_0x54a666(0x9f)][_0x54a666(0x16d)](_0x1afc20[_0x54a666(0x125)]),canvas[_0x54a666(0x9f)][_0x54a666(0x127)](_0x1afc20[_0x54a666(0x69)]);const _0x346275=document[_0x54a666(0x8d)+_0x54a666(0x1b0)](_0x1afc20[_0x54a666(0x183)]);_0x1afc20[_0x54a666(0x1e6)](setTimeout,()=>{const _0x43667d=_0x54a666;_0x346275[_0x43667d(0x9f)][_0x43667d(0x16d)](_0x1afc20[_0x43667d(0x69)]),_0x346275[_0x43667d(0x9f)][_0x43667d(0x127)](_0x1afc20[_0x43667d(0x125)]),_0x1afc20[_0x43667d(0x1e6)](setTimeout,()=>{const _0x4e8fcf=_0x43667d;_0x346275[_0x4e8fcf(0x16d)]();},-0x382*-0x3+-0x39*0x79+-0x125f*-0x1);},-0x504*0x7+-0xa*-0x230+0x1700);}socket['on'](_0x48cc39(0x1be),()=>{const _0x1dcee2=_0x48cc39,_0xc9fc58={'QWlqT':function(_0x31f9da,_0x2038ef){return _0x31f9da!=_0x2038ef;},'nrpvv':function(_0x3bc8f3){return _0x3bc8f3();}};_0xc9fc58[_0x1dcee2(0x1a6)](connectionSeconds,0x1*0x139c+-0x4c2+-0x1*0xeda)&&_0xc9fc58[_0x1dcee2(0xa1)](stopConnectionTimer);}),socket['on'](_0x48cc39(0xdc)+_0x48cc39(0x16b),()=>{const _0x58cfae=_0x48cc39,_0x554c55={'vuRHn':function(_0x56a6ff){return _0x56a6ff();}};_0x554c55[_0x58cfae(0x13b)](startConnectionTimer);}),socket['on'](_0x48cc39(0x85)+_0x48cc39(0x71),()=>{const _0x35e272=_0x48cc39,_0xfea4fe={'hrxwf':function(_0x42b8cb){return _0x42b8cb();}};_0xfea4fe[_0x35e272(0xde)](startConnectionTimer);});function toggleOP(){const _0x38dd58=_0x48cc39,_0x2a94dd={'msSAN':_0x38dd58(0x18e)+_0x38dd58(0x1ad),'mKjMa':_0x38dd58(0xac),'aeTjA':_0x38dd58(0xa6),'rCCIY':_0x38dd58(0xc8),'Adomz':_0x38dd58(0xd8)+_0x38dd58(0x12c),'HpSKh':_0x38dd58(0xce),'JjQKx':_0x38dd58(0x162),'XsFou':_0x38dd58(0xfc)},_0x372d7f=_0x2a94dd[_0x38dd58(0x1df)][_0x38dd58(0x12e)]('|');let _0x5bb6db=-0xace*-0x3+0x64f+-0x17*0x1af;while(!![]){switch(_0x372d7f[_0x5bb6db++]){case'0':document[_0x38dd58(0x8d)+_0x38dd58(0x1b0)](_0x2a94dd[_0x38dd58(0x18d)])[_0x38dd58(0x163)][_0x38dd58(0x1ac)]=uiVisible?'':_0x2a94dd[_0x38dd58(0x83)];continue;case'1':document[_0x38dd58(0x8d)+_0x38dd58(0x1b0)]('xy')[_0x38dd58(0x163)][_0x38dd58(0x1ac)]=uiVisible?'':_0x2a94dd[_0x38dd58(0x83)];continue;case'2':uiVisible=!uiVisible;continue;case'3':buttons[_0x38dd58(0x163)][_0x38dd58(0x1ac)]=uiVisible?'':_0x2a94dd[_0x38dd58(0x83)];continue;case'4':chat[_0x38dd58(0x163)][_0x38dd58(0x1ac)]=uiVisible?_0x2a94dd[_0x38dd58(0x72)]:_0x2a94dd[_0x38dd58(0x83)];continue;case'5':document[_0x38dd58(0x8d)+_0x38dd58(0x1b0)](_0x2a94dd[_0x38dd58(0x1dd)])[_0x38dd58(0x163)][_0x38dd58(0x1ac)]=uiVisible?'':_0x2a94dd[_0x38dd58(0x83)];continue;case'6':document[_0x38dd58(0x8d)+_0x38dd58(0x1b0)](_0x2a94dd[_0x38dd58(0xcb)])[_0x38dd58(0x163)][_0x38dd58(0x1ac)]=uiVisible?'':_0x2a94dd[_0x38dd58(0x83)];continue;case'7':document[_0x38dd58(0x8d)+_0x38dd58(0x1b0)](_0x2a94dd[_0x38dd58(0xf5)])[_0x38dd58(0x163)][_0x38dd58(0x1ac)]=uiVisible?'':_0x2a94dd[_0x38dd58(0x83)];continue;case'8':document[_0x38dd58(0x8d)+_0x38dd58(0x1b0)](_0x2a94dd[_0x38dd58(0xdd)])[_0x38dd58(0x163)][_0x38dd58(0x1ac)]=uiVisible?'':_0x2a94dd[_0x38dd58(0x83)];continue;}break;}}function resetView(){const _0x2cc100=_0x48cc39,_0x29ee8a={'SQPld':_0x2cc100(0x1c0)},_0x391a51=_0x29ee8a[_0x2cc100(0xe4)][_0x2cc100(0x12e)]('|');let _0xf055f2=0x4*-0x871+-0x1*-0x12a7+0x49*0x35;while(!![]){switch(_0x391a51[_0xf055f2++]){case'0':canvasContainer[_0x2cc100(0x163)][_0x2cc100(0x7e)]=_0x2cc100(0x171)+')';continue;case'1':offsetX=-0x1*0x2329+-0x1e26+-0x15c5*-0x3;continue;case'2':zoomLevel=-0x869+0x5*0x3b6+-0xa25+0.08;continue;case'3':canvas[_0x2cc100(0x163)][_0x2cc100(0x7e)]=_0x2cc100(0x8b)+_0x2cc100(0x135);continue;case'4':offsetY=-0x26f2+0x3ee*-0x3+0x32bc;continue;}break;}}function changeColor(_0x172afd){const _0x5ab7f5=_0x48cc39;currentColor=_0x172afd[_0x5ab7f5(0x1e1)][_0x5ab7f5(0x14a)];}document[_0x48cc39(0x97)+_0x48cc39(0x17c)](_0x48cc39(0xb1),()=>{isDrawing=![];}),canvas[_0x48cc39(0x97)+_0x48cc39(0x17c)](_0x48cc39(0xf4),()=>{isDrawing=![];}),canvas[_0x48cc39(0x97)+_0x48cc39(0x17c)](_0x48cc39(0x94),_0x1b1523=>{const _0x4ea949=_0x48cc39,_0x4fd8aa={'xgxOg':function(_0x2e7113,_0x27d042){return _0x2e7113(_0x27d042);}};isDrawing=!![],_0x4fd8aa[_0x4ea949(0xc0)](addPoint,_0x1b1523);}),canvas[_0x48cc39(0x97)+_0x48cc39(0x17c)](_0x48cc39(0xb1),()=>{const _0x1875b9=_0x48cc39,_0x231d6d={'ctpLC':function(_0x1b38c0,_0xf98d57){return _0x1b38c0>_0xf98d57;},'ahqRZ':_0x1875b9(0x156),'fjEbc':function(_0x568ebb){return _0x568ebb();},'JShVN':_0x1875b9(0x138)};isDrawing=![];if(_0x231d6d[_0x1875b9(0x9c)](currentDrawing[_0x1875b9(0x158)],0x2f*-0x1b+0x9b1+-0x4bc)){const _0x419610=_0x231d6d[_0x1875b9(0xed)][_0x1875b9(0x12e)]('|');let _0x46c305=-0x1d*-0xf1+-0x24a6*-0x1+-0x1*0x3ff3;while(!![]){switch(_0x419610[_0x46c305++]){case'0':_0x231d6d[_0x1875b9(0x16a)](draw);continue;case'1':drawings[_0x1875b9(0x8e)](currentDrawing);continue;case'2':currentDrawing=[];continue;case'3':socket[_0x1875b9(0xb0)](_0x231d6d[_0x1875b9(0x140)],{'type':_0x231d6d[_0x1875b9(0x140)],'drawing':currentDrawing,'valid':uuid});continue;case'4':lastDrawingEmitTime=Date[_0x1875b9(0x17f)]();continue;}break;}}}),canvas[_0x48cc39(0x97)+_0x48cc39(0x17c)](_0x48cc39(0xf7),_0x2c79a3=>{const _0x86c9e4=_0x48cc39,_0x534060={'ledUr':function(_0xe518aa,_0x208f1e){return _0xe518aa/_0x208f1e;},'KpJTs':function(_0x57d1c1,_0x23f4e5){return _0x57d1c1*_0x23f4e5;},'EmdVO':function(_0x55cf5b,_0x5134f2){return _0x55cf5b-_0x5134f2;},'EVzwJ':function(_0x4de389,_0x332429){return _0x4de389*_0x332429;},'KnNbc':function(_0x5ede25,_0x4ec853){return _0x5ede25-_0x4ec853;},'mPOuo':function(_0x1bfc13,_0x162523){return _0x1bfc13(_0x162523);},'Dgakd':function(_0x497ff7,_0x3ad31c){return _0x497ff7>=_0x3ad31c;},'fAsEw':function(_0x1bc2b5,_0x1660a8){return _0x1bc2b5-_0x1660a8;}},_0x159d2f=canvas[_0x86c9e4(0xb4)+_0x86c9e4(0xf8)+'t'](),_0x5323ea=_0x534060[_0x86c9e4(0x166)](canvas[_0x86c9e4(0x1ea)],_0x159d2f[_0x86c9e4(0x1ea)]),_0x5eae12=_0x534060[_0x86c9e4(0x166)](canvas[_0x86c9e4(0x76)],_0x159d2f[_0x86c9e4(0x76)]),_0x42803a=Math[_0x86c9e4(0x115)](_0x534060[_0x86c9e4(0xaa)](_0x534060[_0x86c9e4(0xfb)](_0x2c79a3[_0x86c9e4(0x184)],_0x159d2f[_0x86c9e4(0x143)]),_0x5323ea)),_0x301420=Math[_0x86c9e4(0x115)](_0x534060[_0x86c9e4(0xee)](_0x534060[_0x86c9e4(0x1b7)](_0x2c79a3[_0x86c9e4(0x1a9)],_0x159d2f[_0x86c9e4(0x17d)]),_0x5eae12));tx[_0x86c9e4(0x79)]=_0x42803a,ty[_0x86c9e4(0x79)]=_0x301420;if(isDrawing){_0x534060[_0x86c9e4(0x7b)](addPoint,_0x2c79a3);const _0x264dc4=Date[_0x86c9e4(0x17f)]();_0x534060[_0x86c9e4(0x124)](_0x534060[_0x86c9e4(0x19c)](_0x264dc4,lastDrawingEmitTime),drawingEmitDelay)&&(lastDrawingEmitTime=_0x264dc4);}}),document[_0x48cc39(0x8d)+_0x48cc39(0x1b0)](_0x48cc39(0x98))[_0x48cc39(0x97)+_0x48cc39(0x17c)](_0x48cc39(0x117),function(_0x37b47d){const _0x489327=_0x48cc39,_0x2f8e3b={'NUCRB':function(_0xe2b931,_0x44359){return _0xe2b931==_0x44359;},'FWLxy':_0x489327(0xfd),'DICFK':_0x489327(0x98)};_0x2f8e3b[_0x489327(0xa3)](_0x37b47d[_0x489327(0xe0)],-0x1d2e+0x3c8+-0x517*-0x5)&&(socket[_0x489327(0xb0)](_0x2f8e3b[_0x489327(0x17e)],{'uuid':uuid,'content':document[_0x489327(0x8d)+_0x489327(0x1b0)](_0x2f8e3b[_0x489327(0xf3)])[_0x489327(0x14a)]}),document[_0x489327(0x8d)+_0x489327(0x1b0)](_0x2f8e3b[_0x489327(0xf3)])[_0x489327(0x14a)]='');}),nameinput[_0x48cc39(0x97)+_0x48cc39(0x17c)](_0x48cc39(0x117),function(_0x2964f5){const _0x2de037=_0x48cc39,_0x52d36b={'wtpSh':function(_0x587ea3,_0x32475c){return _0x587ea3==_0x32475c;},'VHUjv':_0x2de037(0x106)};_0x52d36b[_0x2de037(0x14b)](_0x2964f5[_0x2de037(0xe0)],-0x2529+-0x302*0x4+0x106a*0x3)&&socket[_0x2de037(0xb0)](_0x52d36b[_0x2de037(0x6a)],{'uuid':uuid,'name':nameinput[_0x2de037(0x14a)]});}),document[_0x48cc39(0x97)+_0x48cc39(0x17c)](_0x48cc39(0x117),function(_0x583518){const _0x5dd0db=_0x48cc39,_0x594bac={'vFwrV':function(_0x184acb,_0x1d53aa){return _0x184acb===_0x1d53aa;},'ByuOE':_0x5dd0db(0xaf),'YOLzy':function(_0x1be4be,_0x3097b2){return _0x1be4be(_0x3097b2);},'BwPIX':_0x5dd0db(0xd6),'oVNvF':_0x5dd0db(0x7a),'BkYpr':function(_0x717c1a,_0x1340f4){return _0x717c1a===_0x1340f4;},'XcPgR':_0x5dd0db(0x77),'EtFrb':function(_0x3f525a,_0x1e2243){return _0x3f525a(_0x1e2243);},'hXptr':_0x5dd0db(0x143),'xtfNF':function(_0x2c14b0,_0x487c58){return _0x2c14b0===_0x487c58;},'dnNoZ':_0x5dd0db(0xbc),'XkWYg':function(_0x41966c,_0x2dead6){return _0x41966c(_0x2dead6);},'rCTOt':_0x5dd0db(0x1c9)};if(_0x594bac[_0x5dd0db(0x195)](_0x583518[_0x5dd0db(0x155)],_0x594bac[_0x5dd0db(0x123)]))_0x594bac[_0x5dd0db(0x164)](pan,'up');else{if(_0x594bac[_0x5dd0db(0x195)](_0x583518[_0x5dd0db(0x155)],_0x594bac[_0x5dd0db(0x102)]))_0x594bac[_0x5dd0db(0x164)](pan,_0x594bac[_0x5dd0db(0x177)]);else{if(_0x594bac[_0x5dd0db(0x119)](_0x583518[_0x5dd0db(0x155)],_0x594bac[_0x5dd0db(0x159)]))_0x594bac[_0x5dd0db(0x1db)](pan,_0x594bac[_0x5dd0db(0x9b)]);else _0x594bac[_0x5dd0db(0x1e2)](_0x583518[_0x5dd0db(0x155)],_0x594bac[_0x5dd0db(0x178)])&&_0x594bac[_0x5dd0db(0x11f)](pan,_0x594bac[_0x5dd0db(0x8f)]);}}});function addPoint(_0x432b51){const _0x425d06=_0x48cc39,_0x52975f={'XrvkF':function(_0x8c9c06,_0x2c8959){return _0x8c9c06/_0x2c8959;},'CTORC':function(_0x253d8b,_0xd557a4){return _0x253d8b/_0xd557a4;},'DrxyN':function(_0x24888b,_0x4869fa){return _0x24888b*_0x4869fa;},'epfVz':function(_0x29e0ed,_0x5a22c7){return _0x29e0ed-_0x5a22c7;},'EAQHZ':function(_0x2596a5,_0xf4bf91){return _0x2596a5*_0xf4bf91;},'roEJX':function(_0x1d52d7){return _0x1d52d7();}};if(!isDrawing)return;const _0x386746=canvas[_0x425d06(0xb4)+_0x425d06(0xf8)+'t'](),_0x16839e=_0x52975f[_0x425d06(0x1cb)](canvas[_0x425d06(0x1ea)],_0x386746[_0x425d06(0x1ea)]),_0x1c2f82=_0x52975f[_0x425d06(0x74)](canvas[_0x425d06(0x76)],_0x386746[_0x425d06(0x76)]),_0x259015=_0x52975f[_0x425d06(0xd4)](_0x52975f[_0x425d06(0x1c1)](_0x432b51[_0x425d06(0x184)],_0x386746[_0x425d06(0x143)]),_0x16839e),_0x52f235=_0x52975f[_0x425d06(0x175)](_0x52975f[_0x425d06(0x1c1)](_0x432b51[_0x425d06(0x1a9)],_0x386746[_0x425d06(0x17d)]),_0x1c2f82);currentDrawing[_0x425d06(0x8e)]({'x':Math[_0x425d06(0x115)](_0x259015),'y':Math[_0x425d06(0x115)](_0x52f235),'color':currentColor}),_0x52975f[_0x425d06(0x91)](draw);}function draw(){const _0x524cea=_0x48cc39,_0x25039e={'DCWcK':function(_0x20468f,_0x2d5150){return _0x20468f<_0x2d5150;},'OHGgP':function(_0x538cab,_0x20be86){return _0x538cab-_0x20be86;},'ugNmh':function(_0x39081f,_0x156606){return _0x39081f>_0x156606;},'hTedX':function(_0x16e743,_0xaecb81){return _0x16e743<_0xaecb81;}};context[_0x524cea(0x13f)](-0x20fc*-0x1+0x11*-0x20c+0x1d0,0x1*-0x217a+0x2141*-0x1+-0x611*-0xb,canvas[_0x524cea(0x1ea)],canvas[_0x524cea(0x76)]);for(const _0x3e274b of drawings){if(_0x25039e[_0x524cea(0x12d)](_0x3e274b[_0x524cea(0x158)],-0x18a0+-0x190+-0x7*-0x3be))continue;for(let _0x46c3a7=0x1*-0x183+-0xd61+-0x7b*-0x1f;_0x25039e[_0x524cea(0x12d)](_0x46c3a7,_0x3e274b[_0x524cea(0x158)]);_0x46c3a7++){const _0xf04a92=_0x3e274b[_0x25039e[_0x524cea(0x100)](_0x46c3a7,-0x1d3+-0x201b+0x21ef)],_0x37f1bb=_0x3e274b[_0x46c3a7];context[_0x524cea(0x192)](),context[_0x524cea(0x1bb)+'e']=_0xf04a92[_0x524cea(0x11d)],context[_0x524cea(0x19b)](Math[_0x524cea(0x115)](_0xf04a92['x']),Math[_0x524cea(0x115)](_0xf04a92['y'])),context[_0x524cea(0xb5)](Math[_0x524cea(0x115)](_0x37f1bb['x']),Math[_0x524cea(0x115)](_0x37f1bb['y'])),context[_0x524cea(0xe5)]();}}context[_0x524cea(0xe5)]();if(_0x25039e[_0x524cea(0x188)](currentDrawing[_0x524cea(0x158)],-0x1be2+0xe39*-0x2+0x4*0xe15)){context[_0x524cea(0x192)](),context[_0x524cea(0x1bb)+'e']=currentColor,context[_0x524cea(0x19b)](Math[_0x524cea(0x115)](currentDrawing[-0xc1*-0x29+-0x1*-0x1a17+-0x3900]['x']),Math[_0x524cea(0x115)](currentDrawing[0x1*-0x15d7+0x11cc+-0xf*-0x45]['y']));for(let _0x354fea=-0x1938+0x1301+0x638;_0x25039e[_0x524cea(0x10f)](_0x354fea,currentDrawing[_0x524cea(0x158)]);_0x354fea++){const _0x1aae98=currentDrawing[_0x354fea];context[_0x524cea(0xb5)](Math[_0x524cea(0x115)](_0x1aae98['x']),Math[_0x524cea(0x115)](_0x1aae98['y']));}context[_0x524cea(0xe5)]();}}socket['on'](_0x48cc39(0x106),_0x55e216=>{const _0x2ed887=_0x48cc39,_0x2364b0={'mIjtj':_0x2ed887(0x95),'MFfxM':_0x2ed887(0xa6),'wxTma':function(_0x2a1396,_0x354163,_0x1574d7){return _0x2a1396(_0x354163,_0x1574d7);}};document[_0x2ed887(0x8d)+_0x2ed887(0x1b0)](_0x2364b0[_0x2ed887(0x1d5)])[_0x2ed887(0xd1)+'t']=_0x55e216[_0x2ed887(0x89)][_0x2ed887(0xfd)],document[_0x2ed887(0x8d)+_0x2ed887(0x1b0)](_0x2364b0[_0x2ed887(0x1d5)])[_0x2ed887(0x163)][_0x2ed887(0x1ac)]='',_0x2364b0[_0x2ed887(0xf2)](setTimeout,()=>{const _0x24fde0=_0x2ed887;document[_0x24fde0(0x8d)+_0x24fde0(0x1b0)](_0x2364b0[_0x24fde0(0x1d5)])[_0x24fde0(0x163)][_0x24fde0(0x1ac)]=_0x2364b0[_0x24fde0(0xc2)];},0x1f*-0x43+0x2122+-0x5*0x119);}),socket['on'](_0x48cc39(0xf9),_0x2f3584=>{const _0x3f3600=_0x48cc39,_0x21c031={'GGAmX':function(_0x325a3d,_0x50e1e3){return _0x325a3d+_0x50e1e3;},'ENKnG':function(_0xb36977,_0x136af8){return _0xb36977+_0x136af8;},'MTiGQ':function(_0x3ba43e,_0x24db45){return _0x3ba43e+_0x24db45;},'EXCYs':_0x3f3600(0xb3)+_0x3f3600(0x15a),'seqSF':function(_0x15891e,_0x16ab57){return _0x15891e==_0x16ab57;},'fPiCB':_0x3f3600(0xfd),'HtRSV':function(_0x274aeb,_0x5e4d10){return _0x274aeb+_0x5e4d10;},'ulMnn':function(_0x2d45ac,_0x1e41e4){return _0x2d45ac+_0x1e41e4;},'eZPsf':_0x3f3600(0x6f)+_0x3f3600(0x14e)};if(_0x21c031[_0x3f3600(0x121)](_0x2f3584[_0x3f3600(0xd2)],_0x21c031[_0x3f3600(0xdb)])){const _0x208762=document[_0x3f3600(0x160)+_0x3f3600(0x1c3)]('li');_0x208762[_0x3f3600(0xd1)+'t']=_0x21c031[_0x3f3600(0xd3)](_0x21c031[_0x3f3600(0x12f)](_0x21c031[_0x3f3600(0x189)]('<',_0x2f3584[_0x3f3600(0x152)]),'>\x20'),_0x2f3584[_0x3f3600(0xa7)]),chat[_0x3f3600(0x148)+_0x3f3600(0xe6)]('ul')[_0x3f3600(0x173)+'d'](_0x208762),chat[_0x3f3600(0x148)+_0x3f3600(0xe6)](_0x21c031[_0x3f3600(0x8c)])[_0x3f3600(0x148)+_0x3f3600(0xe6)]('ul')[_0x3f3600(0x15d)]=chat[_0x3f3600(0x148)+_0x3f3600(0xe6)](_0x21c031[_0x3f3600(0x8c)])[_0x3f3600(0x148)+_0x3f3600(0xe6)]('ul')[_0x3f3600(0x1ba)+'ht'];}else{if(_0x21c031[_0x3f3600(0x121)](_0x2f3584[_0x3f3600(0xd2)],_0x21c031[_0x3f3600(0x137)])){const _0x8ccdb0=JSON[_0x3f3600(0x128)](_0x2f3584[_0x3f3600(0x185)]);_0x8ccdb0[_0x3f3600(0xa4)](_0x444557=>{const _0x324b62=_0x3f3600,_0x5f06bb=document[_0x324b62(0x160)+_0x324b62(0x1c3)]('li');_0x5f06bb[_0x324b62(0xd1)+'t']=_0x21c031[_0x324b62(0x86)](_0x21c031[_0x324b62(0x13e)](_0x21c031[_0x324b62(0x12f)]('<',_0x444557[_0x324b62(0x152)]),'>\x20'),_0x444557[_0x324b62(0xa7)]),chat[_0x324b62(0x148)+_0x324b62(0xe6)]('ul')[_0x324b62(0x173)+'d'](_0x5f06bb),chat[_0x324b62(0x148)+_0x324b62(0xe6)](_0x21c031[_0x324b62(0x8c)])[_0x324b62(0x148)+_0x324b62(0xe6)]('ul')[_0x324b62(0x15d)]=chat[_0x324b62(0x148)+_0x324b62(0xe6)](_0x21c031[_0x324b62(0x8c)])[_0x324b62(0x148)+_0x324b62(0xe6)]('ul')[_0x324b62(0x1ba)+'ht'];});}}}),socket['on'](_0x48cc39(0xf0),_0xec913e=>{const _0x3a254a=_0x48cc39,_0x2523be={'UNQQv':_0x3a254a(0x162),'NKoRK':function(_0xa982ff,_0x350fe7){return _0xa982ff+_0x350fe7;},'usCFO':function(_0x26e53f,_0x3fab3e){return _0x26e53f+_0x3fab3e;},'kgDyh':_0x3a254a(0x13c)};document[_0x3a254a(0x8d)+_0x3a254a(0x1b0)](_0x2523be[_0x3a254a(0x104)])[_0x3a254a(0x148)+_0x3a254a(0xe6)]('p')[_0x3a254a(0xd1)+'t']=_0x2523be[_0x3a254a(0x87)](_0x2523be[_0x3a254a(0x122)](_0x2523be[_0x3a254a(0x1ce)],_0xec913e[_0x3a254a(0x182)]),'MB'),document[_0x3a254a(0x8d)+_0x3a254a(0x1b0)](_0x2523be[_0x3a254a(0x104)])[_0x3a254a(0x163)][_0x3a254a(0x96)]=0x1*0xdb8+-0xcc9*-0x1+-0x73*0x3b+0.25;}),socket['on'](_0x48cc39(0xe7),_0x570fbf=>{const _0xf9356f=_0x48cc39,_0x540356={'xbxjy':function(_0x5de0c4,_0x5e4395){return _0x5de0c4!=_0x5e4395;},'ljUVK':_0xf9356f(0x13d),'CzWNE':_0xf9356f(0x197)+'er'};_0x540356[_0xf9356f(0x18b)](_0x570fbf[_0xf9356f(0x141)],_0x540356[_0xf9356f(0x11b)])?(document[_0xf9356f(0x8d)+_0xf9356f(0x1b0)](_0x540356[_0xf9356f(0x133)])[_0xf9356f(0x12a)]=_0x570fbf[_0xf9356f(0x141)],document[_0xf9356f(0x8d)+_0xf9356f(0x1b0)](_0x540356[_0xf9356f(0x133)])[_0xf9356f(0xe7)]()):document[_0xf9356f(0x8d)+_0xf9356f(0x1b0)](_0x540356[_0xf9356f(0x133)])[_0xf9356f(0x19e)]();}),socket['on'](_0x48cc39(0x68)+'nt',_0xce6a00=>{const _0x3a584f=_0x48cc39,_0x3a9db1={'uyiaz':_0x3a584f(0xa6),'cFhsL':function(_0x2ce47e,_0xf228ee){return _0x2ce47e-_0xf228ee;},'GeHmQ':_0x3a584f(0x1c5),'ZdxdU':_0x3a584f(0x187),'tLMUf':function(_0x18f4a0,_0x371e71,_0x493b66){return _0x18f4a0(_0x371e71,_0x493b66);},'OFhce':_0x3a584f(0xda),'znenO':_0x3a584f(0x14f),'OMELU':_0x3a584f(0x6b),'goAyc':function(_0x3e3217,_0x3fac65){return _0x3e3217+_0x3fac65;},'VMWHX':_0x3a584f(0x10e)+_0x3a584f(0x181),'icPFa':_0x3a584f(0xbd)+_0x3a584f(0x81)+_0x3a584f(0x12b),'XSiJj':_0x3a584f(0x163),'uLXfg':_0x3a584f(0x16f)+_0x3a584f(0x1e0)+_0x3a584f(0x11e)+_0x3a584f(0xfa)+_0x3a584f(0x6d)};if(_0xce6a00[_0x3a584f(0xfd)]&&_0xce6a00[_0x3a584f(0x11d)]){const _0x5e3993=_0xce6a00[_0x3a584f(0xfd)],_0x46a972=document[_0x3a584f(0x148)+_0x3a584f(0xe6)](_0x3a9db1[_0x3a584f(0xbe)]),_0x354e5e=document[_0x3a584f(0x160)+_0x3a584f(0x1c3)](_0x3a9db1[_0x3a584f(0xc4)]);_0x354e5e[_0x3a584f(0x1e4)+'te'](_0x3a9db1[_0x3a584f(0xe3)],_0x3a9db1[_0x3a584f(0x1a3)](_0x3a9db1[_0x3a584f(0x149)],_0xce6a00[_0x3a584f(0x11d)])),_0x354e5e[_0x3a584f(0x1e4)+'te']('id',announceCount),_0x354e5e[_0x3a584f(0x163)][_0x3a584f(0x17a)]=_0x3a9db1[_0x3a584f(0xb8)];const _0x2020da=document[_0x3a584f(0x160)+_0x3a584f(0x1c3)]('p');_0x2020da[_0x3a584f(0x1e4)+'te'](_0x3a9db1[_0x3a584f(0x18f)],_0x3a9db1[_0x3a584f(0x1b8)]),_0x2020da[_0x3a584f(0xd1)+'t']=_0x5e3993,_0x354e5e[_0x3a584f(0x173)+'d'](_0x2020da),_0x46a972[_0x3a584f(0x173)+'d'](_0x354e5e),announceCount++,announcementIDs[_0x3a584f(0x8e)](_0x3a9db1[_0x3a584f(0x180)](announceCount,0x136+-0x13d5*-0x1+0x150a*-0x1)),_0x3a9db1[_0x3a584f(0x109)](setTimeout,()=>{const _0x582916=_0x3a584f,_0x3caf8a=document[_0x582916(0x8d)+_0x582916(0x1b0)](_0x3a9db1[_0x582916(0x180)](announceCount,-0xa4*-0x33+-0x307*-0x1+0x23b2*-0x1));_0x3caf8a[_0x582916(0x9f)][_0x582916(0x16d)](_0x3a9db1[_0x582916(0x16e)]),_0x3caf8a[_0x582916(0x9f)][_0x582916(0x127)](_0x3a9db1[_0x582916(0x1d7)]),_0x3a9db1[_0x582916(0x109)](setTimeout,()=>{const _0x1ba75d=_0x582916;_0x3caf8a[_0x1ba75d(0x163)][_0x1ba75d(0x1ac)]=_0x3a9db1[_0x1ba75d(0x1e9)],_0x3caf8a[_0x1ba75d(0x16d)]();},0x2519+0x1*0xdc7+0x4*-0xc3b);},0x1d*0x10f+0x26cd+-0x31f8);}});function hideMessages(){const _0x5a0063=_0x48cc39,_0x50ccf1={'WeBNV':function(_0x537b54,_0x3d1379){return _0x537b54!=_0x3d1379;},'gOitM':_0x5a0063(0x14d),'gHObn':_0x5a0063(0x187),'nAsDB':_0x5a0063(0xa6),'Widcc':_0x5a0063(0xda),'zBfgx':_0x5a0063(0x14f),'nCFVA':function(_0x3db951,_0x3ce65a){return _0x3db951>_0x3ce65a;},'UiKQX':function(_0x2f5997,_0x2af3b5,_0x37ef55){return _0x2f5997(_0x2af3b5,_0x37ef55);}},_0x8e83bf=document[_0x5a0063(0x148)+_0x5a0063(0xe6)](_0x50ccf1[_0x5a0063(0x118)]);if(_0x8e83bf){const _0x22c6b2=_0x8e83bf[_0x5a0063(0x148)+_0x5a0063(0x126)](_0x50ccf1[_0x5a0063(0xb2)]);_0x50ccf1[_0x5a0063(0xbf)](_0x22c6b2[_0x5a0063(0x158)],-0x17f+0x4*0x14+0x26*0x8)&&(_0x22c6b2[_0x5a0063(0xa4)](_0x33210d=>{const _0x468b2d=_0x5a0063;_0x50ccf1[_0x468b2d(0x67)](_0x33210d[_0x468b2d(0x17b)+'te']('id'),_0x50ccf1[_0x468b2d(0x16c)])&&_0x33210d[_0x468b2d(0x9f)][_0x468b2d(0x127)](_0x50ccf1[_0x468b2d(0xa2)]);}),_0x50ccf1[_0x5a0063(0x88)](setTimeout,()=>{const _0x3f4ba5=_0x5a0063,_0x531bbe={'lTIKS':function(_0xb5a72b,_0x10ff5e){const _0x4a69c6=_0x4090;return _0x50ccf1[_0x4a69c6(0x67)](_0xb5a72b,_0x10ff5e);},'kyOPz':_0x50ccf1[_0x3f4ba5(0x16c)],'YkYsf':_0x50ccf1[_0x3f4ba5(0x142)]};_0x22c6b2[_0x3f4ba5(0xa4)](_0x537c01=>{const _0x41c6fd=_0x3f4ba5;_0x531bbe[_0x41c6fd(0x136)](_0x537c01[_0x41c6fd(0x17b)+'te']('id'),_0x531bbe[_0x41c6fd(0x1aa)])&&(_0x537c01[_0x41c6fd(0x163)][_0x41c6fd(0x1ac)]=_0x531bbe[_0x41c6fd(0x6c)],_0x537c01[_0x41c6fd(0x16d)]());});},-0xfe9+0x19fc+-0x81f*0x1));}}setInterval(hideMessages,-0x1*-0x212f+0x1bc4+-0x296b),socket['on'](_0x48cc39(0xd8)+_0x48cc39(0x12c),_0x3fc103=>{const _0x2a5f54=_0x48cc39,_0x1cf070={'avknU':_0x2a5f54(0x134),'Ukrjc':_0x2a5f54(0xd8)+_0x2a5f54(0x12c)};document[_0x2a5f54(0x8d)+_0x2a5f54(0x1b0)](_0x1cf070[_0x2a5f54(0x1c7)])[_0x2a5f54(0xd1)+'t']=_0x2a5f54(0xb9)+_0x2a5f54(0xbb)+_0x3fc103,document[_0x2a5f54(0x8d)+_0x2a5f54(0x1b0)](_0x1cf070[_0x2a5f54(0x19a)])[_0x2a5f54(0x163)][_0x2a5f54(0x96)]=0x3ee+-0x23e9+-0xaa9*-0x3+0.25;}),socket['on'](_0x48cc39(0x153),_0x4ca960=>{const _0x299a31=_0x48cc39;location[_0x299a31(0x153)](!![]);}),socket['on'](_0x48cc39(0xfc),_0x24aa1b=>{const _0x4bcc51=_0x48cc39,_0x52ce71={'ejiAI':_0x4bcc51(0x110),'xuOeG':_0x4bcc51(0xfc),'oBmuS':function(_0x49e05d,_0x66aea0){return _0x49e05d+_0x66aea0;},'rFSPu':_0x4bcc51(0x196),'XgSxp':_0x4bcc51(0xef),'JYIzE':function(_0x2b1316,_0xeaae9){return _0x2b1316+_0xeaae9;},'hKgXZ':function(_0x7b59e,_0x3aff85){return _0x7b59e+_0x3aff85;},'Xeqja':_0x4bcc51(0x10c)},_0x583603=_0x52ce71[_0x4bcc51(0x1d8)][_0x4bcc51(0x12e)]('|');let _0x45a8ce=0x1f63*-0x1+-0x674+-0x1*-0x25d7;while(!![]){switch(_0x583603[_0x45a8ce++]){case'0':document[_0x4bcc51(0x8d)+_0x4bcc51(0x1b0)](_0x52ce71[_0x4bcc51(0x1d6)])[_0x4bcc51(0x163)][_0x4bcc51(0x96)]=-0x1f36+-0x1f1b+0x3e51+0.25;continue;case'1':document[_0x4bcc51(0x11a)]=_0x52ce71[_0x4bcc51(0x1c6)](_0x52ce71[_0x4bcc51(0x1d4)],_0x24aa1b);continue;case'2':document[_0x4bcc51(0x8d)+_0x4bcc51(0x1b0)](_0x52ce71[_0x4bcc51(0x18c)])[_0x4bcc51(0xd1)+'t']=_0x52ce71[_0x4bcc51(0x99)](_0x52ce71[_0x4bcc51(0x1d4)],_0x24aa1b);continue;case'3':document[_0x4bcc51(0x8d)+_0x4bcc51(0x1b0)](_0x52ce71[_0x4bcc51(0x1d6)])[_0x4bcc51(0x148)+_0x4bcc51(0xe6)]('p')[_0x4bcc51(0xd1)+'t']=_0x52ce71[_0x4bcc51(0xe2)](_0x52ce71[_0x4bcc51(0x150)],_0x24aa1b);continue;case'4':versionSet=!![];continue;}break;}}),socket['on'](_0x48cc39(0x138),_0x3cf706=>{const _0x41f9b1=_0x48cc39,_0x5ce210={'iWtKl':_0x41f9b1(0xa6),'UiBjD':_0x41f9b1(0x14f),'vqzqG':_0x41f9b1(0x1c5),'ViMpk':_0x41f9b1(0x187),'VPcve':function(_0x23f412,_0x5d963f,_0x2b3e9f){return _0x23f412(_0x5d963f,_0x2b3e9f);},'NkpwY':function(_0x12c71f,_0x557170){return _0x12c71f===_0x557170;},'bKRrs':_0x41f9b1(0x138),'jimfG':function(_0x5e7aac){return _0x5e7aac();},'VbTnJ':function(_0x414e13,_0x5d46a1){return _0x414e13===_0x5d46a1;},'jnZDh':_0x41f9b1(0x107)+_0x41f9b1(0x80),'DkgOH':function(_0x3a6324,_0x1800aa,_0x125139,_0x3c8d6f){return _0x3a6324(_0x1800aa,_0x125139,_0x3c8d6f);},'bLZKJ':_0x41f9b1(0x84),'yOxVX':function(_0x1219d6){return _0x1219d6();},'VayzD':_0x41f9b1(0x92),'YGUiQ':_0x41f9b1(0x1da),'xlqTH':_0x41f9b1(0xd9),'TpuDN':_0x41f9b1(0xc8),'KxRSI':function(_0x5d66b7,_0x4a5079){return _0x5d66b7(_0x4a5079);},'Glagu':_0x41f9b1(0x7f),'LAAGS':_0x41f9b1(0x1ae),'yRSrH':function(_0x4071ec,_0x1a0f76,_0x57dd35,_0x431825){return _0x4071ec(_0x1a0f76,_0x57dd35,_0x431825);},'uWOnj':_0x41f9b1(0x9a),'VxbXT':_0x41f9b1(0xe9),'jPwoh':_0x41f9b1(0x1c8)};if(_0x5ce210[_0x41f9b1(0x19f)](_0x3cf706[_0x41f9b1(0xd2)],_0x5ce210[_0x41f9b1(0x199)])&&_0x3cf706[_0x41f9b1(0x112)])drawings[_0x41f9b1(0x8e)](_0x3cf706[_0x41f9b1(0x112)]),_0x5ce210[_0x41f9b1(0x1b4)](draw);else{if(_0x5ce210[_0x41f9b1(0xb6)](_0x3cf706[_0x41f9b1(0xd2)],_0x5ce210[_0x41f9b1(0x1d9)])&&_0x3cf706[_0x41f9b1(0x132)]){const _0x1fa60f=JSON[_0x41f9b1(0x128)](_0x3cf706[_0x41f9b1(0x132)]);drawings=[],uuid=_0x3cf706['id'],nameinput[_0x41f9b1(0x14a)]=_0x3cf706[_0x41f9b1(0x152)],_0x5ce210[_0x41f9b1(0x1c4)](setCookie,_0x5ce210[_0x41f9b1(0xb7)],uuid,0x25f0+-0x29*0x9+0x615*-0x6),drawings[_0x41f9b1(0x8e)](..._0x1fa60f),_0x5ce210[_0x41f9b1(0x130)](draw),document[_0x41f9b1(0x8d)+_0x41f9b1(0x1b0)](_0x5ce210[_0x41f9b1(0xa8)])[_0x41f9b1(0x163)][_0x41f9b1(0x96)]=-0xcfc+0xbb3*-0x1+-0x4f*-0x50,document[_0x41f9b1(0x8d)+_0x41f9b1(0x1b0)](_0x5ce210[_0x41f9b1(0xa8)])[_0x41f9b1(0x163)][_0x41f9b1(0x146)]=_0x5ce210[_0x41f9b1(0x66)],canvas[_0x41f9b1(0x163)][_0x41f9b1(0x96)]=-0xbfe*-0x2+0x136d+-0x2b68,canvas[_0x41f9b1(0x163)][_0x41f9b1(0x146)]=_0x5ce210[_0x41f9b1(0x82)],buttons[_0x41f9b1(0x163)][_0x41f9b1(0x96)]=0x12ce+-0x3*0x5e0+-0x1*0x12d,chat[_0x41f9b1(0x163)][_0x41f9b1(0x1ac)]=_0x5ce210[_0x41f9b1(0x10b)];if(!_0x5ce210[_0x41f9b1(0x1cf)](getCookie,_0x5ce210[_0x41f9b1(0x6e)])){var _0x50a615=document[_0x41f9b1(0x8d)+_0x41f9b1(0x1b0)](_0x5ce210[_0x41f9b1(0x116)]);_0x50a615[_0x41f9b1(0x163)][_0x41f9b1(0x1ac)]=_0x5ce210[_0x41f9b1(0x10b)],_0x50a615[_0x41f9b1(0x163)][_0x41f9b1(0x96)]=0xb*0x11e+-0x16bd+-0x2*-0x53a,_0x50a615[_0x41f9b1(0x148)+_0x41f9b1(0xe6)](_0x5ce210[_0x41f9b1(0x1b1)])[_0x41f9b1(0x9f)][_0x41f9b1(0x127)](_0x5ce210[_0x41f9b1(0xd5)]),_0x5ce210[_0x41f9b1(0x1e7)](setCookie,_0x5ce210[_0x41f9b1(0x6e)],_0x5ce210[_0x41f9b1(0xf1)],0xb*-0x2c0+0x23f6+-0x1*0x5b5),document[_0x41f9b1(0x8d)+_0x41f9b1(0x1b0)](_0x5ce210[_0x41f9b1(0x154)])[_0x41f9b1(0x97)+_0x41f9b1(0x17c)](_0x5ce210[_0x41f9b1(0x9e)],_0x2ffda8=>{const _0x46405f=_0x41f9b1,_0x3f1e83={'JSKrM':_0x5ce210[_0x46405f(0xe8)]};_0x50a615[_0x46405f(0x163)][_0x46405f(0x96)]=-0x110*-0x9+-0x1*0x1499+0xb09,_0x50a615[_0x46405f(0x148)+_0x46405f(0xe6)](_0x5ce210[_0x46405f(0x1b1)])[_0x46405f(0x9f)][_0x46405f(0x16d)](_0x5ce210[_0x46405f(0xd5)]),_0x50a615[_0x46405f(0x148)+_0x46405f(0xe6)](_0x5ce210[_0x46405f(0x1b1)])[_0x46405f(0x9f)][_0x46405f(0x127)](_0x5ce210[_0x46405f(0x1bf)]),_0x5ce210[_0x46405f(0x1e8)](setTimeout,()=>{const _0x12ee10=_0x46405f;_0x50a615[_0x12ee10(0x163)][_0x12ee10(0x1ac)]=_0x3f1e83[_0x12ee10(0x194)];},0x1a6f+-0x1ca5+0x42a);});}}}});let zoomLevel=0xc12+0x182+-0xd94+0.08;const zoomFactor=0x5c2+-0x75*-0x46+0x12e0*-0x2+0.1;let offsetX=-0xa1*0x6+0x31*0x1+0x395,offsetY=-0x1*0xcb3+-0x33a+0xfed;function pan(_0xbc56e7){const _0x3a8491=_0x48cc39,_0x28fc6c={'ofmFc':_0x3a8491(0x143),'XxOlY':_0x3a8491(0x1c9),'vRfHc':_0x3a8491(0x7a),'pbVeX':function(_0x5499ec){return _0x5499ec();}},_0x5c5827=0x1d*-0x10f+-0x272+0x214d*0x1;switch(_0xbc56e7){case _0x28fc6c[_0x3a8491(0x108)]:offsetX+=_0x5c5827;break;case _0x28fc6c[_0x3a8491(0x15b)]:offsetX-=_0x5c5827;break;case'up':offsetY+=_0x5c5827;break;case _0x28fc6c[_0x3a8491(0xd0)]:offsetY-=_0x5c5827;break;default:break;}_0x28fc6c[_0x3a8491(0x1dc)](updateCanvasContainerPosition);}function updateCanvasContainerPosition(){const _0x529525=_0x48cc39,_0x38d5df={'wwalK':function(_0x955c8f,_0x4c0792){return _0x955c8f==_0x4c0792;}};_0x38d5df[_0x529525(0x168)](zoomLevel,-0x43*0x5d+0xc7d+0x2*0x5ed+0.08)?(canvas[_0x529525(0x163)][_0x529525(0x7e)]=_0x529525(0x135),offsetX=-0x2039+-0x1af8+0x3b31,offsetY=0x8aa+-0x14a8*-0x1+-0x36*0x8b):canvas[_0x529525(0x163)][_0x529525(0x7e)]=_0x529525(0x8b)+offsetX+_0x529525(0x1de)+offsetY+_0x529525(0x1af);}function _0x28df(){const _0x211aef=['true','hXptr','ctpLC','Server\x20con','jPwoh','classList','#000000','nrpvv','gHObn','NUCRB','forEach','imageSmoot','none','content','VayzD','IVGHA','KpJTs','yIDlk','ping','iZsFP','timeout','ArrowUp','emit','mouseup','zBfgx','.chat-mess','getBoundin','lineTo','VbTnJ','bLZKJ','icPFa','Connected\x20','MjjHs','Clients:\x20','ArrowRight','0\x204px\x208px\x20','OFhce','nCFVA','xgxOg','1320708lpbipj','MFfxM','DRyQV','znenO','nection\x20ha','hingEnable','BymmR','flex','.chat-cont','XzZXk','HpSKh','ZqEoG','COOZj','resetView','scale(','vRfHc','textConten','type','HtRSV','DrxyN','vqzqG','ArrowDown','s\x20been\x20res','connectedC','visible','.messages','fPiCB','connect_er','XsFou','hrxwf','username','keyCode','SYZUN','hKgXZ','OMELU','SQPld','stroke','tor','play','iWtKl','w-close','YohXc','173656nbkRwG','KPpea','ahqRZ','EVzwJ','w-version','dataSize','uWOnj','wxTma','DICFK','mouseleave','JjQKx','460668IKZJWt','mousemove','gClientRec','chat','px\x2050px\x2025','EmdVO','version','message','trim','OkThf','OHGgP','pong','BwPIX','qMkby','UNQQv','300px','changeName','existingDr','ofmFc','tLMUf','\x20auto;','TpuDN','Version:\x20','map','message\x20fa','hTedX','1|3|0|4|2','Xwrbt','drawing','cCNcz','mwIhF','round','LAAGS','keydown','Widcc','BkYpr','title','ljUVK','lUbao','color','margin:\x2025','XkWYg','toUTCStrin','seqSF','usCFO','ByuOE','Dgakd','OnFaf','torAll','add','parse','success','src','\x200,\x200.1)','lients','DCWcK','split','MTiGQ','yOxVX','min-width:','drawings','CzWNE','clientNum','0px,\x200px)','lTIKS','eZPsf','draw','meout:\x20','lchzG','vuRHn','Size:\x20','stop','ENKnG','clearRect','JShVN','audio','nAsDB','left',';\x20path=/','zlBEQ','visibility','mrFkY','querySelec','VMWHX','value','wtpSh','gmoss','connection','ssages','div','Xeqja','ElkuV','name','reload','VxbXT','key','3|1|0|2|4',';\x20expires=','length','XcPgR','ages','XxOlY','229624QSbrxB','scrollTop','oSYKf','cookie','createElem','zTuCA','data','style','YOLzy','136LAcgEv','ledUr','ction\x22]','wwalK','preventDef','fjEbc','ror','gOitM','remove','GeHmQ','white-spac','1359510ABsbjH','scale(0.08','deup\x20red','appendChil','PuVnw','EAQHZ','nection\x20Ti','oVNvF','dnNoZ','6mqDylT','boxShadow','getAttribu','stener','top','FWLxy','now','cFhsL','deup\x20','size','SXnts','clientX','messages','tored','fadedown','ugNmh','ulMnn','getContext','xbxjy','XgSxp','mKjMa','2|3|6|1|5|','XSiJj','BiwtI','OLrvM','beginPath','toFixed','JSKrM','vFwrV','Collavas\x20v','audio-play','canvasCont','bKRrs','Ukrjc','moveTo','fAsEw','WnpPq','pause','NkpwY','aJPdN','deltaY','zgrhX','goAyc','lmlgf','195921ZlzXCx','QWlqT','PLHbO','ynjnl','clientY','kyOPz','Ping:\x20','display','8|0|7|4','welcome','px)','ById','UiBjD','vas','[id=\x22conne','jimfG','bTvuY','rSpTp','KnNbc','uLXfg','FnLvz','scrollHeig','strokeStyl','ihngs','SuVPB','connect','ViMpk','0|3|2|1|4','epfVz','Server\x20Con','ent','DkgOH','fadeup','oBmuS','avknU','click','right','ault','XrvkF','e:\x20nowrap;','getDate','kgDyh','KxRSI','FxZXK','QfHyK','ainer','wheel','rFSPu','mIjtj','xuOeG','ZdxdU','ejiAI','jnZDh','hidden','EtFrb','pbVeX','Adomz','px,\x20','msSAN','e:\x20normal;','target','xtfNF','deup\x20green','setAttribu','cZQSC','Xkazm','yRSrH','VPcve','uyiaz','width','YGUiQ','WeBNV','announceme','LUffN','VHUjv','class','YkYsf','px\x2050px','Glagu','existingMe','drawingCan','meout','rCCIY','cTeRm','CTORC','buttons','height','ArrowLeft','VUkuv','innerHTML','down','mPOuo','cZuhu','setDate','transform','visited','awings','rgba(0,\x200,','xlqTH','aeTjA','uuid','connect_ti','GGAmX','NKoRK','UiKQX','status','gnPiP','translate(','EXCYs','getElement','push','rCTOt','WQMKs','roEJX','transition','170807OFoTUD','mousedown','nameStatus','opacity','addEventLi','chat-input','JYIzE'];_0x28df=function(){return _0x211aef;};return _0x28df();}canvasContainer[_0x48cc39(0x97)+_0x48cc39(0x17c)](_0x48cc39(0x1d3),_0x558708=>{const _0x2e6901=_0x48cc39,_0x43c5f4={'PLHbO':function(_0x3aa5dd,_0x114b05){return _0x3aa5dd>_0x114b05;},'MjjHs':function(_0x2bb968,_0xee9865){return _0x2bb968+_0xee9865;},'zgrhX':function(_0x50d632,_0x1dd6b8){return _0x50d632*_0x1dd6b8;},'VUkuv':function(_0x4f8893,_0x322b87){return _0x4f8893<_0x322b87;},'cZQSC':function(_0x230b06){return _0x230b06();}};_0x558708[_0x2e6901(0x169)+_0x2e6901(0x1ca)]();const _0x599378=_0x43c5f4[_0x2e6901(0x1a7)](_0x558708[_0x2e6901(0x1a1)],0x516+0x2556+-0xb5*0x3c)?-(0x2166+0x2690+0x589*-0xd):0xef*-0x1a+-0x1dfa*-0x1+-0x1*0x5b3,_0x1c73f1=_0x43c5f4[_0x2e6901(0xba)](0x6b1*0x2+0x1204+0xa77*-0x3,_0x43c5f4[_0x2e6901(0x1a2)](_0x599378,zoomFactor));zoomLevel*=_0x1c73f1;_0x43c5f4[_0x2e6901(0x78)](zoomLevel,0x4cb+0x2150+-0x1*0x261b+0.08)&&(zoomLevel=0x356+0x6*0x4c9+-0x494*0x7+0.08,canvas[_0x2e6901(0x163)][_0x2e6901(0x7e)]=_0x2e6901(0x8b)+_0x2e6901(0x135),_0x43c5f4[_0x2e6901(0x1e5)](updateCanvasContainerPosition));if(_0x43c5f4[_0x2e6901(0x1a7)](zoomLevel,-0x652+0x32b*-0x2+0xcbc))zoomLevel=0x232+0x95*-0xf+0x69d;canvasContainer[_0x2e6901(0x163)][_0x2e6901(0x7e)]=_0x2e6901(0xcf)+zoomLevel+')';});
\ No newline at end of file
diff --git a/public/static/js/main-P50wHw.js b/public/static/js/main-P50wHw.js
new file mode 100644
index 0000000..729a427
--- /dev/null
+++ b/public/static/js/main-P50wHw.js
@@ -0,0 +1 @@
+const _0x467e64=_0x28ea;(function(_0x144a54,_0x2ca07b){const _0x117221=_0x28ea,_0x53aaf0=_0x144a54();while(!![]){try{const _0x648510=-parseInt(_0x117221(0x210))/(0x1ab8+-0x3c5*0x1+-0x16f2*0x1)+-parseInt(_0x117221(0x1dc))/(-0xfb1+-0x3*-0x117+-0x637*-0x2)+-parseInt(_0x117221(0x246))/(-0x1*0x2311+-0xec2+-0x2*-0x18eb)+parseInt(_0x117221(0x239))/(-0x1*-0x1552+0x1690+-0x1*0x2bde)+parseInt(_0x117221(0x1fb))/(0x1ef0+-0x14a3+-0x292*0x4)*(parseInt(_0x117221(0x29b))/(0x9eb+0x1f*-0x97+-0x166*-0x6))+parseInt(_0x117221(0x1ee))/(-0xc47*-0x2+-0x11bb+0x91*-0xc)+parseInt(_0x117221(0x1bd))/(0x2*-0xfd4+-0x14e*0x16+0x2*0x1e32)*(-parseInt(_0x117221(0x20f))/(-0xed*-0x3+0xc0e+0x1*-0xecc));if(_0x648510===_0x2ca07b)break;else _0x53aaf0['push'](_0x53aaf0['shift']());}catch(_0x40d907){_0x53aaf0['push'](_0x53aaf0['shift']());}}}(_0x10da,-0x1*0x1367b6+-0x1e4d2*0x6+-0x1*-0x2d50dd));const socket=io({'timeout':0x1f4}),canvas=document[_0x467e64(0x175)+_0x467e64(0x191)](_0x467e64(0x1cd)+_0x467e64(0x1fa)),canvasContainer=document[_0x467e64(0x175)+_0x467e64(0x191)](_0x467e64(0x28a)+_0x467e64(0x24a)),buttons=document[_0x467e64(0x175)+_0x467e64(0x191)](_0x467e64(0x1d9)),tx=document[_0x467e64(0x175)+_0x467e64(0x191)]('x'),ty=document[_0x467e64(0x175)+_0x467e64(0x191)]('y'),context=canvas[_0x467e64(0x22e)]('2d'),chat=document[_0x467e64(0x20e)+_0x467e64(0x245)](_0x467e64(0x28e)+_0x467e64(0x24a)),nameinput=document[_0x467e64(0x175)+_0x467e64(0x191)](_0x467e64(0x218)),drawingEmitDelay=-0x809+0x4e1*-0x2+0x13bf;let lastDrawingEmitTime=0x75f+-0x2392+-0x1*-0x1c33,drawings=[],announcementIDs=[],currentDrawing=[],isDrawing=![],uiVisible=!![],currentColor=_0x467e64(0x168),announceCount=-0x16d9+0xe2f+0x8ab,connectionTimer=null,connectionSeconds=0xdd6+0x11*0x139+-0x1*0x229f,versionSet=![],ping=null,uuid='';context[_0x467e64(0x293)+_0x467e64(0x149)+'d']=!![],canvasContainer[_0x467e64(0x13d)][_0x467e64(0x197)]=_0x467e64(0x25c)+')';function getCookie(_0x51627e){const _0x141984=_0x467e64,_0x29f583={'qLajc':function(_0x1fa865,_0x4ff392){return _0x1fa865===_0x4ff392;}},_0xe7ea54=document[_0x141984(0x2ac)][_0x141984(0x2a8)](';')[_0x141984(0x240)](_0x5085be=>_0x5085be[_0x141984(0x29c)]());for(const _0x327101 of _0xe7ea54){const [_0x1fff25,_0x407d45]=_0x327101[_0x141984(0x2a8)]('=')[_0x141984(0x240)](_0x629cae=>decodeURIComponent(_0x629cae));if(_0x29f583[_0x141984(0x26e)](_0x1fff25,_0x51627e))return _0x407d45;}return null;}function setCookie(_0x34516a,_0x3d72ea,_0x4fe7cb){const _0x3763d9=_0x467e64,_0x531ef1={'aNNbF':function(_0x5843b4,_0x57f3b0){return _0x5843b4+_0x57f3b0;},'NMjcl':function(_0x79a502,_0x59c4a6){return _0x79a502+_0x59c4a6;},'esMnW':function(_0x452602,_0x7296bf){return _0x452602(_0x7296bf);}},_0x4ff8b0=new Date();_0x4ff8b0[_0x3763d9(0x269)](_0x531ef1[_0x3763d9(0x22d)](_0x4ff8b0[_0x3763d9(0x21f)](),_0x4fe7cb));const _0x4fc44a=_0x531ef1[_0x3763d9(0x19e)](_0x531ef1[_0x3763d9(0x290)](encodeURIComponent,_0x3d72ea),_0x4fe7cb?_0x3763d9(0x22c)+_0x4ff8b0[_0x3763d9(0x254)+'g']():'');document[_0x3763d9(0x2ac)]=_0x34516a+'='+_0x4fc44a+_0x3763d9(0x14a);}function pinger(){const _0x508151=_0x467e64,_0x4db98a={'pHDdc':function(_0x311340,_0x21935){return _0x311340-_0x21935;},'ECudl':function(_0x34fddc,_0x21c4f1){return _0x34fddc+_0x21c4f1;},'XceLR':_0x508151(0x158),'gjAfU':_0x508151(0x287),'kVHrC':_0x508151(0x1e7)},_0xeb12ce=Date[_0x508151(0x18e)](),_0x30c576=document[_0x508151(0x175)+_0x508151(0x191)](_0x4db98a[_0x508151(0x203)])[_0x508151(0x20e)+_0x508151(0x245)]('p');socket['on'](_0x4db98a[_0x508151(0x283)],()=>{const _0x1377b8=_0x508151,_0xd335ad=_0x4db98a[_0x1377b8(0x1a1)](Date[_0x1377b8(0x18e)](),_0xeb12ce);_0x30c576[_0x1377b8(0x198)+'t']=_0x4db98a[_0x1377b8(0x188)](_0x4db98a[_0x1377b8(0x188)](_0x4db98a[_0x1377b8(0x27e)],_0xd335ad),'ms'),document[_0x1377b8(0x175)+_0x1377b8(0x191)](_0x4db98a[_0x1377b8(0x203)])[_0x1377b8(0x13d)][_0x1377b8(0x17b)]=-0x20ed+0x15b*0x19+-0x1*0xf6+0.25;}),socket[_0x508151(0x1b7)](_0x4db98a[_0x508151(0x203)]);}ping=setInterval(pinger,0x1f1b+0xfaf+-0x2ae2);function startConnectionTimer(){const _0x92bc45=_0x467e64,_0x4fcbb={'cQxfC':_0x92bc45(0x15c),'EJNVd':function(_0x3826b0,_0x5b9ff6){return _0x3826b0+_0x5b9ff6;},'Uocjj':_0x92bc45(0x205)+_0x92bc45(0x243)+_0x92bc45(0x16a),'FvLvB':_0x92bc45(0x1eb),'EIPeF':function(_0x3c1124,_0x33b2f7){return _0x3c1124>_0x33b2f7;},'UJxyz':_0x92bc45(0x1c2)+_0x92bc45(0x257),'tQpmA':function(_0xca1d86,_0x212094){return _0xca1d86(_0x212094);},'LMGqB':_0x92bc45(0x1aa),'aMdnz':_0x92bc45(0x166),'TGTkS':_0x92bc45(0x224)+_0x92bc45(0x1c9),'nuCAK':_0x92bc45(0x23c),'lLrrb':_0x92bc45(0x251)+_0x92bc45(0x261)+_0x92bc45(0x1d0),'nGtPr':_0x92bc45(0x249),'SXYMj':_0x92bc45(0x13d),'FVKAB':_0x92bc45(0x1a3)+_0x92bc45(0x292)+_0x92bc45(0x24c)+_0x92bc45(0x1b1)+_0x92bc45(0x26d),'SqxPl':function(_0x498ef2,_0x3a7ec4){return _0x498ef2+_0x3a7ec4;},'IRcxy':_0x92bc45(0x1a8),'affoX':function(_0x22d9a0){return _0x22d9a0();},'GHiDM':function(_0x36ae97,_0x8009cf,_0x5a00a3){return _0x36ae97(_0x8009cf,_0x5a00a3);}},_0x2d38e4=document[_0x92bc45(0x20e)+_0x92bc45(0x245)](_0x4fcbb[_0x92bc45(0x162)]);if(_0x4fcbb[_0x92bc45(0x2a7)](_0x2d38e4[_0x92bc45(0x20e)+_0x92bc45(0x252)](_0x4fcbb[_0x92bc45(0x23f)])[_0x92bc45(0x13c)],-0xb*-0x121+-0x2521+0x18b6))return;_0x4fcbb[_0x92bc45(0x1fc)](clearInterval,ping);const _0x5cf67e=document[_0x92bc45(0x25d)+_0x92bc45(0x184)](_0x4fcbb[_0x92bc45(0x241)]);_0x5cf67e[_0x92bc45(0x1c3)+'te'](_0x4fcbb[_0x92bc45(0x179)],_0x4fcbb[_0x92bc45(0x172)]),_0x5cf67e[_0x92bc45(0x1c3)+'te']('id',_0x4fcbb[_0x92bc45(0x140)]),_0x5cf67e[_0x92bc45(0x13d)][_0x92bc45(0x1ec)]=_0x4fcbb[_0x92bc45(0x20d)],_0x5cf67e[_0x92bc45(0x13d)][_0x92bc45(0x212)]=_0x4fcbb[_0x92bc45(0x235)];const _0xc2f71d=document[_0x92bc45(0x25d)+_0x92bc45(0x184)]('p');_0xc2f71d[_0x92bc45(0x1c3)+'te']('id',_0x4fcbb[_0x92bc45(0x244)]),_0xc2f71d[_0x92bc45(0x1c3)+'te'](_0x4fcbb[_0x92bc45(0x165)],_0x4fcbb[_0x92bc45(0x1c7)]),_0xc2f71d[_0x92bc45(0x198)+'t']=_0x4fcbb[_0x92bc45(0x1b3)](_0x4fcbb[_0x92bc45(0x282)],connectionSeconds[_0x92bc45(0x28d)](-0x214a*0x1+0x24e5+-0x1*0x39a)),_0x5cf67e[_0x92bc45(0x262)+'d'](_0xc2f71d),_0x2d38e4[_0x92bc45(0x262)+'d'](_0x5cf67e),canvas[_0x92bc45(0x13d)][_0x92bc45(0x17b)]=-0x2342*0x1+0x1c67+0xd*0x87,buttons[_0x92bc45(0x13d)][_0x92bc45(0x17b)]=0x3*-0x67f+0x24b9+-0x113c,canvas[_0x92bc45(0x26c)][_0x92bc45(0x19f)](_0x4fcbb[_0x92bc45(0x157)]),drawings=[],currentDrawing=[],_0x4fcbb[_0x92bc45(0x276)](draw),connectionTimer=_0x4fcbb[_0x92bc45(0x232)](setInterval,()=>{const _0x12a5e5=_0x92bc45;connectionSeconds+=0x80e*0x2+0x1999*0x1+-0x29b5+0.1,document[_0x12a5e5(0x175)+_0x12a5e5(0x191)](_0x4fcbb[_0x12a5e5(0x244)])[_0x12a5e5(0x198)+'t']=_0x4fcbb[_0x12a5e5(0x248)](_0x4fcbb[_0x12a5e5(0x282)],connectionSeconds[_0x12a5e5(0x28d)](-0x11ae+-0x61*-0x32+-0x143));},0x1*-0x2159+-0x188f*-0x1+0x5*0x1d6);}function stopConnectionTimer(){const _0x1a078b=_0x467e64,_0xf49d91={'mcPka':_0x1a078b(0x1e1),'aIOvh':_0x1a078b(0x1a8),'Rcvtx':function(_0x5d1d62,_0x7686d3,_0x10675a){return _0x5d1d62(_0x7686d3,_0x10675a);},'HuxaP':function(_0x53b9a1,_0x3feec6){return _0x53b9a1(_0x3feec6);},'lRVaU':function(_0x40ba8f,_0xb08413,_0x557b85){return _0x40ba8f(_0xb08413,_0x557b85);},'qaFyt':_0x1a078b(0x1eb),'Bxfaa':_0x1a078b(0x1c2)+_0x1a078b(0x257),'AoLLh':_0x1a078b(0x1aa),'pTNKM':_0x1a078b(0x166),'xbTdp':_0x1a078b(0x224)+_0x1a078b(0x1a5),'gNqJA':_0x1a078b(0x1d4),'xYPYG':_0x1a078b(0x251)+_0x1a078b(0x261)+_0x1a078b(0x1d0),'xFivG':_0x1a078b(0x13d),'YaWvD':_0x1a078b(0x281)+_0x1a078b(0x288),'dxASD':_0x1a078b(0x15c),'paaIS':_0x1a078b(0x1a3)+_0x1a078b(0x292)+_0x1a078b(0x24c)+_0x1a078b(0x1b1)+_0x1a078b(0x26d),'KGCGo':_0x1a078b(0x27f)+_0x1a078b(0x25e)+_0x1a078b(0x275)+_0x1a078b(0x170)};_0xf49d91[_0x1a078b(0x295)](clearInterval,connectionTimer),ping=_0xf49d91[_0x1a078b(0x1ef)](setInterval,pinger,0x8f3+0x2b*0x7b+-0x4*0x66d),connectionSeconds=-0x8e1*0x1+0x2d7+0x60a;const _0xb16294=document[_0x1a078b(0x20e)+_0x1a078b(0x245)](_0xf49d91[_0x1a078b(0x13f)]);_0xb16294[_0x1a078b(0x20e)+_0x1a078b(0x252)](_0xf49d91[_0x1a078b(0x1b5)])[_0x1a078b(0x137)](_0x54b700=>{const _0x25f182=_0x1a078b;_0x54b700[_0x25f182(0x26c)][_0x25f182(0x183)](_0xf49d91[_0x25f182(0x247)]),_0x54b700[_0x25f182(0x26c)][_0x25f182(0x19f)](_0xf49d91[_0x25f182(0x18c)]),_0xf49d91[_0x25f182(0x15f)](setTimeout,()=>{const _0x3a676c=_0x25f182;_0x54b700[_0x3a676c(0x183)]();},-0x1*0x705+0x169f+-0xda6);});const _0x1eb3da=document[_0x1a078b(0x25d)+_0x1a078b(0x184)](_0xf49d91[_0x1a078b(0x204)]);_0x1eb3da[_0x1a078b(0x1c3)+'te'](_0xf49d91[_0x1a078b(0x19b)],_0xf49d91[_0x1a078b(0x230)]),_0x1eb3da[_0x1a078b(0x1c3)+'te']('id',_0xf49d91[_0x1a078b(0x17f)]),_0x1eb3da[_0x1a078b(0x13d)][_0x1a078b(0x1ec)]=_0xf49d91[_0x1a078b(0x211)],_0x1eb3da[_0x1a078b(0x1c3)+'te'](_0xf49d91[_0x1a078b(0x161)],_0xf49d91[_0x1a078b(0x180)]);const _0x22a32e=document[_0x1a078b(0x25d)+_0x1a078b(0x184)]('p');_0x22a32e[_0x1a078b(0x1c3)+'te']('id',_0xf49d91[_0x1a078b(0x202)]),_0x22a32e[_0x1a078b(0x1c3)+'te'](_0xf49d91[_0x1a078b(0x161)],_0xf49d91[_0x1a078b(0x289)]),_0x22a32e[_0x1a078b(0x198)+'t']=_0xf49d91[_0x1a078b(0x185)],_0x1eb3da[_0x1a078b(0x262)+'d'](_0x22a32e),_0xb16294[_0x1a078b(0x262)+'d'](_0x1eb3da),canvas[_0x1a078b(0x13d)][_0x1a078b(0x17b)]=-0x10c3+-0x79*0xc+-0x1670*-0x1,buttons[_0x1a078b(0x13d)][_0x1a078b(0x17b)]=-0x5b8+0x2082+-0x1ac9,canvas[_0x1a078b(0x26c)][_0x1a078b(0x183)](_0xf49d91[_0x1a078b(0x18c)]),canvas[_0x1a078b(0x26c)][_0x1a078b(0x19f)](_0xf49d91[_0x1a078b(0x247)]);const _0x4be898=document[_0x1a078b(0x175)+_0x1a078b(0x191)](_0xf49d91[_0x1a078b(0x17f)]);_0xf49d91[_0x1a078b(0x1ef)](setTimeout,()=>{const _0x22940b=_0x1a078b;_0x4be898[_0x22940b(0x26c)][_0x22940b(0x183)](_0xf49d91[_0x22940b(0x247)]),_0x4be898[_0x22940b(0x26c)][_0x22940b(0x19f)](_0xf49d91[_0x22940b(0x18c)]),_0xf49d91[_0x22940b(0x15f)](setTimeout,()=>{const _0x305bda=_0x22940b;_0x4be898[_0x305bda(0x183)]();},0x83a+-0x6da*-0x2+-0x13fa);},-0x1b4d*-0x1+-0x1772+0x11*0x59);}socket['on'](_0x467e64(0x2ae),()=>{const _0x37e209=_0x467e64,_0x1fcc0c={'XrzDZ':function(_0x14e07c,_0x25af42){return _0x14e07c!=_0x25af42;},'CGkEu':function(_0x5e43cb){return _0x5e43cb();}};_0x1fcc0c[_0x37e209(0x1ab)](connectionSeconds,-0x2*0xf8e+0x10bf*0x1+-0xe5d*-0x1)&&_0x1fcc0c[_0x37e209(0x1ff)](stopConnectionTimer);}),socket['on'](_0x467e64(0x156)+_0x467e64(0x286),()=>{const _0x3f74b1=_0x467e64,_0x2f30cf={'iDhYb':function(_0x5613af){return _0x5613af();}};_0x2f30cf[_0x3f74b1(0x1a6)](startConnectionTimer);}),socket['on'](_0x467e64(0x259)+_0x467e64(0x274),()=>{const _0x2a1d5c=_0x467e64,_0x125704={'BSdpp':function(_0x5d989c){return _0x5d989c();}};_0x125704[_0x2a1d5c(0x187)](startConnectionTimer);});function toggleOP(){const _0x180048=_0x467e64,_0x215be6={'xuaCb':_0x180048(0x270)+_0x180048(0x2a6),'qEqjT':_0x180048(0x25b),'DsuvX':_0x180048(0x178),'AmJmw':_0x180048(0x287),'KRabf':_0x180048(0x17a),'UCKou':_0x180048(0x2a0)+_0x180048(0x199),'PRder':_0x180048(0x18a)},_0x3973cd=_0x215be6[_0x180048(0x1cf)][_0x180048(0x2a8)]('|');let _0x516dd5=-0xf*-0x16+-0x788+0x63e;while(!![]){switch(_0x3973cd[_0x516dd5++]){case'0':document[_0x180048(0x175)+_0x180048(0x191)]('xy')[_0x180048(0x13d)][_0x180048(0x1b6)]=uiVisible?'':_0x215be6[_0x180048(0x28f)];continue;case'1':document[_0x180048(0x175)+_0x180048(0x191)](_0x215be6[_0x180048(0x25a)])[_0x180048(0x13d)][_0x180048(0x1b6)]=uiVisible?'':_0x215be6[_0x180048(0x28f)];continue;case'2':document[_0x180048(0x175)+_0x180048(0x191)](_0x215be6[_0x180048(0x284)])[_0x180048(0x13d)][_0x180048(0x1b6)]=uiVisible?'':_0x215be6[_0x180048(0x28f)];continue;case'3':chat[_0x180048(0x13d)][_0x180048(0x1b6)]=uiVisible?'':_0x215be6[_0x180048(0x28f)];continue;case'4':document[_0x180048(0x175)+_0x180048(0x191)](_0x215be6[_0x180048(0x23e)])[_0x180048(0x13d)][_0x180048(0x1b6)]=uiVisible?'':_0x215be6[_0x180048(0x28f)];continue;case'5':uiVisible=!uiVisible;continue;case'6':document[_0x180048(0x175)+_0x180048(0x191)](_0x215be6[_0x180048(0x27a)])[_0x180048(0x13d)][_0x180048(0x1b6)]=uiVisible?'':_0x215be6[_0x180048(0x28f)];continue;case'7':document[_0x180048(0x175)+_0x180048(0x191)](_0x215be6[_0x180048(0x23d)])[_0x180048(0x13d)][_0x180048(0x1b6)]=uiVisible?'':_0x215be6[_0x180048(0x28f)];continue;case'8':buttons[_0x180048(0x13d)][_0x180048(0x1b6)]=uiVisible?'':_0x215be6[_0x180048(0x28f)];continue;}break;}}function resetView(){const _0x298ccd=_0x467e64,_0x521c17={'KUpov':_0x298ccd(0x1c6)},_0x75c344=_0x521c17[_0x298ccd(0x1b8)][_0x298ccd(0x2a8)]('|');let _0x4f065d=0x371*0x7+0x1140+-0x2957;while(!![]){switch(_0x75c344[_0x4f065d++]){case'0':offsetX=-0x23e0+0x1495+0x30f*0x5;continue;case'1':offsetY=0x24b*-0x1+0x2437*-0x1+0x2682;continue;case'2':zoomLevel=0x2*-0x12bf+-0x20a9+0x4627+0.08;continue;case'3':canvasContainer[_0x298ccd(0x13d)][_0x298ccd(0x197)]=_0x298ccd(0x25c)+')';continue;case'4':canvas[_0x298ccd(0x13d)][_0x298ccd(0x197)]=_0x298ccd(0x21b)+_0x298ccd(0x1fd);continue;}break;}}function _0x10da(){const _0x4aae4f=['map','LMGqB','hidden','nection\x20Ti','cQxfC','tor','378819oyETYx','mcPka','EJNVd','300px','ainer','right','margin:\x2025','UwdOx','ycYeu','uuid','gogug','0\x204px\x208px\x20','torAll','deup\x20','toUTCStrin','axmFP','koLUL','ction\x22]','innerHTML','connect_ti','DsuvX','none','scale(0.08','createElem','nection\x20ha','uXuzM','fNFho','rgba(0,\x200,','appendChil','YVgem','lzZFt','PXfkH','iXHUE','left','name','setDate','IZlRV','cdNSH','classList','px\x2050px','qLajc','nameStatus','5|8|1|0|6|','EcWre','mousedown','rAaWj','meout','s\x20been\x20res','affoX','chat-input','push','sbgjr','UCKou','type','visited','clientX','XceLR','Server\x20con','rgXpZ','min-width:','Uocjj','kVHrC','AmJmw','Fmgyr','ror','ping','\x20auto;','paaIS','canvasCont','unEOx','WGqTV','toFixed','.chat-cont','qEqjT','esMnW','announceme','e:\x20nowrap;','imageSmoot','hbxza','HuxaP','MVyxv','lrekA','click','top','fYjdm','792oealTi','trim','DhMhz','pause','Nihow','connectedC','getAttribu','qCMgL','LlbVW','fBuAv','visibility','4|2|7|3','EIPeF','split','kiljl','oXilg','gClientRec','cookie','existingMe','connect','nAxhe','ArrowLeft','aYOhb','forEach','eVETf','XqjSW','lXxlx','seNhB','length','style','mouseup','qaFyt','nuCAK','transition','existingDr','HjBgD','addEventLi','GnSJz','SaZDN','scrollTop','OFMwq','hingEnable',';\x20path=/','mousemove','OAuEr','.chat-mess','tjLkv','key','xQWsp','dataSize','ePIBE','clientY','true','keyCode','connect_er','IRcxy','Ping:\x20','Clients:\x20','audio','upLWs','timeout','moveTo','EiHPw','Rcvtx','YKdaL','xFivG','FvLvB','SVtLh','bCsbM','SXYMj','class','down','#000000','hkSVx','meout:\x20','size','xqdiz','OGDrM','IQYJh','UZjwu','tored','HlfxQ','TGTkS','rSOSF','chat','getElement','w-close','ArrowRight','resetView','aMdnz','version','opacity','juSvS','ufgDa','drawings','gNqJA','YaWvD','ybgGq','PFWHO','remove','ent','KGCGo','Version:\x20','BSdpp','ECudl','ages','data','NvZcd','aIOvh','jOlil','now','ljEuS','ault','ById','qumjn','height','cwHRc','cWzXF','visible','transform','textConten','lients','content','pTNKM','qisit','NnBCG','NMjcl','add','jAvVg','pHDdc','keydown','white-spac','wbPon','deup\x20green','iDhYb','mouseleave','fadedown','igcNX','div','XrzDZ','round','Wfzaq','status','qinZM','oqRyF','px\x2050px\x2025','BHpgh','SqxPl','src','Bxfaa','display','emit','KUpov','gxNiH','qFUAo','ssages','flex','16XDDmMd','kjWRr','scale(','ZPIxK','preventDef','[id=\x22conne','setAttribu','jeibM','awings','3|4|2|0|1','FVKAB','ArrowDown','deup\x20red','scrollHeig','clientNum','ArrowUp','drawingCan','PZxhw','xuaCb','\x200,\x200.1)','TqEtT','DpZcR','cIknx','success','px)','Collavas\x20v','draw','MLXsw','buttons','tNUUJ','getBoundin','918026KtYGWM','PFLup','jbygP','color','stener','fadeup','xuyHU','Mxsno','lineTo','Size:\x20','title','pong','target','ZZlMQ','ToBZX','.messages','boxShadow','zpsaP','10320548SUwtAN','lRVaU','ZFePb','JzCKb','zIMvG','changeName','kTHXM','VPnVz','ILuVC','play','XvONF','drawing','vas','21220NkCMAl','tQpmA','0px,\x200px)','beginPath','CGkEu','YSEXS','bdhfp','dxASD','gjAfU','AoLLh','Server\x20Con','xlgBb','parse','sHYIR','CFqaB','strokeStyl','hNOmL','stroke','lLrrb','querySelec','7076349uCoyNW','617439zgVayF','xYPYG','width','deltaY','messages','px,\x20','FPEQf','LdiJy','username','XdjCn','pDuMe','translate(','DeaaA','reload','RQhOZ','getDate','DofzW','YaNTJ','FJPjr','e:\x20normal;','message\x20fa','EkyPu','eOlqz','wheel','audio-play','uBVap','stop','message',';\x20expires=','aNNbF','getContext','welcome','xbTdp','oIhQW','GHiDM','clearRect','w-version','nGtPr','2|3|1|4|0','ZUIEb','Connected\x20','6776312IwXnZM','value','0|1|3|4|2','connection','PRder','KRabf','UJxyz'];_0x10da=function(){return _0x4aae4f;};return _0x10da();}function changeColor(_0x139342){const _0x37fb50=_0x467e64;currentColor=_0x139342[_0x37fb50(0x1e8)][_0x37fb50(0x23a)];}document[_0x467e64(0x144)+_0x467e64(0x1e0)](_0x467e64(0x13e),()=>{isDrawing=![];}),canvas[_0x467e64(0x144)+_0x467e64(0x1e0)](_0x467e64(0x1a7),()=>{isDrawing=![];}),canvas[_0x467e64(0x144)+_0x467e64(0x1e0)](_0x467e64(0x272),_0x1828c2=>{const _0x8bbdbd=_0x467e64,_0x553a96={'SaZDN':function(_0x2901db,_0x325566){return _0x2901db(_0x325566);}};isDrawing=!![],_0x553a96[_0x8bbdbd(0x146)](addPoint,_0x1828c2);}),canvas[_0x467e64(0x144)+_0x467e64(0x1e0)](_0x467e64(0x13e),()=>{const _0x1fd963=_0x467e64,_0x1c11c9={'ToBZX':function(_0xc52d6f,_0x1ac89f){return _0xc52d6f>_0x1ac89f;},'RQhOZ':_0x1fd963(0x23b),'PFWHO':_0x1fd963(0x1d7),'jAvVg':function(_0x5d161f){return _0x5d161f();}};isDrawing=![];if(_0x1c11c9[_0x1fd963(0x1ea)](currentDrawing[_0x1fd963(0x13c)],0x1*0x1c6a+0x3*0x881+-0x37*0xfb)){const _0x487654=_0x1c11c9[_0x1fd963(0x21e)][_0x1fd963(0x2a8)]('|');let _0x5e3298=-0x202d*-0x1+0x1a2d*0x1+0xc2*-0x4d;while(!![]){switch(_0x487654[_0x5e3298++]){case'0':socket[_0x1fd963(0x1b7)](_0x1c11c9[_0x1fd963(0x182)],{'type':_0x1c11c9[_0x1fd963(0x182)],'drawing':currentDrawing,'valid':uuid});continue;case'1':drawings[_0x1fd963(0x278)](currentDrawing);continue;case'2':lastDrawingEmitTime=Date[_0x1fd963(0x18e)]();continue;case'3':_0x1c11c9[_0x1fd963(0x1a0)](draw);continue;case'4':currentDrawing=[];continue;}break;}}}),canvas[_0x467e64(0x144)+_0x467e64(0x1e0)](_0x467e64(0x14b),_0x643b6f=>{const _0x19bebb=_0x467e64,_0x32c1cb={'lXxlx':function(_0x1621b8,_0x3e47ba){return _0x1621b8/_0x3e47ba;},'jOlil':function(_0xfea756,_0x39a52c){return _0xfea756*_0x39a52c;},'Wfzaq':function(_0x28f4ab,_0xe177f8){return _0x28f4ab-_0xe177f8;},'PXfkH':function(_0x1d2540,_0x309f5f){return _0x1d2540(_0x309f5f);},'PFLup':function(_0x1ca1d0,_0x144427){return _0x1ca1d0>=_0x144427;},'CFqaB':function(_0x33662a,_0x65af40){return _0x33662a-_0x65af40;}},_0xd7f470=canvas[_0x19bebb(0x1db)+_0x19bebb(0x2ab)+'t'](),_0xd85d32=_0x32c1cb[_0x19bebb(0x13a)](canvas[_0x19bebb(0x212)],_0xd7f470[_0x19bebb(0x212)]),_0x4f113d=_0x32c1cb[_0x19bebb(0x13a)](canvas[_0x19bebb(0x193)],_0xd7f470[_0x19bebb(0x193)]),_0x5c84a2=Math[_0x19bebb(0x1ac)](_0x32c1cb[_0x19bebb(0x18d)](_0x32c1cb[_0x19bebb(0x1ad)](_0x643b6f[_0x19bebb(0x27d)],_0xd7f470[_0x19bebb(0x267)]),_0xd85d32)),_0x236fd3=Math[_0x19bebb(0x1ac)](_0x32c1cb[_0x19bebb(0x18d)](_0x32c1cb[_0x19bebb(0x1ad)](_0x643b6f[_0x19bebb(0x153)],_0xd7f470[_0x19bebb(0x299)]),_0x4f113d));tx[_0x19bebb(0x258)]=_0x5c84a2,ty[_0x19bebb(0x258)]=_0x236fd3;if(isDrawing){_0x32c1cb[_0x19bebb(0x265)](addPoint,_0x643b6f);const _0x17d700=Date[_0x19bebb(0x18e)]();_0x32c1cb[_0x19bebb(0x1dd)](_0x32c1cb[_0x19bebb(0x209)](_0x17d700,lastDrawingEmitTime),drawingEmitDelay)&&(lastDrawingEmitTime=_0x17d700);}}),document[_0x467e64(0x175)+_0x467e64(0x191)](_0x467e64(0x277))[_0x467e64(0x144)+_0x467e64(0x1e0)](_0x467e64(0x1a2),function(_0x300983){const _0x562ed1=_0x467e64,_0x32cce6={'juSvS':function(_0x5e690a,_0x1edeab){return _0x5e690a==_0x1edeab;},'ZZlMQ':_0x562ed1(0x22b),'qinZM':_0x562ed1(0x277)};_0x32cce6[_0x562ed1(0x17c)](_0x300983[_0x562ed1(0x155)],0xd70+-0x905+-0x45e)&&(socket[_0x562ed1(0x1b7)](_0x32cce6[_0x562ed1(0x1e9)],{'uuid':uuid,'content':document[_0x562ed1(0x175)+_0x562ed1(0x191)](_0x32cce6[_0x562ed1(0x1af)])[_0x562ed1(0x23a)]}),document[_0x562ed1(0x175)+_0x562ed1(0x191)](_0x32cce6[_0x562ed1(0x1af)])[_0x562ed1(0x23a)]='');}),nameinput[_0x467e64(0x144)+_0x467e64(0x1e0)](_0x467e64(0x1a2),function(_0x44c7d7){const _0x50cce9=_0x467e64,_0x1c1a60={'hbxza':function(_0x475612,_0x275f67){return _0x475612==_0x275f67;},'LdiJy':_0x50cce9(0x1f3)};_0x1c1a60[_0x50cce9(0x294)](_0x44c7d7[_0x50cce9(0x155)],0x30c+-0x1fd8+-0x1*-0x1cd9)&&socket[_0x50cce9(0x1b7)](_0x1c1a60[_0x50cce9(0x217)],{'uuid':uuid,'name':nameinput[_0x50cce9(0x23a)]});}),document[_0x467e64(0x144)+_0x467e64(0x1e0)](_0x467e64(0x1a2),function(_0x2fa7bb){const _0x5b07e6=_0x467e64,_0xd51aa0={'MVyxv':function(_0x506eb5,_0x3f0966){return _0x506eb5===_0x3f0966;},'ybgGq':_0x5b07e6(0x1cc),'cdNSH':function(_0x18294a,_0xdbe1c5){return _0x18294a(_0xdbe1c5);},'UwdOx':_0x5b07e6(0x1c8),'DeaaA':_0x5b07e6(0x167),'oXilg':function(_0x10c01e,_0x56735b){return _0x10c01e===_0x56735b;},'TqEtT':_0x5b07e6(0x135),'DpZcR':function(_0xf2b260,_0x14d00f){return _0xf2b260(_0x14d00f);},'FJPjr':_0x5b07e6(0x267),'Nihow':_0x5b07e6(0x177),'zIMvG':function(_0x9e8c5f,_0x53e6d4){return _0x9e8c5f(_0x53e6d4);},'jbygP':_0x5b07e6(0x24b)};if(_0xd51aa0[_0x5b07e6(0x296)](_0x2fa7bb[_0x5b07e6(0x14f)],_0xd51aa0[_0x5b07e6(0x181)]))_0xd51aa0[_0x5b07e6(0x26b)](pan,'up');else{if(_0xd51aa0[_0x5b07e6(0x296)](_0x2fa7bb[_0x5b07e6(0x14f)],_0xd51aa0[_0x5b07e6(0x24d)]))_0xd51aa0[_0x5b07e6(0x26b)](pan,_0xd51aa0[_0x5b07e6(0x21c)]);else{if(_0xd51aa0[_0x5b07e6(0x2aa)](_0x2fa7bb[_0x5b07e6(0x14f)],_0xd51aa0[_0x5b07e6(0x1d1)]))_0xd51aa0[_0x5b07e6(0x1d2)](pan,_0xd51aa0[_0x5b07e6(0x222)]);else _0xd51aa0[_0x5b07e6(0x2aa)](_0x2fa7bb[_0x5b07e6(0x14f)],_0xd51aa0[_0x5b07e6(0x29f)])&&_0xd51aa0[_0x5b07e6(0x1f2)](pan,_0xd51aa0[_0x5b07e6(0x1de)]);}}});function addPoint(_0x5d1c29){const _0x244d2f=_0x467e64,_0x53da79={'ycYeu':function(_0xf3983c,_0x34b89b){return _0xf3983c/_0x34b89b;},'ZUIEb':function(_0x4bfe49,_0x2bc9a0){return _0x4bfe49*_0x2bc9a0;},'ufgDa':function(_0x482070,_0x15c94b){return _0x482070-_0x15c94b;},'nAxhe':function(_0x3031a8){return _0x3031a8();}};if(!isDrawing)return;const _0x328831=canvas[_0x244d2f(0x1db)+_0x244d2f(0x2ab)+'t'](),_0x97f005=_0x53da79[_0x244d2f(0x24e)](canvas[_0x244d2f(0x212)],_0x328831[_0x244d2f(0x212)]),_0x3b34d8=_0x53da79[_0x244d2f(0x24e)](canvas[_0x244d2f(0x193)],_0x328831[_0x244d2f(0x193)]),_0x2180d3=_0x53da79[_0x244d2f(0x237)](_0x53da79[_0x244d2f(0x17d)](_0x5d1c29[_0x244d2f(0x27d)],_0x328831[_0x244d2f(0x267)]),_0x97f005),_0x3980cb=_0x53da79[_0x244d2f(0x237)](_0x53da79[_0x244d2f(0x17d)](_0x5d1c29[_0x244d2f(0x153)],_0x328831[_0x244d2f(0x299)]),_0x3b34d8);currentDrawing[_0x244d2f(0x278)]({'x':Math[_0x244d2f(0x1ac)](_0x2180d3),'y':Math[_0x244d2f(0x1ac)](_0x3980cb),'color':currentColor}),_0x53da79[_0x244d2f(0x134)](draw);}function draw(){const _0x488b55=_0x467e64,_0x5dc078={'uBVap':function(_0x36f7b3,_0x1df216){return _0x36f7b3<_0x1df216;},'XqjSW':function(_0x35d0ac,_0x51de48){return _0x35d0ac-_0x51de48;},'oqRyF':function(_0x3e123,_0x4eb8e9){return _0x3e123>_0x4eb8e9;}};context[_0x488b55(0x233)](0x1a*-0x148+0x442*-0x9+0x2*0x23d1,-0x155a+-0x191*0x4+-0xe*-0x1f9,canvas[_0x488b55(0x212)],canvas[_0x488b55(0x193)]);for(const _0x20095f of drawings){if(_0x5dc078[_0x488b55(0x229)](_0x20095f[_0x488b55(0x13c)],-0x6de*-0x3+-0x11e3*-0x1+-0x267b))continue;for(let _0x1623e8=0xc07+-0x197c+-0x2*-0x6bb;_0x5dc078[_0x488b55(0x229)](_0x1623e8,_0x20095f[_0x488b55(0x13c)]);_0x1623e8++){const _0x521a4e=_0x20095f[_0x5dc078[_0x488b55(0x139)](_0x1623e8,0x655*-0x4+-0xc6*-0x1f+0x15b*0x1)],_0x2be3a6=_0x20095f[_0x1623e8];context[_0x488b55(0x1fe)](),context[_0x488b55(0x20a)+'e']=_0x521a4e[_0x488b55(0x1df)],context[_0x488b55(0x15d)](Math[_0x488b55(0x1ac)](_0x521a4e['x']),Math[_0x488b55(0x1ac)](_0x521a4e['y'])),context[_0x488b55(0x1e4)](Math[_0x488b55(0x1ac)](_0x2be3a6['x']),Math[_0x488b55(0x1ac)](_0x2be3a6['y'])),context[_0x488b55(0x20c)]();}}context[_0x488b55(0x20c)]();if(_0x5dc078[_0x488b55(0x1b0)](currentDrawing[_0x488b55(0x13c)],-0x7a+0x46c+-0x3f2)){context[_0x488b55(0x1fe)](),context[_0x488b55(0x20a)+'e']=currentColor,context[_0x488b55(0x15d)](Math[_0x488b55(0x1ac)](currentDrawing[-0xb*0x1+-0x3a*0x46+0xfe7]['x']),Math[_0x488b55(0x1ac)](currentDrawing[0x4*0x98+0x1aee+-0x79*0x3e]['y']));for(let _0x279f9b=0x23e6+-0x1691+0x4*-0x355;_0x5dc078[_0x488b55(0x229)](_0x279f9b,currentDrawing[_0x488b55(0x13c)]);_0x279f9b++){const _0xc4bd80=currentDrawing[_0x279f9b];context[_0x488b55(0x1e4)](Math[_0x488b55(0x1ac)](_0xc4bd80['x']),Math[_0x488b55(0x1ac)](_0xc4bd80['y']));}context[_0x488b55(0x20c)]();}}function _0x28ea(_0x37fad0,_0xfb3647){const _0x2bb874=_0x10da();return _0x28ea=function(_0x54e0d5,_0x52acac){_0x54e0d5=_0x54e0d5-(0x1cbb+0x1be4+-0x376b);let _0x5053b2=_0x2bb874[_0x54e0d5];return _0x5053b2;},_0x28ea(_0x37fad0,_0xfb3647);}socket['on'](_0x467e64(0x1f3),_0x9fa930=>{const _0x3d1341=_0x467e64,_0x3e16eb={'VPnVz':_0x3d1341(0x26f),'jeibM':_0x3d1341(0x25b),'fNFho':function(_0x63fe25,_0x33a6a0,_0x1ec407){return _0x63fe25(_0x33a6a0,_0x1ec407);}};document[_0x3d1341(0x175)+_0x3d1341(0x191)](_0x3e16eb[_0x3d1341(0x1f5)])[_0x3d1341(0x198)+'t']=_0x9fa930[_0x3d1341(0x1ae)][_0x3d1341(0x22b)],document[_0x3d1341(0x175)+_0x3d1341(0x191)](_0x3e16eb[_0x3d1341(0x1f5)])[_0x3d1341(0x13d)][_0x3d1341(0x1b6)]='',_0x3e16eb[_0x3d1341(0x260)](setTimeout,()=>{const _0x1eeae7=_0x3d1341;document[_0x1eeae7(0x175)+_0x1eeae7(0x191)](_0x3e16eb[_0x1eeae7(0x1f5)])[_0x1eeae7(0x13d)][_0x1eeae7(0x1b6)]=_0x3e16eb[_0x1eeae7(0x1c4)];},-0x146b+-0x1d48+0x1df*0x25);}),socket['on'](_0x467e64(0x174),_0x5ca70f=>{const _0x4c1251=_0x467e64,_0x388f79={'fBuAv':function(_0x4c289a,_0x1d5930){return _0x4c289a+_0x1d5930;},'DofzW':function(_0x40b0fa,_0x45fe5c){return _0x40b0fa+_0x45fe5c;},'xQWsp':_0x4c1251(0x14d)+_0x4c1251(0x189),'ZFePb':function(_0x1f1f41,_0x45a32d){return _0x1f1f41==_0x45a32d;},'XdjCn':_0x4c1251(0x22b),'kTHXM':function(_0x24e6be,_0xc80fc1){return _0x24e6be+_0xc80fc1;},'koLUL':function(_0x23f1b2,_0x459b22){return _0x23f1b2+_0x459b22;},'ZPIxK':function(_0x2e0902,_0x12bf42){return _0x2e0902+_0x12bf42;},'upLWs':function(_0x14ee8f,_0x107b19){return _0x14ee8f==_0x107b19;},'lzZFt':_0x4c1251(0x2ad)+_0x4c1251(0x1bb)};if(_0x388f79[_0x4c1251(0x1f0)](_0x5ca70f[_0x4c1251(0x27b)],_0x388f79[_0x4c1251(0x219)])){const _0x4329d6=document[_0x4c1251(0x25d)+_0x4c1251(0x184)]('li');_0x4329d6[_0x4c1251(0x198)+'t']=_0x388f79[_0x4c1251(0x1f4)](_0x388f79[_0x4c1251(0x256)](_0x388f79[_0x4c1251(0x1c0)]('<',_0x5ca70f[_0x4c1251(0x268)]),'>\x20'),_0x5ca70f[_0x4c1251(0x19a)]),chat[_0x4c1251(0x20e)+_0x4c1251(0x245)]('ul')[_0x4c1251(0x262)+'d'](_0x4329d6),chat[_0x4c1251(0x20e)+_0x4c1251(0x245)](_0x388f79[_0x4c1251(0x150)])[_0x4c1251(0x20e)+_0x4c1251(0x245)]('ul')[_0x4c1251(0x147)]=chat[_0x4c1251(0x20e)+_0x4c1251(0x245)](_0x388f79[_0x4c1251(0x150)])[_0x4c1251(0x20e)+_0x4c1251(0x245)]('ul')[_0x4c1251(0x1ca)+'ht'];}else{if(_0x388f79[_0x4c1251(0x15b)](_0x5ca70f[_0x4c1251(0x27b)],_0x388f79[_0x4c1251(0x264)])){const _0x4e715b=JSON[_0x4c1251(0x207)](_0x5ca70f[_0x4c1251(0x214)]);_0x4e715b[_0x4c1251(0x137)](_0x11b236=>{const _0x1194c2=_0x4c1251,_0x4f0032=document[_0x1194c2(0x25d)+_0x1194c2(0x184)]('li');_0x4f0032[_0x1194c2(0x198)+'t']=_0x388f79[_0x1194c2(0x2a4)](_0x388f79[_0x1194c2(0x220)](_0x388f79[_0x1194c2(0x220)]('<',_0x11b236[_0x1194c2(0x268)]),'>\x20'),_0x11b236[_0x1194c2(0x19a)]),chat[_0x1194c2(0x20e)+_0x1194c2(0x245)]('ul')[_0x1194c2(0x262)+'d'](_0x4f0032),chat[_0x1194c2(0x20e)+_0x1194c2(0x245)](_0x388f79[_0x1194c2(0x150)])[_0x1194c2(0x20e)+_0x1194c2(0x245)]('ul')[_0x1194c2(0x147)]=chat[_0x1194c2(0x20e)+_0x1194c2(0x245)](_0x388f79[_0x1194c2(0x150)])[_0x1194c2(0x20e)+_0x1194c2(0x245)]('ul')[_0x1194c2(0x1ca)+'ht'];});}}}),socket['on'](_0x467e64(0x151),_0x343fa9=>{const _0x565b09=_0x467e64,_0x236ac4={'EiHPw':_0x565b09(0x18a),'NvZcd':function(_0xc11641,_0x1144f7){return _0xc11641+_0x1144f7;},'cIknx':function(_0x96f361,_0x44d0a6){return _0x96f361+_0x44d0a6;},'DhMhz':_0x565b09(0x1e5)};document[_0x565b09(0x175)+_0x565b09(0x191)](_0x236ac4[_0x565b09(0x15e)])[_0x565b09(0x20e)+_0x565b09(0x245)]('p')[_0x565b09(0x198)+'t']=_0x236ac4[_0x565b09(0x18b)](_0x236ac4[_0x565b09(0x1d3)](_0x236ac4[_0x565b09(0x29d)],_0x343fa9[_0x565b09(0x16b)]),'MB'),document[_0x565b09(0x175)+_0x565b09(0x191)](_0x236ac4[_0x565b09(0x15e)])[_0x565b09(0x13d)][_0x565b09(0x17b)]=0x4*0x4aa+-0x1*-0x11a9+-0x2451+0.25;}),socket['on'](_0x467e64(0x1f7),_0x224dc1=>{const _0x7be89a=_0x467e64,_0x12cb9f={'EcWre':function(_0x4e03af,_0x8735de){return _0x4e03af!=_0x8735de;},'UZjwu':_0x7be89a(0x22a),'eVETf':_0x7be89a(0x228)+'er'};_0x12cb9f[_0x7be89a(0x271)](_0x224dc1[_0x7be89a(0x15a)],_0x12cb9f[_0x7be89a(0x16f)])?(document[_0x7be89a(0x175)+_0x7be89a(0x191)](_0x12cb9f[_0x7be89a(0x138)])[_0x7be89a(0x1b4)]=_0x224dc1[_0x7be89a(0x15a)],document[_0x7be89a(0x175)+_0x7be89a(0x191)](_0x12cb9f[_0x7be89a(0x138)])[_0x7be89a(0x1f7)]()):document[_0x7be89a(0x175)+_0x7be89a(0x191)](_0x12cb9f[_0x7be89a(0x138)])[_0x7be89a(0x29e)]();}),socket['on'](_0x467e64(0x291)+'nt',_0x36d588=>{const _0x2f542c=_0x467e64,_0x3fdb3b={'qCMgL':_0x2f542c(0x25b),'oIhQW':function(_0x305aaf,_0x58d4ae){return _0x305aaf-_0x58d4ae;},'PZxhw':_0x2f542c(0x1e1),'OFMwq':_0x2f542c(0x1a8),'SVtLh':function(_0x475949,_0x8aaa3f,_0x20bf75){return _0x475949(_0x8aaa3f,_0x20bf75);},'bdhfp':_0x2f542c(0x1eb),'OAuEr':_0x2f542c(0x1aa),'bCsbM':_0x2f542c(0x166),'NnBCG':function(_0x2d2c3c,_0x27d3ce){return _0x2d2c3c+_0x27d3ce;},'hNOmL':_0x2f542c(0x224)+_0x2f542c(0x253),'BHpgh':_0x2f542c(0x251)+_0x2f542c(0x261)+_0x2f542c(0x1d0),'ljEuS':_0x2f542c(0x13d),'FPEQf':_0x2f542c(0x1a3)+_0x2f542c(0x223)+_0x2f542c(0x24c)+_0x2f542c(0x1b1)+_0x2f542c(0x26d)};if(_0x36d588[_0x2f542c(0x22b)]&&_0x36d588[_0x2f542c(0x1df)]){const _0x7ed78f=_0x36d588[_0x2f542c(0x22b)],_0x393c97=document[_0x2f542c(0x20e)+_0x2f542c(0x245)](_0x3fdb3b[_0x2f542c(0x201)]),_0x496fe2=document[_0x2f542c(0x25d)+_0x2f542c(0x184)](_0x3fdb3b[_0x2f542c(0x14c)]);_0x496fe2[_0x2f542c(0x1c3)+'te'](_0x3fdb3b[_0x2f542c(0x164)],_0x3fdb3b[_0x2f542c(0x19d)](_0x3fdb3b[_0x2f542c(0x20b)],_0x36d588[_0x2f542c(0x1df)])),_0x496fe2[_0x2f542c(0x1c3)+'te']('id',announceCount),_0x496fe2[_0x2f542c(0x13d)][_0x2f542c(0x1ec)]=_0x3fdb3b[_0x2f542c(0x1b2)];const _0x582fdf=document[_0x2f542c(0x25d)+_0x2f542c(0x184)]('p');_0x582fdf[_0x2f542c(0x1c3)+'te'](_0x3fdb3b[_0x2f542c(0x18f)],_0x3fdb3b[_0x2f542c(0x216)]),_0x582fdf[_0x2f542c(0x198)+'t']=_0x7ed78f,_0x496fe2[_0x2f542c(0x262)+'d'](_0x582fdf),_0x393c97[_0x2f542c(0x262)+'d'](_0x496fe2),announceCount++,announcementIDs[_0x2f542c(0x278)](_0x3fdb3b[_0x2f542c(0x231)](announceCount,-0x1c40+-0x7f0+0x221*0x11)),_0x3fdb3b[_0x2f542c(0x163)](setTimeout,()=>{const _0x36e28f=_0x2f542c,_0x469619={'axmFP':_0x3fdb3b[_0x36e28f(0x2a2)]},_0x5330b3=document[_0x36e28f(0x175)+_0x36e28f(0x191)](_0x3fdb3b[_0x36e28f(0x231)](announceCount,0x1*0x1b9b+0x2e1*-0xd+0x9d3));_0x5330b3[_0x36e28f(0x26c)][_0x36e28f(0x183)](_0x3fdb3b[_0x36e28f(0x1ce)]),_0x5330b3[_0x36e28f(0x26c)][_0x36e28f(0x19f)](_0x3fdb3b[_0x36e28f(0x148)]),_0x3fdb3b[_0x36e28f(0x163)](setTimeout,()=>{const _0x27e9d5=_0x36e28f;_0x5330b3[_0x27e9d5(0x13d)][_0x27e9d5(0x1b6)]=_0x469619[_0x27e9d5(0x255)],_0x5330b3[_0x27e9d5(0x183)]();},0x9*0x166+-0x12ff+0x1*0x85d);},0x13eb*0x1+0x1*-0x5d6+0x1d1*0x3);}});function hideMessages(){const _0x1bfee7=_0x467e64,_0x11005b={'xqdiz':function(_0x1c518d,_0x1810e6){return _0x1c518d!=_0x1810e6;},'OGDrM':_0x1bfee7(0x23c),'cWzXF':_0x1bfee7(0x1a8),'MLXsw':_0x1bfee7(0x25b),'ePIBE':_0x1bfee7(0x1eb),'lrekA':_0x1bfee7(0x1aa),'tjLkv':function(_0xdcbca8,_0x4a7bea){return _0xdcbca8>_0x4a7bea;},'aYOhb':function(_0x3ba697,_0x4ebc32,_0x139fb2){return _0x3ba697(_0x4ebc32,_0x139fb2);}},_0x70741b=document[_0x1bfee7(0x20e)+_0x1bfee7(0x245)](_0x11005b[_0x1bfee7(0x152)]);if(_0x70741b){const _0x4e5de7=_0x70741b[_0x1bfee7(0x20e)+_0x1bfee7(0x252)](_0x11005b[_0x1bfee7(0x297)]);_0x11005b[_0x1bfee7(0x14e)](_0x4e5de7[_0x1bfee7(0x13c)],-0x9*-0x191+0x7*0xb5+-0x130b)&&(_0x4e5de7[_0x1bfee7(0x137)](_0x5e0369=>{const _0x2489d7=_0x1bfee7;_0x11005b[_0x2489d7(0x16c)](_0x5e0369[_0x2489d7(0x2a1)+'te']('id'),_0x11005b[_0x2489d7(0x16d)])&&_0x5e0369[_0x2489d7(0x26c)][_0x2489d7(0x19f)](_0x11005b[_0x2489d7(0x195)]);}),_0x11005b[_0x1bfee7(0x136)](setTimeout,()=>{const _0xcac5f4=_0x1bfee7;_0x4e5de7[_0xcac5f4(0x137)](_0x22b575=>{const _0x5ae467=_0xcac5f4;_0x11005b[_0x5ae467(0x16c)](_0x22b575[_0x5ae467(0x2a1)+'te']('id'),_0x11005b[_0x5ae467(0x16d)])&&(_0x22b575[_0x5ae467(0x13d)][_0x5ae467(0x1b6)]=_0x11005b[_0x5ae467(0x1d8)],_0x22b575[_0x5ae467(0x183)]());});},0x1732+0x2*-0x224+-0x10f6));}}setInterval(hideMessages,-0x65*0x19+-0x3*-0xced+-0x2*0x4b1),socket['on'](_0x467e64(0x2a0)+_0x467e64(0x199),_0x26612f=>{const _0x48dddc=_0x467e64,_0x4b1f6e={'seNhB':_0x48dddc(0x1cb),'rSOSF':_0x48dddc(0x2a0)+_0x48dddc(0x199)};document[_0x48dddc(0x175)+_0x48dddc(0x191)](_0x4b1f6e[_0x48dddc(0x13b)])[_0x48dddc(0x198)+'t']=_0x48dddc(0x238)+_0x48dddc(0x159)+_0x26612f,document[_0x48dddc(0x175)+_0x48dddc(0x191)](_0x4b1f6e[_0x48dddc(0x173)])[_0x48dddc(0x13d)][_0x48dddc(0x17b)]=0xbb0*0x3+0x51*0x19+-0x2af9+0.25;}),socket['on'](_0x467e64(0x21d),_0x44401b=>{const _0x8191de=_0x467e64;location[_0x8191de(0x21d)](!![]);}),socket['on'](_0x467e64(0x17a),_0x2945bb=>{const _0x3dd15d=_0x467e64,_0x52a2c6={'rAaWj':_0x3dd15d(0x236),'Fmgyr':_0x3dd15d(0x234),'uXuzM':function(_0x262ee2,_0x149427){return _0x262ee2+_0x149427;},'GnSJz':_0x3dd15d(0x1d6),'cwHRc':_0x3dd15d(0x17a),'hkSVx':function(_0x826c,_0x5a897c){return _0x826c+_0x5a897c;},'YVgem':function(_0x2fbd85,_0x5e52ae){return _0x2fbd85+_0x5e52ae;},'xlgBb':_0x3dd15d(0x186)},_0x259e84=_0x52a2c6[_0x3dd15d(0x273)][_0x3dd15d(0x2a8)]('|');let _0x1e1ae1=0x144a+0x3*-0x502+-0x544;while(!![]){switch(_0x259e84[_0x1e1ae1++]){case'0':document[_0x3dd15d(0x175)+_0x3dd15d(0x191)](_0x52a2c6[_0x3dd15d(0x285)])[_0x3dd15d(0x198)+'t']=_0x52a2c6[_0x3dd15d(0x25f)](_0x52a2c6[_0x3dd15d(0x145)],_0x2945bb);continue;case'1':document[_0x3dd15d(0x175)+_0x3dd15d(0x191)](_0x52a2c6[_0x3dd15d(0x194)])[_0x3dd15d(0x13d)][_0x3dd15d(0x17b)]=-0x14b5+-0x5*0x68b+0x356c+0.25;continue;case'2':document[_0x3dd15d(0x1e6)]=_0x52a2c6[_0x3dd15d(0x169)](_0x52a2c6[_0x3dd15d(0x145)],_0x2945bb);continue;case'3':document[_0x3dd15d(0x175)+_0x3dd15d(0x191)](_0x52a2c6[_0x3dd15d(0x194)])[_0x3dd15d(0x20e)+_0x3dd15d(0x245)]('p')[_0x3dd15d(0x198)+'t']=_0x52a2c6[_0x3dd15d(0x263)](_0x52a2c6[_0x3dd15d(0x206)],_0x2945bb);continue;case'4':versionSet=!![];continue;}break;}}),socket['on'](_0x467e64(0x1d7),_0x3c17cf=>{const _0x4cf8fb=_0x467e64,_0x436e35={'pDuMe':_0x4cf8fb(0x25b),'qFUAo':_0x4cf8fb(0x1aa),'HjBgD':_0x4cf8fb(0x1e1),'wbPon':_0x4cf8fb(0x1a8),'HlfxQ':function(_0x3b97a4,_0x47199d,_0x206628){return _0x3b97a4(_0x47199d,_0x206628);},'igcNX':function(_0x1f94be,_0x495dd3){return _0x1f94be===_0x495dd3;},'IZlRV':_0x4cf8fb(0x1d7),'YaNTJ':function(_0x263715){return _0x263715();},'Mxsno':function(_0x1564df,_0x19ec9c){return _0x1564df===_0x19ec9c;},'eOlqz':_0x4cf8fb(0x142)+_0x4cf8fb(0x1c5),'IQYJh':function(_0x3bc9ce,_0x324c43,_0x4995ef,_0x54e959){return _0x3bc9ce(_0x324c43,_0x4995ef,_0x54e959);},'kjWRr':_0x4cf8fb(0x24f),'unEOx':_0x4cf8fb(0x141),'gxNiH':_0x4cf8fb(0x242),'WGqTV':_0x4cf8fb(0x196),'JzCKb':_0x4cf8fb(0x1bc),'xuyHU':_0x4cf8fb(0x22f),'XvONF':function(_0x6a3194,_0x5b28a9,_0x5d8485,_0xa1320){return _0x6a3194(_0x5b28a9,_0x5d8485,_0xa1320);},'sbgjr':_0x4cf8fb(0x27c),'gogug':_0x4cf8fb(0x154),'kiljl':_0x4cf8fb(0x176),'YKdaL':_0x4cf8fb(0x298)};if(_0x436e35[_0x4cf8fb(0x1a9)](_0x3c17cf[_0x4cf8fb(0x27b)],_0x436e35[_0x4cf8fb(0x26a)])&&_0x3c17cf[_0x4cf8fb(0x1f9)])drawings[_0x4cf8fb(0x278)](_0x3c17cf[_0x4cf8fb(0x1f9)]),_0x436e35[_0x4cf8fb(0x221)](draw);else{if(_0x436e35[_0x4cf8fb(0x1e3)](_0x3c17cf[_0x4cf8fb(0x27b)],_0x436e35[_0x4cf8fb(0x226)])&&_0x3c17cf[_0x4cf8fb(0x17e)]){const _0x5bf96e=JSON[_0x4cf8fb(0x207)](_0x3c17cf[_0x4cf8fb(0x17e)]);drawings=[],uuid=_0x3c17cf['id'],nameinput[_0x4cf8fb(0x23a)]=_0x3c17cf[_0x4cf8fb(0x268)],_0x436e35[_0x4cf8fb(0x16e)](setCookie,_0x436e35[_0x4cf8fb(0x1be)],uuid,-0x104*-0x6+-0x556*0x7+-0x35*-0x97),drawings[_0x4cf8fb(0x278)](..._0x5bf96e),_0x436e35[_0x4cf8fb(0x221)](draw),document[_0x4cf8fb(0x175)+_0x4cf8fb(0x191)](_0x436e35[_0x4cf8fb(0x28b)])[_0x4cf8fb(0x13d)][_0x4cf8fb(0x17b)]=0x1*-0xcd0+0x1ad2+-0xe01,document[_0x4cf8fb(0x175)+_0x4cf8fb(0x191)](_0x436e35[_0x4cf8fb(0x28b)])[_0x4cf8fb(0x13d)][_0x4cf8fb(0x2a5)]=_0x436e35[_0x4cf8fb(0x1b9)],canvas[_0x4cf8fb(0x13d)][_0x4cf8fb(0x17b)]=0xadf*-0x1+-0x1*0x665+0x1145,canvas[_0x4cf8fb(0x13d)][_0x4cf8fb(0x2a5)]=_0x436e35[_0x4cf8fb(0x28c)],buttons[_0x4cf8fb(0x13d)][_0x4cf8fb(0x17b)]=0x1aca+0x1d*-0xd+-0x36*0x78,chat[_0x4cf8fb(0x13d)][_0x4cf8fb(0x1b6)]=_0x436e35[_0x4cf8fb(0x1f1)];var _0x300bdd=document[_0x4cf8fb(0x175)+_0x4cf8fb(0x191)](_0x436e35[_0x4cf8fb(0x1e2)]);_0x300bdd[_0x4cf8fb(0x13d)][_0x4cf8fb(0x1b6)]=_0x436e35[_0x4cf8fb(0x1f1)],_0x300bdd[_0x4cf8fb(0x13d)][_0x4cf8fb(0x17b)]=0x1221+0x1212+-0x2432,_0x300bdd[_0x4cf8fb(0x20e)+_0x4cf8fb(0x245)](_0x436e35[_0x4cf8fb(0x1ba)])[_0x4cf8fb(0x26c)][_0x4cf8fb(0x19f)](_0x436e35[_0x4cf8fb(0x143)]),_0x436e35[_0x4cf8fb(0x1f8)](setCookie,_0x436e35[_0x4cf8fb(0x279)],_0x436e35[_0x4cf8fb(0x250)],0x10e7*-0x2+0x1253*-0x1+0x2*0x1a11),document[_0x4cf8fb(0x175)+_0x4cf8fb(0x191)](_0x436e35[_0x4cf8fb(0x2a9)])[_0x4cf8fb(0x144)+_0x4cf8fb(0x1e0)](_0x436e35[_0x4cf8fb(0x160)],_0x334b85=>{const _0x4884fa=_0x4cf8fb,_0x24b578={'fYjdm':_0x436e35[_0x4884fa(0x21a)]};_0x300bdd[_0x4884fa(0x13d)][_0x4884fa(0x17b)]=0x7dd+-0xb1b+0x33e,_0x300bdd[_0x4884fa(0x20e)+_0x4884fa(0x245)](_0x436e35[_0x4884fa(0x1ba)])[_0x4884fa(0x26c)][_0x4884fa(0x183)](_0x436e35[_0x4884fa(0x143)]),_0x300bdd[_0x4884fa(0x20e)+_0x4884fa(0x245)](_0x436e35[_0x4884fa(0x1ba)])[_0x4884fa(0x26c)][_0x4884fa(0x19f)](_0x436e35[_0x4884fa(0x1a4)]),_0x436e35[_0x4884fa(0x171)](setTimeout,()=>{const _0x2decba=_0x4884fa;_0x300bdd[_0x2decba(0x13d)][_0x2decba(0x1b6)]=_0x24b578[_0x2decba(0x29a)];},-0x62e+-0x3*-0xc9f+-0x1dbb);});}}});let zoomLevel=0x124f+-0x1f6c*-0x1+-0x1*0x31bb+0.08;const zoomFactor=0xb0f+-0x1*-0x1323+-0x1e32+0.1;let offsetX=-0x44c+0xdb2+-0x966,offsetY=-0x15*0x3c+0x131b*0x1+-0xe2f*0x1;function pan(_0x21c154){const _0x1090ce=_0x467e64,_0x559391={'ILuVC':_0x1090ce(0x267),'sHYIR':_0x1090ce(0x24b),'LlbVW':_0x1090ce(0x167),'qisit':function(_0x21f910){return _0x21f910();}},_0x48c250=0x3b*0xd+0x187+-0x45e;switch(_0x21c154){case _0x559391[_0x1090ce(0x1f6)]:offsetX+=_0x48c250;break;case _0x559391[_0x1090ce(0x208)]:offsetX-=_0x48c250;break;case'up':offsetY+=_0x48c250;break;case _0x559391[_0x1090ce(0x2a3)]:offsetY-=_0x48c250;break;default:break;}_0x559391[_0x1090ce(0x19c)](updateCanvasContainerPosition);}function updateCanvasContainerPosition(){const _0x4421c5=_0x467e64,_0x47981b={'rgXpZ':function(_0xb04ee5,_0x2257c6){return _0xb04ee5==_0x2257c6;}};_0x47981b[_0x4421c5(0x280)](zoomLevel,0x89a+-0x89*0x43+0x1*0x1b41+0.08)?(canvas[_0x4421c5(0x13d)][_0x4421c5(0x197)]=_0x4421c5(0x1fd),offsetX=-0x9da+-0x1*0x1150+-0x6*-0x487,offsetY=0x104+-0x1fe5*0x1+-0x62d*-0x5):canvas[_0x4421c5(0x13d)][_0x4421c5(0x197)]=_0x4421c5(0x21b)+offsetX+_0x4421c5(0x215)+offsetY+_0x4421c5(0x1d5);}canvasContainer[_0x467e64(0x144)+_0x467e64(0x1e0)](_0x467e64(0x227),_0x25af77=>{const _0x47f0df=_0x467e64,_0x249daf={'tNUUJ':function(_0x3d07f6,_0x254ccb){return _0x3d07f6>_0x254ccb;},'iXHUE':function(_0x372074,_0x25d539){return _0x372074+_0x25d539;},'EkyPu':function(_0x53dac7,_0x198fbd){return _0x53dac7*_0x198fbd;},'qumjn':function(_0x1fce21,_0x4dca23){return _0x1fce21<_0x4dca23;},'zpsaP':function(_0x32ddec){return _0x32ddec();},'YSEXS':function(_0x2c31f8,_0x5587f7){return _0x2c31f8>_0x5587f7;}};_0x25af77[_0x47f0df(0x1c1)+_0x47f0df(0x190)]();const _0x52aa81=_0x249daf[_0x47f0df(0x1da)](_0x25af77[_0x47f0df(0x213)],-0x1*-0x1031+0x1ff9+-0x302a)?-(0x120c+0x18a8+-0x2ab3):-0xb7b*-0x2+0x1*0x107f+-0x2774,_0x1dfb6c=_0x249daf[_0x47f0df(0x266)](0x985*-0x3+0x2276+-0x5e6,_0x249daf[_0x47f0df(0x225)](_0x52aa81,zoomFactor));zoomLevel*=_0x1dfb6c;_0x249daf[_0x47f0df(0x192)](zoomLevel,0x1410+-0x1fb6+-0x1f1*-0x6+0.08)&&(zoomLevel=0x1c3*0x2+-0x1065+0x1*0xcdf+0.08,canvas[_0x47f0df(0x13d)][_0x47f0df(0x197)]=_0x47f0df(0x21b)+_0x47f0df(0x1fd),_0x249daf[_0x47f0df(0x1ed)](updateCanvasContainerPosition));if(_0x249daf[_0x47f0df(0x200)](zoomLevel,0x185d+-0xd7*0x10+-0xad9))zoomLevel=0x6bb+-0x24cc+0x1*0x1e25;canvasContainer[_0x47f0df(0x13d)][_0x47f0df(0x197)]=_0x47f0df(0x1bf)+zoomLevel+')';});
\ No newline at end of file
diff --git a/public/static/js/main-UujD4m-1.js b/public/static/js/main-UujD4m-1.js
new file mode 100644
index 0000000..12ec200
--- /dev/null
+++ b/public/static/js/main-UujD4m-1.js
@@ -0,0 +1 @@
+const _0x2c7fc4=_0x3cf4;(function(_0x3b3e54,_0x94af4c){const _0x50809f=_0x3cf4,_0x5726d0=_0x3b3e54();while(!![]){try{const _0x17971b=-parseInt(_0x50809f(0x255))/(-0x1ccf+0x1f85+-0x2b5)*(-parseInt(_0x50809f(0x223))/(-0x114a+-0xd8d+0x1ed9))+-parseInt(_0x50809f(0x1a9))/(0x1df4+-0x2683*0x1+0x892)*(-parseInt(_0x50809f(0x241))/(0xb1*-0x21+0x2033+-0x95e))+parseInt(_0x50809f(0x2a6))/(-0x3*0x3f7+0x2137+0x13*-0x11f)+parseInt(_0x50809f(0x283))/(0x1095+0x18f2+0x271*-0x11)*(-parseInt(_0x50809f(0x250))/(-0x25*0x100+-0x1*-0x1a33+-0x84*-0x15))+-parseInt(_0x50809f(0x1b1))/(-0x12*0x1d9+-0x1*-0x134a+0x1*0xe00)*(parseInt(_0x50809f(0x17f))/(0x29*-0x9+0x8a5+-0x72b))+-parseInt(_0x50809f(0x1d1))/(0xf48+-0x10f+-0x1*0xe2f)+parseInt(_0x50809f(0x27f))/(-0x24f2+-0x1d75+0x17a*0x2d)*(-parseInt(_0x50809f(0x16d))/(-0x1*0x1f0c+0x1*-0xfd3+0x2eeb));if(_0x17971b===_0x94af4c)break;else _0x5726d0['push'](_0x5726d0['shift']());}catch(_0x36c0c0){_0x5726d0['push'](_0x5726d0['shift']());}}}(_0xbd80,0x2*0x8d26+0x3f7dd*-0x1+0xafa15));const socket=io({'timeout':0x1f4}),canvas=document[_0x2c7fc4(0x173)+_0x2c7fc4(0x1db)](_0x2c7fc4(0x217)+_0x2c7fc4(0x175)),canvasContainer=document[_0x2c7fc4(0x173)+_0x2c7fc4(0x1db)](_0x2c7fc4(0x212)+_0x2c7fc4(0x2ce)),buttons=document[_0x2c7fc4(0x173)+_0x2c7fc4(0x1db)](_0x2c7fc4(0x1ac)),tx=document[_0x2c7fc4(0x173)+_0x2c7fc4(0x1db)]('x'),ty=document[_0x2c7fc4(0x173)+_0x2c7fc4(0x1db)]('y'),context=canvas[_0x2c7fc4(0x27d)]('2d');let drawings=[],announcementIDs=[],currentDrawing=[],isDrawing=![],uiVisible=!![],currentColor=_0x2c7fc4(0x1f5),announceCount=-0x57c+0x1*-0x166c+-0x1be9*-0x1,connectionTimer=null,connectionSeconds=-0x1*-0x1f87+-0x2546+0x5bf*0x1,versionSet=![],ping=null;function _0xbd80(){const _0x4277b8=['toFixed','QcpOo','OrhKY','px\x2050px\x2025','OvUwT','opacity','jpkSR','gtzww','rivDA','NGEvZ','message','ent','ArrowDown','XIclS','aTRRD','dUpfd','transform','LfvpN','e:\x20nowrap;','addEventLi','HgdVF','Ping:\x20','KlOTi','awings','Clients:\x20','rctDW','pStOP','XglEh','GSlol','getContext','pEyip','8063aaxbWs','IIRHi','width','InjCm','6OHyHmp','vKFmL','px\x2050px','clientNum','tQjya','NTEyZ','ArrowUp','reload','Collavas\x20v','audio','iflAb','Fapws','zdjDc','visibility','rOHnv','min-width:','mouseleave','xWson','size','classList','cUXCC','LjgkY','w-close','left','rrently\x20be','forEach','visited','FGzpZ','getBoundin','drawing','now','map','deltaY','jpTvU','AdOqM','4917125YiDANb','lSTZx','QWtBq','jHJYc','YtkIP','wheel','value','VRJLp','2|4|0|3|1','toUTCStrin','cvHqz','qbHCL',';\x20path=/','Qrhil','hingEnable','style','AfcGS','target','dRGTB','0\x204px\x208px\x20','moveTo','3|0|1|2|4','mouseup','ZzQYr','.messages','success','draw','kxSHN','KGvEo','connect_er','UUTzS','audio-play','0|3|4','transition','qrJqZ','KQrxK','You\x20are\x20cu','timeout','connect','IfoHs','ainer','rgba(0,\x200,','xlAqE','hsgSq','fpWsL','mited','nection\x20ha','gGbyq','w-version','textConten','EBhld','vWBTL','div','XNQqH','4044OsRTqx','ZVlmt','JjiKW','AoLkp','1|5|2|0|3|','e:\x20normal;','getElement','Jtzmt','vas','\x20auto;','trim','odIJI','LCicp','pause','SjcSW','mousedown','yzPqS','qKZaf','9izFecw','XDksj','welcome','getDate','LKrlb','jpGmm','hstDx','VDdcF','EObyU','s\x20been\x20res','ArrowLeft','JpbGD','IHVUn','BtDac','cntLn','htRmL','tored','none','announceme','bZswb','Dvbiy','scale(0.08','DIOiI','IDqFE','VZPQq','connect_ti','drawLimit','PjfkG','clientY','querySelec','lineTo','wmXqx','OOXZY','setDate','clientX','SJzKG','TJERA','cookie','bjNiT','meout','connectedC','doSkm','1956nTwgnn','emit','gGePo','buttons','hidden','fadedown','click','xnOyP','7641016uZYgmO','rjkMW','white-spac','acmYg','tor','translate(','nection\x20Ti','clearRect','pong','TYhIM','height','UIYGd','keydown','flex','iNqEU','ArrowRight','version','hpSLW','nvQow','flXle','HcLvw','zsusB','JnMBs','Size:\x20','KNkuZ','VSQYM','[id=\x22conne','lients','fadeup','stroke','createElem','data','5196310ekYBcy','jVBTz','innerHTML','MBwPH','rxyLw','gepgO','rgyoe','GTFwr','PFZnF','src','ById','stop','QFVwm','title','mousemove','sIRho','ping','Connected\x20','PiCNG','rKpGs','gJUWW','top','add','connection','deup\x20','EUzfu','jTWYg','Version:\x20','300px','TDHRg','message\x20fa','zksJZ','QYfYv','Server\x20Con','nVmHI','5|2|7|1|6|','#000000','gazAM','push','\x200,\x200.1)','Server\x20con','WFDUG','gSHdQ','parse','DCdNG','vzCKL','MUztG','class','margin:\x2025','ySFjB','remove','play','setAttribu','ault','0px,\x200px)','length','px)','rlOYc','rTCEk','LlhzE','scale(','dGASI','EfvCw','en\x20rate\x20li','beginPath','canvasCont','split','ZpwfB','sNdtC','round','drawingCan','dataSize','strokeStyl','FZPar','torAll','hxloN','type','aQmeU','QPMWH','HdFYb','lisVi','KGtzu','738ArXpQC','NjpAl','aRIpf','appendChil','KlwcM','visible','yEKkF','KwSJj','meout:\x20','oGtUs','XVmpF','ecjvr','LQfZh','Tchwr','dOMDg','HOoPR','ZSZAL','drawings','OjaJt','boxShadow','color','sTFrN','tWoRH','zBfhb','mONul','display','deup\x20green','imageSmoot','XBVRf','resetView','4520mOctee',';\x20expires=','ktzTE','AfYAP','amJqV','ror','bEmWY','NvGCj','ction\x22]','key','KZrsT','oCelI','stener','down','XYTHv','2629655WYIdeS','RAXIw','AvtYx','bkqWv','getAttribu','2463hLiQit','px,\x20','deup\x20red','true','existingDr','sHWnd','right','gClientRec','vZXPl','preventDef','SVkQr'];_0xbd80=function(){return _0x4277b8;};return _0xbd80();}context[_0x2c7fc4(0x23e)+_0x2c7fc4(0x2b4)+'d']=!![],canvasContainer[_0x2c7fc4(0x2b5)][_0x2c7fc4(0x270)]=_0x2c7fc4(0x194)+')';function getCookie(_0x47583e){const _0x32e5cc=_0x2c7fc4,_0x44f6e4={'iflAb':function(_0xfef8e5,_0x500244){return _0xfef8e5===_0x500244;}},_0x49e562=document[_0x32e5cc(0x1a4)][_0x32e5cc(0x213)](';')[_0x32e5cc(0x2a2)](_0x1da0aa=>_0x1da0aa[_0x32e5cc(0x177)]());for(const _0x4d84ae of _0x49e562){const [_0x5d2833,_0x7ecd34]=_0x4d84ae[_0x32e5cc(0x213)]('=')[_0x32e5cc(0x2a2)](_0x15953a=>decodeURIComponent(_0x15953a));if(_0x44f6e4[_0x32e5cc(0x28d)](_0x5d2833,_0x47583e))return _0x7ecd34;}return null;}function setCookie(_0x1f18e7,_0x1dcac1,_0x2d5f33){const _0x123fba=_0x2c7fc4,_0x2fe9e5={'EObyU':function(_0x2d41fe,_0x3797bc){return _0x2d41fe+_0x3797bc;},'ySFjB':function(_0x3bbd26,_0x563b4f){return _0x3bbd26(_0x563b4f);}},_0x3054f9=new Date();_0x3054f9[_0x123fba(0x1a0)](_0x2fe9e5[_0x123fba(0x187)](_0x3054f9[_0x123fba(0x182)](),_0x2d5f33));const _0x81b199=_0x2fe9e5[_0x123fba(0x187)](_0x2fe9e5[_0x123fba(0x202)](encodeURIComponent,_0x1dcac1),_0x2d5f33?_0x123fba(0x242)+_0x3054f9[_0x123fba(0x2af)+'g']():'');document[_0x123fba(0x1a4)]=_0x1f18e7+'='+_0x81b199+_0x123fba(0x2b2);}function pinger(){const _0x25f248=_0x2c7fc4,_0x405661={'Dvbiy':function(_0x5f12f1,_0x2ff123){return _0x5f12f1-_0x2ff123;},'iNqEU':function(_0x203c4e,_0x480570){return _0x203c4e+_0x480570;},'FZPar':_0x25f248(0x275),'OvUwT':_0x25f248(0x1e1),'ZzQYr':_0x25f248(0x1b9)},_0x2b3f1e=Date[_0x25f248(0x2a1)](),_0x36ebbb=document[_0x25f248(0x173)+_0x25f248(0x1db)](_0x405661[_0x25f248(0x264)])[_0x25f248(0x19c)+_0x25f248(0x1b5)]('p');socket['on'](_0x405661[_0x25f248(0x2bd)],()=>{const _0x4e6bb1=_0x25f248,_0x125963=_0x405661[_0x4e6bb1(0x193)](Date[_0x4e6bb1(0x2a1)](),_0x2b3f1e);_0x36ebbb[_0x4e6bb1(0x168)+'t']=_0x405661[_0x4e6bb1(0x1bf)](_0x405661[_0x4e6bb1(0x1bf)](_0x405661[_0x4e6bb1(0x21a)],_0x125963),'ms'),document[_0x4e6bb1(0x173)+_0x4e6bb1(0x1db)](_0x405661[_0x4e6bb1(0x264)])[_0x4e6bb1(0x2b5)][_0x4e6bb1(0x265)]=-0x3*-0x45d+0x1bf6+-0x1*0x290d+0.25;}),socket[_0x25f248(0x1aa)](_0x405661[_0x25f248(0x264)]);}ping=setInterval(pinger,0x7a*-0x3d+-0x207+0x57*0x67);function startConnectionTimer(){const _0x4c4c74=_0x2c7fc4,_0x113265={'oGtUs':_0x4c4c74(0x2cb),'ktzTE':function(_0x17a2d5,_0x337d4c){return _0x17a2d5+_0x337d4c;},'LfvpN':_0x4c4c74(0x1f2)+_0x4c4c74(0x1b7)+_0x4c4c74(0x22b),'yEKkF':_0x4c4c74(0x2be),'bjNiT':function(_0x16aebe,_0xd3a44){return _0x16aebe>_0xd3a44;},'cUXCC':_0x4c4c74(0x1cb)+_0x4c4c74(0x249),'HdFYb':function(_0x12343b,_0x24e4eb){return _0x12343b(_0x24e4eb);},'KGvEo':_0x4c4c74(0x16b),'QFVwm':_0x4c4c74(0x200),'LlhzE':_0x4c4c74(0x1ef)+_0x4c4c74(0x257),'xnOyP':_0x4c4c74(0x1e8),'nVmHI':_0x4c4c74(0x2b9)+_0x4c4c74(0x2cf)+_0x4c4c74(0x1f8),'PFZnF':_0x4c4c74(0x1ed),'yzPqS':_0x4c4c74(0x2b5),'QPMWH':_0x4c4c74(0x1b3)+_0x4c4c74(0x272)+_0x4c4c74(0x201)+_0x4c4c74(0x263)+_0x4c4c74(0x285),'MBwPH':function(_0x1fb3b3,_0x496737){return _0x1fb3b3+_0x496737;},'vzCKL':_0x4c4c74(0x1ae),'VRJLp':function(_0x24c335){return _0x24c335();},'zsusB':function(_0x2a6151,_0x182e68,_0x3ee10b){return _0x2a6151(_0x182e68,_0x3ee10b);}},_0x2dda3a=document[_0x4c4c74(0x19c)+_0x4c4c74(0x1b5)](_0x113265[_0x4c4c74(0x229)]);if(_0x113265[_0x4c4c74(0x1a5)](_0x2dda3a[_0x4c4c74(0x19c)+_0x4c4c74(0x21b)](_0x113265[_0x4c4c74(0x297)])[_0x4c4c74(0x208)],0xc34*-0x1+0x19ff+0x141*-0xb))return;_0x113265[_0x4c4c74(0x220)](clearInterval,ping);const _0x2b7087=document[_0x4c4c74(0x1cf)+_0x4c4c74(0x26b)](_0x113265[_0x4c4c74(0x2c2)]);_0x2b7087[_0x4c4c74(0x205)+'te'](_0x113265[_0x4c4c74(0x1dd)],_0x113265[_0x4c4c74(0x20c)]),_0x2b7087[_0x4c4c74(0x205)+'te']('id',_0x113265[_0x4c4c74(0x1b0)]),_0x2b7087[_0x4c4c74(0x2b5)][_0x4c4c74(0x236)]=_0x113265[_0x4c4c74(0x1f3)],_0x2b7087[_0x4c4c74(0x2b5)][_0x4c4c74(0x281)]=_0x113265[_0x4c4c74(0x1d9)];const _0x3cdbd9=document[_0x4c4c74(0x1cf)+_0x4c4c74(0x26b)]('p');_0x3cdbd9[_0x4c4c74(0x205)+'te']('id',_0x113265[_0x4c4c74(0x22c)]),_0x3cdbd9[_0x4c4c74(0x205)+'te'](_0x113265[_0x4c4c74(0x17d)],_0x113265[_0x4c4c74(0x21f)]),_0x3cdbd9[_0x4c4c74(0x168)+'t']=_0x113265[_0x4c4c74(0x1d4)](_0x113265[_0x4c4c74(0x271)],connectionSeconds[_0x4c4c74(0x260)](0x21*0x105+-0x5f0*-0x2+-0xc*0x3cb)),_0x2b7087[_0x4c4c74(0x226)+'d'](_0x3cdbd9),_0x2dda3a[_0x4c4c74(0x226)+'d'](_0x2b7087),canvas[_0x4c4c74(0x2b5)][_0x4c4c74(0x265)]=0x249e+0x3*-0x7cf+-0x1*0xd31,buttons[_0x4c4c74(0x2b5)][_0x4c4c74(0x265)]=-0x4*0x83f+0x81d+0x18df,canvas[_0x4c4c74(0x296)][_0x4c4c74(0x1e7)](_0x113265[_0x4c4c74(0x1fe)]),drawings=[],currentDrawing=[],_0x113265[_0x4c4c74(0x2ad)](draw),connectionTimer=_0x113265[_0x4c4c74(0x1c6)](setInterval,()=>{const _0x4a01b5=_0x4c4c74;connectionSeconds+=0x257c+-0x959*-0x3+-0x4187+0.1,document[_0x4a01b5(0x173)+_0x4a01b5(0x1db)](_0x113265[_0x4a01b5(0x22c)])[_0x4a01b5(0x168)+'t']=_0x113265[_0x4a01b5(0x243)](_0x113265[_0x4a01b5(0x271)],connectionSeconds[_0x4a01b5(0x260)](-0x3*0xae7+-0x33*0x76+-0x1c*-0x202));},-0x266f*0x1+0xb90+0x1b43);}function stopConnectionTimer(){const _0x5b4a18=_0x2c7fc4,_0x27b858={'rOHnv':_0x5b4a18(0x1cd),'ZpwfB':_0x5b4a18(0x1ae),'NTEyZ':function(_0x3570f9,_0x3a87e1,_0x25914e){return _0x3570f9(_0x3a87e1,_0x25914e);},'YtkIP':function(_0x4eccc4,_0x5c70f6,_0x1c071b){return _0x4eccc4(_0x5c70f6,_0x1c071b);},'JnMBs':function(_0x302d04,_0x52161c){return _0x302d04(_0x52161c);},'XBVRf':function(_0x430591,_0x31142b,_0x3b6f4c){return _0x430591(_0x31142b,_0x3b6f4c);},'kxSHN':_0x5b4a18(0x2be),'rxyLw':_0x5b4a18(0x1cb)+_0x5b4a18(0x249),'IDqFE':_0x5b4a18(0x16b),'LKrlb':_0x5b4a18(0x200),'zdjDc':_0x5b4a18(0x1ef)+_0x5b4a18(0x23d),'RAXIw':_0x5b4a18(0x2bf),'HOoPR':_0x5b4a18(0x2b9)+_0x5b4a18(0x2cf)+_0x5b4a18(0x1f8),'htRmL':_0x5b4a18(0x2b5),'HcLvw':_0x5b4a18(0x292)+_0x5b4a18(0x176),'sHWnd':_0x5b4a18(0x2cb),'SJzKG':_0x5b4a18(0x1b3)+_0x5b4a18(0x272)+_0x5b4a18(0x201)+_0x5b4a18(0x263)+_0x5b4a18(0x285),'DCdNG':_0x5b4a18(0x1f9)+_0x5b4a18(0x2d4)+_0x5b4a18(0x188)+_0x5b4a18(0x18f)};_0x27b858[_0x5b4a18(0x1c7)](clearInterval,connectionTimer),ping=_0x27b858[_0x5b4a18(0x23f)](setInterval,pinger,0x1*-0xd2a+0x2217*-0x1+0x3329),connectionSeconds=-0x3f*0x4c+-0xe7b+0x1*0x212f;const _0x3f0e14=document[_0x5b4a18(0x19c)+_0x5b4a18(0x1b5)](_0x27b858[_0x5b4a18(0x2c1)]);_0x3f0e14[_0x5b4a18(0x19c)+_0x5b4a18(0x21b)](_0x27b858[_0x5b4a18(0x1d5)])[_0x5b4a18(0x29c)](_0x14e4f4=>{const _0x3d9c71=_0x5b4a18;_0x14e4f4[_0x3d9c71(0x296)][_0x3d9c71(0x203)](_0x27b858[_0x3d9c71(0x291)]),_0x14e4f4[_0x3d9c71(0x296)][_0x3d9c71(0x1e7)](_0x27b858[_0x3d9c71(0x214)]),_0x27b858[_0x3d9c71(0x288)](setTimeout,()=>{const _0x3de5ba=_0x3d9c71;_0x14e4f4[_0x3de5ba(0x203)]();},0xadd+-0x187*0x11+0x2*0x887);});const _0x21a5fc=document[_0x5b4a18(0x1cf)+_0x5b4a18(0x26b)](_0x27b858[_0x5b4a18(0x196)]);_0x21a5fc[_0x5b4a18(0x205)+'te'](_0x27b858[_0x5b4a18(0x183)],_0x27b858[_0x5b4a18(0x28f)]),_0x21a5fc[_0x5b4a18(0x205)+'te']('id',_0x27b858[_0x5b4a18(0x251)]),_0x21a5fc[_0x5b4a18(0x2b5)][_0x5b4a18(0x236)]=_0x27b858[_0x5b4a18(0x232)],_0x21a5fc[_0x5b4a18(0x205)+'te'](_0x27b858[_0x5b4a18(0x18e)],_0x27b858[_0x5b4a18(0x1c5)]);const _0x3057e3=document[_0x5b4a18(0x1cf)+_0x5b4a18(0x26b)]('p');_0x3057e3[_0x5b4a18(0x205)+'te']('id',_0x27b858[_0x5b4a18(0x25a)]),_0x3057e3[_0x5b4a18(0x205)+'te'](_0x27b858[_0x5b4a18(0x18e)],_0x27b858[_0x5b4a18(0x1a2)]),_0x3057e3[_0x5b4a18(0x168)+'t']=_0x27b858[_0x5b4a18(0x1fd)],_0x21a5fc[_0x5b4a18(0x226)+'d'](_0x3057e3),_0x3f0e14[_0x5b4a18(0x226)+'d'](_0x21a5fc),canvas[_0x5b4a18(0x2b5)][_0x5b4a18(0x265)]=-0x49*0x63+0x1cbf+-0x83,buttons[_0x5b4a18(0x2b5)][_0x5b4a18(0x265)]=-0x162f+0xf3d+0x6f3,canvas[_0x5b4a18(0x296)][_0x5b4a18(0x203)](_0x27b858[_0x5b4a18(0x214)]),canvas[_0x5b4a18(0x296)][_0x5b4a18(0x1e7)](_0x27b858[_0x5b4a18(0x291)]);const _0x30b8de=document[_0x5b4a18(0x173)+_0x5b4a18(0x1db)](_0x27b858[_0x5b4a18(0x251)]);_0x27b858[_0x5b4a18(0x288)](setTimeout,()=>{const _0x3b4220=_0x5b4a18;_0x30b8de[_0x3b4220(0x296)][_0x3b4220(0x203)](_0x27b858[_0x3b4220(0x291)]),_0x30b8de[_0x3b4220(0x296)][_0x3b4220(0x1e7)](_0x27b858[_0x3b4220(0x214)]),_0x27b858[_0x3b4220(0x2aa)](setTimeout,()=>{const _0x167622=_0x3b4220;_0x30b8de[_0x167622(0x203)]();},-0x2*0x2c4+0x2*-0xa97+0x1caa);},0x1*0x961+0x1c64+-0x1c01);}socket['on'](_0x2c7fc4(0x2cc),()=>{const _0x2f04e3=_0x2c7fc4,_0x3fa2b6={'XglEh':function(_0x5ac10a,_0x5efab3){return _0x5ac10a!=_0x5efab3;},'cntLn':function(_0x53a3b4){return _0x53a3b4();}};_0x3fa2b6[_0x2f04e3(0x27b)](connectionSeconds,-0x3*0x7c3+-0x490+0x1bd9*0x1)&&_0x3fa2b6[_0x2f04e3(0x18d)](stopConnectionTimer);}),socket['on'](_0x2c7fc4(0x2c3)+_0x2c7fc4(0x246),()=>{const _0xa0213d=_0x2c7fc4,_0x335abc={'DIOiI':function(_0x3c7494){return _0x3c7494();}};_0x335abc[_0xa0213d(0x195)](startConnectionTimer);}),socket['on'](_0x2c7fc4(0x198)+_0x2c7fc4(0x1a6),()=>{const _0x3984a3=_0x2c7fc4,_0x3c8d6e={'KlOTi':function(_0x1831a0){return _0x1831a0();}};_0x3c8d6e[_0x3984a3(0x276)](startConnectionTimer);});function toggleOP(){const _0x1dfb9e=_0x2c7fc4,_0x184166={'BtDac':_0x1dfb9e(0x1f4)+_0x1dfb9e(0x2c6),'jTWYg':_0x1dfb9e(0x1c1),'AoLkp':_0x1dfb9e(0x190),'wmXqx':_0x1dfb9e(0x1e1),'IfoHs':_0x1dfb9e(0x1d0),'KNkuZ':_0x1dfb9e(0x1a7)+_0x1dfb9e(0x1cc),'sIRho':_0x1dfb9e(0x240)},_0x30a17a=_0x184166[_0x1dfb9e(0x18c)][_0x1dfb9e(0x213)]('|');let _0x28ee80=-0x8c4+-0x69*-0x13+-0x53*-0x3;while(!![]){switch(_0x30a17a[_0x28ee80++]){case'0':document[_0x1dfb9e(0x173)+_0x1dfb9e(0x1db)](_0x184166[_0x1dfb9e(0x1eb)])[_0x1dfb9e(0x2b5)][_0x1dfb9e(0x23c)]=uiVisible?'':_0x184166[_0x1dfb9e(0x170)];continue;case'1':document[_0x1dfb9e(0x173)+_0x1dfb9e(0x1db)]('xy')[_0x1dfb9e(0x2b5)][_0x1dfb9e(0x23c)]=uiVisible?'':_0x184166[_0x1dfb9e(0x170)];continue;case'2':buttons[_0x1dfb9e(0x2b5)][_0x1dfb9e(0x23c)]=uiVisible?'':_0x184166[_0x1dfb9e(0x170)];continue;case'3':document[_0x1dfb9e(0x173)+_0x1dfb9e(0x1db)](_0x184166[_0x1dfb9e(0x19e)])[_0x1dfb9e(0x2b5)][_0x1dfb9e(0x23c)]=uiVisible?'':_0x184166[_0x1dfb9e(0x170)];continue;case'4':document[_0x1dfb9e(0x173)+_0x1dfb9e(0x1db)](_0x184166[_0x1dfb9e(0x2cd)])[_0x1dfb9e(0x2b5)][_0x1dfb9e(0x23c)]=uiVisible?'':_0x184166[_0x1dfb9e(0x170)];continue;case'5':uiVisible=!uiVisible;continue;case'6':document[_0x1dfb9e(0x173)+_0x1dfb9e(0x1db)](_0x184166[_0x1dfb9e(0x1c9)])[_0x1dfb9e(0x2b5)][_0x1dfb9e(0x23c)]=uiVisible?'':_0x184166[_0x1dfb9e(0x170)];continue;case'7':document[_0x1dfb9e(0x173)+_0x1dfb9e(0x1db)](_0x184166[_0x1dfb9e(0x1e0)])[_0x1dfb9e(0x2b5)][_0x1dfb9e(0x23c)]=uiVisible?'':_0x184166[_0x1dfb9e(0x170)];continue;}break;}}function _0x3cf4(_0x3cfa58,_0xc6e9cd){const _0x26d9d9=_0xbd80();return _0x3cf4=function(_0x406265,_0x31be3e){_0x406265=_0x406265-(-0x19b3+-0x4*0x35b+0x2885*0x1);let _0x517261=_0x26d9d9[_0x406265];return _0x517261;},_0x3cf4(_0x3cfa58,_0xc6e9cd);}function resetView(){const _0x42f486=_0x2c7fc4,_0x368b90={'LQfZh':_0x42f486(0x2bb)},_0x1cbe74=_0x368b90[_0x42f486(0x22f)][_0x42f486(0x213)]('|');let _0x1ba5c8=0xc0b*0x1+0xd3*-0xf+-0x52*-0x1;while(!![]){switch(_0x1cbe74[_0x1ba5c8++]){case'0':canvas[_0x42f486(0x2b5)][_0x42f486(0x270)]=_0x42f486(0x1b6)+_0x42f486(0x207);continue;case'1':zoomLevel=0xaf3+0x2*-0xb5d+0xbc7+0.08;continue;case'2':offsetX=0x1811+-0x15*0x12+-0x1697;continue;case'3':canvasContainer[_0x42f486(0x2b5)][_0x42f486(0x270)]=_0x42f486(0x194)+')';continue;case'4':offsetY=-0x1455+-0x1523+0x2978*0x1;continue;}break;}}function changeColor(_0x364650){const _0x33347e=_0x2c7fc4;currentColor=_0x364650[_0x33347e(0x2b7)][_0x33347e(0x2ac)];}document[_0x2c7fc4(0x273)+_0x2c7fc4(0x24d)](_0x2c7fc4(0x2bc),()=>{isDrawing=![];}),canvas[_0x2c7fc4(0x273)+_0x2c7fc4(0x24d)](_0x2c7fc4(0x293),()=>{isDrawing=![];}),canvas[_0x2c7fc4(0x273)+_0x2c7fc4(0x24d)](_0x2c7fc4(0x17c),_0x357692=>{const _0x3f6449=_0x2c7fc4,_0x106e3c={'LCicp':function(_0x218697,_0x41a269){return _0x218697(_0x41a269);}};isDrawing=!![],_0x106e3c[_0x3f6449(0x179)](addPoint,_0x357692);}),canvas[_0x2c7fc4(0x273)+_0x2c7fc4(0x24d)](_0x2c7fc4(0x1df),_0x50e690=>{const _0x1c5b06=_0x2c7fc4,_0x393eef={'JjiKW':function(_0x30c6c5,_0x37734c){return _0x30c6c5/_0x37734c;},'gGePo':function(_0x2f8c7a,_0x5e21ac){return _0x2f8c7a/_0x5e21ac;},'fpWsL':function(_0x3fcaf5,_0x441964){return _0x3fcaf5*_0x441964;},'AdOqM':function(_0x59a170,_0x35010e){return _0x59a170-_0x35010e;},'Fapws':function(_0x212655,_0x1cd65c){return _0x212655-_0x1cd65c;},'QcpOo':function(_0x144675,_0x4881f9){return _0x144675(_0x4881f9);},'vZXPl':_0x1c5b06(0x2c0)},_0x5015f9=canvas[_0x1c5b06(0x29f)+_0x1c5b06(0x25c)+'t'](),_0x241b52=_0x393eef[_0x1c5b06(0x16f)](canvas[_0x1c5b06(0x281)],_0x5015f9[_0x1c5b06(0x281)]),_0x2c6038=_0x393eef[_0x1c5b06(0x1ab)](canvas[_0x1c5b06(0x1bb)],_0x5015f9[_0x1c5b06(0x1bb)]),_0x4d0490=Math[_0x1c5b06(0x216)](_0x393eef[_0x1c5b06(0x2d2)](_0x393eef[_0x1c5b06(0x2a5)](_0x50e690[_0x1c5b06(0x1a1)],_0x5015f9[_0x1c5b06(0x29a)]),_0x241b52)),_0x2e5a60=Math[_0x1c5b06(0x216)](_0x393eef[_0x1c5b06(0x2d2)](_0x393eef[_0x1c5b06(0x28e)](_0x50e690[_0x1c5b06(0x19b)],_0x5015f9[_0x1c5b06(0x1e6)]),_0x2c6038));tx[_0x1c5b06(0x1d3)]=_0x4d0490,ty[_0x1c5b06(0x1d3)]=_0x2e5a60,isDrawing&&(_0x393eef[_0x1c5b06(0x261)](addPoint,_0x50e690),socket[_0x1c5b06(0x1aa)](_0x393eef[_0x1c5b06(0x25d)],{'type':_0x393eef[_0x1c5b06(0x25d)],'points':currentDrawing,'valid':!![]}));}),canvas[_0x2c7fc4(0x273)+_0x2c7fc4(0x24d)](_0x2c7fc4(0x2bc),()=>{const _0x1537b5=_0x2c7fc4,_0x430449={'IIRHi':function(_0x3ca580,_0x3fc984){return _0x3ca580>_0x3fc984;},'odIJI':_0x1537b5(0x2c0),'dRGTB':function(_0x5e2748){return _0x5e2748();}};isDrawing=![],_0x430449[_0x1537b5(0x280)](currentDrawing[_0x1537b5(0x208)],0x10b3+0x697*0x5+-0x18d3*0x2)&&(socket[_0x1537b5(0x1aa)](_0x430449[_0x1537b5(0x178)],{'type':_0x430449[_0x1537b5(0x178)],'drawing':currentDrawing,'valid':!![]}),drawings[_0x1537b5(0x1f7)](currentDrawing),_0x430449[_0x1537b5(0x2b8)](draw),currentDrawing=[]);}),document[_0x2c7fc4(0x273)+_0x2c7fc4(0x24d)](_0x2c7fc4(0x1bd),function(_0x2e475f){const _0x43c0f8=_0x2c7fc4,_0x2abbc9={'rKpGs':function(_0x21ddf7,_0x102efd){return _0x21ddf7===_0x102efd;},'zBfhb':_0x43c0f8(0x289),'ecjvr':function(_0x13a348,_0x562088){return _0x13a348(_0x562088);},'IHVUn':_0x43c0f8(0x26c),'dOMDg':_0x43c0f8(0x24e),'hstDx':_0x43c0f8(0x189),'OrhKY':function(_0x68fbe4,_0x559602){return _0x68fbe4(_0x559602);},'zksJZ':_0x43c0f8(0x29a),'hsgSq':_0x43c0f8(0x1c0),'jpGmm':function(_0x2144cc,_0x1211c1){return _0x2144cc(_0x1211c1);},'bZswb':_0x43c0f8(0x25b)};if(_0x2abbc9[_0x43c0f8(0x1e4)](_0x2e475f[_0x43c0f8(0x24a)],_0x2abbc9[_0x43c0f8(0x23a)]))_0x2abbc9[_0x43c0f8(0x22e)](pan,'up');else{if(_0x2abbc9[_0x43c0f8(0x1e4)](_0x2e475f[_0x43c0f8(0x24a)],_0x2abbc9[_0x43c0f8(0x18b)]))_0x2abbc9[_0x43c0f8(0x22e)](pan,_0x2abbc9[_0x43c0f8(0x231)]);else{if(_0x2abbc9[_0x43c0f8(0x1e4)](_0x2e475f[_0x43c0f8(0x24a)],_0x2abbc9[_0x43c0f8(0x185)]))_0x2abbc9[_0x43c0f8(0x262)](pan,_0x2abbc9[_0x43c0f8(0x1f0)]);else _0x2abbc9[_0x43c0f8(0x1e4)](_0x2e475f[_0x43c0f8(0x24a)],_0x2abbc9[_0x43c0f8(0x2d1)])&&_0x2abbc9[_0x43c0f8(0x184)](pan,_0x2abbc9[_0x43c0f8(0x192)]);}}});function addPoint(_0x4d3a0a){const _0x3a9fee=_0x2c7fc4,_0x117407={'VZPQq':function(_0x5adafb,_0x4424be){return _0x5adafb/_0x4424be;},'MUztG':function(_0x84078d,_0x4bbeba){return _0x84078d/_0x4bbeba;},'nvQow':function(_0x115628,_0x356950){return _0x115628*_0x356950;},'SVkQr':function(_0x271556,_0x50df9f){return _0x271556-_0x50df9f;},'KGtzu':function(_0x246e5e,_0x3edc4b){return _0x246e5e*_0x3edc4b;},'jpkSR':function(_0x37a752,_0x21cd02){return _0x37a752-_0x21cd02;},'FGzpZ':function(_0x4c870f){return _0x4c870f();}};if(!isDrawing)return;const _0xeff682=canvas[_0x3a9fee(0x29f)+_0x3a9fee(0x25c)+'t'](),_0x5d4e9c=_0x117407[_0x3a9fee(0x197)](canvas[_0x3a9fee(0x281)],_0xeff682[_0x3a9fee(0x281)]),_0x335bc4=_0x117407[_0x3a9fee(0x1ff)](canvas[_0x3a9fee(0x1bb)],_0xeff682[_0x3a9fee(0x1bb)]),_0x59a6d8=_0x117407[_0x3a9fee(0x1c3)](_0x117407[_0x3a9fee(0x25f)](_0x4d3a0a[_0x3a9fee(0x1a1)],_0xeff682[_0x3a9fee(0x29a)]),_0x5d4e9c),_0x255961=_0x117407[_0x3a9fee(0x222)](_0x117407[_0x3a9fee(0x266)](_0x4d3a0a[_0x3a9fee(0x19b)],_0xeff682[_0x3a9fee(0x1e6)]),_0x335bc4);currentDrawing[_0x3a9fee(0x1f7)]({'x':Math[_0x3a9fee(0x216)](_0x59a6d8),'y':Math[_0x3a9fee(0x216)](_0x255961),'color':currentColor}),_0x117407[_0x3a9fee(0x29e)](draw);}function draw(){const _0x5c025e=_0x2c7fc4,_0x23630e={'rctDW':function(_0x181a18,_0x30df93){return _0x181a18<_0x30df93;},'aTRRD':function(_0x2059d3,_0x4befad){return _0x2059d3-_0x4befad;},'LjgkY':function(_0x3390ac,_0x99d6e2){return _0x3390ac>_0x99d6e2;}};context[_0x5c025e(0x1b8)](-0x25f+-0x1da5*-0x1+0x2*-0xda3,0x1e9a+-0xb41*0x3+0x329,canvas[_0x5c025e(0x281)],canvas[_0x5c025e(0x1bb)]);for(const _0x349d2c of drawings){if(_0x23630e[_0x5c025e(0x279)](_0x349d2c[_0x5c025e(0x208)],0x1*-0x800+-0xb75+0x67d*0x3))continue;for(let _0x337922=-0x1c40+0x1a2b+0x216;_0x23630e[_0x5c025e(0x279)](_0x337922,_0x349d2c[_0x5c025e(0x208)]);_0x337922++){const _0x16e51f=_0x349d2c[_0x23630e[_0x5c025e(0x26e)](_0x337922,0xe5*0x22+-0x5*-0x5e6+-0x3be7)],_0x3e8eb9=_0x349d2c[_0x337922];context[_0x5c025e(0x211)](),context[_0x5c025e(0x219)+'e']=_0x16e51f[_0x5c025e(0x237)],context[_0x5c025e(0x2ba)](Math[_0x5c025e(0x216)](_0x16e51f['x']),Math[_0x5c025e(0x216)](_0x16e51f['y'])),context[_0x5c025e(0x19d)](Math[_0x5c025e(0x216)](_0x3e8eb9['x']),Math[_0x5c025e(0x216)](_0x3e8eb9['y'])),context[_0x5c025e(0x1ce)]();}}context[_0x5c025e(0x1ce)]();if(_0x23630e[_0x5c025e(0x298)](currentDrawing[_0x5c025e(0x208)],0x218*-0x5+-0x252b+0x2fa3)){context[_0x5c025e(0x211)](),context[_0x5c025e(0x219)+'e']=currentColor,context[_0x5c025e(0x2ba)](Math[_0x5c025e(0x216)](currentDrawing[-0x4*0x812+0x2547+-0x4ff]['x']),Math[_0x5c025e(0x216)](currentDrawing[0x140f+0xabd+-0x1ecc]['y']));for(let _0x255db2=0x19e*-0xb+-0x776+0x1941;_0x23630e[_0x5c025e(0x279)](_0x255db2,currentDrawing[_0x5c025e(0x208)]);_0x255db2++){const _0x2a01e6=currentDrawing[_0x255db2];context[_0x5c025e(0x19d)](Math[_0x5c025e(0x216)](_0x2a01e6['x']),Math[_0x5c025e(0x216)](_0x2a01e6['y']));}context[_0x5c025e(0x1ce)]();}}socket['on'](_0x2c7fc4(0x218),_0x33b787=>{const _0x1a6524=_0x2c7fc4,_0x18516c={'UIYGd':_0x1a6524(0x1d0),'Qrhil':function(_0x38145c,_0x34549e){return _0x38145c+_0x34549e;},'oCelI':function(_0x369676,_0x26cca7){return _0x369676+_0x26cca7;},'doSkm':_0x1a6524(0x1c8)};document[_0x1a6524(0x173)+_0x1a6524(0x1db)](_0x18516c[_0x1a6524(0x1bc)])[_0x1a6524(0x19c)+_0x1a6524(0x1b5)]('p')[_0x1a6524(0x168)+'t']=_0x18516c[_0x1a6524(0x2b3)](_0x18516c[_0x1a6524(0x24c)](_0x18516c[_0x1a6524(0x1a8)],_0x33b787[_0x1a6524(0x295)]),'MB'),document[_0x1a6524(0x173)+_0x1a6524(0x1db)](_0x18516c[_0x1a6524(0x1bc)])[_0x1a6524(0x2b5)][_0x1a6524(0x265)]=-0x5*-0x7d+-0x2d1*-0x7+0x4*-0x58a+0.25;}),socket['on'](_0x2c7fc4(0x199),_0x4fd9c9=>{const _0x59b68a=_0x2c7fc4,_0x4ba876={'rTCEk':_0x59b68a(0x190),'XDksj':function(_0x39cdcd,_0x3ac002){return _0x39cdcd-_0x3ac002;},'XNQqH':_0x59b68a(0x1cd),'dGASI':_0x59b68a(0x1ae),'AfcGS':function(_0x490f16,_0x4304ce,_0x1ed12a){return _0x490f16(_0x4304ce,_0x1ed12a);},'jpTvU':_0x59b68a(0x2be),'hxloN':_0x59b68a(0x16b),'AfYAP':_0x59b68a(0x200),'NGEvZ':_0x59b68a(0x1ef)+_0x59b68a(0x257),'rlOYc':_0x59b68a(0x2b9)+_0x59b68a(0x2cf)+_0x59b68a(0x1f8),'gSHdQ':_0x59b68a(0x2b5),'Tchwr':_0x59b68a(0x1b3)+_0x59b68a(0x172)+_0x59b68a(0x201)+_0x59b68a(0x263)+_0x59b68a(0x285),'qKZaf':_0x59b68a(0x2ca)+_0x59b68a(0x29b)+_0x59b68a(0x210)+_0x59b68a(0x2d3)},_0x52893a=document[_0x59b68a(0x19c)+_0x59b68a(0x1b5)](_0x4ba876[_0x59b68a(0x2a4)]),_0x79d568=document[_0x59b68a(0x1cf)+_0x59b68a(0x26b)](_0x4ba876[_0x59b68a(0x21c)]);_0x79d568[_0x59b68a(0x205)+'te'](_0x4ba876[_0x59b68a(0x244)],_0x4ba876[_0x59b68a(0x269)]),_0x79d568[_0x59b68a(0x205)+'te']('id',announceCount),_0x79d568[_0x59b68a(0x2b5)][_0x59b68a(0x236)]=_0x4ba876[_0x59b68a(0x20a)];const _0xf077a9=document[_0x59b68a(0x1cf)+_0x59b68a(0x26b)]('p');_0xf077a9[_0x59b68a(0x205)+'te'](_0x4ba876[_0x59b68a(0x1fb)],_0x4ba876[_0x59b68a(0x230)]),_0xf077a9[_0x59b68a(0x168)+'t']=_0x4ba876[_0x59b68a(0x17e)],_0x79d568[_0x59b68a(0x226)+'d'](_0xf077a9),_0x52893a[_0x59b68a(0x226)+'d'](_0x79d568),announceCount++,announcementIDs[_0x59b68a(0x1f7)](_0x4ba876[_0x59b68a(0x180)](announceCount,-0xdbc+0x1ac2+-0xd05)),_0x4ba876[_0x59b68a(0x2b6)](setTimeout,()=>{const _0x916f2f=_0x59b68a,_0x369196={'aRIpf':_0x4ba876[_0x916f2f(0x20b)]},_0x3cb6ca=document[_0x916f2f(0x173)+_0x916f2f(0x1db)](_0x4ba876[_0x916f2f(0x180)](announceCount,-0xd*0x15d+-0x555+0x1*0x170f));_0x3cb6ca[_0x916f2f(0x296)][_0x916f2f(0x203)](_0x4ba876[_0x916f2f(0x16c)]),_0x3cb6ca[_0x916f2f(0x296)][_0x916f2f(0x1e7)](_0x4ba876[_0x916f2f(0x20e)]),_0x4ba876[_0x916f2f(0x2b6)](setTimeout,()=>{const _0x1884f6=_0x916f2f;_0x3cb6ca[_0x1884f6(0x2b5)][_0x1884f6(0x23c)]=_0x369196[_0x1884f6(0x225)],_0x3cb6ca[_0x1884f6(0x203)]();},0x100d+-0x2402+0x15e9*0x1);},-0x1e59+-0x199e+-0x4d*-0xfb);}),socket['on'](_0x2c7fc4(0x204),_0x17d55b=>{const _0x145fdd=_0x2c7fc4,_0x1f5da1={'KlwcM':function(_0x4a6107,_0x4a6771){return _0x4a6107!=_0x4a6771;},'ZVlmt':_0x145fdd(0x1dc),'KQrxK':_0x145fdd(0x2c5)+'er'};_0x1f5da1[_0x145fdd(0x227)](_0x17d55b[_0x145fdd(0x28c)],_0x1f5da1[_0x145fdd(0x16e)])?(document[_0x145fdd(0x173)+_0x145fdd(0x1db)](_0x1f5da1[_0x145fdd(0x2c9)])[_0x145fdd(0x1da)]=_0x17d55b[_0x145fdd(0x28c)],document[_0x145fdd(0x173)+_0x145fdd(0x1db)](_0x1f5da1[_0x145fdd(0x2c9)])[_0x145fdd(0x204)]()):document[_0x145fdd(0x173)+_0x145fdd(0x1db)](_0x1f5da1[_0x145fdd(0x2c9)])[_0x145fdd(0x17a)]();}),socket['on'](_0x2c7fc4(0x191)+'nt',_0xc0e867=>{const _0x1b5da5=_0x2c7fc4,_0x42f230={'NvGCj':_0x1b5da5(0x190),'EfvCw':function(_0x3db193,_0x290bd0){return _0x3db193-_0x290bd0;},'pStOP':_0x1b5da5(0x1cd),'flXle':_0x1b5da5(0x1ae),'XVmpF':function(_0x155069,_0x1c1a3f,_0x13a505){return _0x155069(_0x1c1a3f,_0x13a505);},'qrJqZ':_0x1b5da5(0x2be),'rjkMW':_0x1b5da5(0x16b),'lisVi':_0x1b5da5(0x200),'acmYg':function(_0x2f2b79,_0x37013a){return _0x2f2b79+_0x37013a;},'mONul':_0x1b5da5(0x1ef)+_0x1b5da5(0x1e9),'SjcSW':_0x1b5da5(0x2b9)+_0x1b5da5(0x2cf)+_0x1b5da5(0x1f8),'PiCNG':_0x1b5da5(0x2b5),'KwSJj':_0x1b5da5(0x1b3)+_0x1b5da5(0x172)+_0x1b5da5(0x201)+_0x1b5da5(0x263)+_0x1b5da5(0x285)};if(_0xc0e867[_0x1b5da5(0x26a)]&&_0xc0e867[_0x1b5da5(0x237)]){const _0x3b0414=_0xc0e867[_0x1b5da5(0x26a)],_0x5a8e92=document[_0x1b5da5(0x19c)+_0x1b5da5(0x1b5)](_0x42f230[_0x1b5da5(0x2c8)]),_0x36cd3c=document[_0x1b5da5(0x1cf)+_0x1b5da5(0x26b)](_0x42f230[_0x1b5da5(0x1b2)]);_0x36cd3c[_0x1b5da5(0x205)+'te'](_0x42f230[_0x1b5da5(0x221)],_0x42f230[_0x1b5da5(0x1b4)](_0x42f230[_0x1b5da5(0x23b)],_0xc0e867[_0x1b5da5(0x237)])),_0x36cd3c[_0x1b5da5(0x205)+'te']('id',announceCount),_0x36cd3c[_0x1b5da5(0x2b5)][_0x1b5da5(0x236)]=_0x42f230[_0x1b5da5(0x17b)];const _0x5e293b=document[_0x1b5da5(0x1cf)+_0x1b5da5(0x26b)]('p');_0x5e293b[_0x1b5da5(0x205)+'te'](_0x42f230[_0x1b5da5(0x1e3)],_0x42f230[_0x1b5da5(0x22a)]),_0x5e293b[_0x1b5da5(0x168)+'t']=_0x3b0414,_0x36cd3c[_0x1b5da5(0x226)+'d'](_0x5e293b),_0x5a8e92[_0x1b5da5(0x226)+'d'](_0x36cd3c),announceCount++,announcementIDs[_0x1b5da5(0x1f7)](_0x42f230[_0x1b5da5(0x20f)](announceCount,0x5*0x349+0x19bf+-0x2a2b)),_0x42f230[_0x1b5da5(0x22d)](setTimeout,()=>{const _0x2ff37b=_0x1b5da5,_0x3b1010={'TDHRg':_0x42f230[_0x2ff37b(0x248)]},_0x471313=document[_0x2ff37b(0x173)+_0x2ff37b(0x1db)](_0x42f230[_0x2ff37b(0x20f)](announceCount,-0x574*0x1+-0x1937+0x1eac));_0x471313[_0x2ff37b(0x296)][_0x2ff37b(0x203)](_0x42f230[_0x2ff37b(0x27a)]),_0x471313[_0x2ff37b(0x296)][_0x2ff37b(0x1e7)](_0x42f230[_0x2ff37b(0x1c4)]),_0x42f230[_0x2ff37b(0x22d)](setTimeout,()=>{const _0x3c6dd4=_0x2ff37b;_0x471313[_0x3c6dd4(0x2b5)][_0x3c6dd4(0x23c)]=_0x3b1010[_0x3c6dd4(0x1ee)],_0x471313[_0x3c6dd4(0x203)]();},-0x24fb+0x1630+0x10bf*0x1);},0xe81*-0x1+0x16f*0x13+0x6cc);}});function hideMessages(){const _0x2fcbc4=_0x2c7fc4,_0x4a109b={'VSQYM':function(_0x3eca5e,_0x59404a){return _0x3eca5e!=_0x59404a;},'jHJYc':_0x2fcbc4(0x1e8),'InjCm':_0x2fcbc4(0x1ae),'NjpAl':_0x2fcbc4(0x190),'OOXZY':_0x2fcbc4(0x2be),'rgyoe':_0x2fcbc4(0x16b),'XYTHv':function(_0x4a6d4e,_0x41b756){return _0x4a6d4e>_0x41b756;},'tWoRH':function(_0x38cae9,_0x372de2,_0x2a1087){return _0x38cae9(_0x372de2,_0x2a1087);}},_0x155331=document[_0x2fcbc4(0x19c)+_0x2fcbc4(0x1b5)](_0x4a109b[_0x2fcbc4(0x19f)]);if(_0x155331){const _0xa9d4f9=_0x155331[_0x2fcbc4(0x19c)+_0x2fcbc4(0x21b)](_0x4a109b[_0x2fcbc4(0x1d7)]);_0x4a109b[_0x2fcbc4(0x24f)](_0xa9d4f9[_0x2fcbc4(0x208)],-0x8*0x320+-0x2474+0x1*0x3d75)&&(_0xa9d4f9[_0x2fcbc4(0x29c)](_0xc1f180=>{const _0x53b9b9=_0x2fcbc4;_0x4a109b[_0x53b9b9(0x1ca)](_0xc1f180[_0x53b9b9(0x254)+'te']('id'),_0x4a109b[_0x53b9b9(0x2a9)])&&_0xc1f180[_0x53b9b9(0x296)][_0x53b9b9(0x1e7)](_0x4a109b[_0x53b9b9(0x282)]);}),_0x4a109b[_0x2fcbc4(0x239)](setTimeout,()=>{const _0x596cf1=_0x2fcbc4,_0x10d72d={'sTFrN':function(_0x48d383,_0x32537a){const _0x3d0d6f=_0x3cf4;return _0x4a109b[_0x3d0d6f(0x1ca)](_0x48d383,_0x32537a);},'qbHCL':_0x4a109b[_0x596cf1(0x2a9)],'rivDA':_0x4a109b[_0x596cf1(0x224)]};_0xa9d4f9[_0x596cf1(0x29c)](_0x337d20=>{const _0xb94b87=_0x596cf1;_0x10d72d[_0xb94b87(0x238)](_0x337d20[_0xb94b87(0x254)+'te']('id'),_0x10d72d[_0xb94b87(0x2b1)])&&(_0x337d20[_0xb94b87(0x2b5)][_0xb94b87(0x23c)]=_0x10d72d[_0xb94b87(0x268)],_0x337d20[_0xb94b87(0x203)]());});},-0x3e8*0xa+0x1*0x22be+0x16*0x49));}}setInterval(hideMessages,-0xfc4+0x19e7+0x965),socket['on'](_0x2c7fc4(0x1a7)+_0x2c7fc4(0x1cc),_0x4b6a5f=>{const _0x11fa3a=_0x2c7fc4,_0x56ca76={'EBhld':_0x11fa3a(0x286),'xlAqE':_0x11fa3a(0x1a7)+_0x11fa3a(0x1cc)};document[_0x11fa3a(0x173)+_0x11fa3a(0x1db)](_0x56ca76[_0x11fa3a(0x169)])[_0x11fa3a(0x168)+'t']=_0x11fa3a(0x1e2)+_0x11fa3a(0x278)+_0x4b6a5f,document[_0x11fa3a(0x173)+_0x11fa3a(0x1db)](_0x56ca76[_0x11fa3a(0x2d0)])[_0x11fa3a(0x2b5)][_0x11fa3a(0x265)]=0x917+0x2698+-0x2faf+0.25;}),socket['on'](_0x2c7fc4(0x28a),_0x1c65b1=>{const _0x1921be=_0x2c7fc4;location[_0x1921be(0x28a)](!![]);}),socket['on'](_0x2c7fc4(0x1c1),_0xa66f38=>{const _0x36f98a=_0x2c7fc4,_0x400334={'UUTzS':_0x36f98a(0x2ae),'JpbGD':_0x36f98a(0x1c1),'tQjya':_0x36f98a(0x167),'sNdtC':function(_0x1d0c0e,_0xec5d9e){return _0x1d0c0e+_0xec5d9e;},'cvHqz':_0x36f98a(0x28b),'TJERA':_0x36f98a(0x1ec)},_0x3c71f4=_0x400334[_0x36f98a(0x2c4)][_0x36f98a(0x213)]('|');let _0x76f451=-0x4*-0x2f+0x19b3+-0x1a6f;while(!![]){switch(_0x3c71f4[_0x76f451++]){case'0':document[_0x36f98a(0x173)+_0x36f98a(0x1db)](_0x400334[_0x36f98a(0x18a)])[_0x36f98a(0x2b5)][_0x36f98a(0x265)]=-0xe72*0x1+-0x9c*0x3a+0x31ca+0.25;continue;case'1':document[_0x36f98a(0x173)+_0x36f98a(0x1db)](_0x400334[_0x36f98a(0x287)])[_0x36f98a(0x168)+'t']=_0x400334[_0x36f98a(0x215)](_0x400334[_0x36f98a(0x2b0)],_0xa66f38);continue;case'2':document[_0x36f98a(0x1de)]=_0x400334[_0x36f98a(0x215)](_0x400334[_0x36f98a(0x2b0)],_0xa66f38);continue;case'3':versionSet=!![];continue;case'4':document[_0x36f98a(0x173)+_0x36f98a(0x1db)](_0x400334[_0x36f98a(0x18a)])[_0x36f98a(0x19c)+_0x36f98a(0x1b5)]('p')[_0x36f98a(0x168)+'t']=_0x400334[_0x36f98a(0x215)](_0x400334[_0x36f98a(0x1a3)],_0xa66f38);continue;}break;}}),socket['on'](_0x2c7fc4(0x2c0),_0x24fab0=>{const _0x22c088=_0x2c7fc4,_0x4d3a5a={'GSlol':_0x22c088(0x190),'gJUWW':_0x22c088(0x16b),'XIclS':_0x22c088(0x1cd),'TYhIM':_0x22c088(0x1ae),'QYfYv':function(_0x5080b0,_0x17941e,_0x5aced5){return _0x5080b0(_0x17941e,_0x5aced5);},'jVBTz':function(_0x352b06,_0x12db3d){return _0x352b06===_0x12db3d;},'lSTZx':_0x22c088(0x2c0),'bEmWY':function(_0x16f3d7){return _0x16f3d7();},'HgdVF':function(_0x43a5f0,_0x2a79d4){return _0x43a5f0===_0x2a79d4;},'vKFmL':_0x22c088(0x259)+_0x22c088(0x277),'gepgO':_0x22c088(0x2c7),'pEyip':_0x22c088(0x1ad),'bkqWv':_0x22c088(0x228),'ZSZAL':function(_0x2e75e7,_0x193fd9){return _0x2e75e7(_0x193fd9);},'OjaJt':_0x22c088(0x29d),'GTFwr':_0x22c088(0x171)+'4','xWson':_0x22c088(0x181),'VDdcF':function(_0x2b1fd6,_0x441553,_0x31c809,_0x22b6f2){return _0x2b1fd6(_0x441553,_0x31c809,_0x22b6f2);},'gazAM':_0x22c088(0x258),'Jtzmt':_0x22c088(0x299),'PjfkG':_0x22c088(0x1af),'gGbyq':_0x22c088(0x1be)};if(_0x4d3a5a[_0x22c088(0x1d2)](_0x24fab0[_0x22c088(0x21d)],_0x4d3a5a[_0x22c088(0x2a7)])&&_0x24fab0[_0x22c088(0x2a0)])drawings[_0x22c088(0x1f7)](_0x24fab0[_0x22c088(0x2a0)]),_0x4d3a5a[_0x22c088(0x247)](draw);else{if(_0x4d3a5a[_0x22c088(0x274)](_0x24fab0[_0x22c088(0x21d)],_0x4d3a5a[_0x22c088(0x284)])&&_0x24fab0[_0x22c088(0x234)]){const _0x5bb7ca=JSON[_0x22c088(0x1fc)](_0x24fab0[_0x22c088(0x234)]);drawings[_0x22c088(0x1f7)](..._0x5bb7ca),_0x4d3a5a[_0x22c088(0x247)](draw),document[_0x22c088(0x173)+_0x22c088(0x1db)](_0x4d3a5a[_0x22c088(0x1d6)])[_0x22c088(0x2b5)][_0x22c088(0x265)]=-0x1338+-0x1c0+0x2ff*0x7,document[_0x22c088(0x173)+_0x22c088(0x1db)](_0x4d3a5a[_0x22c088(0x1d6)])[_0x22c088(0x2b5)][_0x22c088(0x290)]=_0x4d3a5a[_0x22c088(0x27e)],canvas[_0x22c088(0x2b5)][_0x22c088(0x265)]=0x5c5+0x71+-0x635,canvas[_0x22c088(0x2b5)][_0x22c088(0x290)]=_0x4d3a5a[_0x22c088(0x253)],buttons[_0x22c088(0x2b5)][_0x22c088(0x265)]=0xde*0x5+-0x1c55+-0x800*-0x3;if(!_0x4d3a5a[_0x22c088(0x233)](getCookie,_0x4d3a5a[_0x22c088(0x235)])){const _0x26eba3=_0x4d3a5a[_0x22c088(0x1d8)][_0x22c088(0x213)]('|');let _0x7a283c=-0x8ff+-0x1f65+0x2864;while(!![]){switch(_0x26eba3[_0x7a283c++]){case'0':_0x50a544[_0x22c088(0x19c)+_0x22c088(0x1b5)](_0x4d3a5a[_0x22c088(0x1e5)])[_0x22c088(0x296)][_0x22c088(0x1e7)](_0x4d3a5a[_0x22c088(0x26d)]);continue;case'1':var _0x50a544=document[_0x22c088(0x173)+_0x22c088(0x1db)](_0x4d3a5a[_0x22c088(0x294)]);continue;case'2':_0x50a544[_0x22c088(0x2b5)][_0x22c088(0x265)]=-0x1*0xf31+-0x53d+0x146f;continue;case'3':_0x4d3a5a[_0x22c088(0x186)](setCookie,_0x4d3a5a[_0x22c088(0x235)],_0x4d3a5a[_0x22c088(0x1f6)],0x5f*-0x37+0x41d*0x9+-0xd*0x12b);continue;case'4':document[_0x22c088(0x173)+_0x22c088(0x1db)](_0x4d3a5a[_0x22c088(0x174)])[_0x22c088(0x273)+_0x22c088(0x24d)](_0x4d3a5a[_0x22c088(0x19a)],_0x28f349=>{const _0x18fb38=_0x22c088;_0x50a544[_0x18fb38(0x2b5)][_0x18fb38(0x265)]=0x19ff+-0x2417*-0x1+0xa59*-0x6,_0x50a544[_0x18fb38(0x19c)+_0x18fb38(0x1b5)](_0x4d3a5a[_0x18fb38(0x1e5)])[_0x18fb38(0x296)][_0x18fb38(0x203)](_0x4d3a5a[_0x18fb38(0x26d)]),_0x50a544[_0x18fb38(0x19c)+_0x18fb38(0x1b5)](_0x4d3a5a[_0x18fb38(0x1e5)])[_0x18fb38(0x296)][_0x18fb38(0x1e7)](_0x4d3a5a[_0x18fb38(0x1ba)]),_0x4d3a5a[_0x18fb38(0x1f1)](setTimeout,()=>{const _0x5bf520=_0x18fb38;_0x50a544[_0x5bf520(0x2b5)][_0x5bf520(0x23c)]=_0x4d3a5a[_0x5bf520(0x27c)];},-0x193f+0x18a*-0xd+0x5*0x971);});continue;case'5':_0x50a544[_0x22c088(0x2b5)][_0x22c088(0x23c)]=_0x4d3a5a[_0x22c088(0x166)];continue;}break;}}}}});let zoomLevel=-0x6f5+0x2e*-0xa+0x8c1+0.08;const zoomFactor=0x1a5a+-0x1362+-0x6f8+0.1;let offsetX=-0xddd+-0x1*0xab5+-0x22*-0xb9,offsetY=0x1*-0x137+-0xf3a+0x1071;function pan(_0x51427e){const _0x51220c=_0x2c7fc4,_0x18a83d={'hpSLW':_0x51220c(0x29a),'gtzww':_0x51220c(0x25b),'EUzfu':_0x51220c(0x24e),'AvtYx':function(_0x189dff){return _0x189dff();}},_0x2dcc2a=-0x1e84+-0x1cb8+0x3b64;switch(_0x51427e){case _0x18a83d[_0x51220c(0x1c2)]:offsetX+=_0x2dcc2a;break;case _0x18a83d[_0x51220c(0x267)]:offsetX-=_0x2dcc2a;break;case'up':offsetY+=_0x2dcc2a;break;case _0x18a83d[_0x51220c(0x1ea)]:offsetY-=_0x2dcc2a;break;default:break;}_0x18a83d[_0x51220c(0x252)](updateCanvasContainerPosition);}function updateCanvasContainerPosition(){const _0x47be05=_0x2c7fc4,_0x51a618={'vWBTL':function(_0x53ec49,_0x450d9c){return _0x53ec49==_0x450d9c;}};_0x51a618[_0x47be05(0x16a)](zoomLevel,0x87a+-0x7c3+0x3d*-0x3+0.08)?(canvas[_0x47be05(0x2b5)][_0x47be05(0x270)]=_0x47be05(0x207),offsetX=-0x1fea+-0x23f9+-0x9*-0x78b,offsetY=0x1bbd*-0x1+0x45a*0x5+0x5fb):canvas[_0x47be05(0x2b5)][_0x47be05(0x270)]=_0x47be05(0x1b6)+offsetX+_0x47be05(0x256)+offsetY+_0x47be05(0x209);}canvasContainer[_0x2c7fc4(0x273)+_0x2c7fc4(0x24d)](_0x2c7fc4(0x2ab),_0x3f5e9b=>{const _0x233d1b=_0x2c7fc4,_0x2c7d91={'WFDUG':function(_0x22ca02,_0x1c5a49){return _0x22ca02>_0x1c5a49;},'dUpfd':function(_0x4f0044,_0x36b827){return _0x4f0044+_0x36b827;},'amJqV':function(_0x4047d1,_0x146570){return _0x4047d1*_0x146570;},'aQmeU':function(_0x284588,_0x32c9d6){return _0x284588<_0x32c9d6;},'QWtBq':function(_0x19c230){return _0x19c230();},'KZrsT':function(_0x5df33f,_0x3d18e8){return _0x5df33f>_0x3d18e8;}};_0x3f5e9b[_0x233d1b(0x25e)+_0x233d1b(0x206)]();const _0x48f8a2=_0x2c7d91[_0x233d1b(0x1fa)](_0x3f5e9b[_0x233d1b(0x2a3)],-0x8*0x20c+-0x1d*-0x86+0x132)?-(-0x287*-0x7+0xbea*0x1+-0x1a5*0x12):0x1fb3+-0x1d86+-0x8b*0x4,_0xf9ebfa=_0x2c7d91[_0x233d1b(0x26f)](-0x12cf+-0x971+0x96b*0x3,_0x2c7d91[_0x233d1b(0x245)](_0x48f8a2,zoomFactor));zoomLevel*=_0xf9ebfa;_0x2c7d91[_0x233d1b(0x21e)](zoomLevel,-0x1*-0xcdb+0x7*-0x28e+0x507+0.08)&&(zoomLevel=0x1*-0x977+0x1876+-0xeff+0.08,canvas[_0x233d1b(0x2b5)][_0x233d1b(0x270)]=_0x233d1b(0x1b6)+_0x233d1b(0x207),_0x2c7d91[_0x233d1b(0x2a8)](updateCanvasContainerPosition));if(_0x2c7d91[_0x233d1b(0x24b)](zoomLevel,0x8f3+0xd1+-0x9b0*0x1))zoomLevel=0x3b*-0x8b+0x6a7*-0x1+-0x4*-0x9b1;canvasContainer[_0x233d1b(0x2b5)][_0x233d1b(0x270)]=_0x233d1b(0x20d)+zoomLevel+')';});
\ No newline at end of file
diff --git a/public/static/js/main-UujD4m-2.js b/public/static/js/main-UujD4m-2.js
new file mode 100644
index 0000000..c5cdf9e
--- /dev/null
+++ b/public/static/js/main-UujD4m-2.js
@@ -0,0 +1 @@
+const _0x40f116=_0x5877;(function(_0x29f56b,_0x41e31d){const _0xd8e95b=_0x5877,_0xc9a9ed=_0x29f56b();while(!![]){try{const _0xbf95cb=parseInt(_0xd8e95b(0x255))/(-0x11e8+-0x25fc+0x37e5)+-parseInt(_0xd8e95b(0x189))/(-0x88c+0xa5a+-0x1cc)+parseInt(_0xd8e95b(0x231))/(0x230e+0x3*-0x7d7+-0x32*0x3b)+parseInt(_0xd8e95b(0x245))/(-0x13*-0x1cd+-0x100f*0x2+-0x215)*(-parseInt(_0xd8e95b(0x144))/(0x1f*0x8f+-0x1dde*0x1+0xc92))+parseInt(_0xd8e95b(0x1bd))/(-0x1d42+0x234*0x2+-0x18e*-0x10)+-parseInt(_0xd8e95b(0x1f4))/(0xe2e+-0x1d0+0x1*-0xc57)*(-parseInt(_0xd8e95b(0x1e2))/(0x43*0x34+0x35b*0xb+-0x327d))+parseInt(_0xd8e95b(0x18d))/(-0x1171*-0x1+-0x2008+-0x1a*-0x90)*(-parseInt(_0xd8e95b(0x215))/(-0x129a+-0x1*0x1d2f+0x35*0xe7));if(_0xbf95cb===_0x41e31d)break;else _0xc9a9ed['push'](_0xc9a9ed['shift']());}catch(_0x2eb393){_0xc9a9ed['push'](_0xc9a9ed['shift']());}}}(_0x468c,-0x22*0xc4f+-0x78652*0x1+0xf5d49));const socket=io({'timeout':0x1f4}),canvas=document[_0x40f116(0x1ba)+_0x40f116(0x14e)](_0x40f116(0x207)+_0x40f116(0x216)),canvasContainer=document[_0x40f116(0x1ba)+_0x40f116(0x14e)](_0x40f116(0x1bc)+_0x40f116(0x23a)),buttons=document[_0x40f116(0x1ba)+_0x40f116(0x14e)](_0x40f116(0x172)),tx=document[_0x40f116(0x1ba)+_0x40f116(0x14e)]('x'),ty=document[_0x40f116(0x1ba)+_0x40f116(0x14e)]('y'),context=canvas[_0x40f116(0x16e)]('2d'),drawingEmitDelay=-0x2c0+0xc56+-0x7a2;let lastDrawingEmitTime=0x1f*0x2d+-0x797*0x4+-0x38f*-0x7,drawings=[],announcementIDs=[],currentDrawing=[],isDrawing=![],uiVisible=!![],currentColor=_0x40f116(0x1da),announceCount=0x2083+-0x11ec+-0x2*0x74b,connectionTimer=null,connectionSeconds=0x1012+0x416+0x6*-0x35c,versionSet=![],ping=null,uuid='';context[_0x40f116(0x1b3)+_0x40f116(0x224)+'d']=!![],canvasContainer[_0x40f116(0x19b)][_0x40f116(0x130)]=_0x40f116(0x1d5)+')';function getCookie(_0x4c1547){const _0x204a7c=_0x40f116,_0xfa810c={'KDqIb':function(_0x50a145,_0x266fed){return _0x50a145===_0x266fed;}},_0x463715=document[_0x204a7c(0x1d2)][_0x204a7c(0x27d)](';')[_0x204a7c(0x23e)](_0x5dcf3d=>_0x5dcf3d[_0x204a7c(0x16d)]());for(const _0x11fee1 of _0x463715){const [_0x47595a,_0x4cf5b9]=_0x11fee1[_0x204a7c(0x27d)]('=')[_0x204a7c(0x23e)](_0x46b712=>decodeURIComponent(_0x46b712));if(_0xfa810c[_0x204a7c(0x243)](_0x47595a,_0x4c1547))return _0x4cf5b9;}return null;}function setCookie(_0xdcb464,_0x6fa02d,_0x3d0290){const _0x342ba5=_0x40f116,_0x55c94f={'UjMqf':function(_0xf4230,_0x3ffb1a){return _0xf4230+_0x3ffb1a;},'EuGQE':function(_0x864fc7,_0x43ee9d){return _0x864fc7(_0x43ee9d);}},_0x4141b5=new Date();_0x4141b5[_0x342ba5(0x278)](_0x55c94f[_0x342ba5(0x261)](_0x4141b5[_0x342ba5(0x229)](),_0x3d0290));const _0x5cec9c=_0x55c94f[_0x342ba5(0x261)](_0x55c94f[_0x342ba5(0x167)](encodeURIComponent,_0x6fa02d),_0x3d0290?_0x342ba5(0x1f8)+_0x4141b5[_0x342ba5(0x19e)+'g']():'');document[_0x342ba5(0x1d2)]=_0xdcb464+'='+_0x5cec9c+_0x342ba5(0x1d0);}function pinger(){const _0x7907b=_0x40f116,_0x2f9cc4={'tWAyl':function(_0x4ba711,_0x1374d8){return _0x4ba711-_0x1374d8;},'AEaBB':function(_0x48ae93,_0x164fae){return _0x48ae93+_0x164fae;},'EqOaX':function(_0x53af1a,_0x3d000a){return _0x53af1a+_0x3d000a;},'LhipR':_0x7907b(0x25c),'SwVcb':_0x7907b(0x141),'evAxz':_0x7907b(0x24f)},_0x5a2cc0=Date[_0x7907b(0x24e)](),_0x370926=document[_0x7907b(0x1ba)+_0x7907b(0x14e)](_0x2f9cc4[_0x7907b(0x254)])[_0x7907b(0x1b2)+_0x7907b(0x159)]('p');socket['on'](_0x2f9cc4[_0x7907b(0x225)],()=>{const _0x49e583=_0x7907b,_0x2af780=_0x2f9cc4[_0x49e583(0x21f)](Date[_0x49e583(0x24e)](),_0x5a2cc0);_0x370926[_0x49e583(0x135)+'t']=_0x2f9cc4[_0x49e583(0x1f7)](_0x2f9cc4[_0x49e583(0x15f)](_0x2f9cc4[_0x49e583(0x27e)],_0x2af780),'ms'),document[_0x49e583(0x1ba)+_0x49e583(0x14e)](_0x2f9cc4[_0x49e583(0x254)])[_0x49e583(0x19b)][_0x49e583(0x15c)]=-0xa07*0x1+-0x1*-0x1fc+0x80b+0.25;}),socket[_0x7907b(0x240)](_0x2f9cc4[_0x7907b(0x254)]);}ping=setInterval(pinger,-0x1d59+0xd*0xc5+0x1*0x1740);function startConnectionTimer(){const _0x1e62b2=_0x40f116,_0x48119f={'DOUXJ':_0x1e62b2(0x1c9),'iwcoV':function(_0x1f1b12,_0x26137d){return _0x1f1b12+_0x26137d;},'MLHbo':_0x1e62b2(0x24c)+_0x1e62b2(0x147)+_0x1e62b2(0x1db),'Usrmc':_0x1e62b2(0x1de),'fAJpW':function(_0x560541,_0x26b109){return _0x560541>_0x26b109;},'AVwjS':_0x1e62b2(0x221)+_0x1e62b2(0x264),'ruBfC':function(_0x78d274,_0x2fa53d){return _0x78d274(_0x2fa53d);},'BZRIH':_0x1e62b2(0x230),'CSSsf':_0x1e62b2(0x25b),'efVnu':_0x1e62b2(0x1cd)+_0x1e62b2(0x228),'qogFf':_0x1e62b2(0x14f),'lOomk':_0x1e62b2(0x182)+_0x1e62b2(0x176)+_0x1e62b2(0x20d),'zOQNT':_0x1e62b2(0x175),'zozHY':_0x1e62b2(0x19b),'byQto':_0x1e62b2(0x24b)+_0x1e62b2(0x1d4)+_0x1e62b2(0x187)+_0x1e62b2(0x26d)+_0x1e62b2(0x22a),'jwKwG':function(_0xfd2a64,_0x1c4ac0){return _0xfd2a64+_0x1c4ac0;},'MLHHI':_0x1e62b2(0x1e7),'TVjzH':function(_0x5cf69b){return _0x5cf69b();},'HcSpk':function(_0x388bd5,_0x54d524,_0x4d3a8e){return _0x388bd5(_0x54d524,_0x4d3a8e);}},_0x132264=document[_0x1e62b2(0x1b2)+_0x1e62b2(0x159)](_0x48119f[_0x1e62b2(0x201)]);if(_0x48119f[_0x1e62b2(0x174)](_0x132264[_0x1e62b2(0x1b2)+_0x1e62b2(0x1f0)](_0x48119f[_0x1e62b2(0x1b8)])[_0x1e62b2(0x1ad)],-0x1*-0x2333+-0x1de6+-0x54d))return;_0x48119f[_0x1e62b2(0x1fd)](clearInterval,ping);const _0x352872=document[_0x1e62b2(0x1c5)+_0x1e62b2(0x136)](_0x48119f[_0x1e62b2(0x26b)]);_0x352872[_0x1e62b2(0x148)+'te'](_0x48119f[_0x1e62b2(0x1c6)],_0x48119f[_0x1e62b2(0x25d)]),_0x352872[_0x1e62b2(0x148)+'te']('id',_0x48119f[_0x1e62b2(0x193)]),_0x352872[_0x1e62b2(0x19b)][_0x1e62b2(0x168)]=_0x48119f[_0x1e62b2(0x1e9)],_0x352872[_0x1e62b2(0x19b)][_0x1e62b2(0x1fa)]=_0x48119f[_0x1e62b2(0x146)];const _0x3b826c=document[_0x1e62b2(0x1c5)+_0x1e62b2(0x136)]('p');_0x3b826c[_0x1e62b2(0x148)+'te']('id',_0x48119f[_0x1e62b2(0x17e)]),_0x3b826c[_0x1e62b2(0x148)+'te'](_0x48119f[_0x1e62b2(0x269)],_0x48119f[_0x1e62b2(0x21b)]),_0x3b826c[_0x1e62b2(0x135)+'t']=_0x48119f[_0x1e62b2(0x1ff)](_0x48119f[_0x1e62b2(0x13b)],connectionSeconds[_0x1e62b2(0x1fe)](-0x5*-0x180+-0x1abb+-0x4cf*-0x4)),_0x352872[_0x1e62b2(0x1f5)+'d'](_0x3b826c),_0x132264[_0x1e62b2(0x1f5)+'d'](_0x352872),canvas[_0x1e62b2(0x19b)][_0x1e62b2(0x15c)]=0x943+-0x25e7+0x1ca4,buttons[_0x1e62b2(0x19b)][_0x1e62b2(0x15c)]=-0x1*0x1e39+-0x12d*-0xa+-0x1*-0x1277,canvas[_0x1e62b2(0x156)][_0x1e62b2(0x12d)](_0x48119f[_0x1e62b2(0x1f3)]),drawings=[],currentDrawing=[],_0x48119f[_0x1e62b2(0x142)](draw),connectionTimer=_0x48119f[_0x1e62b2(0x1e8)](setInterval,()=>{const _0x168aba=_0x1e62b2;connectionSeconds+=0x1ac*-0x9+0x7*-0x3cd+-0x29a7*-0x1+0.1,document[_0x168aba(0x1ba)+_0x168aba(0x14e)](_0x48119f[_0x168aba(0x17e)])[_0x168aba(0x135)+'t']=_0x48119f[_0x168aba(0x192)](_0x48119f[_0x168aba(0x13b)],connectionSeconds[_0x168aba(0x1fe)](0x1b5a*-0x1+0xddb*-0x2+0x3711));},-0x590*-0x6+0x1d09+-0x3e05*0x1);}function stopConnectionTimer(){const _0x11bd26=_0x40f116,_0x358146={'LaUXl':_0x11bd26(0x1e3),'xpkat':_0x11bd26(0x1e7),'UTyvF':function(_0x56500c,_0x4aecd8,_0x510590){return _0x56500c(_0x4aecd8,_0x510590);},'hjHfq':function(_0x3c72cd,_0xec5f1b,_0x5cd087){return _0x3c72cd(_0xec5f1b,_0x5cd087);},'aOgaq':function(_0x51f774,_0x276918){return _0x51f774(_0x276918);},'IzNPE':function(_0x31f66d,_0x56565e,_0x50c10c){return _0x31f66d(_0x56565e,_0x50c10c);},'vCbiQ':_0x11bd26(0x1de),'VHpae':_0x11bd26(0x221)+_0x11bd26(0x264),'nJjeW':_0x11bd26(0x230),'EEOUb':_0x11bd26(0x25b),'llADt':_0x11bd26(0x1cd)+_0x11bd26(0x1b7),'XKIDM':_0x11bd26(0x1b5),'zURLs':_0x11bd26(0x182)+_0x11bd26(0x176)+_0x11bd26(0x20d),'XeGvr':_0x11bd26(0x19b),'nQNey':_0x11bd26(0x132)+_0x11bd26(0x1b4),'VxtJb':_0x11bd26(0x1c9),'lHhgF':_0x11bd26(0x24b)+_0x11bd26(0x1d4)+_0x11bd26(0x187)+_0x11bd26(0x26d)+_0x11bd26(0x22a),'UgadT':_0x11bd26(0x21c)+_0x11bd26(0x1f6)+_0x11bd26(0x15a)+_0x11bd26(0x134)};_0x358146[_0x11bd26(0x251)](clearInterval,connectionTimer),ping=_0x358146[_0x11bd26(0x256)](setInterval,pinger,-0xe*0x1c9+0x2ed+-0x6d*-0x3d),connectionSeconds=-0x1*0x95f+0x281*0xb+-0x122c;const _0x3f2763=document[_0x11bd26(0x1b2)+_0x11bd26(0x159)](_0x358146[_0x11bd26(0x263)]);_0x3f2763[_0x11bd26(0x1b2)+_0x11bd26(0x1f0)](_0x358146[_0x11bd26(0x1e4)])[_0x11bd26(0x236)](_0x4ed0b8=>{const _0x5642e6=_0x11bd26;_0x4ed0b8[_0x5642e6(0x156)][_0x5642e6(0x185)](_0x358146[_0x5642e6(0x203)]),_0x4ed0b8[_0x5642e6(0x156)][_0x5642e6(0x12d)](_0x358146[_0x5642e6(0x17f)]),_0x358146[_0x5642e6(0x253)](setTimeout,()=>{const _0x5518af=_0x5642e6;_0x4ed0b8[_0x5518af(0x185)]();},0x1*0x1a6f+-0x26f*0x1+-0x160c);});const _0x90f979=document[_0x11bd26(0x1c5)+_0x11bd26(0x136)](_0x358146[_0x11bd26(0x27b)]);_0x90f979[_0x11bd26(0x148)+'te'](_0x358146[_0x11bd26(0x153)],_0x358146[_0x11bd26(0x23b)]),_0x90f979[_0x11bd26(0x148)+'te']('id',_0x358146[_0x11bd26(0x1dd)]),_0x90f979[_0x11bd26(0x19b)][_0x11bd26(0x168)]=_0x358146[_0x11bd26(0x1c3)],_0x90f979[_0x11bd26(0x148)+'te'](_0x358146[_0x11bd26(0x1cb)],_0x358146[_0x11bd26(0x190)]);const _0x37b347=document[_0x11bd26(0x1c5)+_0x11bd26(0x136)]('p');_0x37b347[_0x11bd26(0x148)+'te']('id',_0x358146[_0x11bd26(0x1b1)]),_0x37b347[_0x11bd26(0x148)+'te'](_0x358146[_0x11bd26(0x1cb)],_0x358146[_0x11bd26(0x171)]),_0x37b347[_0x11bd26(0x135)+'t']=_0x358146[_0x11bd26(0x1a7)],_0x90f979[_0x11bd26(0x1f5)+'d'](_0x37b347),_0x3f2763[_0x11bd26(0x1f5)+'d'](_0x90f979),canvas[_0x11bd26(0x19b)][_0x11bd26(0x15c)]=0x1*-0x1cf5+-0x2026+0x4*0xf47,buttons[_0x11bd26(0x19b)][_0x11bd26(0x15c)]=-0xb96+-0x145*-0xc+0x3a5*-0x1,canvas[_0x11bd26(0x156)][_0x11bd26(0x185)](_0x358146[_0x11bd26(0x17f)]),canvas[_0x11bd26(0x156)][_0x11bd26(0x12d)](_0x358146[_0x11bd26(0x203)]);const _0x3d7283=document[_0x11bd26(0x1ba)+_0x11bd26(0x14e)](_0x358146[_0x11bd26(0x1dd)]);_0x358146[_0x11bd26(0x256)](setTimeout,()=>{const _0x2f57ea=_0x11bd26;_0x3d7283[_0x2f57ea(0x156)][_0x2f57ea(0x185)](_0x358146[_0x2f57ea(0x203)]),_0x3d7283[_0x2f57ea(0x156)][_0x2f57ea(0x12d)](_0x358146[_0x2f57ea(0x17f)]),_0x358146[_0x2f57ea(0x214)](setTimeout,()=>{const _0x2e8a37=_0x2f57ea;_0x3d7283[_0x2e8a37(0x185)]();},-0x4*-0x606+-0x22*-0xf9+-0x3736);},0x410+0x1*0x1cc3+0x170f*-0x1);}socket['on'](_0x40f116(0x16a),()=>{const _0x11f13e=_0x40f116,_0x3d3fd7={'ommFY':function(_0x246fd2,_0xb87c59){return _0x246fd2!=_0xb87c59;},'nrjIq':function(_0x434bb8){return _0x434bb8();}};_0x3d3fd7[_0x11f13e(0x1e5)](connectionSeconds,-0x3*-0xc75+-0x10e4*-0x2+0xe3b*-0x5)&&_0x3d3fd7[_0x11f13e(0x250)](stopConnectionTimer);}),socket['on'](_0x40f116(0x227)+_0x40f116(0x219),()=>{const _0x54be51=_0x40f116,_0x31e289={'XPXHZ':function(_0x4f002a){return _0x4f002a();}};_0x31e289[_0x54be51(0x14a)](startConnectionTimer);}),socket['on'](_0x40f116(0x244)+_0x40f116(0x20a),()=>{const _0x49019c=_0x40f116,_0x35537d={'aJFKB':function(_0x1daf8e){return _0x1daf8e();}};_0x35537d[_0x49019c(0x270)](startConnectionTimer);});function toggleOP(){const _0x1e2363=_0x40f116,_0x3d2ef8={'pnMfY':_0x1e2363(0x1a0)+_0x1e2363(0x1dc),'eufFt':_0x1e2363(0x141),'iREuY':_0x1e2363(0x1d7),'eecmG':_0x1e2363(0x1ce),'yKzLa':_0x1e2363(0x1df),'kefdK':_0x1e2363(0x195),'fVLqJ':_0x1e2363(0x152)+_0x1e2363(0x14b)},_0x36c9e5=_0x3d2ef8[_0x1e2363(0x20b)][_0x1e2363(0x27d)]('|');let _0x5ed48b=0x2150+0x1*0x13a5+-0x34f5;while(!![]){switch(_0x36c9e5[_0x5ed48b++]){case'0':document[_0x1e2363(0x1ba)+_0x1e2363(0x14e)](_0x3d2ef8[_0x1e2363(0x1a2)])[_0x1e2363(0x19b)][_0x1e2363(0x13d)]=uiVisible?'':_0x3d2ef8[_0x1e2363(0x1be)];continue;case'1':document[_0x1e2363(0x1ba)+_0x1e2363(0x14e)]('xy')[_0x1e2363(0x19b)][_0x1e2363(0x13d)]=uiVisible?'':_0x3d2ef8[_0x1e2363(0x1be)];continue;case'2':document[_0x1e2363(0x1ba)+_0x1e2363(0x14e)](_0x3d2ef8[_0x1e2363(0x22c)])[_0x1e2363(0x19b)][_0x1e2363(0x13d)]=uiVisible?'':_0x3d2ef8[_0x1e2363(0x1be)];continue;case'3':uiVisible=!uiVisible;continue;case'4':document[_0x1e2363(0x1ba)+_0x1e2363(0x14e)](_0x3d2ef8[_0x1e2363(0x242)])[_0x1e2363(0x19b)][_0x1e2363(0x13d)]=uiVisible?'':_0x3d2ef8[_0x1e2363(0x1be)];continue;case'5':document[_0x1e2363(0x1ba)+_0x1e2363(0x14e)](_0x3d2ef8[_0x1e2363(0x15e)])[_0x1e2363(0x19b)][_0x1e2363(0x13d)]=uiVisible?'':_0x3d2ef8[_0x1e2363(0x1be)];continue;case'6':document[_0x1e2363(0x1ba)+_0x1e2363(0x14e)](_0x3d2ef8[_0x1e2363(0x164)])[_0x1e2363(0x19b)][_0x1e2363(0x13d)]=uiVisible?'':_0x3d2ef8[_0x1e2363(0x1be)];continue;case'7':buttons[_0x1e2363(0x19b)][_0x1e2363(0x13d)]=uiVisible?'':_0x3d2ef8[_0x1e2363(0x1be)];continue;}break;}}function resetView(){const _0x37f9e3=_0x40f116,_0x5bdcc5={'hcSkR':_0x37f9e3(0x208)},_0x516e13=_0x5bdcc5[_0x37f9e3(0x131)][_0x37f9e3(0x27d)]('|');let _0x112f04=-0x1436+0xcc7*0x2+-0x558;while(!![]){switch(_0x516e13[_0x112f04++]){case'0':offsetY=-0x1*0x1a7d+0x1223*-0x1+0xe0*0x33;continue;case'1':canvas[_0x37f9e3(0x19b)][_0x37f9e3(0x130)]=_0x37f9e3(0x1ae)+_0x37f9e3(0x27c);continue;case'2':canvasContainer[_0x37f9e3(0x19b)][_0x37f9e3(0x130)]=_0x37f9e3(0x1d5)+')';continue;case'3':zoomLevel=-0xd*-0x2fb+-0xac5+-0x1*0x1bfa+0.08;continue;case'4':offsetX=-0xa36+-0x73*-0x2+-0x1*-0x950;continue;}break;}}function changeColor(_0x33b206){const _0x3aab76=_0x40f116;currentColor=_0x33b206[_0x3aab76(0x1b6)][_0x3aab76(0x1f2)];}document[_0x40f116(0x279)+_0x40f116(0x13f)](_0x40f116(0x1ed),()=>{isDrawing=![];}),canvas[_0x40f116(0x279)+_0x40f116(0x13f)](_0x40f116(0x162),()=>{isDrawing=![];}),canvas[_0x40f116(0x279)+_0x40f116(0x13f)](_0x40f116(0x17c),_0x558bee=>{const _0x2e0d3b=_0x40f116,_0x3ea010={'AQdWk':function(_0x3096f8,_0x123b26){return _0x3096f8(_0x123b26);}};isDrawing=!![],_0x3ea010[_0x2e0d3b(0x271)](addPoint,_0x558bee);}),canvas[_0x40f116(0x279)+_0x40f116(0x13f)](_0x40f116(0x1ed),()=>{const _0x49a5ca=_0x40f116,_0x45ed6a={'zRdpE':function(_0x7d9583,_0x5c5c39){return _0x7d9583>_0x5c5c39;},'ZHhzf':_0x49a5ca(0x1a5),'TTqQC':_0x49a5ca(0x1d1),'LEICb':function(_0x330b3b,_0x22be86){return _0x330b3b(_0x22be86);},'lVivM':_0x49a5ca(0x1a1),'puDLL':function(_0x4faf6b){return _0x4faf6b();}};isDrawing=![];if(_0x45ed6a[_0x49a5ca(0x1fb)](currentDrawing[_0x49a5ca(0x1ad)],0x906+-0x1*-0x1ebb+0x27c1*-0x1)){const _0x4ea4ae=_0x45ed6a[_0x49a5ca(0x163)][_0x49a5ca(0x27d)]('|');let _0x46fd72=0xc71+0x2028+-0xe9*0x31;while(!![]){switch(_0x4ea4ae[_0x46fd72++]){case'0':lastDrawingEmitTime=Date[_0x49a5ca(0x24e)]();continue;case'1':currentDrawing=[];continue;case'2':socket[_0x49a5ca(0x240)](_0x45ed6a[_0x49a5ca(0x17d)],{'type':_0x45ed6a[_0x49a5ca(0x17d)],'drawing':currentDrawing,'valid':_0x45ed6a[_0x49a5ca(0x157)](getCookie,_0x45ed6a[_0x49a5ca(0x197)])});continue;case'3':_0x45ed6a[_0x49a5ca(0x252)](draw);continue;case'4':drawings[_0x49a5ca(0x209)](currentDrawing);continue;}break;}}}),canvas[_0x40f116(0x279)+_0x40f116(0x13f)](_0x40f116(0x274),_0x34f4a4=>{const _0x4cbca2=_0x40f116,_0x34977b={'VGglb':function(_0x2fadc2,_0x1feedb){return _0x2fadc2/_0x1feedb;},'yMSBX':function(_0x25c7e8,_0x4d9871){return _0x25c7e8*_0x4d9871;},'GtkwR':function(_0x1a2679,_0x4e7a84){return _0x1a2679-_0x4e7a84;},'XUjbC':function(_0x3367bd,_0x2436a7){return _0x3367bd*_0x2436a7;},'hTKmZ':function(_0xd3d6f9,_0x235545){return _0xd3d6f9(_0x235545);},'yzxBZ':function(_0x2726f1,_0x13affd){return _0x2726f1>=_0x13affd;},'zoZJG':_0x4cbca2(0x1d1),'bbudw':_0x4cbca2(0x1a1)},_0x3ee599=canvas[_0x4cbca2(0x1f9)+_0x4cbca2(0x16f)+'t'](),_0xe220bb=_0x34977b[_0x4cbca2(0x248)](canvas[_0x4cbca2(0x1fa)],_0x3ee599[_0x4cbca2(0x1fa)]),_0x7c6fc1=_0x34977b[_0x4cbca2(0x248)](canvas[_0x4cbca2(0x1c1)],_0x3ee599[_0x4cbca2(0x1c1)]),_0x213d1c=Math[_0x4cbca2(0x155)](_0x34977b[_0x4cbca2(0x268)](_0x34977b[_0x4cbca2(0x1c7)](_0x34f4a4[_0x4cbca2(0x19f)],_0x3ee599[_0x4cbca2(0x18c)]),_0xe220bb)),_0xf4abe7=Math[_0x4cbca2(0x155)](_0x34977b[_0x4cbca2(0x1c4)](_0x34977b[_0x4cbca2(0x1c7)](_0x34f4a4[_0x4cbca2(0x143)],_0x3ee599[_0x4cbca2(0x20f)]),_0x7c6fc1));tx[_0x4cbca2(0x205)]=_0x213d1c,ty[_0x4cbca2(0x205)]=_0xf4abe7;if(isDrawing){_0x34977b[_0x4cbca2(0x1a8)](addPoint,_0x34f4a4);const _0x10726e=Date[_0x4cbca2(0x24e)]();_0x34977b[_0x4cbca2(0x235)](_0x34977b[_0x4cbca2(0x1c7)](_0x10726e,lastDrawingEmitTime),drawingEmitDelay)&&(socket[_0x4cbca2(0x240)](_0x34977b[_0x4cbca2(0x266)],{'type':_0x34977b[_0x4cbca2(0x266)],'points':currentDrawing,'valid':_0x34977b[_0x4cbca2(0x1a8)](getCookie,_0x34977b[_0x4cbca2(0x1f1)])}),lastDrawingEmitTime=_0x10726e);}});function addPoint(_0x3a4e15){const _0x43d501=_0x40f116,_0x5aafec={'Kzhhg':function(_0x52eb65,_0x21b8aa){return _0x52eb65/_0x21b8aa;},'vwqKY':function(_0x5bd073,_0x2c79cf){return _0x5bd073/_0x2c79cf;},'LYudV':function(_0x1be79b,_0x1f2522){return _0x1be79b*_0x1f2522;},'LkSgd':function(_0x43d54b,_0x5d3b17){return _0x43d54b-_0x5d3b17;},'RLnYd':function(_0x455550,_0xee5cf2){return _0x455550-_0xee5cf2;},'jQRLT':function(_0x50f4f3){return _0x50f4f3();}};if(!isDrawing)return;const _0x4e6b54=canvas[_0x43d501(0x1f9)+_0x43d501(0x16f)+'t'](),_0x729d7f=_0x5aafec[_0x43d501(0x184)](canvas[_0x43d501(0x1fa)],_0x4e6b54[_0x43d501(0x1fa)]),_0x284092=_0x5aafec[_0x43d501(0x173)](canvas[_0x43d501(0x1c1)],_0x4e6b54[_0x43d501(0x1c1)]),_0xdfacf3=_0x5aafec[_0x43d501(0x1a9)](_0x5aafec[_0x43d501(0x223)](_0x3a4e15[_0x43d501(0x19f)],_0x4e6b54[_0x43d501(0x18c)]),_0x729d7f),_0x127464=_0x5aafec[_0x43d501(0x1a9)](_0x5aafec[_0x43d501(0x24d)](_0x3a4e15[_0x43d501(0x143)],_0x4e6b54[_0x43d501(0x20f)]),_0x284092);currentDrawing[_0x43d501(0x209)]({'x':Math[_0x43d501(0x155)](_0xdfacf3),'y':Math[_0x43d501(0x155)](_0x127464),'color':currentColor}),_0x5aafec[_0x43d501(0x14d)](draw);}function draw(){const _0xf6b39a=_0x40f116,_0x2a9323={'eOudP':function(_0x43998a,_0x61f29e){return _0x43998a<_0x61f29e;},'hevEW':function(_0x4fc383,_0x1d7e43){return _0x4fc383<_0x1d7e43;},'uSuLL':function(_0x3eee66,_0xf79cc8){return _0x3eee66-_0xf79cc8;},'IbsNB':function(_0x50484f,_0x417b70){return _0x50484f>_0x417b70;},'xyskF':function(_0x295e08,_0x2e2076){return _0x295e08<_0x2e2076;}};context[_0xf6b39a(0x1ac)](-0x1*-0x10af+0x1154+0x2203*-0x1,0x184d+0xad9*0x2+0x19*-0x1d7,canvas[_0xf6b39a(0x1fa)],canvas[_0xf6b39a(0x1c1)]);for(const _0x45cf8e of drawings){if(_0x2a9323[_0xf6b39a(0x234)](_0x45cf8e[_0xf6b39a(0x1ad)],0x1ded+-0x7b7*-0x3+-0x3510))continue;for(let _0x37fa38=0x38*-0x5+-0xc05+-0x49*-0x2e;_0x2a9323[_0xf6b39a(0x232)](_0x37fa38,_0x45cf8e[_0xf6b39a(0x1ad)]);_0x37fa38++){const _0x41d7a3=_0x45cf8e[_0x2a9323[_0xf6b39a(0x140)](_0x37fa38,-0x24fe+-0x415*0x7+0x4192)],_0x40af91=_0x45cf8e[_0x37fa38];context[_0xf6b39a(0x1ca)](),context[_0xf6b39a(0x15d)+'e']=_0x41d7a3[_0xf6b39a(0x237)],context[_0xf6b39a(0x1c0)](Math[_0xf6b39a(0x155)](_0x41d7a3['x']),Math[_0xf6b39a(0x155)](_0x41d7a3['y'])),context[_0xf6b39a(0x1e6)](Math[_0xf6b39a(0x155)](_0x40af91['x']),Math[_0xf6b39a(0x155)](_0x40af91['y'])),context[_0xf6b39a(0x1a4)]();}}context[_0xf6b39a(0x1a4)]();if(_0x2a9323[_0xf6b39a(0x17a)](currentDrawing[_0xf6b39a(0x1ad)],0x2*-0x782+0xef*-0x23+-0x1*-0x2fb1)){context[_0xf6b39a(0x1ca)](),context[_0xf6b39a(0x15d)+'e']=currentColor,context[_0xf6b39a(0x1c0)](Math[_0xf6b39a(0x155)](currentDrawing[0x1af*0x15+0x56*0x14+-0x2a13]['x']),Math[_0xf6b39a(0x155)](currentDrawing[-0x1014+-0x2*0x27d+-0x302*-0x7]['y']));for(let _0x2edb71=-0x2624+-0xad*-0xf+0x956*0x3;_0x2a9323[_0xf6b39a(0x241)](_0x2edb71,currentDrawing[_0xf6b39a(0x1ad)]);_0x2edb71++){const _0xbe649f=currentDrawing[_0x2edb71];context[_0xf6b39a(0x1e6)](Math[_0xf6b39a(0x155)](_0xbe649f['x']),Math[_0xf6b39a(0x155)](_0xbe649f['y']));}context[_0xf6b39a(0x1a4)]();}}function _0x468c(){const _0x4c3390=['zRdpE','TQaWx','ruBfC','toFixed','jwKwG','BDdyZ','Usrmc','fePYp','LaUXl','isDFe','innerHTML','qYcYE','drawingCan','2|1|3|4|0','push','meout','pnMfY','Xvjwy','\x200,\x200.1)','size','top','FYmTV','existingDr','visibility','drawing','hjHfq','10eYOerd','vas','MyuoG','down','ror','dwQKk','byQto','Server\x20con','visible','right','tWAyl','fHgBj','[id=\x22conne','fcDWS','LkSgd','hingEnable','evAxz','qxpGO','connect_er','deup\x20red','getDate','px\x2050px','hBEwk','eecmG','play','scale(','PPZlx','div','946746NNIaQb','hevEW','BDbtU','eOudP','yzxBZ','forEach','color','hidden','JVtGK','ainer','llADt','px,\x20','YCbce','map','FJqQV','emit','xyskF','yKzLa','KDqIb','connect_ti','34052iokZUP','type','Version:\x20','VGglb','1|0|2|3|4','QOEKX','white-spac','Server\x20Con','RLnYd','now','pong','nrjIq','aOgaq','puDLL','UTyvF','SwVcb','603647syiisQ','IzNPE','visited','UkFiR','deup\x20','PkgCJ','class','Ping:\x20','efVnu','nXVzW','audio-play','w-version','UjMqf','INIJZ','vCbiQ','ction\x22]','boZDC','zoZJG','FumYV','yMSBX','zozHY','NtLxh','BZRIH','mfUCy','px\x2050px\x2025','px)','TnmKC','aJFKB','AQdWk','ault','XXbro','mousemove','UefRh','whHlD','NTnyZ','setDate','addEventLi','oFXPL','nJjeW','0px,\x200px)','split','LhipR','yFitV','add','SKBoy','FURXd','transform','hcSkR','min-width:','announceme','tored','textConten','ent','title','agDfs','rHHPp','RgCoj','MLHbo','transition','display','flex','stener','uSuLL','ping','TVjzH','clientY','395MwpVUH','ZfjJk','zOQNT','nection\x20Ti','setAttribu','AZxPr','XPXHZ','lients','oIJSR','jQRLT','ById','connection','DkQVK','jhCIh','connectedC','EEOUb','PQswa','round','classList','LEICb','welcome','tor','s\x20been\x20res','gYIEz','opacity','strokeStyl','kefdK','EqOaX','e:\x20normal;','message','mouseleave','ZHhzf','fVLqJ','DUZpX','pause','EuGQE','boxShadow','ioOMl','connect','preventDef','bphGs','trim','getContext','gClientRec','QLAKi','lHhgF','buttons','vwqKY','fAJpW','300px','rgba(0,\x200,','reload','jcwEw','Connected\x20','IbsNB','rqlDl','mousedown','TTqQC','DOUXJ','xpkat','click','xNMdF','0\x204px\x208px\x20','hBRVP','Kzhhg','remove','src','margin:\x2025','Clients:\x20','820900CpELmb','sZJKJ','yrkeA','left','2570337uyiyIW','Collavas\x20v','w-close','nQNey','AKCqV','iwcoV','qogFf','zhRQj','resetView','psJgt','lVivM','true','drawings','RNSKi','style','rYSFq','IFaKB','toUTCStrin','clientX','3|7|5|1|6|','uuid','eufFt','qwdSL','stroke','2|4|3|1|0','SCUTm','UgadT','hTKmZ','LYudV','awings','nLDbF','clearRect','length','translate(','wheel','deltaY','VxtJb','querySelec','imageSmoot','\x20auto;','success','target','deup\x20green','AVwjS','audio','getElement','WXSSa','canvasCont','4767156WldsaW','iREuY','clientNum','moveTo','height','dataSize','zURLs','XUjbC','createElem','CSSsf','GtkwR','AXKtO','timeout','beginPath','XeGvr','YiSRk','message\x20fa','data','VqTyh',';\x20path=/','draw','cookie','lUeko','e:\x20nowrap;','scale(0.08','KEXjk','none','stop','DQsov','#000000','meout:\x20','4|0|2','XKIDM','.messages','version','parse','getAttribu','3152VUfoKc','fadeup','VHpae','ommFY','lineTo','fadedown','HcSpk','lOomk','Size:\x20','PFJsz','IbjLK','mouseup','gesIt','NWiMV','torAll','bbudw','value','MLHHI','1092dpCjdW','appendChil','nection\x20ha','AEaBB',';\x20expires=','getBoundin','width'];_0x468c=function(){return _0x4c3390;};return _0x468c();}socket['on'](_0x40f116(0x1c2),_0x6e3677=>{const _0x1dd527=_0x40f116,_0x920d04={'IbjLK':_0x1dd527(0x1ce),'FURXd':function(_0x3c6cd8,_0x3df1d3){return _0x3c6cd8+_0x3df1d3;},'qYcYE':_0x1dd527(0x1ea)};document[_0x1dd527(0x1ba)+_0x1dd527(0x14e)](_0x920d04[_0x1dd527(0x1ec)])[_0x1dd527(0x1b2)+_0x1dd527(0x159)]('p')[_0x1dd527(0x135)+'t']=_0x920d04[_0x1dd527(0x12f)](_0x920d04[_0x1dd527(0x12f)](_0x920d04[_0x1dd527(0x206)],_0x6e3677[_0x1dd527(0x20e)]),'MB'),document[_0x1dd527(0x1ba)+_0x1dd527(0x14e)](_0x920d04[_0x1dd527(0x1ec)])[_0x1dd527(0x19b)][_0x1dd527(0x15c)]=-0xad*0x11+0x204c+0x1*-0x14cf+0.25;}),socket['on'](_0x40f116(0x22d),_0xef3bff=>{const _0x28f3ed=_0x40f116,_0xfb85f4={'AZxPr':function(_0x16fa1a,_0x3f388d){return _0x16fa1a!=_0x3f388d;},'UefRh':_0x28f3ed(0x1d8),'TnmKC':_0x28f3ed(0x25f)+'er'};_0xfb85f4[_0x28f3ed(0x149)](_0xef3bff[_0x28f3ed(0x1b9)],_0xfb85f4[_0x28f3ed(0x275)])?(document[_0x28f3ed(0x1ba)+_0x28f3ed(0x14e)](_0xfb85f4[_0x28f3ed(0x26f)])[_0x28f3ed(0x186)]=_0xef3bff[_0x28f3ed(0x1b9)],document[_0x28f3ed(0x1ba)+_0x28f3ed(0x14e)](_0xfb85f4[_0x28f3ed(0x26f)])[_0x28f3ed(0x22d)]()):document[_0x28f3ed(0x1ba)+_0x28f3ed(0x14e)](_0xfb85f4[_0x28f3ed(0x26f)])[_0x28f3ed(0x166)]();}),socket['on'](_0x40f116(0x133)+'nt',_0x290055=>{const _0x468db9=_0x40f116,_0x9c8189={'SKBoy':_0x468db9(0x1d7),'oIJSR':function(_0x1006c7,_0x18bfa1){return _0x1006c7-_0x18bfa1;},'isDFe':_0x468db9(0x1e3),'ZfjJk':_0x468db9(0x1e7),'jcwEw':function(_0x42523b,_0x4cce96,_0x1fbce3){return _0x42523b(_0x4cce96,_0x1fbce3);},'SCUTm':_0x468db9(0x1de),'jhCIh':_0x468db9(0x230),'DUZpX':_0x468db9(0x25b),'fHgBj':function(_0x5e22e1,_0x5c2428){return _0x5e22e1+_0x5c2428;},'nXVzW':_0x468db9(0x1cd)+_0x468db9(0x259),'yFitV':_0x468db9(0x182)+_0x468db9(0x176)+_0x468db9(0x20d),'RNSKi':_0x468db9(0x19b),'agDfs':_0x468db9(0x24b)+_0x468db9(0x160)+_0x468db9(0x187)+_0x468db9(0x26d)+_0x468db9(0x22a),'WXSSa':function(_0x301c79,_0x49831b){return _0x301c79-_0x49831b;}};if(_0x290055[_0x468db9(0x161)]&&_0x290055[_0x468db9(0x237)]){const _0x217511=_0x290055[_0x468db9(0x161)],_0x763fbf=document[_0x468db9(0x1b2)+_0x468db9(0x159)](_0x9c8189[_0x468db9(0x1a6)]),_0x1aaadc=document[_0x468db9(0x1c5)+_0x468db9(0x136)](_0x9c8189[_0x468db9(0x151)]);_0x1aaadc[_0x468db9(0x148)+'te'](_0x9c8189[_0x468db9(0x165)],_0x9c8189[_0x468db9(0x220)](_0x9c8189[_0x468db9(0x25e)],_0x290055[_0x468db9(0x237)])),_0x1aaadc[_0x468db9(0x148)+'te']('id',announceCount),_0x1aaadc[_0x468db9(0x19b)][_0x468db9(0x168)]=_0x9c8189[_0x468db9(0x27f)];const _0x2c4eed=document[_0x468db9(0x1c5)+_0x468db9(0x136)]('p');_0x2c4eed[_0x468db9(0x148)+'te'](_0x9c8189[_0x468db9(0x19a)],_0x9c8189[_0x468db9(0x138)]),_0x2c4eed[_0x468db9(0x135)+'t']=_0x217511,_0x1aaadc[_0x468db9(0x1f5)+'d'](_0x2c4eed),_0x763fbf[_0x468db9(0x1f5)+'d'](_0x1aaadc),announceCount++,announcementIDs[_0x468db9(0x209)](_0x9c8189[_0x468db9(0x1bb)](announceCount,-0x2*0xb48+0xe06+0x88b)),_0x9c8189[_0x468db9(0x178)](setTimeout,()=>{const _0x58a9ff=_0x468db9,_0x1ff61f=document[_0x58a9ff(0x1ba)+_0x58a9ff(0x14e)](_0x9c8189[_0x58a9ff(0x14c)](announceCount,0x1894+-0x20a7+0x814));_0x1ff61f[_0x58a9ff(0x156)][_0x58a9ff(0x185)](_0x9c8189[_0x58a9ff(0x204)]),_0x1ff61f[_0x58a9ff(0x156)][_0x58a9ff(0x12d)](_0x9c8189[_0x58a9ff(0x145)]),_0x9c8189[_0x58a9ff(0x178)](setTimeout,()=>{const _0x3341d8=_0x58a9ff;_0x1ff61f[_0x3341d8(0x19b)][_0x3341d8(0x13d)]=_0x9c8189[_0x3341d8(0x12e)],_0x1ff61f[_0x3341d8(0x185)]();},0x5f*-0x69+-0x32c*-0x2+0x2293);},0xadd+0x15ad+-0xd02);}});function hideMessages(){const _0x59595a=_0x40f116,_0x58ea18={'fcDWS':function(_0x360293,_0x303305){return _0x360293!=_0x303305;},'lUeko':_0x59595a(0x14f),'ioOMl':_0x59595a(0x1e7),'QOEKX':function(_0x5bccd7,_0x3f5e07){return _0x5bccd7!=_0x3f5e07;},'dwQKk':_0x59595a(0x1d7),'xNMdF':_0x59595a(0x1de),'PkgCJ':_0x59595a(0x230),'bphGs':function(_0x223340,_0x431caa){return _0x223340>_0x431caa;},'mfUCy':function(_0x302380,_0x45ab80,_0x232963){return _0x302380(_0x45ab80,_0x232963);}},_0x5b95ab=document[_0x59595a(0x1b2)+_0x59595a(0x159)](_0x58ea18[_0x59595a(0x181)]);if(_0x5b95ab){const _0x48d6b9=_0x5b95ab[_0x59595a(0x1b2)+_0x59595a(0x1f0)](_0x58ea18[_0x59595a(0x25a)]);_0x58ea18[_0x59595a(0x16c)](_0x48d6b9[_0x59595a(0x1ad)],-0x145c+-0x1*0x360+0x17bd)&&(_0x48d6b9[_0x59595a(0x236)](_0x596488=>{const _0x157273=_0x59595a;_0x58ea18[_0x157273(0x222)](_0x596488[_0x157273(0x1e1)+'te']('id'),_0x58ea18[_0x157273(0x1d3)])&&_0x596488[_0x157273(0x156)][_0x157273(0x12d)](_0x58ea18[_0x157273(0x169)]);}),_0x58ea18[_0x59595a(0x26c)](setTimeout,()=>{const _0x47736a=_0x59595a,_0x1bc0a0={'AXKtO':function(_0x4d5aee,_0x37a2f2){const _0x52dc41=_0x5877;return _0x58ea18[_0x52dc41(0x24a)](_0x4d5aee,_0x37a2f2);},'DQsov':_0x58ea18[_0x47736a(0x1d3)],'rHHPp':_0x58ea18[_0x47736a(0x21a)]};_0x48d6b9[_0x47736a(0x236)](_0x121cca=>{const _0x2fe35d=_0x47736a;_0x1bc0a0[_0x2fe35d(0x1c8)](_0x121cca[_0x2fe35d(0x1e1)+'te']('id'),_0x1bc0a0[_0x2fe35d(0x1d9)])&&(_0x121cca[_0x2fe35d(0x19b)][_0x2fe35d(0x13d)]=_0x1bc0a0[_0x2fe35d(0x139)],_0x121cca[_0x2fe35d(0x185)]());});},-0x1*0x151+-0x1ec7*-0x1+0xdc1*-0x2));}}setInterval(hideMessages,0x3b*0x23+0x35b+0x81c),socket['on'](_0x40f116(0x152)+_0x40f116(0x14b),_0x295a65=>{const _0x5ae620=_0x40f116,_0x447adb={'gesIt':_0x5ae620(0x1bf),'IFaKB':_0x5ae620(0x152)+_0x5ae620(0x14b)};document[_0x5ae620(0x1ba)+_0x5ae620(0x14e)](_0x447adb[_0x5ae620(0x1ee)])[_0x5ae620(0x135)+'t']=_0x5ae620(0x179)+_0x5ae620(0x188)+_0x295a65,document[_0x5ae620(0x1ba)+_0x5ae620(0x14e)](_0x447adb[_0x5ae620(0x19d)])[_0x5ae620(0x19b)][_0x5ae620(0x15c)]=-0x35*-0x6d+0x7*0x3b6+0x121*-0x2b+0.25;}),socket['on'](_0x40f116(0x177),_0x7ba044=>{const _0x77c04=_0x40f116;location[_0x77c04(0x177)](!![]);}),socket['on'](_0x40f116(0x1df),_0x3e953d=>{const _0x402687=_0x40f116,_0x48db0d={'UkFiR':_0x402687(0x249),'hBEwk':_0x402687(0x1df),'FYmTV':function(_0x59122e,_0x43682d){return _0x59122e+_0x43682d;},'MyuoG':_0x402687(0x247),'TQaWx':_0x402687(0x18e),'Xvjwy':_0x402687(0x260),'NtLxh':function(_0x3f1fe5,_0x1906ea){return _0x3f1fe5+_0x1906ea;}},_0x39a071=_0x48db0d[_0x402687(0x258)][_0x402687(0x27d)]('|');let _0x52d03f=-0x1*-0x59+-0xf64*-0x2+-0x1f21;while(!![]){switch(_0x39a071[_0x52d03f++]){case'0':document[_0x402687(0x1ba)+_0x402687(0x14e)](_0x48db0d[_0x402687(0x22b)])[_0x402687(0x1b2)+_0x402687(0x159)]('p')[_0x402687(0x135)+'t']=_0x48db0d[_0x402687(0x210)](_0x48db0d[_0x402687(0x217)],_0x3e953d);continue;case'1':document[_0x402687(0x137)]=_0x48db0d[_0x402687(0x210)](_0x48db0d[_0x402687(0x1fc)],_0x3e953d);continue;case'2':document[_0x402687(0x1ba)+_0x402687(0x14e)](_0x48db0d[_0x402687(0x22b)])[_0x402687(0x19b)][_0x402687(0x15c)]=0x2130+0x17f4+-0x3924+0.25;continue;case'3':versionSet=!![];continue;case'4':document[_0x402687(0x1ba)+_0x402687(0x14e)](_0x48db0d[_0x402687(0x20c)])[_0x402687(0x135)+'t']=_0x48db0d[_0x402687(0x26a)](_0x48db0d[_0x402687(0x1fc)],_0x3e953d);continue;}break;}}),socket['on'](_0x40f116(0x1d1),_0x570722=>{const _0x393365=_0x40f116,_0x214a69={'QLAKi':_0x393365(0x1d7),'NTnyZ':_0x393365(0x230),'DkQVK':_0x393365(0x1e3),'hBRVP':_0x393365(0x1e7),'BDdyZ':function(_0x3fba45,_0x2b2e71,_0x47da22){return _0x3fba45(_0x2b2e71,_0x47da22);},'PFJsz':function(_0x6fcba3,_0x1fa87f){return _0x6fcba3===_0x1fa87f;},'rqlDl':_0x393365(0x1d1),'yrkeA':function(_0x729743){return _0x729743();},'whHlD':function(_0x288de4,_0x5cf0e6){return _0x288de4===_0x5cf0e6;},'oFXPL':_0x393365(0x211)+_0x393365(0x1aa),'gYIEz':function(_0x2ab492,_0x35dd8d){return _0x2ab492(_0x35dd8d);},'JVtGK':_0x393365(0x1a1),'boZDC':function(_0x50d5b0,_0x33917d,_0x3abe4c,_0x1c6181){return _0x50d5b0(_0x33917d,_0x3abe4c,_0x1c6181);},'qxpGO':_0x393365(0x13c),'PPZlx':_0x393365(0x238),'BDbtU':_0x393365(0x21d),'fePYp':function(_0x6b537a,_0x318cee){return _0x6b537a(_0x318cee);},'FumYV':_0x393365(0x257),'AKCqV':_0x393365(0x158),'VqTyh':_0x393365(0x13e),'FJqQV':_0x393365(0x198),'RgCoj':_0x393365(0x18f),'KEXjk':_0x393365(0x180)};if(_0x214a69[_0x393365(0x1eb)](_0x570722[_0x393365(0x246)],_0x214a69[_0x393365(0x17b)])&&_0x570722[_0x393365(0x213)])drawings[_0x393365(0x209)](_0x570722[_0x393365(0x213)]),_0x214a69[_0x393365(0x18b)](draw);else{if(_0x214a69[_0x393365(0x276)](_0x570722[_0x393365(0x246)],_0x214a69[_0x393365(0x27a)])&&_0x570722[_0x393365(0x199)]){const _0x223518=JSON[_0x393365(0x1e0)](_0x570722[_0x393365(0x199)]);!_0x214a69[_0x393365(0x15b)](getCookie,_0x214a69[_0x393365(0x239)])&&(uuid=_0x570722['id'],_0x214a69[_0x393365(0x265)](setCookie,_0x214a69[_0x393365(0x239)],uuid,-0x10ba+0x14+0x1213));drawings[_0x393365(0x209)](..._0x223518),_0x214a69[_0x393365(0x18b)](draw),document[_0x393365(0x1ba)+_0x393365(0x14e)](_0x214a69[_0x393365(0x226)])[_0x393365(0x19b)][_0x393365(0x15c)]=0x2699+-0x1f1d+0x17f*-0x5,document[_0x393365(0x1ba)+_0x393365(0x14e)](_0x214a69[_0x393365(0x226)])[_0x393365(0x19b)][_0x393365(0x212)]=_0x214a69[_0x393365(0x22f)],canvas[_0x393365(0x19b)][_0x393365(0x15c)]=0x1cba+0x138c+0x1*-0x3045,canvas[_0x393365(0x19b)][_0x393365(0x212)]=_0x214a69[_0x393365(0x233)],buttons[_0x393365(0x19b)][_0x393365(0x15c)]=-0x3*0xb9b+0x1915*0x1+0x1*0x9bd;if(!_0x214a69[_0x393365(0x202)](getCookie,_0x214a69[_0x393365(0x267)])){var _0x38fe0c=document[_0x393365(0x1ba)+_0x393365(0x14e)](_0x214a69[_0x393365(0x191)]);_0x38fe0c[_0x393365(0x19b)][_0x393365(0x13d)]=_0x214a69[_0x393365(0x1cf)],_0x38fe0c[_0x393365(0x19b)][_0x393365(0x15c)]=0x834+0x215e+-0x2991*0x1,_0x38fe0c[_0x393365(0x1b2)+_0x393365(0x159)](_0x214a69[_0x393365(0x277)])[_0x393365(0x156)][_0x393365(0x12d)](_0x214a69[_0x393365(0x150)]),_0x214a69[_0x393365(0x265)](setCookie,_0x214a69[_0x393365(0x267)],_0x214a69[_0x393365(0x23f)],0x1*0x21cd+0x419*-0x6+-0x7ca*0x1),document[_0x393365(0x1ba)+_0x393365(0x14e)](_0x214a69[_0x393365(0x13a)])[_0x393365(0x279)+_0x393365(0x13f)](_0x214a69[_0x393365(0x1d6)],_0x3d494c=>{const _0x412832=_0x393365,_0x57f482={'zhRQj':_0x214a69[_0x412832(0x170)]};_0x38fe0c[_0x412832(0x19b)][_0x412832(0x15c)]=0x4*-0x668+-0x107a+-0x22*-0x13d,_0x38fe0c[_0x412832(0x1b2)+_0x412832(0x159)](_0x214a69[_0x412832(0x277)])[_0x412832(0x156)][_0x412832(0x185)](_0x214a69[_0x412832(0x150)]),_0x38fe0c[_0x412832(0x1b2)+_0x412832(0x159)](_0x214a69[_0x412832(0x277)])[_0x412832(0x156)][_0x412832(0x12d)](_0x214a69[_0x412832(0x183)]),_0x214a69[_0x412832(0x200)](setTimeout,()=>{const _0x5e4cfb=_0x412832;_0x38fe0c[_0x5e4cfb(0x19b)][_0x5e4cfb(0x13d)]=_0x57f482[_0x5e4cfb(0x194)];},0x1*0x261d+0x675*-0x4+-0xa55);});}}}});let zoomLevel=-0x4f*-0x23+-0x2587+-0x1*-0x1aba+0.08;const zoomFactor=0xa1f+0xb23*-0x2+0x11*0xb7+0.1;let offsetX=-0x22*0x1f+0xd28+-0x90a,offsetY=0x1b+-0x19c*-0x6+-0x3*0x341;function _0x5877(_0x2bf0d7,_0x472b40){const _0x2cda94=_0x468c();return _0x5877=function(_0x3e70d3,_0x441310){_0x3e70d3=_0x3e70d3-(0x3cd*-0x5+0x70*0x1+0x13be);let _0x3b9435=_0x2cda94[_0x3e70d3];return _0x3b9435;},_0x5877(_0x2bf0d7,_0x472b40);}function pan(_0x646415){const _0x32d6ea=_0x40f116,_0x576d38={'INIJZ':_0x32d6ea(0x18c),'psJgt':_0x32d6ea(0x21e),'NWiMV':_0x32d6ea(0x218),'YiSRk':function(_0x1dcf7f){return _0x1dcf7f();}},_0x265755=-0x8*0x3e3+0xd5b*-0x1+0x2c9b*0x1;switch(_0x646415){case _0x576d38[_0x32d6ea(0x262)]:offsetX+=_0x265755;break;case _0x576d38[_0x32d6ea(0x196)]:offsetX-=_0x265755;break;case'up':offsetY+=_0x265755;break;case _0x576d38[_0x32d6ea(0x1ef)]:offsetY-=_0x265755;break;default:break;}_0x576d38[_0x32d6ea(0x1cc)](updateCanvasContainerPosition);}function updateCanvasContainerPosition(){const _0x5a0255=_0x40f116,_0x3292d4={'rYSFq':function(_0x1500c7,_0x5542f0){return _0x1500c7==_0x5542f0;}};_0x3292d4[_0x5a0255(0x19c)](zoomLevel,0x11*-0x19d+0x2272*-0x1+0x1*0x3ddf+0.08)?(canvas[_0x5a0255(0x19b)][_0x5a0255(0x130)]=_0x5a0255(0x27c),offsetX=-0x1*0x1141+0xa8b*0x1+-0x2*-0x35b,offsetY=-0x7*0xed+-0x9b*-0x5+-0x1*-0x374):canvas[_0x5a0255(0x19b)][_0x5a0255(0x130)]=_0x5a0255(0x1ae)+offsetX+_0x5a0255(0x23c)+offsetY+_0x5a0255(0x26e);}canvasContainer[_0x40f116(0x279)+_0x40f116(0x13f)](_0x40f116(0x1af),_0x4a2fac=>{const _0x5c420c=_0x40f116,_0x132a1f={'nLDbF':function(_0x58fc66,_0x310248){return _0x58fc66>_0x310248;},'sZJKJ':function(_0x59f60a,_0x5b14d0){return _0x59f60a+_0x5b14d0;},'PQswa':function(_0x5683c5,_0x21bbe3){return _0x5683c5*_0x21bbe3;},'XXbro':function(_0x59b575,_0x547bac){return _0x59b575<_0x547bac;},'YCbce':function(_0x320bc8){return _0x320bc8();},'qwdSL':function(_0x4b7c40,_0x14d368){return _0x4b7c40>_0x14d368;}};_0x4a2fac[_0x5c420c(0x16b)+_0x5c420c(0x272)]();const _0x31050e=_0x132a1f[_0x5c420c(0x1ab)](_0x4a2fac[_0x5c420c(0x1b0)],0x1*-0xce6+-0x11*-0xce+-0xc8)?-(0xaa*0x35+0x2446+-0x4777):-0xe9+0x1cbc+-0x1bd2,_0x499f0b=_0x132a1f[_0x5c420c(0x18a)](0x110d*0x1+0x2*-0xd43+0x97a,_0x132a1f[_0x5c420c(0x154)](_0x31050e,zoomFactor));zoomLevel*=_0x499f0b;_0x132a1f[_0x5c420c(0x273)](zoomLevel,-0xf6f+0x341*0x1+-0x1*-0xc2e+0.08)&&(zoomLevel=0xb3*-0x22+0x5f1+-0x391*-0x5+0.08,canvas[_0x5c420c(0x19b)][_0x5c420c(0x130)]=_0x5c420c(0x1ae)+_0x5c420c(0x27c),_0x132a1f[_0x5c420c(0x23d)](updateCanvasContainerPosition));if(_0x132a1f[_0x5c420c(0x1a3)](zoomLevel,-0x3a5*-0x9+-0xac*0x11+-0x154d))zoomLevel=-0x187+0x2f*0x95+-0x19c0;canvasContainer[_0x5c420c(0x19b)][_0x5c420c(0x130)]=_0x5c420c(0x22e)+zoomLevel+')';});
\ No newline at end of file
diff --git a/public/static/js/main-UujD4m-3.js b/public/static/js/main-UujD4m-3.js
new file mode 100644
index 0000000..95221e1
--- /dev/null
+++ b/public/static/js/main-UujD4m-3.js
@@ -0,0 +1 @@
+const _0x254752=_0x3167;(function(_0x48ebda,_0x461331){const _0x1e72ba=_0x3167,_0x3b2478=_0x48ebda();while(!![]){try{const _0x5f304d=parseInt(_0x1e72ba(0x22f))/(0x2a3+-0x4d9+0x237)+-parseInt(_0x1e72ba(0x1f1))/(-0x3*-0xa63+-0x9bb+-0x55b*0x4)+-parseInt(_0x1e72ba(0x230))/(-0x4*0x907+0x4*-0xa+0x2447)+parseInt(_0x1e72ba(0x2a1))/(0x4d7*0x1+-0x1294+0x1*0xdc1)+-parseInt(_0x1e72ba(0x209))/(-0x523*-0x2+-0x1e80+-0x143f*-0x1)+-parseInt(_0x1e72ba(0x24e))/(-0x1*0x1fe1+-0x1361+0x3348)+parseInt(_0x1e72ba(0x2b1))/(-0x5*-0x5e7+-0x39*-0x65+0x33f9*-0x1)*(parseInt(_0x1e72ba(0x283))/(-0xb02*0x1+0xc75+-0x16b));if(_0x5f304d===_0x461331)break;else _0x3b2478['push'](_0x3b2478['shift']());}catch(_0x50b344){_0x3b2478['push'](_0x3b2478['shift']());}}}(_0x34da,-0x27af1+0xaf*0x401+0x14778));const socket=io({'timeout':0x1f4}),canvas=document[_0x254752(0x272)+_0x254752(0x1f6)](_0x254752(0x246)+_0x254752(0x1b0)),canvasContainer=document[_0x254752(0x272)+_0x254752(0x1f6)](_0x254752(0x217)+_0x254752(0x1e2)),buttons=document[_0x254752(0x272)+_0x254752(0x1f6)](_0x254752(0x1eb)),tx=document[_0x254752(0x272)+_0x254752(0x1f6)]('x'),ty=document[_0x254752(0x272)+_0x254752(0x1f6)]('y'),context=canvas[_0x254752(0x262)]('2d'),drawingEmitDelay=0x60b+0x47*-0x59+0x1498*0x1;let lastDrawingEmitTime=-0x1c87*-0x1+-0x1*0x7a2+-0x14e5,drawings=[],announcementIDs=[],currentDrawing=[],isDrawing=![],uiVisible=!![],currentColor=_0x254752(0x284),announceCount=-0x1726+0x12f*-0x1e+0x3aa9,connectionTimer=null,connectionSeconds=0x5*0x239+-0x1a7+-0x976,versionSet=![],ping=null,uuid='';context[_0x254752(0x29a)+_0x254752(0x297)+'d']=!![],canvasContainer[_0x254752(0x1e4)][_0x254752(0x2f1)]=_0x254752(0x2bf)+')';function getCookie(_0xbadfca){const _0x4dae65=_0x254752,_0x5306f0={'gdAWG':function(_0x4e0f45,_0x2a9c34){return _0x4e0f45===_0x2a9c34;}},_0x2b99de=document[_0x4dae65(0x1e5)][_0x4dae65(0x2b7)](';')[_0x4dae65(0x26d)](_0x5bf5b7=>_0x5bf5b7[_0x4dae65(0x2ec)]());for(const _0x125126 of _0x2b99de){const [_0x38a850,_0x4e76a9]=_0x125126[_0x4dae65(0x2b7)]('=')[_0x4dae65(0x26d)](_0x34e1a4=>decodeURIComponent(_0x34e1a4));if(_0x5306f0[_0x4dae65(0x255)](_0x38a850,_0xbadfca))return _0x4e76a9;}return null;}function setCookie(_0x27212c,_0x3466f0,_0x4085e9){const _0x4e7ec8=_0x254752,_0x586922={'PEtVE':function(_0x2587e6,_0x29373f){return _0x2587e6+_0x29373f;},'iWjwC':function(_0x1a258d,_0x16240c){return _0x1a258d+_0x16240c;},'TxswY':function(_0x165eb7,_0x210f58){return _0x165eb7(_0x210f58);}},_0x4adf5c=new Date();_0x4adf5c[_0x4e7ec8(0x207)](_0x586922[_0x4e7ec8(0x1db)](_0x4adf5c[_0x4e7ec8(0x276)](),_0x4085e9));const _0x4351e3=_0x586922[_0x4e7ec8(0x2f4)](_0x586922[_0x4e7ec8(0x22c)](encodeURIComponent,_0x3466f0),_0x4085e9?_0x4e7ec8(0x2f8)+_0x4adf5c[_0x4e7ec8(0x2b3)+'g']():'');document[_0x4e7ec8(0x1e5)]=_0x27212c+'='+_0x4351e3+_0x4e7ec8(0x1fc);}function pinger(){const _0x4987db=_0x254752,_0x25debe={'NiXxx':function(_0xd4cc96,_0x985b33){return _0xd4cc96-_0x985b33;},'VykIy':function(_0x6bcd1a,_0x42088b){return _0x6bcd1a+_0x42088b;},'lCKBQ':function(_0x4f7922,_0x371df6){return _0x4f7922+_0x371df6;},'YFuAQ':_0x4987db(0x274),'tizuQ':_0x4987db(0x280),'tYBJd':_0x4987db(0x2c9)},_0x785ac9=Date[_0x4987db(0x229)](),_0x191ea0=document[_0x4987db(0x272)+_0x4987db(0x1f6)](_0x25debe[_0x4987db(0x242)])[_0x4987db(0x1b9)+_0x4987db(0x1f3)]('p');socket['on'](_0x25debe[_0x4987db(0x2d7)],()=>{const _0x39c471=_0x4987db,_0x4905da=_0x25debe[_0x39c471(0x2a4)](Date[_0x39c471(0x229)](),_0x785ac9);_0x191ea0[_0x39c471(0x253)+'t']=_0x25debe[_0x39c471(0x1ec)](_0x25debe[_0x39c471(0x28d)](_0x25debe[_0x39c471(0x1d1)],_0x4905da),'ms'),document[_0x39c471(0x272)+_0x39c471(0x1f6)](_0x25debe[_0x39c471(0x242)])[_0x39c471(0x1e4)][_0x39c471(0x240)]=-0x3*0x2ac+0x19*-0xa6+-0x1*-0x183a+0.25;}),socket[_0x4987db(0x258)](_0x25debe[_0x4987db(0x242)]);}ping=setInterval(pinger,0x1dd6+-0xeaf+-0xb3f);function _0x3167(_0x1a7187,_0x577210){const _0x9caaa5=_0x34da();return _0x3167=function(_0xe2eaaf,_0x7f000){_0xe2eaaf=_0xe2eaaf-(0x1*0x103d+-0x1136+0x2a8);let _0x406182=_0x9caaa5[_0xe2eaaf];return _0x406182;},_0x3167(_0x1a7187,_0x577210);}function startConnectionTimer(){const _0x564ddf=_0x254752,_0x2e5ff4={'kxBmZ':_0x564ddf(0x20a),'QyZsu':function(_0x3c40db,_0x410037){return _0x3c40db+_0x410037;},'dqWpw':_0x564ddf(0x2c8)+_0x564ddf(0x1d6)+_0x564ddf(0x2f5),'quCnL':_0x564ddf(0x259),'zXCHL':function(_0x323ae7,_0x5c84ba){return _0x323ae7>_0x5c84ba;},'TCuyS':_0x564ddf(0x223)+_0x564ddf(0x2a0),'ebZjC':function(_0x4425d4,_0x235dec){return _0x4425d4(_0x235dec);},'oZawt':_0x564ddf(0x2a2),'vnIgX':_0x564ddf(0x228),'bSrFQ':_0x564ddf(0x234)+_0x564ddf(0x1e8),'aDzCZ':_0x564ddf(0x1d8),'uCArE':_0x564ddf(0x203)+_0x564ddf(0x23b)+_0x564ddf(0x204),'kRCwC':_0x564ddf(0x254),'HvEiD':_0x564ddf(0x1e4),'fTefC':_0x564ddf(0x1c9)+_0x564ddf(0x1f0)+_0x564ddf(0x1bb)+_0x564ddf(0x1c1)+_0x564ddf(0x21a),'vvWAl':_0x564ddf(0x2dc),'srePZ':function(_0x146577){return _0x146577();},'WRPBY':function(_0x5e56a4,_0x147e3c,_0x523e63){return _0x5e56a4(_0x147e3c,_0x523e63);}},_0x1b21e9=document[_0x564ddf(0x1b9)+_0x564ddf(0x1f3)](_0x2e5ff4[_0x564ddf(0x2d5)]);if(_0x2e5ff4[_0x564ddf(0x26a)](_0x1b21e9[_0x564ddf(0x1b9)+_0x564ddf(0x1ef)](_0x2e5ff4[_0x564ddf(0x2cc)])[_0x564ddf(0x27e)],0x2*-0xc46+-0x6b0+0x4*0x7cf))return;_0x2e5ff4[_0x564ddf(0x287)](clearInterval,ping);const _0x250596=document[_0x564ddf(0x273)+_0x564ddf(0x269)](_0x2e5ff4[_0x564ddf(0x25c)]);_0x250596[_0x564ddf(0x24c)+'te'](_0x2e5ff4[_0x564ddf(0x26e)],_0x2e5ff4[_0x564ddf(0x1f2)]),_0x250596[_0x564ddf(0x24c)+'te']('id',_0x2e5ff4[_0x564ddf(0x1d9)]),_0x250596[_0x564ddf(0x1e4)][_0x564ddf(0x2f0)]=_0x2e5ff4[_0x564ddf(0x2b2)],_0x250596[_0x564ddf(0x1e4)][_0x564ddf(0x290)]=_0x2e5ff4[_0x564ddf(0x1cf)];const _0x1f510e=document[_0x564ddf(0x273)+_0x564ddf(0x269)]('p');_0x1f510e[_0x564ddf(0x24c)+'te']('id',_0x2e5ff4[_0x564ddf(0x285)]),_0x1f510e[_0x564ddf(0x24c)+'te'](_0x2e5ff4[_0x564ddf(0x1f8)],_0x2e5ff4[_0x564ddf(0x212)]),_0x1f510e[_0x564ddf(0x253)+'t']=_0x2e5ff4[_0x564ddf(0x28a)](_0x2e5ff4[_0x564ddf(0x2ae)],connectionSeconds[_0x564ddf(0x2d8)](-0x23c4+-0x4f*-0x33+0x1408)),_0x250596[_0x564ddf(0x1c2)+'d'](_0x1f510e),_0x1b21e9[_0x564ddf(0x1c2)+'d'](_0x250596),canvas[_0x564ddf(0x1e4)][_0x564ddf(0x240)]=-0x2*-0x116d+-0x1963*0x1+0x977*-0x1,buttons[_0x564ddf(0x1e4)][_0x564ddf(0x240)]=-0x19df+0x1*-0x21b+-0x2*-0xdfd,canvas[_0x564ddf(0x1f7)][_0x564ddf(0x26f)](_0x2e5ff4[_0x564ddf(0x237)]),drawings=[],currentDrawing=[],_0x2e5ff4[_0x564ddf(0x2b0)](draw),connectionTimer=_0x2e5ff4[_0x564ddf(0x225)](setInterval,()=>{const _0x51adef=_0x564ddf;connectionSeconds+=-0x1f7c+0x1465+0xb17+0.1,document[_0x51adef(0x272)+_0x51adef(0x1f6)](_0x2e5ff4[_0x51adef(0x285)])[_0x51adef(0x253)+'t']=_0x2e5ff4[_0x51adef(0x28a)](_0x2e5ff4[_0x51adef(0x2ae)],connectionSeconds[_0x51adef(0x2d8)](-0x1379+0x1*0x1c19+0x89f*-0x1));},0xa*-0x251+0x20d+0x1581);}function stopConnectionTimer(){const _0x3e49be=_0x254752,_0xc1bd61={'sgOfs':_0x3e49be(0x244),'qjuzC':_0x3e49be(0x2dc),'EhcSR':function(_0x1001f6,_0x5bb884,_0xf878b9){return _0x1001f6(_0x5bb884,_0xf878b9);},'yFBoM':function(_0x1db3cc,_0x80541e){return _0x1db3cc(_0x80541e);},'bDfju':function(_0x2bf556,_0x170c04,_0x1bc25c){return _0x2bf556(_0x170c04,_0x1bc25c);},'uQjNG':_0x3e49be(0x259),'QZXCd':_0x3e49be(0x223)+_0x3e49be(0x2a0),'Kbslm':_0x3e49be(0x2a2),'bQFkB':_0x3e49be(0x228),'ubpBi':_0x3e49be(0x234)+_0x3e49be(0x2c6),'CtQtw':_0x3e49be(0x2f2),'wDtmZ':_0x3e49be(0x203)+_0x3e49be(0x23b)+_0x3e49be(0x204),'HpQHd':_0x3e49be(0x1e4),'GnPFD':_0x3e49be(0x2af)+_0x3e49be(0x2a9),'TFtAz':_0x3e49be(0x20a),'dUptq':_0x3e49be(0x1c9)+_0x3e49be(0x1f0)+_0x3e49be(0x1bb)+_0x3e49be(0x1c1)+_0x3e49be(0x21a),'nJLOM':_0x3e49be(0x2ad)+_0x3e49be(0x20d)+_0x3e49be(0x2e9)+_0x3e49be(0x2c7)};_0xc1bd61[_0x3e49be(0x2d2)](clearInterval,connectionTimer),ping=_0xc1bd61[_0x3e49be(0x1fd)](setInterval,pinger,-0x19df+0x349+0x1a7e),connectionSeconds=-0x1763*-0x1+-0x105c+-0x101*0x7;const _0x320c5c=document[_0x3e49be(0x1b9)+_0x3e49be(0x1f3)](_0xc1bd61[_0x3e49be(0x1bd)]);_0x320c5c[_0x3e49be(0x1b9)+_0x3e49be(0x1ef)](_0xc1bd61[_0x3e49be(0x20c)])[_0x3e49be(0x210)](_0x22a063=>{const _0x23870c=_0x3e49be;_0x22a063[_0x23870c(0x1f7)][_0x23870c(0x251)](_0xc1bd61[_0x23870c(0x1ba)]),_0x22a063[_0x23870c(0x1f7)][_0x23870c(0x26f)](_0xc1bd61[_0x23870c(0x1c4)]),_0xc1bd61[_0x23870c(0x2f6)](setTimeout,()=>{const _0x513504=_0x23870c;_0x22a063[_0x513504(0x251)]();},0x2f*0x3d+-0x2699+0x1d5a);});const _0x2e808a=document[_0x3e49be(0x273)+_0x3e49be(0x269)](_0xc1bd61[_0x3e49be(0x2c2)]);_0x2e808a[_0x3e49be(0x24c)+'te'](_0xc1bd61[_0x3e49be(0x23c)],_0xc1bd61[_0x3e49be(0x2a5)]),_0x2e808a[_0x3e49be(0x24c)+'te']('id',_0xc1bd61[_0x3e49be(0x29e)]),_0x2e808a[_0x3e49be(0x1e4)][_0x3e49be(0x2f0)]=_0xc1bd61[_0x3e49be(0x252)],_0x2e808a[_0x3e49be(0x24c)+'te'](_0xc1bd61[_0x3e49be(0x2e3)],_0xc1bd61[_0x3e49be(0x2bc)]);const _0x4bf9db=document[_0x3e49be(0x273)+_0x3e49be(0x269)]('p');_0x4bf9db[_0x3e49be(0x24c)+'te']('id',_0xc1bd61[_0x3e49be(0x1e0)]),_0x4bf9db[_0x3e49be(0x24c)+'te'](_0xc1bd61[_0x3e49be(0x2e3)],_0xc1bd61[_0x3e49be(0x1c3)]),_0x4bf9db[_0x3e49be(0x253)+'t']=_0xc1bd61[_0x3e49be(0x2a3)],_0x2e808a[_0x3e49be(0x1c2)+'d'](_0x4bf9db),_0x320c5c[_0x3e49be(0x1c2)+'d'](_0x2e808a),canvas[_0x3e49be(0x1e4)][_0x3e49be(0x240)]=-0xe*-0x2a5+0x376*0x7+-0x3d3f,buttons[_0x3e49be(0x1e4)][_0x3e49be(0x240)]=0x2*-0x225+0x4*0xf8+0x6b,canvas[_0x3e49be(0x1f7)][_0x3e49be(0x251)](_0xc1bd61[_0x3e49be(0x1c4)]),canvas[_0x3e49be(0x1f7)][_0x3e49be(0x26f)](_0xc1bd61[_0x3e49be(0x1ba)]);const _0x41275e=document[_0x3e49be(0x272)+_0x3e49be(0x1f6)](_0xc1bd61[_0x3e49be(0x29e)]);_0xc1bd61[_0x3e49be(0x1fd)](setTimeout,()=>{const _0x31162c=_0x3e49be;_0x41275e[_0x31162c(0x1f7)][_0x31162c(0x251)](_0xc1bd61[_0x31162c(0x1ba)]),_0x41275e[_0x31162c(0x1f7)][_0x31162c(0x26f)](_0xc1bd61[_0x31162c(0x1c4)]),_0xc1bd61[_0x31162c(0x2f6)](setTimeout,()=>{const _0x52689e=_0x31162c;_0x41275e[_0x52689e(0x251)]();},0x1*-0xd19+-0x256c+0x3479);},0x2*0xf89+-0x151+-0x12d*0x11);}socket['on'](_0x254752(0x211),()=>{const _0x13f9b5=_0x254752,_0x28810b={'VEgCQ':function(_0x1ec953,_0x5b9654){return _0x1ec953!=_0x5b9654;},'oNItQ':function(_0x3ed73e){return _0x3ed73e();}};_0x28810b[_0x13f9b5(0x25b)](connectionSeconds,-0x43*-0x4f+0x9a6+-0x7*0x455)&&_0x28810b[_0x13f9b5(0x232)](stopConnectionTimer);}),socket['on'](_0x254752(0x1e7)+_0x254752(0x267),()=>{const _0x461ff2=_0x254752,_0x303d9a={'BZmfW':function(_0x2a50ed){return _0x2a50ed();}};_0x303d9a[_0x461ff2(0x1b3)](startConnectionTimer);}),socket['on'](_0x254752(0x2e6)+_0x254752(0x261),()=>{const _0xb931fc=_0x254752,_0x22c5c9={'JmBVv':function(_0x1c020a){return _0x1c020a();}};_0x22c5c9[_0xb931fc(0x2b8)](startConnectionTimer);});function toggleOP(){const _0x311385=_0x254752,_0x3e2b0f={'loIgn':_0x311385(0x1d7)+_0x311385(0x208),'AbFNK':_0x311385(0x216),'bSFRc':_0x311385(0x24f),'CJPqH':_0x311385(0x281)+_0x311385(0x1e6),'otEyH':_0x311385(0x2ac),'HoGBm':_0x311385(0x214),'WFejz':_0x311385(0x280)},_0x27f3e3=_0x3e2b0f[_0x311385(0x29b)][_0x311385(0x2b7)]('|');let _0x49ba50=0x19e8+0x281*-0x7+-0x861;while(!![]){switch(_0x27f3e3[_0x49ba50++]){case'0':document[_0x311385(0x272)+_0x311385(0x1f6)](_0x3e2b0f[_0x311385(0x2d9)])[_0x311385(0x1e4)][_0x311385(0x2fa)]=uiVisible?'':_0x3e2b0f[_0x311385(0x296)];continue;case'1':uiVisible=!uiVisible;continue;case'2':document[_0x311385(0x272)+_0x311385(0x1f6)]('xy')[_0x311385(0x1e4)][_0x311385(0x2fa)]=uiVisible?'':_0x3e2b0f[_0x311385(0x296)];continue;case'3':document[_0x311385(0x272)+_0x311385(0x1f6)](_0x3e2b0f[_0x311385(0x2f9)])[_0x311385(0x1e4)][_0x311385(0x2fa)]=uiVisible?'':_0x3e2b0f[_0x311385(0x296)];continue;case'4':document[_0x311385(0x272)+_0x311385(0x1f6)](_0x3e2b0f[_0x311385(0x2e0)])[_0x311385(0x1e4)][_0x311385(0x2fa)]=uiVisible?'':_0x3e2b0f[_0x311385(0x296)];continue;case'5':document[_0x311385(0x272)+_0x311385(0x1f6)](_0x3e2b0f[_0x311385(0x236)])[_0x311385(0x1e4)][_0x311385(0x2fa)]=uiVisible?'':_0x3e2b0f[_0x311385(0x296)];continue;case'6':buttons[_0x311385(0x1e4)][_0x311385(0x2fa)]=uiVisible?'':_0x3e2b0f[_0x311385(0x296)];continue;case'7':document[_0x311385(0x272)+_0x311385(0x1f6)](_0x3e2b0f[_0x311385(0x2ea)])[_0x311385(0x1e4)][_0x311385(0x2fa)]=uiVisible?'':_0x3e2b0f[_0x311385(0x296)];continue;}break;}}function resetView(){const _0x2a27e1=_0x254752,_0x15f61b={'ERzJa':_0x2a27e1(0x1fa)},_0x34cc09=_0x15f61b[_0x2a27e1(0x22a)][_0x2a27e1(0x2b7)]('|');let _0x51b990=0x1*0xb93+-0x814*-0x1+-0x75*0x2b;while(!![]){switch(_0x34cc09[_0x51b990++]){case'0':offsetY=-0xe5d+0x1*0x2569+-0x170c;continue;case'1':offsetX=0x91*-0x1d+-0x3e*-0x35+0x397;continue;case'2':canvasContainer[_0x2a27e1(0x1e4)][_0x2a27e1(0x2f1)]=_0x2a27e1(0x2bf)+')';continue;case'3':canvas[_0x2a27e1(0x1e4)][_0x2a27e1(0x2f1)]=_0x2a27e1(0x2ca)+_0x2a27e1(0x2fe);continue;case'4':zoomLevel=-0x7*-0x58f+-0x303+-0x23e6+0.08;continue;}break;}}function changeColor(_0x5d0abf){const _0x22da92=_0x254752;currentColor=_0x5d0abf[_0x22da92(0x29c)][_0x22da92(0x25f)];}document[_0x254752(0x205)+_0x254752(0x275)](_0x254752(0x286),()=>{isDrawing=![];}),canvas[_0x254752(0x205)+_0x254752(0x275)](_0x254752(0x1ea),()=>{isDrawing=![];}),canvas[_0x254752(0x205)+_0x254752(0x275)](_0x254752(0x1cb),_0x22127b=>{const _0x3dca6f=_0x254752,_0x46b9af={'XOTkK':function(_0x186d12,_0x360ceb){return _0x186d12(_0x360ceb);}};isDrawing=!![],_0x46b9af[_0x3dca6f(0x1cd)](addPoint,_0x22127b);}),canvas[_0x254752(0x205)+_0x254752(0x275)](_0x254752(0x286),()=>{const _0x659908=_0x254752,_0x58d900={'uCyZX':function(_0x18adc9,_0x2eea6d){return _0x18adc9>_0x2eea6d;},'VCiba':_0x659908(0x294),'TYdos':function(_0x42a593){return _0x42a593();},'MKVlM':_0x659908(0x29d)};isDrawing=![];if(_0x58d900[_0x659908(0x2ab)](currentDrawing[_0x659908(0x27e)],0x1644+-0x11c6+0x32*-0x17)){const _0x372892=_0x58d900[_0x659908(0x266)][_0x659908(0x2b7)]('|');let _0x2f6692=-0x20d3+-0x1*0xd64+0x1*0x2e37;while(!![]){switch(_0x372892[_0x2f6692++]){case'0':_0x58d900[_0x659908(0x2db)](draw);continue;case'1':currentDrawing=[];continue;case'2':socket[_0x659908(0x258)](_0x58d900[_0x659908(0x2d6)],{'type':_0x58d900[_0x659908(0x2d6)],'drawing':currentDrawing,'valid':uuid});continue;case'3':drawings[_0x659908(0x231)](currentDrawing);continue;case'4':lastDrawingEmitTime=Date[_0x659908(0x229)]();continue;}break;}}}),canvas[_0x254752(0x205)+_0x254752(0x275)](_0x254752(0x268),_0x2c41b0=>{const _0x59ed2c=_0x254752,_0x1ee7c7={'LFufl':function(_0x4f759b,_0x59cdd5){return _0x4f759b/_0x59cdd5;},'dGjOK':function(_0x6ced71,_0xf3e611){return _0x6ced71/_0xf3e611;},'hQFfh':function(_0x141e25,_0x5a6006){return _0x141e25*_0x5a6006;},'PwUEF':function(_0x2f71bc,_0x54393e){return _0x2f71bc-_0x54393e;},'mWkCa':function(_0x28c1e0,_0x13de28){return _0x28c1e0-_0x13de28;},'tYsya':function(_0x4e9645,_0x7ac8ca){return _0x4e9645(_0x7ac8ca);},'IbNiz':function(_0x3702ec,_0x337062){return _0x3702ec>=_0x337062;},'rYzOX':function(_0x14078a,_0x410a98){return _0x14078a-_0x410a98;},'vInor':_0x59ed2c(0x29d)},_0x4653cd=canvas[_0x59ed2c(0x21b)+_0x59ed2c(0x2ba)+'t'](),_0x3ac2cc=_0x1ee7c7[_0x59ed2c(0x288)](canvas[_0x59ed2c(0x290)],_0x4653cd[_0x59ed2c(0x290)]),_0x11386d=_0x1ee7c7[_0x59ed2c(0x2b4)](canvas[_0x59ed2c(0x1b5)],_0x4653cd[_0x59ed2c(0x1b5)]),_0x2ebbe6=Math[_0x59ed2c(0x256)](_0x1ee7c7[_0x59ed2c(0x248)](_0x1ee7c7[_0x59ed2c(0x1f5)](_0x2c41b0[_0x59ed2c(0x1c0)],_0x4653cd[_0x59ed2c(0x2d3)]),_0x3ac2cc)),_0xec8413=Math[_0x59ed2c(0x256)](_0x1ee7c7[_0x59ed2c(0x248)](_0x1ee7c7[_0x59ed2c(0x260)](_0x2c41b0[_0x59ed2c(0x1dc)],_0x4653cd[_0x59ed2c(0x1d4)]),_0x11386d));tx[_0x59ed2c(0x2ee)]=_0x2ebbe6,ty[_0x59ed2c(0x2ee)]=_0xec8413;if(isDrawing){_0x1ee7c7[_0x59ed2c(0x2e8)](addPoint,_0x2c41b0);const _0xc77f9c=Date[_0x59ed2c(0x229)]();_0x1ee7c7[_0x59ed2c(0x28b)](_0x1ee7c7[_0x59ed2c(0x1ca)](_0xc77f9c,lastDrawingEmitTime),drawingEmitDelay)&&(socket[_0x59ed2c(0x258)](_0x1ee7c7[_0x59ed2c(0x23f)],{'type':_0x1ee7c7[_0x59ed2c(0x23f)],'drawing':currentDrawing,'valid':uuid}),lastDrawingEmitTime=_0xc77f9c);}});function addPoint(_0xf19ba7){const _0xfaa61d=_0x254752,_0x4d4002={'xumam':function(_0x556f8e,_0x5ede6a){return _0x556f8e/_0x5ede6a;},'TmfEC':function(_0x3e0447,_0x2d0e70){return _0x3e0447/_0x2d0e70;},'EOdUM':function(_0x56015f,_0x57c70d){return _0x56015f*_0x57c70d;},'tLnQi':function(_0x55834f,_0x67747c){return _0x55834f-_0x67747c;},'FFRTo':function(_0x30e77c,_0x305082){return _0x30e77c*_0x305082;},'odhPs':function(_0x547347,_0x49cdb6){return _0x547347-_0x49cdb6;},'kYIUn':function(_0x1e5e82){return _0x1e5e82();}};if(!isDrawing)return;const _0x538c09=canvas[_0xfaa61d(0x21b)+_0xfaa61d(0x2ba)+'t'](),_0x3f9663=_0x4d4002[_0xfaa61d(0x2bb)](canvas[_0xfaa61d(0x290)],_0x538c09[_0xfaa61d(0x290)]),_0x3dc0a8=_0x4d4002[_0xfaa61d(0x213)](canvas[_0xfaa61d(0x1b5)],_0x538c09[_0xfaa61d(0x1b5)]),_0x4ebf4f=_0x4d4002[_0xfaa61d(0x219)](_0x4d4002[_0xfaa61d(0x2e4)](_0xf19ba7[_0xfaa61d(0x1c0)],_0x538c09[_0xfaa61d(0x2d3)]),_0x3f9663),_0x4bdab8=_0x4d4002[_0xfaa61d(0x243)](_0x4d4002[_0xfaa61d(0x2e1)](_0xf19ba7[_0xfaa61d(0x1dc)],_0x538c09[_0xfaa61d(0x1d4)]),_0x3dc0a8);currentDrawing[_0xfaa61d(0x231)]({'x':Math[_0xfaa61d(0x256)](_0x4ebf4f),'y':Math[_0xfaa61d(0x256)](_0x4bdab8),'color':currentColor}),_0x4d4002[_0xfaa61d(0x26b)](draw);}function draw(){const _0x355727=_0x254752,_0x21be2b={'RVlUW':function(_0xa2f096,_0x1e3c7b){return _0xa2f096<_0x1e3c7b;},'WHgjb':function(_0x4f7a5b,_0x2c1853){return _0x4f7a5b<_0x2c1853;},'jUvlm':function(_0x1ae232,_0x26f437){return _0x1ae232-_0x26f437;},'hNlND':function(_0x2a52bb,_0x1a7fd7){return _0x2a52bb>_0x1a7fd7;},'DCxIB':function(_0xbb01ee,_0xb58c90){return _0xbb01ee<_0xb58c90;}};context[_0x355727(0x1c6)](-0x10b9*-0x1+-0x1*0x2519+0x1460,0x5*-0x46d+0x22e1+-0xcc0,canvas[_0x355727(0x290)],canvas[_0x355727(0x1b5)]);for(const _0x2f4b7f of drawings){if(_0x21be2b[_0x355727(0x1b2)](_0x2f4b7f[_0x355727(0x27e)],0x53*-0x32+0x1c0a+-0xbd2))continue;for(let _0x1cae95=-0x1803+0x7e8+-0x2*-0x80e;_0x21be2b[_0x355727(0x1c8)](_0x1cae95,_0x2f4b7f[_0x355727(0x27e)]);_0x1cae95++){const _0x5bece5=_0x2f4b7f[_0x21be2b[_0x355727(0x2f7)](_0x1cae95,0xe*0x1db+0x17dc+-0x31d5)],_0x4f8386=_0x2f4b7f[_0x1cae95];context[_0x355727(0x239)](),context[_0x355727(0x238)+'e']=_0x5bece5[_0x355727(0x200)],context[_0x355727(0x293)](Math[_0x355727(0x256)](_0x5bece5['x']),Math[_0x355727(0x256)](_0x5bece5['y'])),context[_0x355727(0x224)](Math[_0x355727(0x256)](_0x4f8386['x']),Math[_0x355727(0x256)](_0x4f8386['y'])),context[_0x355727(0x1dd)]();}}context[_0x355727(0x1dd)]();if(_0x21be2b[_0x355727(0x2b6)](currentDrawing[_0x355727(0x27e)],-0xb*0x380+0xd*-0x2b9+0x49e5)){context[_0x355727(0x239)](),context[_0x355727(0x238)+'e']=currentColor,context[_0x355727(0x293)](Math[_0x355727(0x256)](currentDrawing[0x1152+0x38f*0x3+-0x1bff]['x']),Math[_0x355727(0x256)](currentDrawing[0x151a+0xeff+0x1*-0x2419]['y']));for(let _0x529f00=-0x2363+-0x1bb8+0x3f1c;_0x21be2b[_0x355727(0x2df)](_0x529f00,currentDrawing[_0x355727(0x27e)]);_0x529f00++){const _0xb53baa=currentDrawing[_0x529f00];context[_0x355727(0x224)](Math[_0x355727(0x256)](_0xb53baa['x']),Math[_0x355727(0x256)](_0xb53baa['y']));}context[_0x355727(0x1dd)]();}}socket['on'](_0x254752(0x2de),_0x36ed55=>{const _0x495f30=_0x254752,_0x2859e8={'QTmge':_0x495f30(0x2ac),'PbdgR':function(_0x219516,_0x11a06d){return _0x219516+_0x11a06d;},'aDden':function(_0x1321d1,_0x48fe04){return _0x1321d1+_0x48fe04;},'zZNMz':_0x495f30(0x292)};document[_0x495f30(0x272)+_0x495f30(0x1f6)](_0x2859e8[_0x495f30(0x2bd)])[_0x495f30(0x1b9)+_0x495f30(0x1f3)]('p')[_0x495f30(0x253)+'t']=_0x2859e8[_0x495f30(0x2c5)](_0x2859e8[_0x495f30(0x1c7)](_0x2859e8[_0x495f30(0x23e)],_0x36ed55[_0x495f30(0x25d)]),'MB'),document[_0x495f30(0x272)+_0x495f30(0x1f6)](_0x2859e8[_0x495f30(0x2bd)])[_0x495f30(0x1e4)][_0x495f30(0x240)]=0x431+0x1d2d+0x2*-0x10af+0.25;}),socket['on'](_0x254752(0x1fb),_0x5a21c8=>{const _0x529dba=_0x254752,_0x1a7b9c={'iFmGV':function(_0x1308bc,_0x359294){return _0x1308bc!=_0x359294;},'TDanD':_0x529dba(0x2b9),'CyGFi':_0x529dba(0x1d0)+'er'};_0x1a7b9c[_0x529dba(0x1fe)](_0x5a21c8[_0x529dba(0x202)],_0x1a7b9c[_0x529dba(0x28e)])?(document[_0x529dba(0x272)+_0x529dba(0x1f6)](_0x1a7b9c[_0x529dba(0x2c4)])[_0x529dba(0x2eb)]=_0x5a21c8[_0x529dba(0x202)],document[_0x529dba(0x272)+_0x529dba(0x1f6)](_0x1a7b9c[_0x529dba(0x2c4)])[_0x529dba(0x1fb)]()):document[_0x529dba(0x272)+_0x529dba(0x1f6)](_0x1a7b9c[_0x529dba(0x2c4)])[_0x529dba(0x1e3)]();}),socket['on'](_0x254752(0x1b1)+'nt',_0x16b7ad=>{const _0x3d2caf=_0x254752,_0x506316={'MGzWQ':_0x3d2caf(0x24f),'UVpeN':function(_0x246522,_0x4d8929){return _0x246522-_0x4d8929;},'GnaaH':_0x3d2caf(0x244),'uBtHj':_0x3d2caf(0x2dc),'sXZSY':function(_0x436d9c,_0x4f2e10,_0x46f0f7){return _0x436d9c(_0x4f2e10,_0x46f0f7);},'fJNRR':_0x3d2caf(0x259),'ywqRD':_0x3d2caf(0x2a2),'fYKnJ':_0x3d2caf(0x228),'GdxqQ':function(_0x435d9b,_0x4e5644){return _0x435d9b+_0x4e5644;},'AhwEM':_0x3d2caf(0x234)+_0x3d2caf(0x1f9),'PfQzh':_0x3d2caf(0x203)+_0x3d2caf(0x23b)+_0x3d2caf(0x204),'FMqtl':_0x3d2caf(0x1e4),'SLmFa':_0x3d2caf(0x1c9)+_0x3d2caf(0x1df)+_0x3d2caf(0x1bb)+_0x3d2caf(0x1c1)+_0x3d2caf(0x21a)};if(_0x16b7ad[_0x3d2caf(0x241)]&&_0x16b7ad[_0x3d2caf(0x200)]){const _0x4fd3d0=_0x16b7ad[_0x3d2caf(0x241)],_0x275787=document[_0x3d2caf(0x1b9)+_0x3d2caf(0x1f3)](_0x506316[_0x3d2caf(0x2cb)]),_0x4370d6=document[_0x3d2caf(0x273)+_0x3d2caf(0x269)](_0x506316[_0x3d2caf(0x2da)]);_0x4370d6[_0x3d2caf(0x24c)+'te'](_0x506316[_0x3d2caf(0x298)],_0x506316[_0x3d2caf(0x27b)](_0x506316[_0x3d2caf(0x201)],_0x16b7ad[_0x3d2caf(0x200)])),_0x4370d6[_0x3d2caf(0x24c)+'te']('id',announceCount),_0x4370d6[_0x3d2caf(0x1e4)][_0x3d2caf(0x2f0)]=_0x506316[_0x3d2caf(0x2fb)];const _0x7a1f1=document[_0x3d2caf(0x273)+_0x3d2caf(0x269)]('p');_0x7a1f1[_0x3d2caf(0x24c)+'te'](_0x506316[_0x3d2caf(0x2ce)],_0x506316[_0x3d2caf(0x22d)]),_0x7a1f1[_0x3d2caf(0x253)+'t']=_0x4fd3d0,_0x4370d6[_0x3d2caf(0x1c2)+'d'](_0x7a1f1),_0x275787[_0x3d2caf(0x1c2)+'d'](_0x4370d6),announceCount++,announcementIDs[_0x3d2caf(0x231)](_0x506316[_0x3d2caf(0x2ef)](announceCount,-0x1156*-0x1+-0x1c13+0xabe)),_0x506316[_0x3d2caf(0x28c)](setTimeout,()=>{const _0x1f2820=_0x3d2caf,_0x215c3b={'Fhjrk':_0x506316[_0x1f2820(0x1b7)]},_0x298f34=document[_0x1f2820(0x272)+_0x1f2820(0x1f6)](_0x506316[_0x1f2820(0x2ef)](announceCount,-0x13*-0x1b+-0x18ba+0x16ba));_0x298f34[_0x1f2820(0x1f7)][_0x1f2820(0x251)](_0x506316[_0x1f2820(0x227)]),_0x298f34[_0x1f2820(0x1f7)][_0x1f2820(0x26f)](_0x506316[_0x1f2820(0x20e)]),_0x506316[_0x1f2820(0x28c)](setTimeout,()=>{const _0x78a1e7=_0x1f2820;_0x298f34[_0x78a1e7(0x1e4)][_0x78a1e7(0x2fa)]=_0x215c3b[_0x78a1e7(0x233)],_0x298f34[_0x78a1e7(0x251)]();},0x2*0x6df+-0x72*-0x38+-0x24ba);},-0xdf9+-0x40a+0x258b*0x1);}});function _0x34da(){const _0x22912d=['map','vnIgX','add','click','NhTdr','getElement','createElem','Ping:\x20','stener','getDate','wOUQO','QCiyz','w-version','hzBfC','GdxqQ','VMEye','Clients:\x20','length','right','ping','connectedC','visited','280GgsdYJ','#000000','kxBmZ','mouseup','ebZjC','LFufl','qesYo','QyZsu','IbNiz','sXZSY','lCKBQ','TDanD','4|1|0|2|3','width','type','Size:\x20','moveTo','2|3|0|1|4','existingDr','bSFRc','hingEnable','fYKnJ','MOamn','imageSmoot','loIgn','target','draw','CtQtw','knfdp','ction\x22]','521848UNkFoW','div','nJLOM','NiXxx','ubpBi','ezxUt','NoSsK','px,\x20','\x20auto;','oejeQ','uCyZX','data','Server\x20con','dqWpw','min-width:','srePZ','48125MjJkQt','uCArE','toUTCStrin','dGjOK','drawings','hNlND','split','JmBVv','stop','gClientRec','xumam','GnPFD','QTmge','deltaY','scale(0.08','wUpiP','Collavas\x20v','Kbslm','KqQve','CyGFi','PbdgR','deup\x20green','tored','Server\x20Con','pong','translate(','fJNRR','TCuyS','visible','FMqtl','flex','sYfgb','SrTcX','yFBoM','left','oLVNk','quCnL','MKVlM','tYBJd','toFixed','AbFNK','ywqRD','TYdos','fadedown','fUYiE','dataSize','DCxIB','otEyH','odhPs','LRVLc','HpQHd','tLnQi','uuid','connect_ti','clientNum','tYsya','s\x20been\x20res','WFejz','src','trim','OrWPY','innerHTML','UVpeN','boxShadow','transform','success','ydgOi','iWjwC','meout:\x20','EhcSR','jUvlm',';\x20expires=','CJPqH','display','PfQzh','EXpgh','ault','0px,\x200px)','Lstfs','vas','announceme','RVlUW','BZmfW','transition','height','gBxoE','MGzWQ','wheel','querySelec','sgOfs','margin:\x2025','hidden','uQjNG','drawing','lQrvv','clientX','px\x2050px\x2025','appendChil','dUptq','qjuzC','LWgRM','clearRect','aDden','WHgjb','white-spac','rYzOX','mousedown','Version:\x20','XOTkK','NMgUo','kRCwC','audio-play','YFuAQ','HXEfP','true','top','parse','nection\x20Ti','1|6|5|2|3|','connection','aDzCZ','VDaji','PEtVE','clientY','stroke','EPRhb','e:\x20normal;','TFtAz','px)','ainer','pause','style','cookie','lients','connect_er','deup\x20red','scale(','mouseleave','buttons','VykIy','reload','JKgDl','torAll','e:\x20nowrap;','13710RBTPXp','bSrFQ','tor','hQJTg','PwUEF','ById','classList','HvEiD','deup\x20','2|3|4|1|0','play',';\x20path=/','bDfju','iFmGV','vHAsy','color','AhwEM','audio','0\x204px\x208px\x20','\x200,\x200.1)','addEventLi','Connected\x20','setDate','0|7|4','975120SqacWb','timeout','zjWRt','QZXCd','nection\x20ha','uBtHj','dtCkG','forEach','connect','fTefC','TmfEC','resetView','QikCG','version','canvasCont','Khsja','EOdUM','px\x2050px','getBoundin','Shfhz','OKxQP','aTTvD','qBnhA','welcome','HovNa','wtqdP','[id=\x22conne','lineTo','WRPBY','IXjlq','GnaaH','class','now','ERzJa','eaMzY','TxswY','SLmFa','tYJBn','19532UEnZyJ','92796zkfyvI','push','oNItQ','Fhjrk','message\x20fa','preventDef','HoGBm','vvWAl','strokeStyl','beginPath','title','rgba(0,\x200,','bQFkB','getAttribu','zZNMz','vInor','opacity','message','tizuQ','FFRTo','fadeup','OarXv','drawingCan','down','hQFfh','RLqnz','w-close','zuBCn','setAttribu','zsOlu','342876OjTflU','none','USESW','remove','wDtmZ','textConten','300px','gdAWG','round','NDrya','emit','.messages','Yrhja','VEgCQ','oZawt','size','ylfJA','value','mWkCa','meout','getContext','LfShf','awings','visibility','VCiba','ror','mousemove','ent','zXCHL','kYIUn','nbPSL'];_0x34da=function(){return _0x22912d;};return _0x34da();}function hideMessages(){const _0x2cb6c6=_0x254752,_0xbc75af={'MOamn':function(_0x43b6a5,_0x15f38c){return _0x43b6a5!=_0x15f38c;},'HovNa':_0x2cb6c6(0x1d8),'NDrya':_0x2cb6c6(0x2dc),'aTTvD':function(_0x3766c1,_0x4ffd03){return _0x3766c1!=_0x4ffd03;},'eaMzY':_0x2cb6c6(0x24f),'tYJBn':_0x2cb6c6(0x259),'zjWRt':_0x2cb6c6(0x2a2),'hzBfC':function(_0x42f9c8,_0x8fddf7){return _0x42f9c8>_0x8fddf7;},'OarXv':function(_0x386875,_0x53433c,_0x3a335a){return _0x386875(_0x53433c,_0x3a335a);}},_0x563468=document[_0x2cb6c6(0x1b9)+_0x2cb6c6(0x1f3)](_0xbc75af[_0x2cb6c6(0x22e)]);if(_0x563468){const _0x28c35a=_0x563468[_0x2cb6c6(0x1b9)+_0x2cb6c6(0x1ef)](_0xbc75af[_0x2cb6c6(0x20b)]);_0xbc75af[_0x2cb6c6(0x27a)](_0x28c35a[_0x2cb6c6(0x27e)],-0x5*-0x1f5+-0x180f+0x2db*0x5)&&(_0x28c35a[_0x2cb6c6(0x210)](_0x31c21e=>{const _0xc53bc0=_0x2cb6c6;_0xbc75af[_0xc53bc0(0x299)](_0x31c21e[_0xc53bc0(0x23d)+'te']('id'),_0xbc75af[_0xc53bc0(0x221)])&&_0x31c21e[_0xc53bc0(0x1f7)][_0xc53bc0(0x26f)](_0xbc75af[_0xc53bc0(0x257)]);}),_0xbc75af[_0x2cb6c6(0x245)](setTimeout,()=>{const _0x3b0317=_0x2cb6c6,_0x41e1e1={'IXjlq':function(_0x4d3fc8,_0x3711c9){const _0x1bcbde=_0x3167;return _0xbc75af[_0x1bcbde(0x21e)](_0x4d3fc8,_0x3711c9);},'EPRhb':_0xbc75af[_0x3b0317(0x221)],'QikCG':_0xbc75af[_0x3b0317(0x22b)]};_0x28c35a[_0x3b0317(0x210)](_0x5dee66=>{const _0x17b4b8=_0x3b0317;_0x41e1e1[_0x17b4b8(0x226)](_0x5dee66[_0x17b4b8(0x23d)+'te']('id'),_0x41e1e1[_0x17b4b8(0x1de)])&&(_0x5dee66[_0x17b4b8(0x1e4)][_0x17b4b8(0x2fa)]=_0x41e1e1[_0x17b4b8(0x215)],_0x5dee66[_0x17b4b8(0x251)]());});},-0x2303+-0x3*0x63b+-0x1*-0x37a8));}}setInterval(hideMessages,0x18e+0x992+0x868),socket['on'](_0x254752(0x281)+_0x254752(0x1e6),_0x2e8f69=>{const _0x267ba=_0x254752,_0x5d9172={'zsOlu':_0x267ba(0x2e7),'gBxoE':_0x267ba(0x281)+_0x267ba(0x1e6)};document[_0x267ba(0x272)+_0x267ba(0x1f6)](_0x5d9172[_0x267ba(0x24d)])[_0x267ba(0x253)+'t']=_0x267ba(0x206)+_0x267ba(0x27d)+_0x2e8f69,document[_0x267ba(0x272)+_0x267ba(0x1f6)](_0x5d9172[_0x267ba(0x1b6)])[_0x267ba(0x1e4)][_0x267ba(0x240)]=-0x1f0+-0x1138+-0x1*-0x1328+0.25;}),socket['on'](_0x254752(0x1ed),_0x3ca8b1=>{const _0x3ac145=_0x254752;location[_0x3ac145(0x1ed)](!![]);}),socket['on'](_0x254752(0x216),_0x422edb=>{const _0x4a6459=_0x254752,_0x323193={'qBnhA':_0x4a6459(0x28f),'USESW':_0x4a6459(0x216),'QCiyz':function(_0xa94301,_0x2a2d7f){return _0xa94301+_0x2a2d7f;},'KqQve':_0x4a6459(0x1cc),'NoSsK':_0x4a6459(0x279),'HXEfP':_0x4a6459(0x2c1),'OrWPY':function(_0x3905d1,_0x1fddcf){return _0x3905d1+_0x1fddcf;}},_0x4c1a3c=_0x323193[_0x4a6459(0x21f)][_0x4a6459(0x2b7)]('|');let _0x5e834b=0x2*0x265+-0x12db+0xe11;while(!![]){switch(_0x4c1a3c[_0x5e834b++]){case'0':document[_0x4a6459(0x272)+_0x4a6459(0x1f6)](_0x323193[_0x4a6459(0x250)])[_0x4a6459(0x1e4)][_0x4a6459(0x240)]=0x21cd+0x1*-0x253+-0x1f7a+0.25;continue;case'1':document[_0x4a6459(0x272)+_0x4a6459(0x1f6)](_0x323193[_0x4a6459(0x250)])[_0x4a6459(0x1b9)+_0x4a6459(0x1f3)]('p')[_0x4a6459(0x253)+'t']=_0x323193[_0x4a6459(0x278)](_0x323193[_0x4a6459(0x2c3)],_0x422edb);continue;case'2':versionSet=!![];continue;case'3':document[_0x4a6459(0x272)+_0x4a6459(0x1f6)](_0x323193[_0x4a6459(0x2a7)])[_0x4a6459(0x253)+'t']=_0x323193[_0x4a6459(0x278)](_0x323193[_0x4a6459(0x1d2)],_0x422edb);continue;case'4':document[_0x4a6459(0x23a)]=_0x323193[_0x4a6459(0x2ed)](_0x323193[_0x4a6459(0x1d2)],_0x422edb);continue;}break;}}),socket['on'](_0x254752(0x29d),_0x310f9f=>{const _0x568cba=_0x254752,_0x997311={'lQrvv':_0x568cba(0x24f),'RLqnz':_0x568cba(0x2a2),'wUpiP':_0x568cba(0x244),'wOUQO':_0x568cba(0x2dc),'Khsja':function(_0x2e4629,_0x2546c4,_0x4f308d){return _0x2e4629(_0x2546c4,_0x4f308d);},'nbPSL':function(_0xff15e8,_0x1d5b8e){return _0xff15e8===_0x1d5b8e;},'NMgUo':_0x568cba(0x29d),'Shfhz':function(_0x47e972){return _0x47e972();},'LRVLc':_0x568cba(0x295)+_0x568cba(0x264),'Lstfs':function(_0x4763d9,_0x1a9ae8,_0x4c4160,_0x3853f6){return _0x4763d9(_0x1a9ae8,_0x4c4160,_0x3853f6);},'dtCkG':_0x568cba(0x2e5),'hQJTg':function(_0x44d706){return _0x44d706();},'JKgDl':_0x568cba(0x1b4),'fUYiE':_0x568cba(0x1bc),'VMEye':_0x568cba(0x2cd),'knfdp':function(_0x44e9a1,_0x183199){return _0x44e9a1(_0x183199);},'SrTcX':_0x568cba(0x282),'vHAsy':_0x568cba(0x220),'NhTdr':_0x568cba(0x2cf),'qesYo':_0x568cba(0x1d3),'VDaji':_0x568cba(0x24a),'oLVNk':_0x568cba(0x270)};if(_0x997311[_0x568cba(0x26c)](_0x310f9f[_0x568cba(0x291)],_0x997311[_0x568cba(0x1ce)])&&_0x310f9f[_0x568cba(0x1be)])drawings[_0x568cba(0x231)](_0x310f9f[_0x568cba(0x1be)]),_0x997311[_0x568cba(0x21c)](draw);else{if(_0x997311[_0x568cba(0x26c)](_0x310f9f[_0x568cba(0x291)],_0x997311[_0x568cba(0x2e2)])&&_0x310f9f[_0x568cba(0x2b5)]){const _0x59fcfa=JSON[_0x568cba(0x1d5)](_0x310f9f[_0x568cba(0x2b5)]);uuid=_0x310f9f['id'],_0x997311[_0x568cba(0x1af)](setCookie,_0x997311[_0x568cba(0x20f)],uuid,-0x1f1a+0x2c4+0x1dc3),drawings[_0x568cba(0x231)](..._0x59fcfa),_0x997311[_0x568cba(0x1f4)](draw),document[_0x568cba(0x272)+_0x568cba(0x1f6)](_0x997311[_0x568cba(0x1ee)])[_0x568cba(0x1e4)][_0x568cba(0x240)]=0x1834+0x10*-0x89+-0xfa3,document[_0x568cba(0x272)+_0x568cba(0x1f6)](_0x997311[_0x568cba(0x1ee)])[_0x568cba(0x1e4)][_0x568cba(0x265)]=_0x997311[_0x568cba(0x2dd)],canvas[_0x568cba(0x1e4)][_0x568cba(0x240)]=-0x9*-0x233+-0x18ee+0x524,canvas[_0x568cba(0x1e4)][_0x568cba(0x265)]=_0x997311[_0x568cba(0x27c)],buttons[_0x568cba(0x1e4)][_0x568cba(0x240)]=-0xdfe+0x13bb*0x1+-0x5bc;if(!_0x997311[_0x568cba(0x29f)](getCookie,_0x997311[_0x568cba(0x2d1)])){var _0x117fb5=document[_0x568cba(0x272)+_0x568cba(0x1f6)](_0x997311[_0x568cba(0x1ff)]);_0x117fb5[_0x568cba(0x1e4)][_0x568cba(0x2fa)]=_0x997311[_0x568cba(0x271)],_0x117fb5[_0x568cba(0x1e4)][_0x568cba(0x240)]=-0x7ba+-0xb*0x125+0x1452,_0x117fb5[_0x568cba(0x1b9)+_0x568cba(0x1f3)](_0x997311[_0x568cba(0x249)])[_0x568cba(0x1f7)][_0x568cba(0x26f)](_0x997311[_0x568cba(0x2c0)]),_0x997311[_0x568cba(0x1af)](setCookie,_0x997311[_0x568cba(0x2d1)],_0x997311[_0x568cba(0x289)],0x45*0x29+0x75*-0x15+-0x7),document[_0x568cba(0x272)+_0x568cba(0x1f6)](_0x997311[_0x568cba(0x1da)])[_0x568cba(0x205)+_0x568cba(0x275)](_0x997311[_0x568cba(0x2d4)],_0x5d7b24=>{const _0x3645e0=_0x568cba,_0x53cdc5={'LfShf':_0x997311[_0x3645e0(0x1bf)]};_0x117fb5[_0x3645e0(0x1e4)][_0x3645e0(0x240)]=-0xfb5*-0x1+0x1474+-0x2429,_0x117fb5[_0x3645e0(0x1b9)+_0x3645e0(0x1f3)](_0x997311[_0x3645e0(0x249)])[_0x3645e0(0x1f7)][_0x3645e0(0x251)](_0x997311[_0x3645e0(0x2c0)]),_0x117fb5[_0x3645e0(0x1b9)+_0x3645e0(0x1f3)](_0x997311[_0x3645e0(0x249)])[_0x3645e0(0x1f7)][_0x3645e0(0x26f)](_0x997311[_0x3645e0(0x277)]),_0x997311[_0x3645e0(0x218)](setTimeout,()=>{const _0x176ce2=_0x3645e0;_0x117fb5[_0x176ce2(0x1e4)][_0x176ce2(0x2fa)]=_0x53cdc5[_0x176ce2(0x263)];},-0x1*0x607+0xd48+-0x54d);});}}}});let zoomLevel=-0x26dc*0x1+-0x800+0x2edc+0.08;const zoomFactor=0x1c7e+0x257a+-0x107e*0x4+0.1;let offsetX=0x2fe*-0xc+-0x4*0x1e6+0x2b80,offsetY=-0x4*0x39d+-0x25ac+0x3420;function pan(_0x32d2ae){const _0x3d38e7=_0x254752,_0x132d15={'LWgRM':_0x3d38e7(0x2d3),'zuBCn':_0x3d38e7(0x27f),'EXpgh':_0x3d38e7(0x247),'sYfgb':function(_0xf32576){return _0xf32576();}},_0x233a63=-0x2247+0x249b+-0x22c;switch(_0x32d2ae){case _0x132d15[_0x3d38e7(0x1c5)]:offsetX+=_0x233a63;break;case _0x132d15[_0x3d38e7(0x24b)]:offsetX-=_0x233a63;break;case'up':offsetY+=_0x233a63;break;case _0x132d15[_0x3d38e7(0x2fc)]:offsetY-=_0x233a63;break;default:break;}_0x132d15[_0x3d38e7(0x2d0)](updateCanvasContainerPosition);}function updateCanvasContainerPosition(){const _0x48d0a6=_0x254752,_0x521f67={'OKxQP':function(_0x339615,_0x1d865a){return _0x339615==_0x1d865a;}};_0x521f67[_0x48d0a6(0x21d)](zoomLevel,-0x716*-0x4+-0x25b6+0xda*0xb+0.08)?(canvas[_0x48d0a6(0x1e4)][_0x48d0a6(0x2f1)]=_0x48d0a6(0x2fe),offsetX=0x19a0+-0x19ae+0xe,offsetY=-0x1a75+0x431+0x12c*0x13):canvas[_0x48d0a6(0x1e4)][_0x48d0a6(0x2f1)]=_0x48d0a6(0x2ca)+offsetX+_0x48d0a6(0x2a8)+offsetY+_0x48d0a6(0x1e1);}canvasContainer[_0x254752(0x205)+_0x254752(0x275)](_0x254752(0x1b8),_0x2775d0=>{const _0x3412b8=_0x254752,_0x2388ab={'oejeQ':function(_0xd6f96b,_0x536bb2){return _0xd6f96b>_0x536bb2;},'ylfJA':function(_0x4d6948,_0x1e713c){return _0x4d6948+_0x1e713c;},'ydgOi':function(_0x27198c,_0x13478a){return _0x27198c*_0x13478a;},'ezxUt':function(_0x23ba69,_0x11bab5){return _0x23ba69<_0x11bab5;},'Yrhja':function(_0x5e9c75){return _0x5e9c75();},'wtqdP':function(_0x352e1b,_0x15bc2c){return _0x352e1b>_0x15bc2c;}};_0x2775d0[_0x3412b8(0x235)+_0x3412b8(0x2fd)]();const _0x24ea02=_0x2388ab[_0x3412b8(0x2aa)](_0x2775d0[_0x3412b8(0x2be)],0x71*0x1f+0x2cd*0x2+-0x1349)?-(-0x5*-0x3f5+-0x1*-0xf0b+0x1*-0x22d3):-0x2681+0x1608+0x107a,_0x5f4ecc=_0x2388ab[_0x3412b8(0x25e)](-0x232c+0x2*0xf29+0x4db,_0x2388ab[_0x3412b8(0x2f3)](_0x24ea02,zoomFactor));zoomLevel*=_0x5f4ecc;_0x2388ab[_0x3412b8(0x2a6)](zoomLevel,0x844+0xdfb*-0x2+0x13b2+0.08)&&(zoomLevel=0x134*0x1+-0x2e5*-0x7+-0x1577+0.08,canvas[_0x3412b8(0x1e4)][_0x3412b8(0x2f1)]=_0x3412b8(0x2ca)+_0x3412b8(0x2fe),_0x2388ab[_0x3412b8(0x25a)](updateCanvasContainerPosition));if(_0x2388ab[_0x3412b8(0x222)](zoomLevel,-0xb*0x119+0x13a4+-0x77d))zoomLevel=0x373+0x828+-0xe3*0xd;canvasContainer[_0x3412b8(0x1e4)][_0x3412b8(0x2f1)]=_0x3412b8(0x1e9)+zoomLevel+')';});
\ No newline at end of file
diff --git a/public/static/js/main-UujD4m-4.js b/public/static/js/main-UujD4m-4.js
new file mode 100644
index 0000000..85432d5
--- /dev/null
+++ b/public/static/js/main-UujD4m-4.js
@@ -0,0 +1 @@
+const _0x4e8df8=_0x57c0;(function(_0x35cd08,_0x11471d){const _0x503c7b=_0x57c0,_0xef9114=_0x35cd08();while(!![]){try{const _0x108f10=parseInt(_0x503c7b(0x1b3))/(-0x2b*-0x69+0x1442+-0x25e4)*(-parseInt(_0x503c7b(0x26e))/(0xe3*-0x1+0x6bb+-0xa6*0x9))+parseInt(_0x503c7b(0x2cb))/(0x4a*0x83+-0x18f*-0xe+0x3bad*-0x1)+-parseInt(_0x503c7b(0x24e))/(0x289*0xa+0xc43*-0x1+-0xd13)+parseInt(_0x503c7b(0x212))/(0x2+-0x269*-0x4+0x11*-0x91)+-parseInt(_0x503c7b(0x1ff))/(0x26d1+0x1dc2+0xa1*-0x6d)+parseInt(_0x503c7b(0x2f3))/(0x26f4+-0x10d*-0x17+-0x3f18)+parseInt(_0x503c7b(0x27e))/(0x138e*0x1+-0xe8*-0x3+-0x163e)*(parseInt(_0x503c7b(0x298))/(-0x630*0x1+-0x11f6+-0x97*-0x29));if(_0x108f10===_0x11471d)break;else _0xef9114['push'](_0xef9114['shift']());}catch(_0x3f774c){_0xef9114['push'](_0xef9114['shift']());}}}(_0x4b50,-0x1a05bf+-0x8dc99*-0x2+0x160440));const socket=io({'timeout':0x1f4}),canvas=document[_0x4e8df8(0x1e5)+_0x4e8df8(0x1fc)](_0x4e8df8(0x2e0)+_0x4e8df8(0x2ba)),canvasContainer=document[_0x4e8df8(0x1e5)+_0x4e8df8(0x1fc)](_0x4e8df8(0x2d7)+_0x4e8df8(0x1a0)),buttons=document[_0x4e8df8(0x1e5)+_0x4e8df8(0x1fc)](_0x4e8df8(0x1c1)),tx=document[_0x4e8df8(0x1e5)+_0x4e8df8(0x1fc)]('x'),ty=document[_0x4e8df8(0x1e5)+_0x4e8df8(0x1fc)]('y'),context=canvas[_0x4e8df8(0x2d6)]('2d');function _0x4b50(){const _0x32f122=['FCZii','0|1|2|3|4','qHvlj','hUEyR','rzFxZ','version','dataSize','0\x204px\x208px\x20','nldRw','xPBlZ','ArrowRight','resetView','moveTo','qlPfl','SsERs','textConten','pause','nlzlh','TWRLW','dZtQI','getAttribu','meout:\x20','scale(','message\x20fa','getDate','Version:\x20','SpuQQ','fceNk','VQRul','ENGbL','split','draw','gClientRec','keydown','px,\x20','pmjnt','ror','jQkBD','LLJpT','bPyBE','visibility','UdARi','pZUGk','BnicR','clientX','LGYBi','YGuzY','LMYuV','none','xgxdU','1151132druiJA','e:\x20nowrap;','\x200,\x200.1)','mited','MfFHe','drawing','aRloa','tDFWR','tor','length','style','title','MbhFK','right','eYDek','vuLwp','lineTo','mYgKl','DkOAl','.messages','ZZBos','GgUYq','mouseleave','ibVcJ','SfiMQ','nection\x20Ti','pong','xwLrq','getBoundin','clientY','px\x2050px','lEavB','185690UztRfV','hingEnable','connectedC','visible','remove','display','Server\x20con','uGroh','meVsp','px\x2050px\x2025','Server\x20Con','qyXVp','stroke','height','div','px)','10977488TdHiQY','opacity','UMcem','hneGD','parse','YBCpk','bkQng','boxShadow','MKbSH','uWEvO','LmeZa','EewKV','reload','mousedown','4|0|1|2|3','querySelec','innerHTML','left','white-spac','idsIR','addEventLi','lhwWE','transform','lients','toUTCStrin','deltaY','9ZGdiRR','ction\x22]','color','kbAOD','audio','oUFRx','ceDVP','TARPJ','RmNOY','TDRPU','rLteK','GtVCQ','BLQmi','map','connect','preventDef','toFixed','rgba(0,\x200,','MKcYt','oJudq','push','type','down','w-version','createElem','WbeuH','ent','min-width:','BwMDQ','eLYMI','eSqxm','timeout','TnBNp','You\x20are\x20cu','vas','class','Collavas\x20v','bbGqI','FNefu','eBfxk',';\x20path=/','rjbWy','width',';\x20expires=','WuMHj','beginPath','deup\x20red','Connected\x20','EjaRR','drawings','YVTsw','1710570VQmJTO','target','JukIX','tSAaX','torAll','margin:\x2025','deup\x20','AjYlN','existingDr','announceme','\x20auto;','getContext','canvasCont','true','fadedown','esMbY','gnuzv','CupZo','RRLSm','MAzZp','gxUxS','drawingCan','fCJOR','ofbqW','w-close','connect_ti','IPwur','key','vmDYI','deup\x20green','punIA','eyPrW','connect_er','aYjoc','ZorMl','ocVTA','fadeup','JLctE','[id=\x22conne','scale(0.08','6415129MAqtfC','vBNox','uSpXC','XSCxM','ault','ArrowLeft','hBBKe','moZzU','add','uwjLm','wheel','ping','e:\x20normal;','s\x20been\x20res','ArrowDown','yeOut','LayZB','forEach','strokeStyl','UIRtR','wzSwN','YYnSY','data','value','ainer','setAttribu','RxrMs','meout','VYeei','click','uHouK','CXimW','WTOTz','lQaLe','jXAZi','setDate','now','pmlav','xGxyk','mouseup','300px','flex','TuuVT','13nwDCYl','appendChil','UVQgc','quWtF','emit','clientNum','gXNAT','qwvIt','audio-play','ujuoW','uGfYd','connection','rrently\x20be','size','buttons','flSrO','Clients:\x20','aVFsH','Wmlea','round','cookie','PMgUz','FqPAH','toSrV','trim','tIaho','en\x20rate\x20li','SiuXr','kTnTl','Ping:\x20','OUNho','iPWFF','stener','AZDZz','transition','IxOdQ','GZaBw','qERgC','AExje','dLKak','ApuBk','translate(','awings','JIWlx','5|0|6|1|2|','vkPgN','kRixn','VxSaG','VlUwp','0px,\x200px)','getElement','lHbIg','classList','rokGB','kebOm','rtywC','success','JjrWv','Cdkkl','src','irEaD','imageSmoot','Size:\x20','okVow','ArrowUp','oiMdI','4|3|7','BJbCu','drawLimit','top','vmHEm','nDqBW','play','ById','rtOXi','TaMbe','3762126rsXBTT','nection\x20ha','rfDEM','UxopP','hFVBA','CaEJt','BizuH','mousemove','RjApN','tored','welcome','UOlBz','visited','Blkyg','WJHcS','stop','sguWV','YmQZi','WNDmz','809805bROUEC','#000000','message','clearRect','qTxgm','LdyUg','xeBhg','hidden','rdhet','WrKhw'];_0x4b50=function(){return _0x32f122;};return _0x4b50();}let drawings=[],announcementIDs=[],currentDrawing=[],isDrawing=![],uiVisible=!![],currentColor=_0x4e8df8(0x213),announceCount=-0x1*-0x7f+0x76e+-0x7ec,connectionTimer=null,connectionSeconds=-0xecb+0x2*-0xe5+0x1095,versionSet=![],ping=null;context[_0x4e8df8(0x1f0)+_0x4e8df8(0x26f)+'d']=!![],canvasContainer[_0x4e8df8(0x258)][_0x4e8df8(0x294)]=_0x4e8df8(0x2f2)+')';function getCookie(_0x23e51f){const _0x189b1d=_0x4e8df8,_0x1edcd9={'hUEyR':function(_0x151a39,_0xfaec68){return _0x151a39===_0xfaec68;}},_0x59db82=document[_0x189b1d(0x1c7)][_0x189b1d(0x23a)](';')[_0x189b1d(0x2a5)](_0x2a8a1b=>_0x2a8a1b[_0x189b1d(0x1cb)]());for(const _0x479679 of _0x59db82){const [_0x5953c6,_0x2c3bbc]=_0x479679[_0x189b1d(0x23a)]('=')[_0x189b1d(0x2a5)](_0x1f59be=>decodeURIComponent(_0x1f59be));if(_0x1edcd9[_0x189b1d(0x21f)](_0x5953c6,_0x23e51f))return _0x2c3bbc;}return null;}function setCookie(_0xf85f62,_0x46475c,_0x1e16a2){const _0x1ae5be=_0x4e8df8,_0x5a2cde={'rokGB':function(_0x4121a4,_0x5c26ef){return _0x4121a4+_0x5c26ef;},'IxOdQ':function(_0x4daf54,_0x5a0592){return _0x4daf54+_0x5a0592;},'vmDYI':function(_0x59da69,_0x28a6a8){return _0x59da69(_0x28a6a8);}},_0x58f2c1=new Date();_0x58f2c1[_0x1ae5be(0x1ab)](_0x5a2cde[_0x1ae5be(0x1e8)](_0x58f2c1[_0x1ae5be(0x234)](),_0x1e16a2));const _0xb31e66=_0x5a2cde[_0x1ae5be(0x1d6)](_0x5a2cde[_0x1ae5be(0x2e7)](encodeURIComponent,_0x46475c),_0x1e16a2?_0x1ae5be(0x2c3)+_0x58f2c1[_0x1ae5be(0x296)+'g']():'');document[_0x1ae5be(0x1c7)]=_0xf85f62+'='+_0xb31e66+_0x1ae5be(0x2c0);}function pinger(){const _0xee4aeb=_0x4e8df8,_0x7e8292={'MKcYt':function(_0x2136b1,_0x34598e){return _0x2136b1-_0x34598e;},'wzSwN':function(_0x3cf287,_0x41dc92){return _0x3cf287+_0x41dc92;},'rjbWy':function(_0x56d49a,_0x58ecf0){return _0x56d49a+_0x58ecf0;},'xwLrq':_0xee4aeb(0x1d0),'fCJOR':_0xee4aeb(0x2fe),'FCZii':_0xee4aeb(0x268)},_0x3064ca=Date[_0xee4aeb(0x1ac)](),_0x21d6cb=document[_0xee4aeb(0x1e5)+_0xee4aeb(0x1fc)](_0x7e8292[_0xee4aeb(0x2e1)])[_0xee4aeb(0x28d)+_0xee4aeb(0x256)]('p');socket['on'](_0x7e8292[_0xee4aeb(0x21c)],()=>{const _0x1a1d1d=_0xee4aeb,_0xc2975b=_0x7e8292[_0x1a1d1d(0x2aa)](Date[_0x1a1d1d(0x1ac)](),_0x3064ca);_0x21d6cb[_0x1a1d1d(0x22b)+'t']=_0x7e8292[_0x1a1d1d(0x307)](_0x7e8292[_0x1a1d1d(0x2c1)](_0x7e8292[_0x1a1d1d(0x269)],_0xc2975b),'ms'),document[_0x1a1d1d(0x1e5)+_0x1a1d1d(0x1fc)](_0x7e8292[_0x1a1d1d(0x2e1)])[_0x1a1d1d(0x258)][_0x1a1d1d(0x27f)]=0x8b*-0x12+0xa70+-0xaa+0.25;}),socket[_0xee4aeb(0x1b7)](_0x7e8292[_0xee4aeb(0x2e1)]);}ping=setInterval(pinger,-0x1763*-0x1+0x26e3+-0x3a5e);function startConnectionTimer(){const _0x17ab37=_0x4e8df8,_0x41b5ba={'ApuBk':_0x17ab37(0x2b7),'kRixn':function(_0x5d4532,_0x33260e){return _0x5d4532+_0x33260e;},'fceNk':_0x17ab37(0x278)+_0x17ab37(0x267)+_0x17ab37(0x231),'lEavB':_0x17ab37(0x261),'DkOAl':function(_0x5ecf90,_0x3c299b){return _0x5ecf90>_0x3c299b;},'MKbSH':_0x17ab37(0x2f1)+_0x17ab37(0x299),'uGroh':function(_0x473e21,_0x322cc){return _0x473e21(_0x322cc);},'CXimW':_0x17ab37(0x27c),'hBBKe':_0x17ab37(0x2bb),'rfDEM':_0x17ab37(0x233)+_0x17ab37(0x2c6),'VQRul':_0x17ab37(0x1be),'WrKhw':_0x17ab37(0x223)+_0x17ab37(0x2a9)+_0x17ab37(0x250),'TDRPU':_0x17ab37(0x1b0),'sguWV':_0x17ab37(0x258),'RxrMs':_0x17ab37(0x290)+_0x17ab37(0x24f)+_0x17ab37(0x2d0)+_0x17ab37(0x277)+_0x17ab37(0x26c),'FNefu':_0x17ab37(0x2d9),'rzFxZ':function(_0x23fac0){return _0x23fac0();},'ujuoW':function(_0xf8661d,_0x2d7a49,_0x445ade){return _0xf8661d(_0x2d7a49,_0x445ade);}},_0x5e9558=document[_0x17ab37(0x28d)+_0x17ab37(0x256)](_0x41b5ba[_0x17ab37(0x26d)]);if(_0x41b5ba[_0x17ab37(0x260)](_0x5e9558[_0x17ab37(0x28d)+_0x17ab37(0x2cf)](_0x41b5ba[_0x17ab37(0x286)])[_0x17ab37(0x257)],-0x1*0x24a6+-0x7bd+-0x1*-0x2c63))return;_0x41b5ba[_0x17ab37(0x275)](clearInterval,ping);const _0x3cef19=document[_0x17ab37(0x2b0)+_0x17ab37(0x2b2)](_0x41b5ba[_0x17ab37(0x1a7)]);_0x3cef19[_0x17ab37(0x1a1)+'te'](_0x41b5ba[_0x17ab37(0x2f9)],_0x41b5ba[_0x17ab37(0x201)]),_0x3cef19[_0x17ab37(0x1a1)+'te']('id',_0x41b5ba[_0x17ab37(0x238)]),_0x3cef19[_0x17ab37(0x258)][_0x17ab37(0x285)]=_0x41b5ba[_0x17ab37(0x21b)],_0x3cef19[_0x17ab37(0x258)][_0x17ab37(0x2c2)]=_0x41b5ba[_0x17ab37(0x2a1)];const _0x7fd010=document[_0x17ab37(0x2b0)+_0x17ab37(0x2b2)]('p');_0x7fd010[_0x17ab37(0x1a1)+'te']('id',_0x41b5ba[_0x17ab37(0x1db)]),_0x7fd010[_0x17ab37(0x1a1)+'te'](_0x41b5ba[_0x17ab37(0x20f)],_0x41b5ba[_0x17ab37(0x1a2)]),_0x7fd010[_0x17ab37(0x22b)+'t']=_0x41b5ba[_0x17ab37(0x1e1)](_0x41b5ba[_0x17ab37(0x237)],connectionSeconds[_0x17ab37(0x2a8)](0x3dd*-0x1+-0x8*0x296+0x382*0x7)),_0x3cef19[_0x17ab37(0x1b4)+'d'](_0x7fd010),_0x5e9558[_0x17ab37(0x1b4)+'d'](_0x3cef19),canvas[_0x17ab37(0x258)][_0x17ab37(0x27f)]=0x2*-0x6f5+0x246f+0x5*-0x481,buttons[_0x17ab37(0x258)][_0x17ab37(0x27f)]=0x1*0x556+-0x45*-0x8a+-0x2a88,canvas[_0x17ab37(0x1e7)][_0x17ab37(0x2fb)](_0x41b5ba[_0x17ab37(0x2be)]),drawings=[],currentDrawing=[],_0x41b5ba[_0x17ab37(0x220)](draw),connectionTimer=_0x41b5ba[_0x17ab37(0x1bc)](setInterval,()=>{const _0x220b25=_0x17ab37;connectionSeconds+=-0x175*0x15+0xda8*0x1+0x10f1*0x1+0.1,document[_0x220b25(0x1e5)+_0x220b25(0x1fc)](_0x41b5ba[_0x220b25(0x1db)])[_0x220b25(0x22b)+'t']=_0x41b5ba[_0x220b25(0x1e1)](_0x41b5ba[_0x220b25(0x237)],connectionSeconds[_0x220b25(0x2a8)](0x14bc+0x10e8+-0x25a3));},0x26d3+-0x24eb+-0x184);}function stopConnectionTimer(){const _0x357f9a=_0x4e8df8,_0x21cd53={'LmeZa':_0x357f9a(0x2ef),'qlPfl':_0x357f9a(0x2d9),'BJbCu':function(_0x345e72,_0x5731e8,_0x30440b){return _0x345e72(_0x5731e8,_0x30440b);},'dZtQI':function(_0xb024cc,_0x27327f,_0x1b3835){return _0xb024cc(_0x27327f,_0x1b3835);},'YGuzY':function(_0x1d6824,_0x3f3e7c){return _0x1d6824(_0x3f3e7c);},'RmNOY':_0x357f9a(0x261),'GgUYq':_0x357f9a(0x2f1)+_0x357f9a(0x299),'oUFRx':_0x357f9a(0x27c),'lHbIg':_0x357f9a(0x2bb),'ENGbL':_0x357f9a(0x233)+_0x357f9a(0x2e8),'VYeei':_0x357f9a(0x1eb),'kbAOD':_0x357f9a(0x223)+_0x357f9a(0x2a9)+_0x357f9a(0x250),'eLYMI':_0x357f9a(0x258),'BizuH':_0x357f9a(0x2b3)+_0x357f9a(0x2d5),'SpuQQ':_0x357f9a(0x2b7),'LGYBi':_0x357f9a(0x290)+_0x357f9a(0x24f)+_0x357f9a(0x2d0)+_0x357f9a(0x277)+_0x357f9a(0x26c),'pmlav':_0x357f9a(0x274)+_0x357f9a(0x200)+_0x357f9a(0x300)+_0x357f9a(0x208),'LayZB':function(_0x51ff97,_0x17f881,_0x1c3df8){return _0x51ff97(_0x17f881,_0x1c3df8);}};_0x21cd53[_0x357f9a(0x24a)](clearInterval,connectionTimer),ping=_0x21cd53[_0x357f9a(0x1f6)](setInterval,pinger,0x1684+-0x128e*-0x2+0x4*-0xdee),connectionSeconds=0x116b+0x1*-0x1399+-0x1f*-0x12;const _0x74264f=document[_0x357f9a(0x28d)+_0x357f9a(0x256)](_0x21cd53[_0x357f9a(0x2a0)]);_0x74264f[_0x357f9a(0x28d)+_0x357f9a(0x2cf)](_0x21cd53[_0x357f9a(0x263)])[_0x357f9a(0x304)](_0x251d26=>{const _0x4df6a9=_0x357f9a;_0x251d26[_0x4df6a9(0x1e7)][_0x4df6a9(0x272)](_0x21cd53[_0x4df6a9(0x288)]),_0x251d26[_0x4df6a9(0x1e7)][_0x4df6a9(0x2fb)](_0x21cd53[_0x4df6a9(0x229)]),_0x21cd53[_0x4df6a9(0x1f6)](setTimeout,()=>{const _0x154227=_0x4df6a9;_0x251d26[_0x154227(0x272)]();},0x2523+0x20f4+-0x4423);});const _0x45623a=document[_0x357f9a(0x2b0)+_0x357f9a(0x2b2)](_0x21cd53[_0x357f9a(0x29d)]);_0x45623a[_0x357f9a(0x1a1)+'te'](_0x21cd53[_0x357f9a(0x1e6)],_0x21cd53[_0x357f9a(0x239)]),_0x45623a[_0x357f9a(0x1a1)+'te']('id',_0x21cd53[_0x357f9a(0x1a4)]),_0x45623a[_0x357f9a(0x258)][_0x357f9a(0x285)]=_0x21cd53[_0x357f9a(0x29b)],_0x45623a[_0x357f9a(0x1a1)+'te'](_0x21cd53[_0x357f9a(0x2b5)],_0x21cd53[_0x357f9a(0x205)]);const _0x104f4b=document[_0x357f9a(0x2b0)+_0x357f9a(0x2b2)]('p');_0x104f4b[_0x357f9a(0x1a1)+'te']('id',_0x21cd53[_0x357f9a(0x236)]),_0x104f4b[_0x357f9a(0x1a1)+'te'](_0x21cd53[_0x357f9a(0x2b5)],_0x21cd53[_0x357f9a(0x249)]),_0x104f4b[_0x357f9a(0x22b)+'t']=_0x21cd53[_0x357f9a(0x1ad)],_0x45623a[_0x357f9a(0x1b4)+'d'](_0x104f4b),_0x74264f[_0x357f9a(0x1b4)+'d'](_0x45623a),canvas[_0x357f9a(0x258)][_0x357f9a(0x27f)]=0x2525+-0x257d*0x1+0x59,buttons[_0x357f9a(0x258)][_0x357f9a(0x27f)]=-0x9*-0x37f+0xea2+-0x2e18,canvas[_0x357f9a(0x1e7)][_0x357f9a(0x272)](_0x21cd53[_0x357f9a(0x229)]),canvas[_0x357f9a(0x1e7)][_0x357f9a(0x2fb)](_0x21cd53[_0x357f9a(0x288)]);const _0x49904a=document[_0x357f9a(0x1e5)+_0x357f9a(0x1fc)](_0x21cd53[_0x357f9a(0x1a4)]);_0x21cd53[_0x357f9a(0x303)](setTimeout,()=>{const _0x2a012e=_0x357f9a;_0x49904a[_0x2a012e(0x1e7)][_0x2a012e(0x272)](_0x21cd53[_0x2a012e(0x288)]),_0x49904a[_0x2a012e(0x1e7)][_0x2a012e(0x2fb)](_0x21cd53[_0x2a012e(0x229)]),_0x21cd53[_0x2a012e(0x22f)](setTimeout,()=>{const _0x4cbe86=_0x2a012e;_0x49904a[_0x4cbe86(0x272)]();},0x1164+-0x3af*-0x2+-0x79a*0x3);},0x8*-0x365+-0x131b*-0x1+0x1*0x11d1);}socket['on'](_0x4e8df8(0x2a6),()=>{const _0x47e36e=_0x4e8df8,_0xe83a75={'eyPrW':function(_0x3a98da,_0x15809f){return _0x3a98da!=_0x15809f;},'JukIX':function(_0x13c26a){return _0x13c26a();}};_0xe83a75[_0x47e36e(0x2ea)](connectionSeconds,0x1d62+-0x227c+-0x1*-0x51a)&&_0xe83a75[_0x47e36e(0x2cd)](stopConnectionTimer);}),socket['on'](_0x4e8df8(0x2eb)+_0x4e8df8(0x240),()=>{const _0x1b6b2a=_0x4e8df8,_0x5b1dfd={'UIRtR':function(_0x35fad8){return _0x35fad8();}};_0x5b1dfd[_0x1b6b2a(0x306)](startConnectionTimer);}),socket['on'](_0x4e8df8(0x2e4)+_0x4e8df8(0x1a3),()=>{const _0x2a2cce=_0x4e8df8,_0x340089={'xgxdU':function(_0x585f53){return _0x585f53();}};_0x340089[_0x2a2cce(0x24d)](startConnectionTimer);});function toggleOP(){const _0x158127=_0x4e8df8,_0x13b03e={'kTnTl':_0x158127(0x1df)+_0x158127(0x1f5),'qwvIt':_0x158127(0x24c),'PMgUz':_0x158127(0x270)+_0x158127(0x295),'vmHEm':_0x158127(0x2fe),'vuLwp':_0x158127(0x221),'LLJpT':_0x158127(0x227),'WuMHj':_0x158127(0x309)},_0x268423=_0x13b03e[_0x158127(0x1cf)][_0x158127(0x23a)]('|');let _0x819a4a=-0x1faf+0xbd0+0x13df;while(!![]){switch(_0x268423[_0x819a4a++]){case'0':buttons[_0x158127(0x258)][_0x158127(0x273)]=uiVisible?'':_0x13b03e[_0x158127(0x1ba)];continue;case'1':document[_0x158127(0x1e5)+_0x158127(0x1fc)]('xy')[_0x158127(0x258)][_0x158127(0x273)]=uiVisible?'':_0x13b03e[_0x158127(0x1ba)];continue;case'2':document[_0x158127(0x1e5)+_0x158127(0x1fc)](_0x13b03e[_0x158127(0x1c8)])[_0x158127(0x258)][_0x158127(0x273)]=uiVisible?'':_0x13b03e[_0x158127(0x1ba)];continue;case'3':document[_0x158127(0x1e5)+_0x158127(0x1fc)](_0x13b03e[_0x158127(0x1f9)])[_0x158127(0x258)][_0x158127(0x273)]=uiVisible?'':_0x13b03e[_0x158127(0x1ba)];continue;case'4':document[_0x158127(0x1e5)+_0x158127(0x1fc)](_0x13b03e[_0x158127(0x25d)])[_0x158127(0x258)][_0x158127(0x273)]=uiVisible?'':_0x13b03e[_0x158127(0x1ba)];continue;case'5':uiVisible=!uiVisible;continue;case'6':document[_0x158127(0x1e5)+_0x158127(0x1fc)](_0x13b03e[_0x158127(0x242)])[_0x158127(0x258)][_0x158127(0x273)]=uiVisible?'':_0x13b03e[_0x158127(0x1ba)];continue;case'7':document[_0x158127(0x1e5)+_0x158127(0x1fc)](_0x13b03e[_0x158127(0x2c4)])[_0x158127(0x258)][_0x158127(0x273)]=uiVisible?'':_0x13b03e[_0x158127(0x1ba)];continue;}break;}}function resetView(){const _0x1fff09=_0x4e8df8,_0x18a48d={'mYgKl':_0x1fff09(0x28c)},_0x4d31dd=_0x18a48d[_0x1fff09(0x25f)][_0x1fff09(0x23a)]('|');let _0x1f9957=0x160*-0x1+0x1fde+-0x515*0x6;while(!![]){switch(_0x4d31dd[_0x1f9957++]){case'0':canvas[_0x1fff09(0x258)][_0x1fff09(0x294)]=_0x1fff09(0x1dc)+_0x1fff09(0x1e4);continue;case'1':zoomLevel=-0xda7+0x1*-0x20d+-0x7da*-0x2+0.08;continue;case'2':offsetX=-0x8ec+-0x2593*0x1+0x2e7f;continue;case'3':offsetY=0x1*-0x21fb+0x153d*0x1+0x2*0x65f;continue;case'4':canvasContainer[_0x1fff09(0x258)][_0x1fff09(0x294)]=_0x1fff09(0x2f2)+')';continue;}break;}}function changeColor(_0x15e812){const _0x5740df=_0x4e8df8;currentColor=_0x15e812[_0x5740df(0x2cc)][_0x5740df(0x30a)];}document[_0x4e8df8(0x292)+_0x4e8df8(0x1d3)](_0x4e8df8(0x1af),()=>{isDrawing=![];}),canvas[_0x4e8df8(0x292)+_0x4e8df8(0x1d3)](_0x4e8df8(0x264),()=>{isDrawing=![];}),canvas[_0x4e8df8(0x292)+_0x4e8df8(0x1d3)](_0x4e8df8(0x28b),_0x127375=>{const _0x1fd158=_0x4e8df8,_0x46f78a={'oiMdI':function(_0x25aa89,_0x3996ab){return _0x25aa89(_0x3996ab);}};isDrawing=!![],_0x46f78a[_0x1fd158(0x1f4)](addPoint,_0x127375);}),canvas[_0x4e8df8(0x292)+_0x4e8df8(0x1d3)](_0x4e8df8(0x206),_0x61012c=>{const _0xbb11a9=_0x4e8df8,_0x1f8759={'UdARi':function(_0x3a453b,_0x208c49){return _0x3a453b/_0x208c49;},'WbeuH':function(_0x512a1b,_0x4d4074){return _0x512a1b*_0x4d4074;},'Blkyg':function(_0x5a4922,_0x416973){return _0x5a4922-_0x416973;},'EewKV':function(_0xf9cdcd,_0x48e010){return _0xf9cdcd*_0x48e010;},'SiuXr':function(_0x3f77ff,_0x55b2f6){return _0x3f77ff(_0x55b2f6);},'AZDZz':_0xbb11a9(0x23b)},_0x37a5a7=canvas[_0xbb11a9(0x26a)+_0xbb11a9(0x23c)+'t'](),_0x116b11=_0x1f8759[_0xbb11a9(0x245)](canvas[_0xbb11a9(0x2c2)],_0x37a5a7[_0xbb11a9(0x2c2)]),_0x595324=_0x1f8759[_0xbb11a9(0x245)](canvas[_0xbb11a9(0x27b)],_0x37a5a7[_0xbb11a9(0x27b)]),_0x9ea868=Math[_0xbb11a9(0x1c6)](_0x1f8759[_0xbb11a9(0x2b1)](_0x1f8759[_0xbb11a9(0x20c)](_0x61012c[_0xbb11a9(0x248)],_0x37a5a7[_0xbb11a9(0x28f)]),_0x116b11)),_0x228084=Math[_0xbb11a9(0x1c6)](_0x1f8759[_0xbb11a9(0x289)](_0x1f8759[_0xbb11a9(0x20c)](_0x61012c[_0xbb11a9(0x26b)],_0x37a5a7[_0xbb11a9(0x1f8)]),_0x595324));tx[_0xbb11a9(0x28e)]=_0x9ea868,ty[_0xbb11a9(0x28e)]=_0x228084,isDrawing&&(_0x1f8759[_0xbb11a9(0x1ce)](addPoint,_0x61012c),socket[_0xbb11a9(0x1b7)](_0x1f8759[_0xbb11a9(0x1d4)],{'type':_0x1f8759[_0xbb11a9(0x1d4)],'drawing':currentDrawing}));}),canvas[_0x4e8df8(0x292)+_0x4e8df8(0x1d3)](_0x4e8df8(0x1af),()=>{const _0xb6ce47=_0x4e8df8,_0x4538d3={'VxSaG':function(_0x2e709f,_0x389264){return _0x2e709f>_0x389264;},'xGxyk':_0xb6ce47(0x23b),'MAzZp':function(_0x40d053){return _0x40d053();}};isDrawing=![],_0x4538d3[_0xb6ce47(0x1e2)](currentDrawing[_0xb6ce47(0x257)],-0x5*0x7b+0x1596+0x132f*-0x1)&&(socket[_0xb6ce47(0x1b7)](_0x4538d3[_0xb6ce47(0x1ae)],{'type':_0x4538d3[_0xb6ce47(0x1ae)],'drawing':currentDrawing}),drawings[_0xb6ce47(0x2ac)](currentDrawing),_0x4538d3[_0xb6ce47(0x2de)](draw),currentDrawing=[]);}),document[_0x4e8df8(0x292)+_0x4e8df8(0x1d3)](_0x4e8df8(0x23d),function(_0x2d74bd){const _0x2da2de=_0x4e8df8,_0x54de27={'AjYlN':function(_0x2ae99f,_0x41993a){return _0x2ae99f===_0x41993a;},'CupZo':_0x2da2de(0x1f3),'iPWFF':function(_0x36ab37,_0x1ed2a8){return _0x36ab37(_0x1ed2a8);},'pmjnt':function(_0x40d2db,_0x5b45b2){return _0x40d2db===_0x5b45b2;},'hneGD':_0x2da2de(0x301),'YVTsw':_0x2da2de(0x2ae),'jQkBD':_0x2da2de(0x2f8),'tIaho':function(_0x364e42,_0x5a9674){return _0x364e42(_0x5a9674);},'idsIR':_0x2da2de(0x28f),'bkQng':function(_0x5b4b18,_0x211546){return _0x5b4b18===_0x211546;},'uGfYd':_0x2da2de(0x226),'rLteK':_0x2da2de(0x25b)};if(_0x54de27[_0x2da2de(0x2d2)](_0x2d74bd[_0x2da2de(0x2e6)],_0x54de27[_0x2da2de(0x2dc)]))_0x54de27[_0x2da2de(0x1d2)](pan,'up');else{if(_0x54de27[_0x2da2de(0x23f)](_0x2d74bd[_0x2da2de(0x2e6)],_0x54de27[_0x2da2de(0x281)]))_0x54de27[_0x2da2de(0x1d2)](pan,_0x54de27[_0x2da2de(0x2ca)]);else{if(_0x54de27[_0x2da2de(0x2d2)](_0x2d74bd[_0x2da2de(0x2e6)],_0x54de27[_0x2da2de(0x241)]))_0x54de27[_0x2da2de(0x1cc)](pan,_0x54de27[_0x2da2de(0x291)]);else _0x54de27[_0x2da2de(0x284)](_0x2d74bd[_0x2da2de(0x2e6)],_0x54de27[_0x2da2de(0x1bd)])&&_0x54de27[_0x2da2de(0x1d2)](pan,_0x54de27[_0x2da2de(0x2a2)]);}}});function addPoint(_0x11e45e){const _0x446d86=_0x4e8df8,_0x27f04e={'oJudq':function(_0x12cb0a,_0xb93774){return _0x12cb0a/_0xb93774;},'ocVTA':function(_0x187a51,_0x1689c1){return _0x187a51/_0x1689c1;},'TaMbe':function(_0x1acbd0,_0x312bd2){return _0x1acbd0*_0x312bd2;},'UMcem':function(_0x2dbd20,_0x5b35f0){return _0x2dbd20-_0x5b35f0;},'rtOXi':function(_0x29c2c1,_0x94abc4){return _0x29c2c1-_0x94abc4;},'GZaBw':function(_0x50bc78){return _0x50bc78();}};if(!isDrawing)return;const _0x99e168=canvas[_0x446d86(0x26a)+_0x446d86(0x23c)+'t'](),_0x337e91=_0x27f04e[_0x446d86(0x2ab)](canvas[_0x446d86(0x2c2)],_0x99e168[_0x446d86(0x2c2)]),_0xca49=_0x27f04e[_0x446d86(0x2ee)](canvas[_0x446d86(0x27b)],_0x99e168[_0x446d86(0x27b)]),_0x152913=_0x27f04e[_0x446d86(0x1fe)](_0x27f04e[_0x446d86(0x280)](_0x11e45e[_0x446d86(0x248)],_0x99e168[_0x446d86(0x28f)]),_0x337e91),_0x5daa08=_0x27f04e[_0x446d86(0x1fe)](_0x27f04e[_0x446d86(0x1fd)](_0x11e45e[_0x446d86(0x26b)],_0x99e168[_0x446d86(0x1f8)]),_0xca49);currentDrawing[_0x446d86(0x2ac)]({'x':Math[_0x446d86(0x1c6)](_0x152913),'y':Math[_0x446d86(0x1c6)](_0x5daa08),'color':currentColor}),_0x27f04e[_0x446d86(0x1d7)](draw);}function draw(){const _0x47fa9b=_0x4e8df8,_0x4e001c={'YmQZi':function(_0x26aa42,_0x345da3){return _0x26aa42<_0x345da3;},'irEaD':function(_0x107378,_0x32aced){return _0x107378<_0x32aced;},'RjApN':function(_0x1a4cb0,_0x42f343){return _0x1a4cb0-_0x42f343;},'moZzU':function(_0x298a48,_0xe9dda){return _0x298a48>_0xe9dda;}};context[_0x47fa9b(0x215)](-0x1*-0x2626+0x3*-0x9c4+-0x16*0x67,-0xac8+-0x1ed4+0x299c,canvas[_0x47fa9b(0x2c2)],canvas[_0x47fa9b(0x27b)]);for(const _0x414133 of drawings){if(_0x4e001c[_0x47fa9b(0x210)](_0x414133[_0x47fa9b(0x257)],0x7*-0x36d+0x1*-0x131c+-0x1*-0x2b19))continue;for(let _0x35bac7=0xd44+-0x1*0x2072+-0x665*-0x3;_0x4e001c[_0x47fa9b(0x1ef)](_0x35bac7,_0x414133[_0x47fa9b(0x257)]);_0x35bac7++){const _0x1820dd=_0x414133[_0x4e001c[_0x47fa9b(0x207)](_0x35bac7,0x14a1+-0x5e9+-0xeb7)],_0x2be2cc=_0x414133[_0x35bac7];context[_0x47fa9b(0x2c5)](),context[_0x47fa9b(0x305)+'e']=_0x1820dd[_0x47fa9b(0x29a)],context[_0x47fa9b(0x228)](Math[_0x47fa9b(0x1c6)](_0x1820dd['x']),Math[_0x47fa9b(0x1c6)](_0x1820dd['y'])),context[_0x47fa9b(0x25e)](Math[_0x47fa9b(0x1c6)](_0x2be2cc['x']),Math[_0x47fa9b(0x1c6)](_0x2be2cc['y'])),context[_0x47fa9b(0x27a)]();}}context[_0x47fa9b(0x27a)]();if(_0x4e001c[_0x47fa9b(0x2fa)](currentDrawing[_0x47fa9b(0x257)],0x80c+0xc*0x277+-0x25a0)){context[_0x47fa9b(0x2c5)](),context[_0x47fa9b(0x305)+'e']=currentColor,context[_0x47fa9b(0x228)](Math[_0x47fa9b(0x1c6)](currentDrawing[-0x303*0x4+-0x9a*0x2+0xd40]['x']),Math[_0x47fa9b(0x1c6)](currentDrawing[-0x9*0x43b+-0xb*0x312+0x47d9]['y']));for(let _0xf043f0=0x3e*-0x80+0x35c+0x151*0x15;_0x4e001c[_0x47fa9b(0x210)](_0xf043f0,currentDrawing[_0x47fa9b(0x257)]);_0xf043f0++){const _0x5ac71e=currentDrawing[_0xf043f0];context[_0x47fa9b(0x25e)](Math[_0x47fa9b(0x1c6)](_0x5ac71e['x']),Math[_0x47fa9b(0x1c6)](_0x5ac71e['y']));}context[_0x47fa9b(0x27a)]();}}socket['on'](_0x4e8df8(0x222),_0x58f907=>{const _0x5c51a3=_0x4e8df8,_0x57b9bb={'bbGqI':_0x5c51a3(0x309),'toSrV':function(_0xece6f8,_0x1cb256){return _0xece6f8+_0x1cb256;},'EjaRR':_0x5c51a3(0x1f1)};document[_0x5c51a3(0x1e5)+_0x5c51a3(0x1fc)](_0x57b9bb[_0x5c51a3(0x2bd)])[_0x5c51a3(0x28d)+_0x5c51a3(0x256)]('p')[_0x5c51a3(0x22b)+'t']=_0x57b9bb[_0x5c51a3(0x1ca)](_0x57b9bb[_0x5c51a3(0x1ca)](_0x57b9bb[_0x5c51a3(0x2c8)],_0x58f907[_0x5c51a3(0x1c0)]),'MB'),document[_0x5c51a3(0x1e5)+_0x5c51a3(0x1fc)](_0x57b9bb[_0x5c51a3(0x2bd)])[_0x5c51a3(0x258)][_0x5c51a3(0x27f)]=0x13e9+-0x4d8+0xf11*-0x1+0.25;}),socket['on'](_0x4e8df8(0x1f7),_0x57d157=>{const _0xbfd5f=_0x4e8df8,_0x34d956={'vkPgN':_0xbfd5f(0x24c),'qTxgm':function(_0x40d6bf,_0x54a637){return _0x40d6bf-_0x54a637;},'UVQgc':_0xbfd5f(0x2ef),'JLctE':_0xbfd5f(0x2d9),'BLQmi':function(_0x121353,_0xf8bfed,_0xa77340){return _0x121353(_0xf8bfed,_0xa77340);},'OUNho':_0xbfd5f(0x261),'FqPAH':_0xbfd5f(0x27c),'qERgC':_0xbfd5f(0x2bb),'LMYuV':_0xbfd5f(0x233)+_0xbfd5f(0x2c6),'GtVCQ':_0xbfd5f(0x223)+_0xbfd5f(0x2a9)+_0xbfd5f(0x250),'LdyUg':_0xbfd5f(0x258),'eSqxm':_0xbfd5f(0x290)+_0xbfd5f(0x2ff)+_0xbfd5f(0x2d0)+_0xbfd5f(0x277)+_0xbfd5f(0x26c),'rdhet':_0xbfd5f(0x2b9)+_0xbfd5f(0x1bf)+_0xbfd5f(0x1cd)+_0xbfd5f(0x251)},_0x6d09d9=document[_0xbfd5f(0x28d)+_0xbfd5f(0x256)](_0x34d956[_0xbfd5f(0x1d1)]),_0xf82e8a=document[_0xbfd5f(0x2b0)+_0xbfd5f(0x2b2)](_0x34d956[_0xbfd5f(0x1c9)]);_0xf82e8a[_0xbfd5f(0x1a1)+'te'](_0x34d956[_0xbfd5f(0x1d8)],_0x34d956[_0xbfd5f(0x24b)]),_0xf82e8a[_0xbfd5f(0x1a1)+'te']('id',announceCount),_0xf82e8a[_0xbfd5f(0x258)][_0xbfd5f(0x285)]=_0x34d956[_0xbfd5f(0x2a3)];const _0x4c4ed5=document[_0xbfd5f(0x2b0)+_0xbfd5f(0x2b2)]('p');_0x4c4ed5[_0xbfd5f(0x1a1)+'te'](_0x34d956[_0xbfd5f(0x217)],_0x34d956[_0xbfd5f(0x2b6)]),_0x4c4ed5[_0xbfd5f(0x22b)+'t']=_0x34d956[_0xbfd5f(0x21a)],_0xf82e8a[_0xbfd5f(0x1b4)+'d'](_0x4c4ed5),_0x6d09d9[_0xbfd5f(0x1b4)+'d'](_0xf82e8a),announceCount++,announcementIDs[_0xbfd5f(0x2ac)](_0x34d956[_0xbfd5f(0x216)](announceCount,-0x3*0xd02+-0x16bb*-0x1+0x104c)),_0x34d956[_0xbfd5f(0x2a4)](setTimeout,()=>{const _0x4c24e0=_0xbfd5f,_0x43456e={'YBCpk':_0x34d956[_0x4c24e0(0x1e0)]},_0x5ce945=document[_0x4c24e0(0x1e5)+_0x4c24e0(0x1fc)](_0x34d956[_0x4c24e0(0x216)](announceCount,-0x2*-0x954+-0x1*0x634+0xc73*-0x1));_0x5ce945[_0x4c24e0(0x1e7)][_0x4c24e0(0x272)](_0x34d956[_0x4c24e0(0x1b5)]),_0x5ce945[_0x4c24e0(0x1e7)][_0x4c24e0(0x2fb)](_0x34d956[_0x4c24e0(0x2f0)]),_0x34d956[_0x4c24e0(0x2a4)](setTimeout,()=>{const _0x2f96b4=_0x4c24e0;_0x5ce945[_0x2f96b4(0x258)][_0x2f96b4(0x273)]=_0x43456e[_0x2f96b4(0x283)],_0x5ce945[_0x2f96b4(0x272)]();},-0x241*-0x9+-0x1*0x1735+0x4e0);},0x1af7+-0x6df+0x90*-0x1);}),socket['on'](_0x4e8df8(0x1fb),_0x2480a9=>{const _0x4b6297=_0x4e8df8,_0x42f018={'YYnSY':function(_0x53da7d,_0x237685){return _0x53da7d!=_0x237685;},'CaEJt':_0x4b6297(0x20e),'uSpXC':_0x4b6297(0x1bb)+'er'};_0x42f018[_0x4b6297(0x308)](_0x2480a9[_0x4b6297(0x29c)],_0x42f018[_0x4b6297(0x204)])?(document[_0x4b6297(0x1e5)+_0x4b6297(0x1fc)](_0x42f018[_0x4b6297(0x2f5)])[_0x4b6297(0x1ee)]=_0x2480a9[_0x4b6297(0x29c)],document[_0x4b6297(0x1e5)+_0x4b6297(0x1fc)](_0x42f018[_0x4b6297(0x2f5)])[_0x4b6297(0x1fb)]()):document[_0x4b6297(0x1e5)+_0x4b6297(0x1fc)](_0x42f018[_0x4b6297(0x2f5)])[_0x4b6297(0x22c)]();}),socket['on'](_0x4e8df8(0x2d4)+'nt',_0xcd261=>{const _0x3f95b1=_0x4e8df8,_0x22010e={'okVow':_0x3f95b1(0x24c),'tSAaX':function(_0x31bfdc,_0x212fc5){return _0x31bfdc-_0x212fc5;},'MfFHe':_0x3f95b1(0x2ef),'jXAZi':_0x3f95b1(0x2d9),'WNDmz':function(_0x39d208,_0x40ac18,_0x2523b9){return _0x39d208(_0x40ac18,_0x2523b9);},'UxopP':_0x3f95b1(0x261),'vBNox':_0x3f95b1(0x27c),'tDFWR':_0x3f95b1(0x2bb),'TWRLW':function(_0x306f2d,_0x451fa4){return _0x306f2d+_0x451fa4;},'uwjLm':_0x3f95b1(0x233)+_0x3f95b1(0x2d1),'nlzlh':_0x3f95b1(0x223)+_0x3f95b1(0x2a9)+_0x3f95b1(0x250),'uHouK':_0x3f95b1(0x258),'eYDek':_0x3f95b1(0x290)+_0x3f95b1(0x2ff)+_0x3f95b1(0x2d0)+_0x3f95b1(0x277)+_0x3f95b1(0x26c),'kebOm':function(_0xc4de52,_0x3189f0){return _0xc4de52-_0x3189f0;},'aVFsH':function(_0x369b8a,_0x4a4006,_0x22d284){return _0x369b8a(_0x4a4006,_0x22d284);}};if(_0xcd261[_0x3f95b1(0x214)]&&_0xcd261[_0x3f95b1(0x29a)]){const _0x124453=_0xcd261[_0x3f95b1(0x214)],_0x2518fc=document[_0x3f95b1(0x28d)+_0x3f95b1(0x256)](_0x22010e[_0x3f95b1(0x202)]),_0x23beee=document[_0x3f95b1(0x2b0)+_0x3f95b1(0x2b2)](_0x22010e[_0x3f95b1(0x2f4)]);_0x23beee[_0x3f95b1(0x1a1)+'te'](_0x22010e[_0x3f95b1(0x255)],_0x22010e[_0x3f95b1(0x22e)](_0x22010e[_0x3f95b1(0x2fc)],_0xcd261[_0x3f95b1(0x29a)])),_0x23beee[_0x3f95b1(0x1a1)+'te']('id',announceCount),_0x23beee[_0x3f95b1(0x258)][_0x3f95b1(0x285)]=_0x22010e[_0x3f95b1(0x22d)];const _0x4f2f2a=document[_0x3f95b1(0x2b0)+_0x3f95b1(0x2b2)]('p');_0x4f2f2a[_0x3f95b1(0x1a1)+'te'](_0x22010e[_0x3f95b1(0x1a6)],_0x22010e[_0x3f95b1(0x25c)]),_0x4f2f2a[_0x3f95b1(0x22b)+'t']=_0x124453,_0x23beee[_0x3f95b1(0x1b4)+'d'](_0x4f2f2a),_0x2518fc[_0x3f95b1(0x1b4)+'d'](_0x23beee),announceCount++,announcementIDs[_0x3f95b1(0x2ac)](_0x22010e[_0x3f95b1(0x1e9)](announceCount,-0x1f0a+-0x9f*-0x2c+-0x1*-0x3b7)),_0x22010e[_0x3f95b1(0x1c4)](setTimeout,()=>{const _0x479bc5=_0x3f95b1,_0x3817fe={'ZorMl':_0x22010e[_0x479bc5(0x1f2)]},_0x177e29=document[_0x479bc5(0x1e5)+_0x479bc5(0x1fc)](_0x22010e[_0x479bc5(0x2ce)](announceCount,-0xe0a+-0x2436+0x3241));_0x177e29[_0x479bc5(0x1e7)][_0x479bc5(0x272)](_0x22010e[_0x479bc5(0x252)]),_0x177e29[_0x479bc5(0x1e7)][_0x479bc5(0x2fb)](_0x22010e[_0x479bc5(0x1aa)]),_0x22010e[_0x479bc5(0x211)](setTimeout,()=>{const _0x4dd057=_0x479bc5;_0x177e29[_0x4dd057(0x258)][_0x4dd057(0x273)]=_0x3817fe[_0x4dd057(0x2ed)],_0x177e29[_0x4dd057(0x272)]();},-0x1935+0x26e7+0x3ea*-0x3);},-0xc3+-0x1*0x32b+0xb*0x222);}});function hideMessages(){const _0x4d1d90=_0x4e8df8,_0x3fd569={'xPBlZ':function(_0x540bca,_0x12e673){return _0x540bca!=_0x12e673;},'hFVBA':_0x4d1d90(0x1be),'UOlBz':_0x4d1d90(0x2d9),'uWEvO':function(_0x2bced3,_0x2f780e){return _0x2bced3!=_0x2f780e;},'JjrWv':_0x4d1d90(0x24c),'flSrO':_0x4d1d90(0x261),'aRloa':_0x4d1d90(0x27c),'RRLSm':function(_0x3aa97f,_0x59ce46){return _0x3aa97f>_0x59ce46;},'rtywC':function(_0x30c3ec,_0x8d3b80,_0x298148){return _0x30c3ec(_0x8d3b80,_0x298148);}},_0x503d73=document[_0x4d1d90(0x28d)+_0x4d1d90(0x256)](_0x3fd569[_0x4d1d90(0x1c2)]);if(_0x503d73){const _0x5230f2=_0x503d73[_0x4d1d90(0x28d)+_0x4d1d90(0x2cf)](_0x3fd569[_0x4d1d90(0x254)]);_0x3fd569[_0x4d1d90(0x2dd)](_0x5230f2[_0x4d1d90(0x257)],0x1372+-0x193a+0x5c9)&&(_0x5230f2[_0x4d1d90(0x304)](_0x227b39=>{const _0x5c25b1=_0x4d1d90;_0x3fd569[_0x5c25b1(0x225)](_0x227b39[_0x5c25b1(0x230)+'te']('id'),_0x3fd569[_0x5c25b1(0x203)])&&_0x227b39[_0x5c25b1(0x1e7)][_0x5c25b1(0x2fb)](_0x3fd569[_0x5c25b1(0x20a)]);}),_0x3fd569[_0x4d1d90(0x1ea)](setTimeout,()=>{const _0x4161a1=_0x4d1d90;_0x5230f2[_0x4161a1(0x304)](_0xbd3b63=>{const _0x5268dc=_0x4161a1;_0x3fd569[_0x5268dc(0x287)](_0xbd3b63[_0x5268dc(0x230)+'te']('id'),_0x3fd569[_0x5268dc(0x203)])&&(_0xbd3b63[_0x5268dc(0x258)][_0x5268dc(0x273)]=_0x3fd569[_0x5268dc(0x1ec)],_0xbd3b63[_0x5268dc(0x272)]());});},0xbb*-0x7+0x3*0x1c6+0x1*0x1bf));}}setInterval(hideMessages,-0x72d*-0x3+0x239a+0xb*-0x36b),socket['on'](_0x4e8df8(0x270)+_0x4e8df8(0x295),_0x51d470=>{const _0x27e3d7=_0x4e8df8,_0xf1850d={'MbhFK':_0x27e3d7(0x1b8),'meVsp':_0x27e3d7(0x270)+_0x27e3d7(0x295)};document[_0x27e3d7(0x1e5)+_0x27e3d7(0x1fc)](_0xf1850d[_0x27e3d7(0x25a)])[_0x27e3d7(0x22b)+'t']=_0x27e3d7(0x2c7)+_0x27e3d7(0x1c3)+_0x51d470,document[_0x27e3d7(0x1e5)+_0x27e3d7(0x1fc)](_0xf1850d[_0x27e3d7(0x276)])[_0x27e3d7(0x258)][_0x27e3d7(0x27f)]=-0xc1*0x29+-0x7*-0x32e+0x8a7*0x1+0.25;}),socket['on'](_0x4e8df8(0x28a),_0x1456ba=>{const _0x55dc9f=_0x4e8df8;location[_0x55dc9f(0x28a)](!![]);}),socket['on'](_0x4e8df8(0x221),_0x463112=>{const _0x347c59=_0x4e8df8,_0x3362d8={'aYjoc':_0x347c59(0x21d),'JIWlx':function(_0x32539f,_0x2ed02b){return _0x32539f+_0x2ed02b;},'Wmlea':_0x347c59(0x2bc),'lQaLe':_0x347c59(0x221),'punIA':function(_0x5b7768,_0x44a6fa){return _0x5b7768+_0x44a6fa;},'TuuVT':_0x347c59(0x235),'eBfxk':_0x347c59(0x2af)},_0x487427=_0x3362d8[_0x347c59(0x2ec)][_0x347c59(0x23a)]('|');let _0xdac1b8=0x1865+-0x16df*-0x1+-0x64*0x79;while(!![]){switch(_0x487427[_0xdac1b8++]){case'0':document[_0x347c59(0x259)]=_0x3362d8[_0x347c59(0x1de)](_0x3362d8[_0x347c59(0x1c5)],_0x463112);continue;case'1':document[_0x347c59(0x1e5)+_0x347c59(0x1fc)](_0x3362d8[_0x347c59(0x1a9)])[_0x347c59(0x28d)+_0x347c59(0x256)]('p')[_0x347c59(0x22b)+'t']=_0x3362d8[_0x347c59(0x2e9)](_0x3362d8[_0x347c59(0x1b2)],_0x463112);continue;case'2':document[_0x347c59(0x1e5)+_0x347c59(0x1fc)](_0x3362d8[_0x347c59(0x1a9)])[_0x347c59(0x258)][_0x347c59(0x27f)]=0x25f5+-0x785+0x79c*-0x4+0.25;continue;case'3':versionSet=!![];continue;case'4':document[_0x347c59(0x1e5)+_0x347c59(0x1fc)](_0x3362d8[_0x347c59(0x2bf)])[_0x347c59(0x22b)+'t']=_0x3362d8[_0x347c59(0x2e9)](_0x3362d8[_0x347c59(0x1c5)],_0x463112);continue;}break;}}),socket['on'](_0x4e8df8(0x23b),_0x5b970c=>{const _0x53dbe6=_0x4e8df8,_0x190ece={'lhwWE':_0x53dbe6(0x24c),'TARPJ':_0x53dbe6(0x27c),'TnBNp':_0x53dbe6(0x2ef),'WJHcS':_0x53dbe6(0x2d9),'SfiMQ':function(_0x7e99cf,_0x2353b9,_0x2970f6){return _0x7e99cf(_0x2353b9,_0x2970f6);},'bPyBE':function(_0x44bc3c,_0x2835c4){return _0x44bc3c===_0x2835c4;},'Cdkkl':_0x53dbe6(0x23b),'ZZBos':function(_0x2bafbe){return _0x2bafbe();},'esMbY':_0x53dbe6(0x2d3)+_0x53dbe6(0x1dd),'qHvlj':function(_0x49e990){return _0x49e990();},'ceDVP':_0x53dbe6(0x1d5),'gnuzv':_0x53dbe6(0x219),'gXNAT':_0x53dbe6(0x271),'quWtF':function(_0x31c328,_0x2e7a84){return _0x31c328(_0x2e7a84);},'yeOut':_0x53dbe6(0x20b),'SsERs':_0x53dbe6(0x209),'ofbqW':_0x53dbe6(0x1b1),'BnicR':function(_0x33b896,_0x175a34,_0x1de088,_0x21b1b2){return _0x33b896(_0x175a34,_0x1de088,_0x21b1b2);},'pZUGk':_0x53dbe6(0x2d8),'IPwur':_0x53dbe6(0x2e3),'BwMDQ':_0x53dbe6(0x1a5)};if(_0x190ece[_0x53dbe6(0x243)](_0x5b970c[_0x53dbe6(0x2ad)],_0x190ece[_0x53dbe6(0x1ed)])&&_0x5b970c[_0x53dbe6(0x253)])drawings[_0x53dbe6(0x2ac)](_0x5b970c[_0x53dbe6(0x253)]),_0x190ece[_0x53dbe6(0x262)](draw);else{if(_0x190ece[_0x53dbe6(0x243)](_0x5b970c[_0x53dbe6(0x2ad)],_0x190ece[_0x53dbe6(0x2da)])&&_0x5b970c[_0x53dbe6(0x2c9)]){const _0x21b300=JSON[_0x53dbe6(0x282)](_0x5b970c[_0x53dbe6(0x2c9)]);drawings[_0x53dbe6(0x2ac)](..._0x21b300),_0x190ece[_0x53dbe6(0x21e)](draw),document[_0x53dbe6(0x1e5)+_0x53dbe6(0x1fc)](_0x190ece[_0x53dbe6(0x29e)])[_0x53dbe6(0x258)][_0x53dbe6(0x27f)]=0x13*-0xf4+0x7*-0x46d+0x3118,document[_0x53dbe6(0x1e5)+_0x53dbe6(0x1fc)](_0x190ece[_0x53dbe6(0x29e)])[_0x53dbe6(0x258)][_0x53dbe6(0x244)]=_0x190ece[_0x53dbe6(0x2db)],canvas[_0x53dbe6(0x258)][_0x53dbe6(0x27f)]=0x150b+0x72c+-0x1c36,canvas[_0x53dbe6(0x258)][_0x53dbe6(0x244)]=_0x190ece[_0x53dbe6(0x1b9)],buttons[_0x53dbe6(0x258)][_0x53dbe6(0x27f)]=0x22ed+0x356+-0x2642;if(!_0x190ece[_0x53dbe6(0x1b6)](getCookie,_0x190ece[_0x53dbe6(0x302)])){var _0x34385f=document[_0x53dbe6(0x1e5)+_0x53dbe6(0x1fc)](_0x190ece[_0x53dbe6(0x22a)]);_0x34385f[_0x53dbe6(0x258)][_0x53dbe6(0x273)]=_0x190ece[_0x53dbe6(0x2e2)],_0x34385f[_0x53dbe6(0x258)][_0x53dbe6(0x27f)]=0x11e7*-0x1+-0x77*-0x4f+-0x12d1,_0x34385f[_0x53dbe6(0x28d)+_0x53dbe6(0x256)](_0x190ece[_0x53dbe6(0x29f)])[_0x53dbe6(0x1e7)][_0x53dbe6(0x2fb)](_0x190ece[_0x53dbe6(0x2b8)]),_0x190ece[_0x53dbe6(0x247)](setCookie,_0x190ece[_0x53dbe6(0x302)],_0x190ece[_0x53dbe6(0x246)],0x641*-0x4+0x189f+-0x1d2*-0x1),document[_0x53dbe6(0x1e5)+_0x53dbe6(0x1fc)](_0x190ece[_0x53dbe6(0x2e5)])[_0x53dbe6(0x292)+_0x53dbe6(0x1d3)](_0x190ece[_0x53dbe6(0x2b4)],_0x276225=>{const _0x34f8f9=_0x53dbe6,_0x3c00d0={'XSCxM':_0x190ece[_0x34f8f9(0x293)]};_0x34385f[_0x34f8f9(0x258)][_0x34f8f9(0x27f)]=0x3*0xa13+-0x97d*-0x1+-0x27b6,_0x34385f[_0x34f8f9(0x28d)+_0x34f8f9(0x256)](_0x190ece[_0x34f8f9(0x29f)])[_0x34f8f9(0x1e7)][_0x34f8f9(0x272)](_0x190ece[_0x34f8f9(0x2b8)]),_0x34385f[_0x34f8f9(0x28d)+_0x34f8f9(0x256)](_0x190ece[_0x34f8f9(0x29f)])[_0x34f8f9(0x1e7)][_0x34f8f9(0x2fb)](_0x190ece[_0x34f8f9(0x20d)]),_0x190ece[_0x34f8f9(0x266)](setTimeout,()=>{const _0x15b496=_0x34f8f9;_0x34385f[_0x15b496(0x258)][_0x15b496(0x273)]=_0x3c00d0[_0x15b496(0x2f6)];},-0x11fb*0x1+0x1501*-0x1+0x28*0x106);});}}}});let zoomLevel=-0x5*0x3cd+0x1*0x2301+-0x1000+0.08;const zoomFactor=0x1242+-0x43*0x22+-0x95c+0.1;let offsetX=0x33+0x1965+-0x1998,offsetY=-0x1266+-0x2*0xb00+0x2866;function pan(_0x39f903){const _0x31c449=_0x4e8df8,_0x4ccc81={'qyXVp':_0x31c449(0x28f),'xeBhg':_0x31c449(0x25b),'nDqBW':_0x31c449(0x2ae),'gxUxS':function(_0x37d2f0){return _0x37d2f0();}},_0x443f6f=0x7*0x517+-0x110+-0x2269*0x1;switch(_0x39f903){case _0x4ccc81[_0x31c449(0x279)]:offsetX+=_0x443f6f;break;case _0x4ccc81[_0x31c449(0x218)]:offsetX-=_0x443f6f;break;case'up':offsetY+=_0x443f6f;break;case _0x4ccc81[_0x31c449(0x1fa)]:offsetY-=_0x443f6f;break;default:break;}_0x4ccc81[_0x31c449(0x2df)](updateCanvasContainerPosition);}function updateCanvasContainerPosition(){const _0x445a45=_0x4e8df8,_0x3a2274={'nldRw':function(_0xb718,_0x108513){return _0xb718==_0x108513;}};_0x3a2274[_0x445a45(0x224)](zoomLevel,0xa*-0x101+-0x1677+0x2081+0.08)?(canvas[_0x445a45(0x258)][_0x445a45(0x294)]=_0x445a45(0x1e4),offsetX=0x40*0x8b+0x1*-0x19cf+-0x147*0x7,offsetY=-0x425*-0x4+-0x1*-0x2667+0x5*-0xaff):canvas[_0x445a45(0x258)][_0x445a45(0x294)]=_0x445a45(0x1dc)+offsetX+_0x445a45(0x23e)+offsetY+_0x445a45(0x27d);}function _0x57c0(_0x4e3bc9,_0x1c3c9b){const _0x367a99=_0x4b50();return _0x57c0=function(_0x58fe51,_0x25ff38){_0x58fe51=_0x58fe51-(0x1cff*-0x1+0x1d3b+0x59*0x4);let _0x47f980=_0x367a99[_0x58fe51];return _0x47f980;},_0x57c0(_0x4e3bc9,_0x1c3c9b);}canvasContainer[_0x4e8df8(0x292)+_0x4e8df8(0x1d3)](_0x4e8df8(0x2fd),_0x54822e=>{const _0x310a8b=_0x4e8df8,_0x45baec={'AExje':function(_0x14a045,_0x52e4d8){return _0x14a045>_0x52e4d8;},'WTOTz':function(_0x4b1185,_0x3da661){return _0x4b1185+_0x3da661;},'VlUwp':function(_0x5180b1,_0x4d9e2c){return _0x5180b1*_0x4d9e2c;},'ibVcJ':function(_0x52ceb4,_0x353789){return _0x52ceb4<_0x353789;},'dLKak':function(_0x16d428){return _0x16d428();}};_0x54822e[_0x310a8b(0x2a7)+_0x310a8b(0x2f7)]();const _0xb92c62=_0x45baec[_0x310a8b(0x1d9)](_0x54822e[_0x310a8b(0x297)],-0x854+0x10e4+-0x890)?-(-0x2a9+0x1*-0x80e+-0x8*-0x157):-0x37a+-0x2093+-0x240e*-0x1,_0x32513c=_0x45baec[_0x310a8b(0x1a8)](0x25*0xb7+0x253d+0x89*-0x77,_0x45baec[_0x310a8b(0x1e3)](_0xb92c62,zoomFactor));zoomLevel*=_0x32513c;_0x45baec[_0x310a8b(0x265)](zoomLevel,0x1edd*-0x1+-0x1*0x218b+0x1*0x4068+0.08)&&(zoomLevel=0x165+0x149c+-0x83*0x2b+0.08,canvas[_0x310a8b(0x258)][_0x310a8b(0x294)]=_0x310a8b(0x1dc)+_0x310a8b(0x1e4),_0x45baec[_0x310a8b(0x1da)](updateCanvasContainerPosition));if(_0x45baec[_0x310a8b(0x1d9)](zoomLevel,0x1*0xef6+-0x1*0x263f+0x175d))zoomLevel=-0x3*0x824+-0x1*0x1861+0x30e1;canvasContainer[_0x310a8b(0x258)][_0x310a8b(0x294)]=_0x310a8b(0x232)+zoomLevel+')';});
\ No newline at end of file
diff --git a/public/static/js/main-UujD4m-5.js b/public/static/js/main-UujD4m-5.js
new file mode 100644
index 0000000..77047d5
--- /dev/null
+++ b/public/static/js/main-UujD4m-5.js
@@ -0,0 +1 @@
+const _0x2b7419=_0x356b;(function(_0x475422,_0xc3d34b){const _0x508362=_0x356b,_0x272e85=_0x475422();while(!![]){try{const _0xb6583a=parseInt(_0x508362(0xc5))/(-0x71f*-0x1+0x1c2e+0x8d3*-0x4)+parseInt(_0x508362(0x114))/(0xf*-0x173+-0x11ea*0x1+0x30d*0xd)+parseInt(_0x508362(0x1fd))/(0x31*-0x25+0x1*-0x1a3+-0x5*-0x1bf)+-parseInt(_0x508362(0xc7))/(0x2*-0x5a7+-0x10a2+0x1bf4)+-parseInt(_0x508362(0xce))/(0x926*-0x1+0x1895+-0xf6a)+-parseInt(_0x508362(0x122))/(-0x1d81+-0x2526*-0x1+-0x79f)*(parseInt(_0x508362(0xe7))/(-0x4*-0x6a3+0x33*0xb3+-0x3e2e))+-parseInt(_0x508362(0x18c))/(-0x1*0x142f+0x3d+0x13fa)*(parseInt(_0x508362(0x18e))/(0x5*0x5ed+-0x1c96+-0x3*0x56));if(_0xb6583a===_0xc3d34b)break;else _0x272e85['push'](_0x272e85['shift']());}catch(_0x2a2523){_0x272e85['push'](_0x272e85['shift']());}}}(_0xbff1,-0x5de17+0x138d8+0x2*0x3e774));const socket=io({'timeout':0x1f4}),canvas=document[_0x2b7419(0x1b7)+_0x2b7419(0x112)](_0x2b7419(0xd0)+_0x2b7419(0x15b)),canvasContainer=document[_0x2b7419(0x1b7)+_0x2b7419(0x112)](_0x2b7419(0x196)+_0x2b7419(0x1ee)),buttons=document[_0x2b7419(0x1b7)+_0x2b7419(0x112)](_0x2b7419(0x11f)),tx=document[_0x2b7419(0x1b7)+_0x2b7419(0x112)]('x'),ty=document[_0x2b7419(0x1b7)+_0x2b7419(0x112)]('y'),context=canvas[_0x2b7419(0x108)]('2d'),drawingEmitDelay=0xa53+-0xe64+0x605;let lastDrawingEmitTime=-0x1*0x134a+-0x985*0x4+0x395e,drawings=[],announcementIDs=[],currentDrawing=[],isDrawing=![],uiVisible=!![],currentColor=_0x2b7419(0x121),announceCount=-0xd07+-0x4a*-0x31+-0x122,connectionTimer=null,connectionSeconds=-0x2568+-0x17a0+0xe*0x45c,versionSet=![],ping=null,uuid='';context[_0x2b7419(0x19e)+_0x2b7419(0x105)+'d']=!![],canvasContainer[_0x2b7419(0x127)][_0x2b7419(0xc8)]=_0x2b7419(0x1f8)+')';function getCookie(_0x362a23){const _0x488ab1=_0x2b7419,_0x1689c0={'LRNoP':function(_0x31b555,_0x169d73){return _0x31b555===_0x169d73;}},_0x39dba3=document[_0x488ab1(0x1de)][_0x488ab1(0xbe)](';')[_0x488ab1(0x191)](_0x12dc7e=>_0x12dc7e[_0x488ab1(0x145)]());for(const _0x5cea1a of _0x39dba3){const [_0x3b8470,_0x2aec9f]=_0x5cea1a[_0x488ab1(0xbe)]('=')[_0x488ab1(0x191)](_0x45f6b0=>decodeURIComponent(_0x45f6b0));if(_0x1689c0[_0x488ab1(0x192)](_0x3b8470,_0x362a23))return _0x2aec9f;}return null;}function setCookie(_0x43901f,_0x3c0acb,_0x159648){const _0x1f90e4=_0x2b7419,_0x1d12cd={'UtSps':function(_0x2deef2,_0x1b23a3){return _0x2deef2+_0x1b23a3;},'IzZNL':function(_0x3c2b68,_0x159b44){return _0x3c2b68(_0x159b44);}},_0x25dc62=new Date();_0x25dc62[_0x1f90e4(0x129)](_0x1d12cd[_0x1f90e4(0x1c0)](_0x25dc62[_0x1f90e4(0x1d5)](),_0x159648));const _0x3de7a4=_0x1d12cd[_0x1f90e4(0x1c0)](_0x1d12cd[_0x1f90e4(0x1f2)](encodeURIComponent,_0x3c0acb),_0x159648?_0x1f90e4(0xbc)+_0x25dc62[_0x1f90e4(0x11d)+'g']():'');document[_0x1f90e4(0x1de)]=_0x43901f+'='+_0x3de7a4+_0x1f90e4(0x1d4);}function pinger(){const _0x46c210=_0x2b7419,_0x29736a={'nBFmS':function(_0x4740fc,_0x2bb70e){return _0x4740fc-_0x2bb70e;},'HwPQF':function(_0x44f822,_0x1b308f){return _0x44f822+_0x1b308f;},'IbRsz':function(_0xf90b75,_0x52b47d){return _0xf90b75+_0x52b47d;},'vhvop':_0x46c210(0x1af),'MgHVH':_0x46c210(0x17b),'dtgRB':_0x46c210(0x142)},_0x55a6b0=Date[_0x46c210(0x19a)](),_0x44f081=document[_0x46c210(0x1b7)+_0x46c210(0x112)](_0x29736a[_0x46c210(0x13c)])[_0x46c210(0x167)+_0x46c210(0x186)]('p');socket['on'](_0x29736a[_0x46c210(0x1a7)],()=>{const _0x206cc3=_0x46c210,_0x1dbb4f=_0x29736a[_0x206cc3(0xfb)](Date[_0x206cc3(0x19a)](),_0x55a6b0);_0x44f081[_0x206cc3(0x184)+'t']=_0x29736a[_0x206cc3(0x13b)](_0x29736a[_0x206cc3(0x18d)](_0x29736a[_0x206cc3(0x15e)],_0x1dbb4f),'ms'),document[_0x206cc3(0x1b7)+_0x206cc3(0x112)](_0x29736a[_0x206cc3(0x13c)])[_0x206cc3(0x127)][_0x206cc3(0xf2)]=-0x3*0x709+0x283*-0xe+-0x2b*-0x14f+0.25;}),socket[_0x46c210(0x1bd)](_0x29736a[_0x46c210(0x13c)]);}ping=setInterval(pinger,-0x1124*0x2+0x5b*-0x52+0x11*0x3f6);function startConnectionTimer(){const _0x2e5990=_0x2b7419,_0x3e84d1={'jtmiS':_0x2e5990(0x178),'RnJnL':function(_0x115877,_0x4a0b82){return _0x115877+_0x4a0b82;},'KGKaD':_0x2e5990(0x1cb)+_0x2e5990(0x109)+_0x2e5990(0x12e),'ddEMj':_0x2e5990(0xec),'qAnFZ':function(_0x57911e,_0x215a7e){return _0x57911e>_0x215a7e;},'Bhwfu':_0x2e5990(0xe6)+_0x2e5990(0x169),'TXTYF':function(_0x537cb7,_0x128c53){return _0x537cb7(_0x128c53);},'XVVkW':_0x2e5990(0x12f),'BOHhj':_0x2e5990(0x1fe),'VrAMo':_0x2e5990(0x1c7)+_0x2e5990(0x128),'aazcj':_0x2e5990(0x1a1),'FICOm':_0x2e5990(0x1ae)+_0x2e5990(0x153)+_0x2e5990(0x103),'PTiKx':_0x2e5990(0x1fb),'hAwAC':_0x2e5990(0x127),'LuCuQ':_0x2e5990(0x17e)+_0x2e5990(0x1d3)+_0x2e5990(0x1eb)+_0x2e5990(0x1da)+_0x2e5990(0x1b2),'ELAuF':function(_0x859473,_0x14f07e){return _0x859473+_0x14f07e;},'wmHrp':_0x2e5990(0xfe),'AGFuH':function(_0x17a799){return _0x17a799();},'aRvKN':function(_0x59d295,_0x1c3025,_0x4382d2){return _0x59d295(_0x1c3025,_0x4382d2);}},_0x512765=document[_0x2e5990(0x167)+_0x2e5990(0x186)](_0x3e84d1[_0x2e5990(0x133)]);if(_0x3e84d1[_0x2e5990(0x185)](_0x512765[_0x2e5990(0x167)+_0x2e5990(0x1bc)](_0x3e84d1[_0x2e5990(0xbd)])[_0x2e5990(0x1f5)],-0x17c4+0x578+-0x2*-0x926))return;_0x3e84d1[_0x2e5990(0xf6)](clearInterval,ping);const _0x53a289=document[_0x2e5990(0xdb)+_0x2e5990(0x1d2)](_0x3e84d1[_0x2e5990(0x1e4)]);_0x53a289[_0x2e5990(0x101)+'te'](_0x3e84d1[_0x2e5990(0x1e0)],_0x3e84d1[_0x2e5990(0x136)]),_0x53a289[_0x2e5990(0x101)+'te']('id',_0x3e84d1[_0x2e5990(0x1f3)]),_0x53a289[_0x2e5990(0x127)][_0x2e5990(0x16c)]=_0x3e84d1[_0x2e5990(0x1f4)],_0x53a289[_0x2e5990(0x127)][_0x2e5990(0x149)]=_0x3e84d1[_0x2e5990(0x173)];const _0x209c38=document[_0x2e5990(0xdb)+_0x2e5990(0x1d2)]('p');_0x209c38[_0x2e5990(0x101)+'te']('id',_0x3e84d1[_0x2e5990(0x19b)]),_0x209c38[_0x2e5990(0x101)+'te'](_0x3e84d1[_0x2e5990(0xcd)],_0x3e84d1[_0x2e5990(0xca)]),_0x209c38[_0x2e5990(0x184)+'t']=_0x3e84d1[_0x2e5990(0x116)](_0x3e84d1[_0x2e5990(0x168)],connectionSeconds[_0x2e5990(0x1cd)](-0x9af*-0x1+-0x7dc+-0x1d2)),_0x53a289[_0x2e5990(0x141)+'d'](_0x209c38),_0x512765[_0x2e5990(0x141)+'d'](_0x53a289),canvas[_0x2e5990(0x127)][_0x2e5990(0xf2)]=-0x1b07+0x15ec*-0x1+0x30f3,buttons[_0x2e5990(0x127)][_0x2e5990(0xf2)]=-0x862+0x1139+-0x8d7,canvas[_0x2e5990(0xc1)][_0x2e5990(0x157)](_0x3e84d1[_0x2e5990(0x1b0)]),drawings=[],currentDrawing=[],_0x3e84d1[_0x2e5990(0xc9)](draw),connectionTimer=_0x3e84d1[_0x2e5990(0x15f)](setInterval,()=>{const _0x55383c=_0x2e5990;connectionSeconds+=-0x187a*0x1+-0xdae+0x2628+0.1,document[_0x55383c(0x1b7)+_0x55383c(0x112)](_0x3e84d1[_0x55383c(0x19b)])[_0x55383c(0x184)+'t']=_0x3e84d1[_0x55383c(0x1cc)](_0x3e84d1[_0x55383c(0x168)],connectionSeconds[_0x55383c(0x1cd)](0x2*0xf2+0x351*-0x5+-0x1*-0xeb2));},0x1d33+-0x1*-0x1aa7+-0x1*0x3776);}function stopConnectionTimer(){const _0x240763=_0x2b7419,_0x50d342={'UoVXH':_0x240763(0x11e),'qabGm':_0x240763(0xfe),'xQZcW':function(_0x51c2ff,_0xa5641,_0x2159c3){return _0x51c2ff(_0xa5641,_0x2159c3);},'gAkgY':function(_0x471f6d,_0x3ac406,_0x33097d){return _0x471f6d(_0x3ac406,_0x33097d);},'Ulgev':function(_0x3104db,_0x791974){return _0x3104db(_0x791974);},'WixGF':_0x240763(0xec),'QGmie':_0x240763(0xe6)+_0x240763(0x169),'grwnt':_0x240763(0x12f),'lrQDW':_0x240763(0x1fe),'gdAfS':_0x240763(0x1c7)+_0x240763(0x100),'QMYjN':_0x240763(0x11b),'iaFmG':_0x240763(0x1ae)+_0x240763(0x153)+_0x240763(0x103),'JRjRR':_0x240763(0x127),'eddBf':_0x240763(0x190)+_0x240763(0x155),'XfZld':_0x240763(0x178),'vPjhW':_0x240763(0x17e)+_0x240763(0x1d3)+_0x240763(0x1eb)+_0x240763(0x1da)+_0x240763(0x1b2),'nCjMn':_0x240763(0x18f)+_0x240763(0x195)+_0x240763(0x1b1)+_0x240763(0x102)};_0x50d342[_0x240763(0x115)](clearInterval,connectionTimer),ping=_0x50d342[_0x240763(0xfc)](setInterval,pinger,0x1*0x4c7+0x3b2+-0x491),connectionSeconds=0x10ea+-0x213e+0x1054;const _0x474974=document[_0x240763(0x167)+_0x240763(0x186)](_0x50d342[_0x240763(0x147)]);_0x474974[_0x240763(0x167)+_0x240763(0x1bc)](_0x50d342[_0x240763(0x1bf)])[_0x240763(0x159)](_0x1e6fb3=>{const _0x59ff9b=_0x240763;_0x1e6fb3[_0x59ff9b(0xc1)][_0x59ff9b(0x131)](_0x50d342[_0x59ff9b(0x1f6)]),_0x1e6fb3[_0x59ff9b(0xc1)][_0x59ff9b(0x157)](_0x50d342[_0x59ff9b(0x183)]),_0x50d342[_0x59ff9b(0xfc)](setTimeout,()=>{const _0x22b28c=_0x59ff9b;_0x1e6fb3[_0x22b28c(0x131)]();},0x2499+0x1219*0x2+-0xd*0x573);});const _0xf7ac43=document[_0x240763(0xdb)+_0x240763(0x1d2)](_0x50d342[_0x240763(0x152)]);_0xf7ac43[_0x240763(0x101)+'te'](_0x50d342[_0x240763(0x1d6)],_0x50d342[_0x240763(0xe3)]),_0xf7ac43[_0x240763(0x101)+'te']('id',_0x50d342[_0x240763(0x1ed)]),_0xf7ac43[_0x240763(0x127)][_0x240763(0x16c)]=_0x50d342[_0x240763(0x134)],_0xf7ac43[_0x240763(0x101)+'te'](_0x50d342[_0x240763(0x124)],_0x50d342[_0x240763(0x1df)]);const _0x4823b8=document[_0x240763(0xdb)+_0x240763(0x1d2)]('p');_0x4823b8[_0x240763(0x101)+'te']('id',_0x50d342[_0x240763(0x1c4)]),_0x4823b8[_0x240763(0x101)+'te'](_0x50d342[_0x240763(0x124)],_0x50d342[_0x240763(0x12d)]),_0x4823b8[_0x240763(0x184)+'t']=_0x50d342[_0x240763(0xf0)],_0xf7ac43[_0x240763(0x141)+'d'](_0x4823b8),_0x474974[_0x240763(0x141)+'d'](_0xf7ac43),canvas[_0x240763(0x127)][_0x240763(0xf2)]=-0xe71*-0x1+-0x16e*-0x2+-0x114c,buttons[_0x240763(0x127)][_0x240763(0xf2)]=-0x1808+0xf7d+0x88c,canvas[_0x240763(0xc1)][_0x240763(0x131)](_0x50d342[_0x240763(0x183)]),canvas[_0x240763(0xc1)][_0x240763(0x157)](_0x50d342[_0x240763(0x1f6)]);const _0x1985e1=document[_0x240763(0x1b7)+_0x240763(0x112)](_0x50d342[_0x240763(0x1ed)]);_0x50d342[_0x240763(0xfc)](setTimeout,()=>{const _0x3a2a82=_0x240763;_0x1985e1[_0x3a2a82(0xc1)][_0x3a2a82(0x131)](_0x50d342[_0x3a2a82(0x1f6)]),_0x1985e1[_0x3a2a82(0xc1)][_0x3a2a82(0x157)](_0x50d342[_0x3a2a82(0x183)]),_0x50d342[_0x3a2a82(0x16a)](setTimeout,()=>{const _0x4480bd=_0x3a2a82;_0x1985e1[_0x4480bd(0x131)]();},-0x193a+0x11*-0x4f+0x206d*0x1);},0xffc+0x1*0x1fc5+-0x5*0x799);}socket['on'](_0x2b7419(0x1ad),()=>{const _0x4ef6c6=_0x2b7419,_0x32b0c0={'hkGDl':function(_0x54605e,_0xbf63c0){return _0x54605e!=_0xbf63c0;},'oZmuD':function(_0x30bb13){return _0x30bb13();}};_0x32b0c0[_0x4ef6c6(0x137)](connectionSeconds,0x121*0x1d+-0x7*-0x2c3+0x1a09*-0x2)&&_0x32b0c0[_0x4ef6c6(0x10c)](stopConnectionTimer);}),socket['on'](_0x2b7419(0x17d)+_0x2b7419(0x1fc),()=>{const _0x19fbe2=_0x2b7419,_0x2102d0={'SbvtF':function(_0x184092){return _0x184092();}};_0x2102d0[_0x19fbe2(0x193)](startConnectionTimer);}),socket['on'](_0x2b7419(0xee)+_0x2b7419(0x120),()=>{const _0x4ed534=_0x2b7419,_0x19cc13={'wLkPS':function(_0x3a6669){return _0x3a6669();}};_0x19cc13[_0x4ed534(0x1d8)](startConnectionTimer);});function toggleOP(){const _0x1a612c=_0x2b7419,_0x15a9e0={'iSeqW':_0x1a612c(0x160)+_0x1a612c(0x1f9),'WqjNz':_0x1a612c(0x1e1),'DweFz':_0x1a612c(0x1dd),'yDnpK':_0x1a612c(0x17b),'UQiJq':_0x1a612c(0x18b)+_0x1a612c(0x1ef),'BboNY':_0x1a612c(0xbb),'oKGox':_0x1a612c(0xf9)},_0x5a8daf=_0x15a9e0[_0x1a612c(0x12b)][_0x1a612c(0xbe)]('|');let _0x2b07a2=0x1*0x1a9e+0xc5+0x921*-0x3;while(!![]){switch(_0x5a8daf[_0x2b07a2++]){case'0':uiVisible=!uiVisible;continue;case'1':document[_0x1a612c(0x1b7)+_0x1a612c(0x112)](_0x15a9e0[_0x1a612c(0x12c)])[_0x1a612c(0x127)][_0x1a612c(0x1c1)]=uiVisible?'':_0x15a9e0[_0x1a612c(0x171)];continue;case'2':document[_0x1a612c(0x1b7)+_0x1a612c(0x112)](_0x15a9e0[_0x1a612c(0xcb)])[_0x1a612c(0x127)][_0x1a612c(0x1c1)]=uiVisible?'':_0x15a9e0[_0x1a612c(0x171)];continue;case'3':document[_0x1a612c(0x1b7)+_0x1a612c(0x112)](_0x15a9e0[_0x1a612c(0x1a3)])[_0x1a612c(0x127)][_0x1a612c(0x1c1)]=uiVisible?'':_0x15a9e0[_0x1a612c(0x171)];continue;case'4':buttons[_0x1a612c(0x127)][_0x1a612c(0x1c1)]=uiVisible?'':_0x15a9e0[_0x1a612c(0x171)];continue;case'5':document[_0x1a612c(0x1b7)+_0x1a612c(0x112)]('xy')[_0x1a612c(0x127)][_0x1a612c(0x1c1)]=uiVisible?'':_0x15a9e0[_0x1a612c(0x171)];continue;case'6':document[_0x1a612c(0x1b7)+_0x1a612c(0x112)](_0x15a9e0[_0x1a612c(0x144)])[_0x1a612c(0x127)][_0x1a612c(0x1c1)]=uiVisible?'':_0x15a9e0[_0x1a612c(0x171)];continue;case'7':document[_0x1a612c(0x1b7)+_0x1a612c(0x112)](_0x15a9e0[_0x1a612c(0xc3)])[_0x1a612c(0x127)][_0x1a612c(0x1c1)]=uiVisible?'':_0x15a9e0[_0x1a612c(0x171)];continue;}break;}}function resetView(){const _0x43446a=_0x2b7419,_0x30356e={'lcWIg':_0x43446a(0x202)},_0x20f842=_0x30356e[_0x43446a(0x138)][_0x43446a(0xbe)]('|');let _0x40e40d=-0x1ee2+0x492+-0x8*-0x34a;while(!![]){switch(_0x20f842[_0x40e40d++]){case'0':canvasContainer[_0x43446a(0x127)][_0x43446a(0xc8)]=_0x43446a(0x1f8)+')';continue;case'1':canvas[_0x43446a(0x127)][_0x43446a(0xc8)]=_0x43446a(0x14e)+_0x43446a(0x15c);continue;case'2':offsetX=-0x18c1*-0x1+-0xc83+-0xc3e*0x1;continue;case'3':zoomLevel=-0x3aa+0x281*0x3+-0x5*0xc5+0.08;continue;case'4':offsetY=-0x2409+-0x12ff+0x24b*0x18;continue;}break;}}function _0xbff1(){const _0x49b9ec=['ror','929751opfnNn','class','ZrQHs','ZvfvF','jfOkB','0|1|3|2|4','TDqFc','data',';\x20expires=','Bhwfu','split','Lnhsv','dataSize','classList','gClientRec','oKGox','preventDef','105248uOGpaM','edLaE','909208EbMIVn','transform','AGFuH','LuCuQ','yDnpK','SUaTR','hAwAC','600920GCkPhh','audio','drawingCan','OwKRa','draw','nnDNP','wPUOj','getAttribu','SVawa','QbiGg','qZZZQ','BxubW','HoMjg','createElem','size','stener','WbdVy','fxyNE','VShaU','WXmPP','jITRg','gdAfS','clientX','play','[id=\x22conne','16079CGSBQj','oaCST','0|2|1|3|4','welcome','snOTY','.messages','getBoundin','connect_ti','strokeStyl','nCjMn','lineTo','opacity','KXDLh','siGSc','uCWvu','TXTYF','clientY','Gdiyo','version','mouseleave','nBFmS','xQZcW','GWjxN','fadedown','down','deup\x20green','setAttribu','tored','\x200,\x200.1)','e:\x20normal;','hingEnable','deltaY','uuid','getContext','nection\x20Ti','mousedown','kckOH','oZmuD','deup\x20','wheel','uWiRV','reload','stop','ById','DmFFm','347562GeCBNq','Ulgev','ELAuF','rQWNF','drawings','aEtfP','BKVld','success','moveTo','toUTCStrin','fadeup','buttons','meout','#000000','72ZCjpWW','ZyYLu','JRjRR','uwqkM','push','style','deup\x20red','setDate','Vkigl','iSeqW','WqjNz','vPjhW','meout:\x20','div','left','remove','mqCmi','ddEMj','iaFmG','awings','VrAMo','hkGDl','lcWIg','kxNmz','fSqkb','HwPQF','MgHVH','TpKth','visibility','ywzQP','height','appendChil','pong','dpint','BboNY','trim','w-close','WixGF','pGOAO','width','aWagg','visible','ault','Collavas\x20v','translate(','qJguE','message','type','grwnt','rgba(0,\x200,','parse','\x20auto;','drawing','add','true','forEach','sMhtX','vas','0px,\x200px)','Raupg','vhvop','aRvKN','0|4|1|5|3|','TbCat','pYqnE','qMTIa','QUgdI','stroke','round','querySelec','KGKaD','ction\x22]','gAkgY','yFcGG','boxShadow','Connected\x20','beginPath','OHHiQ','audio-play','DweFz','2|4|0|1|3','PTiKx','LnACO','value','malFi','JGfkV','timeout','Version:\x20','SRglq','ping','JikFr','connect_er','white-spac','scale(','DQZxu','click','vFSEn','qabGm','textConten','qAnFZ','tor','YNVYF','bbsut','src','QENMw','connectedC','8RDIorz','IbRsz','59607GfICYm','Server\x20con','min-width:','map','LRNoP','SbvtF','target','nection\x20ha','canvasCont','pause','Fvkng','JaWvW','now','jtmiS','WcAZB','IGljo','imageSmoot','px,\x20','w-version','connection','existingDr','UQiJq','dOnMj','title','hbUIU','dtgRB','vsxZV','flex','NeeII','DSUaO','xHKAF','connect','0\x204px\x208px\x20','Ping:\x20','wmHrp','s\x20been\x20res','px\x2050px','KjRtf','Clients:\x20','XGRPu','hFNKX','getElement','yXXlY','mousemove','ZwPrV','WriSu','torAll','emit','eugXC','QGmie','UtSps','display','right','announceme','XfZld','EfSYD','addEventLi','message\x20fa','innerHTML','zEgnk','uUWtH','Server\x20Con','RnJnL','toFixed','IDiXY','tNyHZ','color','visited','ent','e:\x20nowrap;',';\x20path=/','getDate','lrQDW','evADI','wLkPS','qvSzO','px\x2050px\x2025','NJzBA','CDZCz','none','cookie','eddBf','BOHhj','resetView','tZtMO','Size:\x20','XVVkW','top','bpLkY','transition','clearRect','mouseup','dhvHG','margin:\x2025','px)','QMYjN','ainer','lients','clientNum','ftjmZ','IzZNL','aazcj','FICOm','length','UoVXH','hidden','scale(0.08','7|2|6','iiUOY','300px'];_0xbff1=function(){return _0x49b9ec;};return _0xbff1();}function changeColor(_0x479328){const _0x444e19=_0x2b7419;currentColor=_0x479328[_0x444e19(0x194)][_0x444e19(0x175)];}document[_0x2b7419(0x1c6)+_0x2b7419(0xdd)](_0x2b7419(0x1e9),()=>{isDrawing=![];}),canvas[_0x2b7419(0x1c6)+_0x2b7419(0xdd)](_0x2b7419(0xfa),()=>{isDrawing=![];}),canvas[_0x2b7419(0x1c6)+_0x2b7419(0xdd)](_0x2b7419(0x10a),_0x70ffdc=>{const _0xaf7ef7=_0x2b7419,_0x452da2={'aEtfP':function(_0x52a6d6,_0x1f66df){return _0x52a6d6(_0x1f66df);}};isDrawing=!![],_0x452da2[_0xaf7ef7(0x119)](addPoint,_0x70ffdc);}),canvas[_0x2b7419(0x1c6)+_0x2b7419(0xdd)](_0x2b7419(0x1e9),()=>{const _0x3bc9cf=_0x2b7419,_0x110c5d={'HoMjg':function(_0x2e66d0,_0x1753ca){return _0x2e66d0>_0x1753ca;},'DSUaO':_0x3bc9cf(0x172),'BxubW':function(_0x61bd2f){return _0x61bd2f();},'tNyHZ':_0x3bc9cf(0xd2)};isDrawing=![];if(_0x110c5d[_0x3bc9cf(0xda)](currentDrawing[_0x3bc9cf(0x1f5)],-0x1*-0x191c+-0x1afe+0x1e2)){const _0x4d745e=_0x110c5d[_0x3bc9cf(0x1ab)][_0x3bc9cf(0xbe)]('|');let _0x5d3683=0x20fc+-0x1*-0x9d9+0x2ad5*-0x1;while(!![]){switch(_0x4d745e[_0x5d3683++]){case'0':_0x110c5d[_0x3bc9cf(0xd9)](draw);continue;case'1':currentDrawing=[];continue;case'2':socket[_0x3bc9cf(0x1bd)](_0x110c5d[_0x3bc9cf(0x1cf)],{'type':_0x110c5d[_0x3bc9cf(0x1cf)],'drawing':currentDrawing,'valid':uuid});continue;case'3':lastDrawingEmitTime=Date[_0x3bc9cf(0x19a)]();continue;case'4':drawings[_0x3bc9cf(0x126)](currentDrawing);continue;}break;}}}),canvas[_0x2b7419(0x1c6)+_0x2b7419(0xdd)](_0x2b7419(0x1b9),_0x36f66b=>{const _0x5141de=_0x2b7419,_0x1b91d2={'dpint':function(_0x2aa767,_0x54d7bf){return _0x2aa767/_0x54d7bf;},'bpLkY':function(_0x52abfa,_0x4578e5){return _0x52abfa/_0x4578e5;},'qMTIa':function(_0x222914,_0x949af2){return _0x222914*_0x949af2;},'Vkigl':function(_0x40cc80,_0x55afd8){return _0x40cc80-_0x55afd8;},'iiUOY':function(_0xa6ce8f,_0x1dd4fd){return _0xa6ce8f(_0x1dd4fd);},'oaCST':function(_0x47a8bc,_0x2d6935){return _0x47a8bc>=_0x2d6935;},'KXDLh':_0x5141de(0xd2)},_0x25a75b=canvas[_0x5141de(0xed)+_0x5141de(0xc2)+'t'](),_0x1fec8f=_0x1b91d2[_0x5141de(0x143)](canvas[_0x5141de(0x149)],_0x25a75b[_0x5141de(0x149)]),_0x5c544e=_0x1b91d2[_0x5141de(0x1e6)](canvas[_0x5141de(0x140)],_0x25a75b[_0x5141de(0x140)]),_0xc6f5e4=Math[_0x5141de(0x166)](_0x1b91d2[_0x5141de(0x163)](_0x1b91d2[_0x5141de(0x12a)](_0x36f66b[_0x5141de(0xe4)],_0x25a75b[_0x5141de(0x130)]),_0x1fec8f)),_0x15a3d1=Math[_0x5141de(0x166)](_0x1b91d2[_0x5141de(0x163)](_0x1b91d2[_0x5141de(0x12a)](_0x36f66b[_0x5141de(0xf7)],_0x25a75b[_0x5141de(0x1e5)]),_0x5c544e));tx[_0x5141de(0x1c8)]=_0xc6f5e4,ty[_0x5141de(0x1c8)]=_0x15a3d1;if(isDrawing){_0x1b91d2[_0x5141de(0x1fa)](addPoint,_0x36f66b);const _0x34fafe=Date[_0x5141de(0x19a)]();_0x1b91d2[_0x5141de(0xe8)](_0x1b91d2[_0x5141de(0x12a)](_0x34fafe,lastDrawingEmitTime),drawingEmitDelay)&&(socket[_0x5141de(0x1bd)](_0x1b91d2[_0x5141de(0xf3)],{'type':_0x1b91d2[_0x5141de(0xf3)],'drawing':currentDrawing,'valid':uuid}),lastDrawingEmitTime=_0x34fafe);}});function addPoint(_0x25380d){const _0x555f5e=_0x2b7419,_0x5d74be={'hFNKX':function(_0x9a6081,_0x3d9c14){return _0x9a6081/_0x3d9c14;},'vsxZV':function(_0x1dbbb4,_0x402d20){return _0x1dbbb4/_0x402d20;},'NJzBA':function(_0x50c124,_0x131025){return _0x50c124*_0x131025;},'Lnhsv':function(_0x9cb8d0,_0x27753e){return _0x9cb8d0-_0x27753e;},'siGSc':function(_0x296823){return _0x296823();}};if(!isDrawing)return;const _0x5e53d8=canvas[_0x555f5e(0xed)+_0x555f5e(0xc2)+'t'](),_0x297375=_0x5d74be[_0x555f5e(0x1b6)](canvas[_0x555f5e(0x149)],_0x5e53d8[_0x555f5e(0x149)]),_0x5d5051=_0x5d74be[_0x555f5e(0x1a8)](canvas[_0x555f5e(0x140)],_0x5e53d8[_0x555f5e(0x140)]),_0x50c5b1=_0x5d74be[_0x555f5e(0x1db)](_0x5d74be[_0x555f5e(0xbf)](_0x25380d[_0x555f5e(0xe4)],_0x5e53d8[_0x555f5e(0x130)]),_0x297375),_0x24c9f2=_0x5d74be[_0x555f5e(0x1db)](_0x5d74be[_0x555f5e(0xbf)](_0x25380d[_0x555f5e(0xf7)],_0x5e53d8[_0x555f5e(0x1e5)]),_0x5d5051);currentDrawing[_0x555f5e(0x126)]({'x':Math[_0x555f5e(0x166)](_0x50c5b1),'y':Math[_0x555f5e(0x166)](_0x24c9f2),'color':currentColor}),_0x5d74be[_0x555f5e(0xf4)](draw);}function draw(){const _0x3a3c42=_0x2b7419,_0x4564fd={'WXmPP':function(_0x29848c,_0x40ca3f){return _0x29848c<_0x40ca3f;},'uwqkM':function(_0x8d2124,_0x3c4f23){return _0x8d2124<_0x3c4f23;},'KjRtf':function(_0x3ff56c,_0x53b7c9){return _0x3ff56c-_0x53b7c9;},'TpKth':function(_0x28d7fc,_0xb1d099){return _0x28d7fc>_0xb1d099;},'dhvHG':function(_0xedeace,_0x4ac359){return _0xedeace<_0x4ac359;}};context[_0x3a3c42(0x1e8)](0x9*0x243+-0xcd2+-0x789,0x1eda+-0x17*-0xfe+0xabc*-0x5,canvas[_0x3a3c42(0x149)],canvas[_0x3a3c42(0x140)]);for(const _0x5dcbab of drawings){if(_0x4564fd[_0x3a3c42(0xe1)](_0x5dcbab[_0x3a3c42(0x1f5)],-0xefb+0x67*-0x13+0x16a2))continue;for(let _0xce3e96=-0xd34+-0x1e*-0xe9+-0x191*0x9;_0x4564fd[_0x3a3c42(0x125)](_0xce3e96,_0x5dcbab[_0x3a3c42(0x1f5)]);_0xce3e96++){const _0x488e50=_0x5dcbab[_0x4564fd[_0x3a3c42(0x1b3)](_0xce3e96,0x1059+-0x92*-0x20+0x7b*-0x48)],_0x2abdc4=_0x5dcbab[_0xce3e96];context[_0x3a3c42(0x16e)](),context[_0x3a3c42(0xef)+'e']=_0x488e50[_0x3a3c42(0x1d0)],context[_0x3a3c42(0x11c)](Math[_0x3a3c42(0x166)](_0x488e50['x']),Math[_0x3a3c42(0x166)](_0x488e50['y'])),context[_0x3a3c42(0xf1)](Math[_0x3a3c42(0x166)](_0x2abdc4['x']),Math[_0x3a3c42(0x166)](_0x2abdc4['y'])),context[_0x3a3c42(0x165)]();}}context[_0x3a3c42(0x165)]();if(_0x4564fd[_0x3a3c42(0x13d)](currentDrawing[_0x3a3c42(0x1f5)],-0x253f+-0x31c+-0x1*-0x285b)){context[_0x3a3c42(0x16e)](),context[_0x3a3c42(0xef)+'e']=currentColor,context[_0x3a3c42(0x11c)](Math[_0x3a3c42(0x166)](currentDrawing[-0x43b*0x7+-0x1088+0x2e25]['x']),Math[_0x3a3c42(0x166)](currentDrawing[-0x4d5*-0x4+0x411+-0x1765]['y']));for(let _0x446385=-0x1f4d+-0x13cb+0x3319;_0x4564fd[_0x3a3c42(0x1ea)](_0x446385,currentDrawing[_0x3a3c42(0x1f5)]);_0x446385++){const _0x5b8780=currentDrawing[_0x446385];context[_0x3a3c42(0xf1)](Math[_0x3a3c42(0x166)](_0x5b8780['x']),Math[_0x3a3c42(0x166)](_0x5b8780['y']));}context[_0x3a3c42(0x165)]();}}socket['on'](_0x2b7419(0xc0),_0x4291eb=>{const _0x512664=_0x2b7419,_0x50b0fb={'CDZCz':_0x512664(0xbb),'OHHiQ':function(_0x28765e,_0x49e350){return _0x28765e+_0x49e350;},'pYqnE':_0x512664(0x1e3)};document[_0x512664(0x1b7)+_0x512664(0x112)](_0x50b0fb[_0x512664(0x1dc)])[_0x512664(0x167)+_0x512664(0x186)]('p')[_0x512664(0x184)+'t']=_0x50b0fb[_0x512664(0x16f)](_0x50b0fb[_0x512664(0x16f)](_0x50b0fb[_0x512664(0x162)],_0x4291eb[_0x512664(0xdc)]),'MB'),document[_0x512664(0x1b7)+_0x512664(0x112)](_0x50b0fb[_0x512664(0x1dc)])[_0x512664(0x127)][_0x512664(0xf2)]=-0x10bf*-0x1+0x10ce+-0x218d+0.25;}),socket['on'](_0x2b7419(0xe5),_0x23ddea=>{const _0x4ec312=_0x2b7419,_0x3bfea2={'sMhtX':function(_0x4d602c,_0x3b9a65){return _0x4d602c!=_0x3b9a65;},'XGRPu':_0x4ec312(0x111),'xHKAF':_0x4ec312(0x170)+'er'};_0x3bfea2[_0x4ec312(0x15a)](_0x23ddea[_0x4ec312(0xcf)],_0x3bfea2[_0x4ec312(0x1b5)])?(document[_0x4ec312(0x1b7)+_0x4ec312(0x112)](_0x3bfea2[_0x4ec312(0x1ac)])[_0x4ec312(0x189)]=_0x23ddea[_0x4ec312(0xcf)],document[_0x4ec312(0x1b7)+_0x4ec312(0x112)](_0x3bfea2[_0x4ec312(0x1ac)])[_0x4ec312(0xe5)]()):document[_0x4ec312(0x1b7)+_0x4ec312(0x112)](_0x3bfea2[_0x4ec312(0x1ac)])[_0x4ec312(0x197)]();}),socket['on'](_0x2b7419(0x1c3)+'nt',_0x4deeaf=>{const _0x204ed8=_0x2b7419,_0x451d80={'JaWvW':_0x204ed8(0x1dd),'malFi':function(_0x4076b7,_0xd19fad){return _0x4076b7-_0xd19fad;},'DQZxu':_0x204ed8(0x11e),'Gdiyo':_0x204ed8(0xfe),'ZrQHs':function(_0x465438,_0x124dc2,_0x51c25){return _0x465438(_0x124dc2,_0x51c25);},'hbUIU':_0x204ed8(0xec),'dOnMj':_0x204ed8(0x12f),'QbiGg':_0x204ed8(0x1fe),'fSqkb':function(_0x2aafc0,_0x323748){return _0x2aafc0+_0x323748;},'qvSzO':_0x204ed8(0x1c7)+_0x204ed8(0x10d),'VShaU':_0x204ed8(0x1ae)+_0x204ed8(0x153)+_0x204ed8(0x103),'IDiXY':_0x204ed8(0x127),'QUgdI':_0x204ed8(0x17e)+_0x204ed8(0x104)+_0x204ed8(0x1eb)+_0x204ed8(0x1da)+_0x204ed8(0x1b2),'eugXC':function(_0x47e09e,_0x3cac93,_0x2c131f){return _0x47e09e(_0x3cac93,_0x2c131f);}};if(_0x4deeaf[_0x204ed8(0x150)]&&_0x4deeaf[_0x204ed8(0x1d0)]){const _0x5ba71f=_0x4deeaf[_0x204ed8(0x150)],_0x53ec74=document[_0x204ed8(0x167)+_0x204ed8(0x186)](_0x451d80[_0x204ed8(0x1a6)]),_0x39366e=document[_0x204ed8(0xdb)+_0x204ed8(0x1d2)](_0x451d80[_0x204ed8(0x1a4)]);_0x39366e[_0x204ed8(0x101)+'te'](_0x451d80[_0x204ed8(0xd7)],_0x451d80[_0x204ed8(0x13a)](_0x451d80[_0x204ed8(0x1d9)],_0x4deeaf[_0x204ed8(0x1d0)])),_0x39366e[_0x204ed8(0x101)+'te']('id',announceCount),_0x39366e[_0x204ed8(0x127)][_0x204ed8(0x16c)]=_0x451d80[_0x204ed8(0xe0)];const _0x1e038a=document[_0x204ed8(0xdb)+_0x204ed8(0x1d2)]('p');_0x1e038a[_0x204ed8(0x101)+'te'](_0x451d80[_0x204ed8(0x1ce)],_0x451d80[_0x204ed8(0x164)]),_0x1e038a[_0x204ed8(0x184)+'t']=_0x5ba71f,_0x39366e[_0x204ed8(0x141)+'d'](_0x1e038a),_0x53ec74[_0x204ed8(0x141)+'d'](_0x39366e),announceCount++,announcementIDs[_0x204ed8(0x126)](_0x451d80[_0x204ed8(0x176)](announceCount,0x1*0x1b25+-0x1278+-0x172*0x6)),_0x451d80[_0x204ed8(0x1be)](setTimeout,()=>{const _0x39726e=_0x204ed8,_0x445bd6={'snOTY':_0x451d80[_0x39726e(0x199)]},_0x272a5f=document[_0x39726e(0x1b7)+_0x39726e(0x112)](_0x451d80[_0x39726e(0x176)](announceCount,-0x22f2+0x125*0x3+0xfc2*0x2));_0x272a5f[_0x39726e(0xc1)][_0x39726e(0x131)](_0x451d80[_0x39726e(0x180)]),_0x272a5f[_0x39726e(0xc1)][_0x39726e(0x157)](_0x451d80[_0x39726e(0xf8)]),_0x451d80[_0x39726e(0x1ff)](setTimeout,()=>{const _0x54b455=_0x39726e;_0x272a5f[_0x54b455(0x127)][_0x54b455(0x1c1)]=_0x445bd6[_0x54b455(0xeb)],_0x272a5f[_0x54b455(0x131)]();},-0x10d4+-0x1*0x9b2+0x1c7a);},-0x17ba*0x1+0x6*-0x19b+0x34e4);}});function hideMessages(){const _0x4e6ab9=_0x2b7419,_0x1620ea={'WcAZB':function(_0x52eb37,_0x4955d6){return _0x52eb37!=_0x4955d6;},'JGfkV':_0x4e6ab9(0x1a1),'mqCmi':_0x4e6ab9(0xfe),'WriSu':_0x4e6ab9(0x1dd),'yXXlY':_0x4e6ab9(0xec),'NeeII':_0x4e6ab9(0x12f),'QENMw':function(_0x46261f,_0x425e8b){return _0x46261f>_0x425e8b;},'LnACO':function(_0x3badc7,_0x24a020,_0x42d2c3){return _0x3badc7(_0x24a020,_0x42d2c3);}},_0x1dfe3d=document[_0x4e6ab9(0x167)+_0x4e6ab9(0x186)](_0x1620ea[_0x4e6ab9(0x1b8)]);if(_0x1dfe3d){const _0x5ac732=_0x1dfe3d[_0x4e6ab9(0x167)+_0x4e6ab9(0x1bc)](_0x1620ea[_0x4e6ab9(0x1aa)]);_0x1620ea[_0x4e6ab9(0x18a)](_0x5ac732[_0x4e6ab9(0x1f5)],0x6bf+0x2*-0x12b7+-0x1*-0x1eb0)&&(_0x5ac732[_0x4e6ab9(0x159)](_0x3a0553=>{const _0x1f3976=_0x4e6ab9;_0x1620ea[_0x1f3976(0x19c)](_0x3a0553[_0x1f3976(0xd5)+'te']('id'),_0x1620ea[_0x1f3976(0x177)])&&_0x3a0553[_0x1f3976(0xc1)][_0x1f3976(0x157)](_0x1620ea[_0x1f3976(0x132)]);}),_0x1620ea[_0x4e6ab9(0x174)](setTimeout,()=>{const _0x3a74f6=_0x4e6ab9;_0x5ac732[_0x3a74f6(0x159)](_0x5bd074=>{const _0x2ac68d=_0x3a74f6;_0x1620ea[_0x2ac68d(0x19c)](_0x5bd074[_0x2ac68d(0xd5)+'te']('id'),_0x1620ea[_0x2ac68d(0x177)])&&(_0x5bd074[_0x2ac68d(0x127)][_0x2ac68d(0x1c1)]=_0x1620ea[_0x2ac68d(0x1bb)],_0x5bd074[_0x2ac68d(0x131)]());});},0x10c0+-0x471*0x3+0x1*-0x179));}}setInterval(hideMessages,-0x1*0x22d2+-0xb1d+-0x4177*-0x1),socket['on'](_0x2b7419(0x18b)+_0x2b7419(0x1ef),_0x5968a9=>{const _0xef7a59=_0x2b7419,_0x515f82={'qZZZQ':_0xef7a59(0x1f0),'jfOkB':_0xef7a59(0x18b)+_0xef7a59(0x1ef)};document[_0xef7a59(0x1b7)+_0xef7a59(0x112)](_0x515f82[_0xef7a59(0xd8)])[_0xef7a59(0x184)+'t']=_0xef7a59(0x16d)+_0xef7a59(0x1b4)+_0x5968a9,document[_0xef7a59(0x1b7)+_0xef7a59(0x112)](_0x515f82[_0xef7a59(0x201)])[_0xef7a59(0x127)][_0xef7a59(0xf2)]=-0x1af2+0x1292+0x860+0.25;}),socket['on'](_0x2b7419(0x110),_0x5bf96d=>{const _0x32461b=_0x2b7419;location[_0x32461b(0x110)](!![]);}),socket['on'](_0x2b7419(0xf9),_0x3875e2=>{const _0x337663=_0x2b7419,_0x148004={'ZvfvF':_0x337663(0xe9),'YNVYF':function(_0x357026,_0xcd31){return _0x357026+_0xcd31;},'Fvkng':_0x337663(0x14d),'evADI':_0x337663(0xf9),'IGljo':_0x337663(0x179),'ywzQP':_0x337663(0x1a0)},_0x5c7976=_0x148004[_0x337663(0x200)][_0x337663(0xbe)]('|');let _0x4ae015=-0x5f6+-0xc48+-0x1d3*-0xa;while(!![]){switch(_0x5c7976[_0x4ae015++]){case'0':document[_0x337663(0x1a5)]=_0x148004[_0x337663(0x187)](_0x148004[_0x337663(0x198)],_0x3875e2);continue;case'1':document[_0x337663(0x1b7)+_0x337663(0x112)](_0x148004[_0x337663(0x1d7)])[_0x337663(0x127)][_0x337663(0xf2)]=-0x295*-0xd+0x6a0*0x5+-0x42b1+0.25;continue;case'2':document[_0x337663(0x1b7)+_0x337663(0x112)](_0x148004[_0x337663(0x1d7)])[_0x337663(0x167)+_0x337663(0x186)]('p')[_0x337663(0x184)+'t']=_0x148004[_0x337663(0x187)](_0x148004[_0x337663(0x19d)],_0x3875e2);continue;case'3':versionSet=!![];continue;case'4':document[_0x337663(0x1b7)+_0x337663(0x112)](_0x148004[_0x337663(0x13f)])[_0x337663(0x184)+'t']=_0x148004[_0x337663(0x187)](_0x148004[_0x337663(0x198)],_0x3875e2);continue;}break;}}),socket['on'](_0x2b7419(0xd2),_0x35a2a0=>{const _0x30bf39=_0x2b7419,_0x526db8={'WbdVy':_0x30bf39(0x1dd),'SUaTR':_0x30bf39(0x12f),'vFSEn':_0x30bf39(0x11e),'zEgnk':_0x30bf39(0xfe),'pGOAO':function(_0x23c5e6,_0x43418b,_0x438ded){return _0x23c5e6(_0x43418b,_0x438ded);},'edLaE':function(_0x1cc187,_0x5628b5){return _0x1cc187===_0x5628b5;},'jITRg':_0x30bf39(0xd2),'BKVld':function(_0xf42cd8){return _0xf42cd8();},'TbCat':function(_0x2369d5,_0x58cf4a){return _0x2369d5===_0x58cf4a;},'bbsut':_0x30bf39(0x1a2)+_0x30bf39(0x135),'SVawa':function(_0x44d0ba,_0x46368a,_0x39bfe,_0x146487){return _0x44d0ba(_0x46368a,_0x39bfe,_0x146487);},'DmFFm':_0x30bf39(0x107),'aWagg':function(_0x112104){return _0x112104();},'JikFr':_0x30bf39(0x1e7),'ZwPrV':_0x30bf39(0x1f7),'TDqFc':_0x30bf39(0x14b),'kxNmz':function(_0x48ce92,_0x55c883){return _0x48ce92(_0x55c883);},'nnDNP':_0x30bf39(0x1d1),'Raupg':_0x30bf39(0xea),'EfSYD':_0x30bf39(0x1a9),'qJguE':function(_0x5d5404,_0x344393,_0xa0383,_0x26f430){return _0x5d5404(_0x344393,_0xa0383,_0x26f430);},'yFcGG':_0x30bf39(0x158),'ZyYLu':_0x30bf39(0x146),'uUWtH':_0x30bf39(0x181)};if(_0x526db8[_0x30bf39(0xc6)](_0x35a2a0[_0x30bf39(0x151)],_0x526db8[_0x30bf39(0xe2)])&&_0x35a2a0[_0x30bf39(0x156)])drawings[_0x30bf39(0x126)](_0x35a2a0[_0x30bf39(0x156)]),_0x526db8[_0x30bf39(0x11a)](draw);else{if(_0x526db8[_0x30bf39(0x161)](_0x35a2a0[_0x30bf39(0x151)],_0x526db8[_0x30bf39(0x188)])&&_0x35a2a0[_0x30bf39(0x118)]){const _0x1ff57a=JSON[_0x30bf39(0x154)](_0x35a2a0[_0x30bf39(0x118)]);drawings=[],uuid=_0x35a2a0['id'],_0x526db8[_0x30bf39(0xd6)](setCookie,_0x526db8[_0x30bf39(0x113)],uuid,-0x1b4d+-0x124b+0x2d99),drawings[_0x30bf39(0x126)](..._0x1ff57a),_0x526db8[_0x30bf39(0x14a)](draw),document[_0x30bf39(0x1b7)+_0x30bf39(0x112)](_0x526db8[_0x30bf39(0x17c)])[_0x30bf39(0x127)][_0x30bf39(0xf2)]=-0x2f*-0xd+0xe51*-0x1+0xbef,document[_0x30bf39(0x1b7)+_0x30bf39(0x112)](_0x526db8[_0x30bf39(0x17c)])[_0x30bf39(0x127)][_0x30bf39(0x13e)]=_0x526db8[_0x30bf39(0x1ba)],canvas[_0x30bf39(0x127)][_0x30bf39(0xf2)]=0x185*-0x15+0xc5*-0xd+-0xdb*-0x31,canvas[_0x30bf39(0x127)][_0x30bf39(0x13e)]=_0x526db8[_0x30bf39(0xba)],buttons[_0x30bf39(0x127)][_0x30bf39(0xf2)]=-0x2525+0xe65+0x16c1;if(!_0x526db8[_0x30bf39(0x139)](getCookie,_0x526db8[_0x30bf39(0xd3)])){var _0x4c93e1=document[_0x30bf39(0x1b7)+_0x30bf39(0x112)](_0x526db8[_0x30bf39(0x15d)]);_0x4c93e1[_0x30bf39(0x127)][_0x30bf39(0x1c1)]=_0x526db8[_0x30bf39(0x1c5)],_0x4c93e1[_0x30bf39(0x127)][_0x30bf39(0xf2)]=-0x209e+-0x1043*0x2+0x4125,_0x4c93e1[_0x30bf39(0x167)+_0x30bf39(0x186)](_0x526db8[_0x30bf39(0xcc)])[_0x30bf39(0xc1)][_0x30bf39(0x157)](_0x526db8[_0x30bf39(0x182)]),_0x526db8[_0x30bf39(0x14f)](setCookie,_0x526db8[_0x30bf39(0xd3)],_0x526db8[_0x30bf39(0x16b)],-0xf56+-0x914*-0x4+-0x14f9*0x1),document[_0x30bf39(0x1b7)+_0x30bf39(0x112)](_0x526db8[_0x30bf39(0x123)])[_0x30bf39(0x1c6)+_0x30bf39(0xdd)](_0x526db8[_0x30bf39(0x1ca)],_0xb7894a=>{const _0x564955=_0x30bf39,_0x1da7ed={'kckOH':_0x526db8[_0x564955(0xde)]};_0x4c93e1[_0x564955(0x127)][_0x564955(0xf2)]=-0x16+-0x1e1*-0x10+-0x1dfa*0x1,_0x4c93e1[_0x564955(0x167)+_0x564955(0x186)](_0x526db8[_0x564955(0xcc)])[_0x564955(0xc1)][_0x564955(0x131)](_0x526db8[_0x564955(0x182)]),_0x4c93e1[_0x564955(0x167)+_0x564955(0x186)](_0x526db8[_0x564955(0xcc)])[_0x564955(0xc1)][_0x564955(0x157)](_0x526db8[_0x564955(0x1c9)]),_0x526db8[_0x564955(0x148)](setTimeout,()=>{const _0x28f93f=_0x564955;_0x4c93e1[_0x28f93f(0x127)][_0x28f93f(0x1c1)]=_0x1da7ed[_0x28f93f(0x10b)];},0x22f9+-0x22fc+0x1f7);});}}}});let zoomLevel=0x1*-0x925+0x1699+-0xd74+0.08;const zoomFactor=0xb*0xf1+0x25ed+-0xf*0x338+0.1;let offsetX=0x22f+0xf*-0x8b+-0x2fb*-0x2,offsetY=0x1d8d+0x1b41+-0x38ce;function pan(_0x1e5cb5){const _0x5dcf5c=_0x2b7419,_0x25fe1d={'wPUOj':_0x5dcf5c(0x130),'ftjmZ':_0x5dcf5c(0x1c2),'rQWNF':_0x5dcf5c(0xff),'GWjxN':function(_0x586d20){return _0x586d20();}},_0x11105d=-0x116c+-0x14a+0xa*0x1e3;switch(_0x1e5cb5){case _0x25fe1d[_0x5dcf5c(0xd4)]:offsetX+=_0x11105d;break;case _0x25fe1d[_0x5dcf5c(0x1f1)]:offsetX-=_0x11105d;break;case'up':offsetY+=_0x11105d;break;case _0x25fe1d[_0x5dcf5c(0x117)]:offsetY-=_0x11105d;break;default:break;}_0x25fe1d[_0x5dcf5c(0xfd)](updateCanvasContainerPosition);}function updateCanvasContainerPosition(){const _0x56609e=_0x2b7419,_0x364f82={'fxyNE':function(_0xde5ee6,_0x596532){return _0xde5ee6==_0x596532;}};_0x364f82[_0x56609e(0xdf)](zoomLevel,0x1282*0x1+-0x106b+0x1*-0x217+0.08)?(canvas[_0x56609e(0x127)][_0x56609e(0xc8)]=_0x56609e(0x15c),offsetX=0x1ed5+-0x1543+-0x7*0x15e,offsetY=0x869*0x3+-0x17ed+0x2*-0xa7):canvas[_0x56609e(0x127)][_0x56609e(0xc8)]=_0x56609e(0x14e)+offsetX+_0x56609e(0x19f)+offsetY+_0x56609e(0x1ec);}function _0x356b(_0x300523,_0x5bfa67){const _0x1e1746=_0xbff1();return _0x356b=function(_0xb0e614,_0x467e44){_0xb0e614=_0xb0e614-(0x3bf+0x12c*-0xc+0xb0b);let _0x2b0af1=_0x1e1746[_0xb0e614];return _0x2b0af1;},_0x356b(_0x300523,_0x5bfa67);}canvasContainer[_0x2b7419(0x1c6)+_0x2b7419(0xdd)](_0x2b7419(0x10e),_0x445323=>{const _0x41ccf2=_0x2b7419,_0x5d4bf2={'OwKRa':function(_0x338b37,_0x158374){return _0x338b37>_0x158374;},'SRglq':function(_0x2ebd9e,_0x4ebf02){return _0x2ebd9e+_0x4ebf02;},'tZtMO':function(_0x6598a,_0x554f47){return _0x6598a*_0x554f47;},'uCWvu':function(_0x50cbb3,_0x5688c0){return _0x50cbb3<_0x5688c0;},'uWiRV':function(_0x3ce1fc){return _0x3ce1fc();}};_0x445323[_0x41ccf2(0xc4)+_0x41ccf2(0x14c)]();const _0x14539b=_0x5d4bf2[_0x41ccf2(0xd1)](_0x445323[_0x41ccf2(0x106)],-0x993+0x43f*0x3+-0x32a)?-(0xd4*0x8+-0x1c*-0x37+-0x287*0x5):0x179f*0x1+0x4*-0x197+0x8a1*-0x2,_0x485811=_0x5d4bf2[_0x41ccf2(0x17a)](0x1c78+-0x343*-0x1+0x1fba*-0x1,_0x5d4bf2[_0x41ccf2(0x1e2)](_0x14539b,zoomFactor));zoomLevel*=_0x485811;_0x5d4bf2[_0x41ccf2(0xf5)](zoomLevel,-0x2563+0xb7+-0x92b*-0x4+0.08)&&(zoomLevel=0x1464+-0x115c*0x1+-0x308+0.08,canvas[_0x41ccf2(0x127)][_0x41ccf2(0xc8)]=_0x41ccf2(0x14e)+_0x41ccf2(0x15c),_0x5d4bf2[_0x41ccf2(0x10f)](updateCanvasContainerPosition));if(_0x5d4bf2[_0x41ccf2(0xd1)](zoomLevel,0x139*0x2+0x195d+0x1f*-0xe5))zoomLevel=0x1256*0x1+0x1ea0+-0x30e2;canvasContainer[_0x41ccf2(0x127)][_0x41ccf2(0xc8)]=_0x41ccf2(0x17f)+zoomLevel+')';});
\ No newline at end of file
diff --git a/public/static/js/main-UujD4m-6.js b/public/static/js/main-UujD4m-6.js
new file mode 100644
index 0000000..b8145e0
--- /dev/null
+++ b/public/static/js/main-UujD4m-6.js
@@ -0,0 +1 @@
+const _0x23f365=_0x50eb;(function(_0x258bb8,_0xa0fb52){const _0x58e4ec=_0x50eb,_0x58ab82=_0x258bb8();while(!![]){try{const _0x2a3a01=parseInt(_0x58e4ec(0x1ec))/(-0x1d91+0x2b*-0x10+-0x1*-0x2042)+-parseInt(_0x58e4ec(0x1d1))/(0xdbc+0x57*0x5d+-0x2d55)+parseInt(_0x58e4ec(0x1e7))/(-0x1e*0x48+-0x6ff*0x3+-0xc*-0x274)+parseInt(_0x58e4ec(0x154))/(-0x161*0x7+-0x11bf+-0x1b6a*-0x1)*(-parseInt(_0x58e4ec(0x206))/(-0xdd6+0x2427+0x1*-0x164c))+parseInt(_0x58e4ec(0x18a))/(-0x24e3+0x1326+0x11c3)*(parseInt(_0x58e4ec(0x22c))/(0x1*0x1624+-0x257a+-0x9*-0x1b5))+-parseInt(_0x58e4ec(0x25e))/(-0x2*-0x1058+0x3e*-0x65+-0x832)*(parseInt(_0x58e4ec(0x1db))/(0xef*-0x1a+0x9*-0x2f1+0xcb2*0x4))+parseInt(_0x58e4ec(0x20e))/(-0x4*-0x32+0x21b9+-0x1*0x2277)*(parseInt(_0x58e4ec(0x1d8))/(-0xd2c+-0x567+0x129e));if(_0x2a3a01===_0xa0fb52)break;else _0x58ab82['push'](_0x58ab82['shift']());}catch(_0x122d8a){_0x58ab82['push'](_0x58ab82['shift']());}}}(_0x12ea,-0x5bb55+-0x71c7d*0x2+0x1cbe9b));const socket=io({'timeout':0x1f4}),canvas=document[_0x23f365(0x143)+_0x23f365(0x1e0)](_0x23f365(0x130)+_0x23f365(0x1b0)),canvasContainer=document[_0x23f365(0x143)+_0x23f365(0x1e0)](_0x23f365(0x1fb)+_0x23f365(0x245)),buttons=document[_0x23f365(0x143)+_0x23f365(0x1e0)](_0x23f365(0x174)),tx=document[_0x23f365(0x143)+_0x23f365(0x1e0)]('x'),ty=document[_0x23f365(0x143)+_0x23f365(0x1e0)]('y'),context=canvas[_0x23f365(0x1c2)]('2d'),drawingEmitDelay=0x1*0xd37+-0x1d96+0x1253;let lastDrawingEmitTime=0x20b6+0xb2*-0x29+-0x4*0x10d,drawings=[],announcementIDs=[],currentDrawing=[],isDrawing=![],uiVisible=!![],currentColor=_0x23f365(0x14c),announceCount=-0x6*0xa+0x2530+-0x24f3,connectionTimer=null,connectionSeconds=-0xef1+0x1af2+-0xc01,versionSet=![],ping=null,uuid='';context[_0x23f365(0x1ad)+_0x23f365(0x18e)+'d']=!![],canvasContainer[_0x23f365(0x187)][_0x23f365(0x14d)]=_0x23f365(0x191)+')';function getCookie(_0x552e46){const _0x3c6743=_0x23f365,_0x661e82={'blbCS':function(_0x1f7cde,_0xa0de62){return _0x1f7cde===_0xa0de62;}},_0x2a9223=document[_0x3c6743(0x220)][_0x3c6743(0x141)](';')[_0x3c6743(0x22e)](_0x3de3ce=>_0x3de3ce[_0x3c6743(0x19a)]());for(const _0x176913 of _0x2a9223){const [_0x48ba4b,_0x4c718e]=_0x176913[_0x3c6743(0x141)]('=')[_0x3c6743(0x22e)](_0x46373b=>decodeURIComponent(_0x46373b));if(_0x661e82[_0x3c6743(0x22f)](_0x48ba4b,_0x552e46))return _0x4c718e;}return null;}function setCookie(_0x3b473,_0x36a7e0,_0x3502e2){const _0x54efea=_0x23f365,_0x1601fc={'IEuRb':function(_0x258af6,_0x3b1a7a){return _0x258af6+_0x3b1a7a;},'njsJd':function(_0x1f08b1,_0x114f59){return _0x1f08b1+_0x114f59;},'JHThA':function(_0x146644,_0x215bed){return _0x146644(_0x215bed);}},_0x1106d5=new Date();_0x1106d5[_0x54efea(0x1f1)](_0x1601fc[_0x54efea(0x1ff)](_0x1106d5[_0x54efea(0x1f6)](),_0x3502e2));const _0x38b05b=_0x1601fc[_0x54efea(0x1d5)](_0x1601fc[_0x54efea(0x1f5)](encodeURIComponent,_0x36a7e0),_0x3502e2?_0x54efea(0x224)+_0x1106d5[_0x54efea(0x149)+'g']():'');document[_0x54efea(0x220)]=_0x3b473+'='+_0x38b05b+_0x54efea(0x1c3);}function pinger(){const _0x411d01=_0x23f365,_0x5d51fb={'PSJOo':function(_0x51b1f8,_0x4c6aa8){return _0x51b1f8-_0x4c6aa8;},'HVCBr':function(_0xcf9b4c,_0x5b18ed){return _0xcf9b4c+_0x5b18ed;},'mhTcQ':_0x411d01(0x1b2),'NHQEg':_0x411d01(0x214),'wQVOE':_0x411d01(0x1aa)},_0x5eac38=Date[_0x411d01(0x192)](),_0x20d0ed=document[_0x411d01(0x143)+_0x411d01(0x1e0)](_0x5d51fb[_0x411d01(0x20d)])[_0x411d01(0x181)+_0x411d01(0x194)]('p');socket['on'](_0x5d51fb[_0x411d01(0x18f)],()=>{const _0x5dd56d=_0x411d01,_0xfd0515=_0x5d51fb[_0x5dd56d(0x184)](Date[_0x5dd56d(0x192)](),_0x5eac38);_0x20d0ed[_0x5dd56d(0x1b1)+'t']=_0x5d51fb[_0x5dd56d(0x229)](_0x5d51fb[_0x5dd56d(0x229)](_0x5d51fb[_0x5dd56d(0x195)],_0xfd0515),'ms'),document[_0x5dd56d(0x143)+_0x5dd56d(0x1e0)](_0x5d51fb[_0x5dd56d(0x20d)])[_0x5dd56d(0x187)][_0x5dd56d(0x133)]=0xc0b+-0xd8d*0x1+-0x182*-0x1+0.25;}),socket[_0x411d01(0x215)](_0x5d51fb[_0x411d01(0x20d)]);}ping=setInterval(pinger,0x882+0x21b*0xf+-0x242f);function startConnectionTimer(){const _0x327e64=_0x23f365,_0x324a8f={'KWosH':_0x327e64(0x19c),'YEViP':function(_0x44190e,_0x2cb782){return _0x44190e+_0x2cb782;},'Iceqz':_0x327e64(0x12c)+_0x327e64(0x1bb)+_0x327e64(0x1cb),'vPxGB':_0x327e64(0x1f8),'fYwLe':function(_0x50578a,_0xb728e1){return _0x50578a>_0xb728e1;},'OaRhB':_0x327e64(0x125)+_0x327e64(0x200),'iSCLE':function(_0x1bb9de,_0x557692){return _0x1bb9de(_0x557692);},'FOfOA':_0x327e64(0x172),'gaOUU':_0x327e64(0x1a9),'pkUPu':_0x327e64(0x159)+_0x327e64(0x1c9),'OPfyv':_0x327e64(0x242),'xPSjJ':_0x327e64(0x23c)+_0x327e64(0x136)+_0x327e64(0x201),'vULrK':_0x327e64(0x216),'aZWUM':_0x327e64(0x187),'dHJZF':_0x327e64(0x230)+_0x327e64(0x1cc)+_0x327e64(0x11e)+_0x327e64(0x156)+_0x327e64(0x1a0),'oVhBu':function(_0x156a2b,_0x39d853){return _0x156a2b+_0x39d853;},'XIaGa':_0x327e64(0x209),'WHGkp':function(_0x5ac3ae){return _0x5ac3ae();},'fiXYc':function(_0x4a9a53,_0xed7d2,_0xd74c47){return _0x4a9a53(_0xed7d2,_0xd74c47);}},_0x24e329=document[_0x327e64(0x181)+_0x327e64(0x194)](_0x324a8f[_0x327e64(0x19b)]);if(_0x324a8f[_0x327e64(0x15b)](_0x24e329[_0x327e64(0x181)+_0x327e64(0x120)](_0x324a8f[_0x327e64(0x14f)])[_0x327e64(0x19d)],0x6e1*-0x4+0x717*-0x2+-0x9*-0x4a2))return;_0x324a8f[_0x327e64(0x1ef)](clearInterval,ping);const _0x561b7c=document[_0x327e64(0x1ed)+_0x327e64(0x23e)](_0x324a8f[_0x327e64(0x1c8)]);_0x561b7c[_0x327e64(0x22b)+'te'](_0x324a8f[_0x327e64(0x155)],_0x324a8f[_0x327e64(0x175)]),_0x561b7c[_0x327e64(0x22b)+'te']('id',_0x324a8f[_0x327e64(0x13c)]),_0x561b7c[_0x327e64(0x187)][_0x327e64(0x166)]=_0x324a8f[_0x327e64(0x257)],_0x561b7c[_0x327e64(0x187)][_0x327e64(0x1ab)]=_0x324a8f[_0x327e64(0x25a)];const _0x1cf118=document[_0x327e64(0x1ed)+_0x327e64(0x23e)]('p');_0x1cf118[_0x327e64(0x22b)+'te']('id',_0x324a8f[_0x327e64(0x23a)]),_0x1cf118[_0x327e64(0x22b)+'te'](_0x324a8f[_0x327e64(0x127)],_0x324a8f[_0x327e64(0x16a)]),_0x1cf118[_0x327e64(0x1b1)+'t']=_0x324a8f[_0x327e64(0x212)](_0x324a8f[_0x327e64(0x183)],connectionSeconds[_0x327e64(0x1bd)](-0x53*0x43+-0x2*-0x10a5+-0xb90)),_0x561b7c[_0x327e64(0x237)+'d'](_0x1cf118),_0x24e329[_0x327e64(0x237)+'d'](_0x561b7c),canvas[_0x327e64(0x187)][_0x327e64(0x133)]=0x22e5*0x1+-0xe2+-0x2203,buttons[_0x327e64(0x187)][_0x327e64(0x133)]=0x11b6+-0x1*0x169d+0x4e7*0x1,canvas[_0x327e64(0x171)][_0x327e64(0x12d)](_0x324a8f[_0x327e64(0x126)]),drawings=[],currentDrawing=[],_0x324a8f[_0x327e64(0x119)](draw),connectionTimer=_0x324a8f[_0x327e64(0x231)](setInterval,()=>{const _0x2a1065=_0x327e64;connectionSeconds+=-0x1751*0x1+-0x416*-0x2+0xf25*0x1+0.1,document[_0x2a1065(0x143)+_0x2a1065(0x1e0)](_0x324a8f[_0x2a1065(0x23a)])[_0x2a1065(0x1b1)+'t']=_0x324a8f[_0x2a1065(0x1d0)](_0x324a8f[_0x2a1065(0x183)],connectionSeconds[_0x2a1065(0x1bd)](0xe2+-0x2190+0x20af));},0x1*-0x1fc8+-0x39*0xa5+0x44e9);}function stopConnectionTimer(){const _0x13270d=_0x23f365,_0x2866e8={'gMNIZ':_0x13270d(0x17a),'KXWoI':_0x13270d(0x209),'UyziN':function(_0x414ef,_0xf1213e,_0xb1e388){return _0x414ef(_0xf1213e,_0xb1e388);},'nBcvA':function(_0x500961,_0x2b8722){return _0x500961(_0x2b8722);},'kQeqA':function(_0x6fc9f3,_0x3ccf20,_0x376bc3){return _0x6fc9f3(_0x3ccf20,_0x376bc3);},'mEzEH':_0x13270d(0x1f8),'AJOEe':_0x13270d(0x125)+_0x13270d(0x200),'fCfXf':_0x13270d(0x172),'veAGe':_0x13270d(0x1a9),'MBuQj':_0x13270d(0x159)+_0x13270d(0x1bf),'dMMnt':_0x13270d(0x1df),'ypFuT':_0x13270d(0x23c)+_0x13270d(0x136)+_0x13270d(0x201),'dJYcR':_0x13270d(0x187),'BiIzE':_0x13270d(0x207)+_0x13270d(0x170),'okaMI':_0x13270d(0x19c),'dupJg':_0x13270d(0x230)+_0x13270d(0x1cc)+_0x13270d(0x11e)+_0x13270d(0x156)+_0x13270d(0x1a0),'clmgT':_0x13270d(0x251)+_0x13270d(0x19e)+_0x13270d(0x1d4)+_0x13270d(0x188)};_0x2866e8[_0x13270d(0x16e)](clearInterval,connectionTimer),ping=_0x2866e8[_0x13270d(0x208)](setInterval,pinger,0x23b7+-0x9*0xa+-0x1f75),connectionSeconds=0x587+0x1*-0x1028+0xaa1;const _0x4dce89=document[_0x13270d(0x181)+_0x13270d(0x194)](_0x2866e8[_0x13270d(0x1ac)]);_0x4dce89[_0x13270d(0x181)+_0x13270d(0x120)](_0x2866e8[_0x13270d(0x1d3)])[_0x13270d(0x148)](_0x56aa94=>{const _0x536dff=_0x13270d;_0x56aa94[_0x536dff(0x171)][_0x536dff(0x1fe)](_0x2866e8[_0x536dff(0x114)]),_0x56aa94[_0x536dff(0x171)][_0x536dff(0x12d)](_0x2866e8[_0x536dff(0x14b)]),_0x2866e8[_0x536dff(0x1f2)](setTimeout,()=>{const _0x3edacd=_0x536dff;_0x56aa94[_0x3edacd(0x1fe)]();},-0x37d*0x1+0x1*0x269f+-0x89*0x3e);});const _0x3fc6bd=document[_0x13270d(0x1ed)+_0x13270d(0x23e)](_0x2866e8[_0x13270d(0x162)]);_0x3fc6bd[_0x13270d(0x22b)+'te'](_0x2866e8[_0x13270d(0x16b)],_0x2866e8[_0x13270d(0x1de)]),_0x3fc6bd[_0x13270d(0x22b)+'te']('id',_0x2866e8[_0x13270d(0x144)]),_0x3fc6bd[_0x13270d(0x187)][_0x13270d(0x166)]=_0x2866e8[_0x13270d(0x132)],_0x3fc6bd[_0x13270d(0x22b)+'te'](_0x2866e8[_0x13270d(0x16d)],_0x2866e8[_0x13270d(0x14e)]);const _0x36be14=document[_0x13270d(0x1ed)+_0x13270d(0x23e)]('p');_0x36be14[_0x13270d(0x22b)+'te']('id',_0x2866e8[_0x13270d(0x197)]),_0x36be14[_0x13270d(0x22b)+'te'](_0x2866e8[_0x13270d(0x16d)],_0x2866e8[_0x13270d(0x13a)]),_0x36be14[_0x13270d(0x1b1)+'t']=_0x2866e8[_0x13270d(0x1a5)],_0x3fc6bd[_0x13270d(0x237)+'d'](_0x36be14),_0x4dce89[_0x13270d(0x237)+'d'](_0x3fc6bd),canvas[_0x13270d(0x187)][_0x13270d(0x133)]=0x1a0c*-0x1+0x15d7+-0x9a*-0x7,buttons[_0x13270d(0x187)][_0x13270d(0x133)]=-0x7*0x2b+0x266c+-0x253e,canvas[_0x13270d(0x171)][_0x13270d(0x1fe)](_0x2866e8[_0x13270d(0x14b)]),canvas[_0x13270d(0x171)][_0x13270d(0x12d)](_0x2866e8[_0x13270d(0x114)]);const _0x4ec7ae=document[_0x13270d(0x143)+_0x13270d(0x1e0)](_0x2866e8[_0x13270d(0x144)]);_0x2866e8[_0x13270d(0x1f2)](setTimeout,()=>{const _0x5406a9=_0x13270d;_0x4ec7ae[_0x5406a9(0x171)][_0x5406a9(0x1fe)](_0x2866e8[_0x5406a9(0x114)]),_0x4ec7ae[_0x5406a9(0x171)][_0x5406a9(0x12d)](_0x2866e8[_0x5406a9(0x14b)]),_0x2866e8[_0x5406a9(0x1f2)](setTimeout,()=>{const _0x1ebb5a=_0x5406a9;_0x4ec7ae[_0x1ebb5a(0x1fe)]();},0xc2c*0x2+-0x21*-0x75+-0xb5*0x35);},0x937+0x2244+-0xb3d*0x3);}socket['on'](_0x23f365(0x186),()=>{const _0x181474=_0x23f365,_0x539699={'giTUU':function(_0x139449,_0x124127){return _0x139449!=_0x124127;},'pZuDr':function(_0x4f5272){return _0x4f5272();}};_0x539699[_0x181474(0x241)](connectionSeconds,0x1*-0xab2+-0x76c+0x121e)&&_0x539699[_0x181474(0x1e6)](stopConnectionTimer);}),socket['on'](_0x23f365(0x147)+_0x23f365(0x24b),()=>{const _0x18a25e=_0x23f365,_0x26525a={'rjxjy':function(_0x1fbea4){return _0x1fbea4();}};_0x26525a[_0x18a25e(0x1e5)](startConnectionTimer);}),socket['on'](_0x23f365(0x1e2)+_0x23f365(0x1ee),()=>{const _0x5ee149=_0x23f365,_0x20b2d1={'vfEGY':function(_0x26da85){return _0x26da85();}};_0x20b2d1[_0x5ee149(0x182)](startConnectionTimer);});function _0x12ea(){const _0x1d129a=['meout','iSCLE','awings','setDate','UyziN','uQGPD','rtogm','JHThA','getDate','nzpew','.messages','clientNum','kmNYd','canvasCont','px)','deup\x20','remove','IEuRb','ction\x22]','\x200,\x200.1)','display','hidden','message','w-version','5bployG','min-width:','kQeqA','fadedown','iAcOI','jBLeI','oHxGp','NHQEg','30ZwJctk','zSwEX','addEventLi','mouseleave','oVhBu','NGwkL','ping','emit','300px','sGjvV','wKDpJ','SgjkF','stop','innerHTML','QUJMA','down','lineTo','stroke','cookie','e:\x20normal;','HyYCq','dataSize',';\x20expires=','play','ECSwS','LNQAN','visited','HVCBr','qqBZI','setAttribu','5557209zcEcDu','KyJEW','map','blbCS','white-spac','fiXYc','kYfwm','Collavas\x20v','scale(','preventDef','value','appendChil','CryIH','lSuZP','KWosH','gjxvS','0\x204px\x208px\x20','kFDPk','ent','px,\x20','src','giTUU','connection','UIiNx','uuid','ainer','2|1|4|0|3','bGOaD','clientY','Size:\x20','mousemove','ror','POxIf','round','beginPath','aSbhB','BEjfc','Server\x20con','data','getAttribu','none','OCnuq','JrvAv','xPSjJ','kLcQd','color','vULrK','nZwDf','audio','jIUUd','8QvRJWd','gMNIZ','wheel','GAmRq','ZHaKs','welcome','WHGkp','YadZg','gClientRec','IzWtZ','kbhdb','margin:\x2025','DXIsq','torAll','Connected\x20','visible','3|0|5','xesKV','[id=\x22conne','XIaGa','aZWUM','connectedC','HiCvY','Axgxy','VAwkW','Server\x20Con','add','xsdBg','ywKXr','drawingCan','OdIIY','ypFuT','opacity','DwkaO','left','rgba(0,\x200,','BbZtS','zHYzv','Dklmy','dupJg','title','OPfyv','JIZkC','7|6|1|4|2|','wDeWJ','daITz','split','clientX','getElement','dMMnt','jNJCY','Jffse','connect_er','forEach','toUTCStrin','existingDr','KXWoI','#000000','transform','BiIzE','OaRhB','zHREI','SCxxg','audio-play','draw','1996564aEqbCa','gaOUU','px\x2050px\x2025','drawings','WdSHj','message\x20fa','translate(','fYwLe','flex','visibility','announceme','dIuwx','parse','size','fCfXf','VdTWX','nGCUw','izVRs','boxShadow','version','hmcyy','target','dHJZF','veAGe','strokeStyl','dJYcR','nBcvA','2|1|4|3|0','\x20auto;','classList','div','izown','buttons','pkUPu','KvrsJ','maHwq','mousedown','ksjRi','fadeup','wZKlN','whoGq','Version:\x20','NRMLa','type','JwoLG','querySelec','vfEGY','Iceqz','PSJOo','ault','connect','style','tored','reOrq','6tRrWcb','top','1|3|4|0|2','moveTo','hingEnable','wQVOE','0px,\x200px)','scale(0.08','now','pause','tor','mhTcQ','vmaqx','okaMI','bKAmc','height','trim','vPxGB','timeout','length','nection\x20ha','ZtEpu','px\x2050px','NjUHL','orrmt','Clients:\x20','gtxaU','clmgT','reload','resetView','vZZwO','class','pong','width','mEzEH','imageSmoot','deltaY','LzVSR','vas','textConten','Ping:\x20','transition','AVwpZ','drawing','jUEVQ','EOxVu','mZTHF','true','KTNCH','nection\x20Ti','BuEPO','toFixed','qCLUy','deup\x20green','mouseup','lOruv','getContext',';\x20path=/','getBoundin','clearRect','AHSBC','hkvnX','FOfOA','deup\x20red','NDrhY','meout:\x20','e:\x20nowrap;','lients','right','dqAYz','YEViP','2088286QRGtHS','w-close','AJOEe','s\x20been\x20res','njsJd','push','VXGkt','7216957krvJPP','mieKR','TUJDq','9236943dQoBRK','POfan','VREmr','MBuQj','success','ById','VlIoN','connect_ti','click','aClWP','rjxjy','pZuDr','1126818PTxrzd','AUAMO','MSQSy','stener','FJFAS','7933fCIhJm','createElem'];_0x12ea=function(){return _0x1d129a;};return _0x12ea();}function toggleOP(){const _0x59976f=_0x23f365,_0x31d461={'ZHaKs':_0x59976f(0x13e)+_0x59976f(0x123),'BEjfc':_0x59976f(0x214),'VlIoN':_0x59976f(0x254),'GAmRq':_0x59976f(0x1a7),'ksjRi':_0x59976f(0x128)+_0x59976f(0x1cd),'EOxVu':_0x59976f(0x167),'SCxxg':_0x59976f(0x252)},_0x47c2af=_0x31d461[_0x59976f(0x117)][_0x59976f(0x141)]('|');let _0x34e8bb=-0x1c85*-0x1+-0xeeb+-0xd9a;while(!![]){switch(_0x47c2af[_0x34e8bb++]){case'0':document[_0x59976f(0x143)+_0x59976f(0x1e0)](_0x31d461[_0x59976f(0x250)])[_0x59976f(0x187)][_0x59976f(0x202)]=uiVisible?'':_0x31d461[_0x59976f(0x1e1)];continue;case'1':document[_0x59976f(0x143)+_0x59976f(0x1e0)](_0x31d461[_0x59976f(0x116)])[_0x59976f(0x187)][_0x59976f(0x202)]=uiVisible?'':_0x31d461[_0x59976f(0x1e1)];continue;case'2':document[_0x59976f(0x143)+_0x59976f(0x1e0)](_0x31d461[_0x59976f(0x179)])[_0x59976f(0x187)][_0x59976f(0x202)]=uiVisible?'':_0x31d461[_0x59976f(0x1e1)];continue;case'3':document[_0x59976f(0x143)+_0x59976f(0x1e0)](_0x31d461[_0x59976f(0x1b7)])[_0x59976f(0x187)][_0x59976f(0x202)]=uiVisible?'':_0x31d461[_0x59976f(0x1e1)];continue;case'4':document[_0x59976f(0x143)+_0x59976f(0x1e0)]('xy')[_0x59976f(0x187)][_0x59976f(0x202)]=uiVisible?'':_0x31d461[_0x59976f(0x1e1)];continue;case'5':document[_0x59976f(0x143)+_0x59976f(0x1e0)](_0x31d461[_0x59976f(0x151)])[_0x59976f(0x187)][_0x59976f(0x202)]=uiVisible?'':_0x31d461[_0x59976f(0x1e1)];continue;case'6':buttons[_0x59976f(0x187)][_0x59976f(0x202)]=uiVisible?'':_0x31d461[_0x59976f(0x1e1)];continue;case'7':uiVisible=!uiVisible;continue;}break;}}function resetView(){const _0x285657=_0x23f365,_0x229316={'qCLUy':_0x285657(0x246)},_0xe33f96=_0x229316[_0x285657(0x1be)][_0x285657(0x141)]('|');let _0x241e35=-0x22ed+-0xb5a*-0x1+-0x4b7*-0x5;while(!![]){switch(_0xe33f96[_0x241e35++]){case'0':offsetX=0xa72+0x318+-0xd8a;continue;case'1':canvas[_0x285657(0x187)][_0x285657(0x14d)]=_0x285657(0x15a)+_0x285657(0x190);continue;case'2':canvasContainer[_0x285657(0x187)][_0x285657(0x14d)]=_0x285657(0x191)+')';continue;case'3':offsetY=0x8*0x224+-0x1*-0x2203+0x2b1*-0x13;continue;case'4':zoomLevel=0x1f05+0x2558+-0x445d*0x1+0.08;continue;}break;}}function changeColor(_0x22df93){const _0xdcec87=_0x23f365;currentColor=_0x22df93[_0xdcec87(0x169)][_0xdcec87(0x236)];}document[_0x23f365(0x210)+_0x23f365(0x1ea)](_0x23f365(0x1c0),()=>{isDrawing=![];}),canvas[_0x23f365(0x210)+_0x23f365(0x1ea)](_0x23f365(0x211),()=>{isDrawing=![];}),canvas[_0x23f365(0x210)+_0x23f365(0x1ea)](_0x23f365(0x178),_0x28880e=>{const _0x1c1308=_0x23f365,_0x89cab6={'AHSBC':function(_0xd81243,_0x21f7ae){return _0xd81243(_0x21f7ae);}};isDrawing=!![],_0x89cab6[_0x1c1308(0x1c6)](addPoint,_0x28880e);}),canvas[_0x23f365(0x210)+_0x23f365(0x1ea)](_0x23f365(0x1c0),()=>{const _0x154d0a=_0x23f365,_0x29071b={'izVRs':function(_0x3d329c,_0x32f6d6){return _0x3d329c>_0x32f6d6;},'vZZwO':_0x154d0a(0x18c),'mZTHF':_0x154d0a(0x153),'NRMLa':function(_0x33e4f6){return _0x33e4f6();}};isDrawing=![];if(_0x29071b[_0x154d0a(0x165)](currentDrawing[_0x154d0a(0x19d)],0x1080+0x2f*-0x39+-0x609)){const _0x424090=_0x29071b[_0x154d0a(0x1a8)][_0x154d0a(0x141)]('|');let _0x325431=0x1*-0x8ef+-0xe8e+0x177d;while(!![]){switch(_0x424090[_0x325431++]){case'0':currentDrawing=[];continue;case'1':socket[_0x154d0a(0x215)](_0x29071b[_0x154d0a(0x1b8)],{'type':_0x29071b[_0x154d0a(0x1b8)],'drawing':currentDrawing,'valid':uuid});continue;case'2':lastDrawingEmitTime=Date[_0x154d0a(0x192)]();continue;case'3':drawings[_0x154d0a(0x1d6)](currentDrawing);continue;case'4':_0x29071b[_0x154d0a(0x17e)](draw);continue;}break;}}}),canvas[_0x23f365(0x210)+_0x23f365(0x1ea)](_0x23f365(0x24a),_0x298b02=>{const _0x49de8f=_0x23f365,_0x11168e={'hkvnX':function(_0x269abd,_0x1268cf){return _0x269abd/_0x1268cf;},'VXGkt':function(_0x4eb08e,_0x5059fd){return _0x4eb08e*_0x5059fd;},'reOrq':function(_0x11c499,_0x3602ba){return _0x11c499-_0x3602ba;},'JwoLG':function(_0x16be8b,_0x10e0a0){return _0x16be8b*_0x10e0a0;},'VAwkW':function(_0x102685,_0x28ee24){return _0x102685-_0x28ee24;},'jBLeI':function(_0x369c4d,_0x166cab){return _0x369c4d(_0x166cab);},'ECSwS':function(_0x286f03,_0x4966f7){return _0x286f03>=_0x4966f7;},'NjUHL':function(_0x275f2c,_0xb40d41){return _0x275f2c-_0xb40d41;}},_0x47b09c=canvas[_0x49de8f(0x1c4)+_0x49de8f(0x11b)+'t'](),_0x227ea0=_0x11168e[_0x49de8f(0x1c7)](canvas[_0x49de8f(0x1ab)],_0x47b09c[_0x49de8f(0x1ab)]),_0x6b7fc9=_0x11168e[_0x49de8f(0x1c7)](canvas[_0x49de8f(0x199)],_0x47b09c[_0x49de8f(0x199)]),_0x2798ba=Math[_0x49de8f(0x24d)](_0x11168e[_0x49de8f(0x1d7)](_0x11168e[_0x49de8f(0x189)](_0x298b02[_0x49de8f(0x142)],_0x47b09c[_0x49de8f(0x135)]),_0x227ea0)),_0x319786=Math[_0x49de8f(0x24d)](_0x11168e[_0x49de8f(0x180)](_0x11168e[_0x49de8f(0x12b)](_0x298b02[_0x49de8f(0x248)],_0x47b09c[_0x49de8f(0x18b)]),_0x6b7fc9));tx[_0x49de8f(0x21b)]=_0x2798ba,ty[_0x49de8f(0x21b)]=_0x319786;if(isDrawing){_0x11168e[_0x49de8f(0x20b)](addPoint,_0x298b02);const _0x2bf5a2=Date[_0x49de8f(0x192)]();_0x11168e[_0x49de8f(0x226)](_0x11168e[_0x49de8f(0x1a1)](_0x2bf5a2,lastDrawingEmitTime),drawingEmitDelay)&&(lastDrawingEmitTime=_0x2bf5a2);}});function addPoint(_0x2d9ced){const _0x454864=_0x23f365,_0x553d39={'Jffse':function(_0x13e3ab,_0x8ae642){return _0x13e3ab/_0x8ae642;},'UIiNx':function(_0x45a2ec,_0x253bf5){return _0x45a2ec*_0x253bf5;},'NGwkL':function(_0x14d7b7,_0x1cdbd2){return _0x14d7b7-_0x1cdbd2;},'AVwpZ':function(_0x22e16e,_0x4f812e){return _0x22e16e*_0x4f812e;},'zSwEX':function(_0x461ca8,_0x54aac2){return _0x461ca8-_0x54aac2;},'kFDPk':function(_0x215356){return _0x215356();}};if(!isDrawing)return;const _0x19098f=canvas[_0x454864(0x1c4)+_0x454864(0x11b)+'t'](),_0x352fb8=_0x553d39[_0x454864(0x146)](canvas[_0x454864(0x1ab)],_0x19098f[_0x454864(0x1ab)]),_0x317f9e=_0x553d39[_0x454864(0x146)](canvas[_0x454864(0x199)],_0x19098f[_0x454864(0x199)]),_0x1a5bd0=_0x553d39[_0x454864(0x243)](_0x553d39[_0x454864(0x213)](_0x2d9ced[_0x454864(0x142)],_0x19098f[_0x454864(0x135)]),_0x352fb8),_0x22ec92=_0x553d39[_0x454864(0x1b4)](_0x553d39[_0x454864(0x20f)](_0x2d9ced[_0x454864(0x248)],_0x19098f[_0x454864(0x18b)]),_0x317f9e);currentDrawing[_0x454864(0x1d6)]({'x':Math[_0x454864(0x24d)](_0x1a5bd0),'y':Math[_0x454864(0x24d)](_0x22ec92),'color':currentColor}),_0x553d39[_0x454864(0x23d)](draw);}function draw(){const _0x6b09a2=_0x23f365,_0x4295d5={'rtogm':function(_0x30a115,_0x5ea294){return _0x30a115<_0x5ea294;},'sGjvV':function(_0x186734,_0x18080c){return _0x186734-_0x18080c;},'dqAYz':function(_0x218f4a,_0xf46c64){return _0x218f4a>_0xf46c64;}};context[_0x6b09a2(0x1c5)](-0x1*-0x6f7+0x21c2+-0x8b*0x4b,-0x1*0xa5b+-0x523+-0x3*-0x52a,canvas[_0x6b09a2(0x1ab)],canvas[_0x6b09a2(0x199)]);for(const _0x4f793f of drawings){if(_0x4295d5[_0x6b09a2(0x1f4)](_0x4f793f[_0x6b09a2(0x19d)],0x3*0x1ff+0x233a+-0x7*0x5e3))continue;for(let _0x38282d=0x15ac+0xc76+-0x2221;_0x4295d5[_0x6b09a2(0x1f4)](_0x38282d,_0x4f793f[_0x6b09a2(0x19d)]);_0x38282d++){const _0x20ae1e=_0x4f793f[_0x4295d5[_0x6b09a2(0x217)](_0x38282d,-0x1*-0x1b29+-0xb7a+0x7d7*-0x2)],_0x2809a2=_0x4f793f[_0x38282d];context[_0x6b09a2(0x24e)](),context[_0x6b09a2(0x16c)+'e']=_0x20ae1e[_0x6b09a2(0x259)],context[_0x6b09a2(0x18d)](Math[_0x6b09a2(0x24d)](_0x20ae1e['x']),Math[_0x6b09a2(0x24d)](_0x20ae1e['y'])),context[_0x6b09a2(0x21e)](Math[_0x6b09a2(0x24d)](_0x2809a2['x']),Math[_0x6b09a2(0x24d)](_0x2809a2['y'])),context[_0x6b09a2(0x21f)]();}}context[_0x6b09a2(0x21f)]();if(_0x4295d5[_0x6b09a2(0x1cf)](currentDrawing[_0x6b09a2(0x19d)],-0x11f5*0x2+-0x170f+0x3af9)){context[_0x6b09a2(0x24e)](),context[_0x6b09a2(0x16c)+'e']=currentColor,context[_0x6b09a2(0x18d)](Math[_0x6b09a2(0x24d)](currentDrawing[0x1f2*0x6+0x16*0x162+0xa86*-0x4]['x']),Math[_0x6b09a2(0x24d)](currentDrawing[0x12af+0x3*0x81e+-0x1*0x2b09]['y']));for(let _0x11f630=-0x11a0+0xed5*0x1+0x2cc;_0x4295d5[_0x6b09a2(0x1f4)](_0x11f630,currentDrawing[_0x6b09a2(0x19d)]);_0x11f630++){const _0x3e7cb8=currentDrawing[_0x11f630];context[_0x6b09a2(0x21e)](Math[_0x6b09a2(0x24d)](_0x3e7cb8['x']),Math[_0x6b09a2(0x24d)](_0x3e7cb8['y']));}context[_0x6b09a2(0x21f)]();}}socket['on'](_0x23f365(0x223),_0x5b89d=>{const _0x2397d7=_0x23f365,_0x593be5={'kLcQd':_0x2397d7(0x252),'ZtEpu':function(_0x50b432,_0x29cc7e){return _0x50b432+_0x29cc7e;},'izown':_0x2397d7(0x249)};document[_0x2397d7(0x143)+_0x2397d7(0x1e0)](_0x593be5[_0x2397d7(0x258)])[_0x2397d7(0x181)+_0x2397d7(0x194)]('p')[_0x2397d7(0x1b1)+'t']=_0x593be5[_0x2397d7(0x19f)](_0x593be5[_0x2397d7(0x19f)](_0x593be5[_0x2397d7(0x173)],_0x5b89d[_0x2397d7(0x161)]),'MB'),document[_0x2397d7(0x143)+_0x2397d7(0x1e0)](_0x593be5[_0x2397d7(0x258)])[_0x2397d7(0x187)][_0x2397d7(0x133)]=0xa0b+0x2569+-0x2f74+0.25;}),socket['on'](_0x23f365(0x225),_0x1cfaf2=>{const _0x4b02bc=_0x23f365,_0x35aa15={'IzWtZ':function(_0x468513,_0x2056fd){return _0x468513!=_0x2056fd;},'YadZg':_0x4b02bc(0x21a),'mieKR':_0x4b02bc(0x152)+'er'};_0x35aa15[_0x4b02bc(0x11c)](_0x1cfaf2[_0x4b02bc(0x25c)],_0x35aa15[_0x4b02bc(0x11a)])?(document[_0x4b02bc(0x143)+_0x4b02bc(0x1e0)](_0x35aa15[_0x4b02bc(0x1d9)])[_0x4b02bc(0x240)]=_0x1cfaf2[_0x4b02bc(0x25c)],document[_0x4b02bc(0x143)+_0x4b02bc(0x1e0)](_0x35aa15[_0x4b02bc(0x1d9)])[_0x4b02bc(0x225)]()):document[_0x4b02bc(0x143)+_0x4b02bc(0x1e0)](_0x35aa15[_0x4b02bc(0x1d9)])[_0x4b02bc(0x193)]();}),socket['on'](_0x23f365(0x15e)+'nt',_0xa4ee64=>{const _0x49cffd=_0x23f365,_0x4ce703={'FJFAS':_0x49cffd(0x254),'POfan':function(_0x5aabf5,_0x524269){return _0x5aabf5-_0x524269;},'VdTWX':_0x49cffd(0x17a),'nGCUw':_0x49cffd(0x209),'VREmr':function(_0x54e154,_0x580d5c,_0x60830a){return _0x54e154(_0x580d5c,_0x60830a);},'whoGq':_0x49cffd(0x1f8),'WdSHj':_0x49cffd(0x172),'Dklmy':_0x49cffd(0x1a9),'SgjkF':function(_0x1f06d3,_0x57e465){return _0x1f06d3+_0x57e465;},'jIUUd':_0x49cffd(0x159)+_0x49cffd(0x1fd),'LzVSR':_0x49cffd(0x23c)+_0x49cffd(0x136)+_0x49cffd(0x201),'kYfwm':_0x49cffd(0x187),'CryIH':_0x49cffd(0x230)+_0x49cffd(0x221)+_0x49cffd(0x11e)+_0x49cffd(0x156)+_0x49cffd(0x1a0),'zHYzv':function(_0x30e029,_0x2aa19a){return _0x30e029-_0x2aa19a;}};if(_0xa4ee64[_0x49cffd(0x204)]&&_0xa4ee64[_0x49cffd(0x259)]){const _0x3c5a5c=_0xa4ee64[_0x49cffd(0x204)],_0x4571c7=document[_0x49cffd(0x181)+_0x49cffd(0x194)](_0x4ce703[_0x49cffd(0x17c)]),_0x33facb=document[_0x49cffd(0x1ed)+_0x49cffd(0x23e)](_0x4ce703[_0x49cffd(0x158)]);_0x33facb[_0x49cffd(0x22b)+'te'](_0x4ce703[_0x49cffd(0x139)],_0x4ce703[_0x49cffd(0x219)](_0x4ce703[_0x49cffd(0x25d)],_0xa4ee64[_0x49cffd(0x259)])),_0x33facb[_0x49cffd(0x22b)+'te']('id',announceCount),_0x33facb[_0x49cffd(0x187)][_0x49cffd(0x166)]=_0x4ce703[_0x49cffd(0x1af)];const _0x9a8a29=document[_0x49cffd(0x1ed)+_0x49cffd(0x23e)]('p');_0x9a8a29[_0x49cffd(0x22b)+'te'](_0x4ce703[_0x49cffd(0x232)],_0x4ce703[_0x49cffd(0x238)]),_0x9a8a29[_0x49cffd(0x1b1)+'t']=_0x3c5a5c,_0x33facb[_0x49cffd(0x237)+'d'](_0x9a8a29),_0x4571c7[_0x49cffd(0x237)+'d'](_0x33facb),announceCount++,announcementIDs[_0x49cffd(0x1d6)](_0x4ce703[_0x49cffd(0x138)](announceCount,-0x1e7b+0x16*0x15b+0xaa)),_0x4ce703[_0x49cffd(0x1dd)](setTimeout,()=>{const _0x6a64ff=_0x49cffd,_0x5c0e12=document[_0x6a64ff(0x143)+_0x6a64ff(0x1e0)](_0x4ce703[_0x6a64ff(0x1dc)](announceCount,0x616+0x24d7+0x43*-0xa4));_0x5c0e12[_0x6a64ff(0x171)][_0x6a64ff(0x1fe)](_0x4ce703[_0x6a64ff(0x163)]),_0x5c0e12[_0x6a64ff(0x171)][_0x6a64ff(0x12d)](_0x4ce703[_0x6a64ff(0x164)]),_0x4ce703[_0x6a64ff(0x1dd)](setTimeout,()=>{const _0x4bc8cf=_0x6a64ff;_0x5c0e12[_0x4bc8cf(0x187)][_0x4bc8cf(0x202)]=_0x4ce703[_0x4bc8cf(0x1eb)],_0x5c0e12[_0x4bc8cf(0x1fe)]();},-0x1962+0xe6*-0x4+-0xf77*-0x2);},0x14e2+-0x416*0x8+-0x1*-0x1f56);}});function hideMessages(){const _0x54ef06=_0x23f365,_0x56d227={'hmcyy':function(_0x5d0c23,_0x19cfe6){return _0x5d0c23!=_0x19cfe6;},'orrmt':_0x54ef06(0x242),'gtxaU':_0x54ef06(0x209),'Axgxy':_0x54ef06(0x254),'KyJEW':_0x54ef06(0x1f8),'KvrsJ':_0x54ef06(0x172),'AUAMO':function(_0x480e01,_0x4e48aa){return _0x480e01>_0x4e48aa;},'POxIf':function(_0x285f18,_0x1affd6,_0x32fd5f){return _0x285f18(_0x1affd6,_0x32fd5f);}},_0x513fe6=document[_0x54ef06(0x181)+_0x54ef06(0x194)](_0x56d227[_0x54ef06(0x22d)]);if(_0x513fe6){const _0x1bc624=_0x513fe6[_0x54ef06(0x181)+_0x54ef06(0x120)](_0x56d227[_0x54ef06(0x176)]);_0x56d227[_0x54ef06(0x1e8)](_0x1bc624[_0x54ef06(0x19d)],0xac7*-0x3+-0x1c69+0x3cbf)&&(_0x1bc624[_0x54ef06(0x148)](_0x1b7dfe=>{const _0x480902=_0x54ef06;_0x56d227[_0x480902(0x168)](_0x1b7dfe[_0x480902(0x253)+'te']('id'),_0x56d227[_0x480902(0x1a2)])&&_0x1b7dfe[_0x480902(0x171)][_0x480902(0x12d)](_0x56d227[_0x480902(0x1a4)]);}),_0x56d227[_0x54ef06(0x24c)](setTimeout,()=>{const _0x4f745a=_0x54ef06;_0x1bc624[_0x4f745a(0x148)](_0x46f393=>{const _0x3aa314=_0x4f745a;_0x56d227[_0x3aa314(0x168)](_0x46f393[_0x3aa314(0x253)+'te']('id'),_0x56d227[_0x3aa314(0x1a2)])&&(_0x46f393[_0x3aa314(0x187)][_0x3aa314(0x202)]=_0x56d227[_0x3aa314(0x12a)],_0x46f393[_0x3aa314(0x1fe)]());});},0x1823+0x425+-0x1a54));}}function _0x50eb(_0x4341d1,_0x3e703a){const _0x455688=_0x12ea();return _0x50eb=function(_0x4b2d23,_0x26d83e){_0x4b2d23=_0x4b2d23-(-0x216f+-0x21bc+0x1*0x443f);let _0x3b8c0a=_0x455688[_0x4b2d23];return _0x3b8c0a;},_0x50eb(_0x4341d1,_0x3e703a);}setInterval(hideMessages,-0x1106+-0xb40+-0x2*-0x17e7),socket['on'](_0x23f365(0x128)+_0x23f365(0x1cd),_0x513d67=>{const _0x1edf80=_0x23f365,_0x12ad2f={'nzpew':_0x1edf80(0x1f9),'wZKlN':_0x1edf80(0x128)+_0x1edf80(0x1cd)};document[_0x1edf80(0x143)+_0x1edf80(0x1e0)](_0x12ad2f[_0x1edf80(0x1f7)])[_0x1edf80(0x1b1)+'t']=_0x1edf80(0x121)+_0x1edf80(0x1a3)+_0x513d67,document[_0x1edf80(0x143)+_0x1edf80(0x1e0)](_0x12ad2f[_0x1edf80(0x17b)])[_0x1edf80(0x187)][_0x1edf80(0x133)]=-0x240*-0x5+-0x78f*-0x5+-0x117*0x2d+0.25;}),socket['on'](_0x23f365(0x1a6),_0x531dfa=>{const _0x19dbdc=_0x23f365;location[_0x19dbdc(0x1a6)](!![]);}),socket['on'](_0x23f365(0x167),_0x3ae5c2=>{const _0x50950e=_0x23f365,_0x11c3f0={'OCnuq':_0x50950e(0x16f),'wKDpJ':_0x50950e(0x205),'oHxGp':function(_0x3a8187,_0x59c7c3){return _0x3a8187+_0x59c7c3;},'qqBZI':_0x50950e(0x233),'iAcOI':_0x50950e(0x167),'DXIsq':_0x50950e(0x17d),'QUJMA':function(_0x18b3fd,_0x92e032){return _0x18b3fd+_0x92e032;}},_0x379492=_0x11c3f0[_0x50950e(0x255)][_0x50950e(0x141)]('|');let _0x393989=-0x11d1*-0x1+-0xd*0x125+0x5e*-0x8;while(!![]){switch(_0x379492[_0x393989++]){case'0':document[_0x50950e(0x143)+_0x50950e(0x1e0)](_0x11c3f0[_0x50950e(0x218)])[_0x50950e(0x1b1)+'t']=_0x11c3f0[_0x50950e(0x20c)](_0x11c3f0[_0x50950e(0x22a)],_0x3ae5c2);continue;case'1':document[_0x50950e(0x143)+_0x50950e(0x1e0)](_0x11c3f0[_0x50950e(0x20a)])[_0x50950e(0x181)+_0x50950e(0x194)]('p')[_0x50950e(0x1b1)+'t']=_0x11c3f0[_0x50950e(0x20c)](_0x11c3f0[_0x50950e(0x11f)],_0x3ae5c2);continue;case'2':document[_0x50950e(0x13b)]=_0x11c3f0[_0x50950e(0x21c)](_0x11c3f0[_0x50950e(0x22a)],_0x3ae5c2);continue;case'3':versionSet=!![];continue;case'4':document[_0x50950e(0x143)+_0x50950e(0x1e0)](_0x11c3f0[_0x50950e(0x20a)])[_0x50950e(0x187)][_0x50950e(0x133)]=-0x121a+0x1d4b+-0xb31+0.25;continue;}break;}}),socket['on'](_0x23f365(0x153),_0x2bc38a=>{const _0x47a299=_0x23f365,_0x4d9e19={'aSbhB':_0x47a299(0x254),'vmaqx':_0x47a299(0x172),'nZwDf':_0x47a299(0x17a),'TUJDq':_0x47a299(0x209),'JrvAv':function(_0x3e59cc,_0x4a76b7,_0x26dbdd){return _0x3e59cc(_0x4a76b7,_0x26dbdd);},'JIZkC':function(_0x2e57e8,_0x5698a4){return _0x2e57e8===_0x5698a4;},'wDeWJ':_0x47a299(0x153),'KTNCH':function(_0x35d5ec){return _0x35d5ec();},'DwkaO':function(_0x52f32a,_0x4f681e){return _0x52f32a===_0x4f681e;},'xsdBg':_0x47a299(0x14a)+_0x47a299(0x1f0),'jNJCY':function(_0x45493e,_0x11d7fe,_0x569c10,_0x3d1e2a){return _0x45493e(_0x11d7fe,_0x569c10,_0x3d1e2a);},'MSQSy':_0x47a299(0x244),'kbhdb':function(_0x147ad4){return _0x147ad4();},'dIuwx':_0x47a299(0x1b3),'NDrhY':_0x47a299(0x203),'HiCvY':_0x47a299(0x122),'bGOaD':function(_0x3ef0d3,_0x2049a2){return _0x3ef0d3(_0x2049a2);},'BuEPO':_0x47a299(0x228),'zHREI':_0x47a299(0x118),'HyYCq':_0x47a299(0x15c),'kmNYd':_0x47a299(0x1b9),'lSuZP':_0x47a299(0x1d2),'bKAmc':_0x47a299(0x1e3)};if(_0x4d9e19[_0x47a299(0x13d)](_0x2bc38a[_0x47a299(0x17f)],_0x4d9e19[_0x47a299(0x13f)])&&_0x2bc38a[_0x47a299(0x1b5)])drawings[_0x47a299(0x1d6)](_0x2bc38a[_0x47a299(0x1b5)]),_0x4d9e19[_0x47a299(0x1ba)](draw);else{if(_0x4d9e19[_0x47a299(0x134)](_0x2bc38a[_0x47a299(0x17f)],_0x4d9e19[_0x47a299(0x12e)])&&_0x2bc38a[_0x47a299(0x157)]){const _0x4d3b3f=JSON[_0x47a299(0x160)](_0x2bc38a[_0x47a299(0x157)]);drawings=[],uuid=_0x2bc38a['id'],_0x4d9e19[_0x47a299(0x145)](setCookie,_0x4d9e19[_0x47a299(0x1e9)],uuid,0x1090+0x2587+0x1*-0x3616),drawings[_0x47a299(0x1d6)](..._0x4d3b3f),_0x4d9e19[_0x47a299(0x11d)](draw),document[_0x47a299(0x143)+_0x47a299(0x1e0)](_0x4d9e19[_0x47a299(0x15f)])[_0x47a299(0x187)][_0x47a299(0x133)]=-0x69d+0x1*0x133c+-0x26*0x55,document[_0x47a299(0x143)+_0x47a299(0x1e0)](_0x4d9e19[_0x47a299(0x15f)])[_0x47a299(0x187)][_0x47a299(0x15d)]=_0x4d9e19[_0x47a299(0x1ca)],canvas[_0x47a299(0x187)][_0x47a299(0x133)]=0x17b3+0x1*-0x949+-0x20f*0x7,canvas[_0x47a299(0x187)][_0x47a299(0x15d)]=_0x4d9e19[_0x47a299(0x129)],buttons[_0x47a299(0x187)][_0x47a299(0x133)]=-0x3*0x29d+-0x715+0xeed;if(!_0x4d9e19[_0x47a299(0x247)](getCookie,_0x4d9e19[_0x47a299(0x1bc)])){var _0x267a27=document[_0x47a299(0x143)+_0x47a299(0x1e0)](_0x4d9e19[_0x47a299(0x150)]);_0x267a27[_0x47a299(0x187)][_0x47a299(0x202)]=_0x4d9e19[_0x47a299(0x222)],_0x267a27[_0x47a299(0x187)][_0x47a299(0x133)]=-0x1*0x18df+0x12b1+0x62f*0x1,_0x267a27[_0x47a299(0x181)+_0x47a299(0x194)](_0x4d9e19[_0x47a299(0x196)])[_0x47a299(0x171)][_0x47a299(0x12d)](_0x4d9e19[_0x47a299(0x25b)]),_0x4d9e19[_0x47a299(0x145)](setCookie,_0x4d9e19[_0x47a299(0x1bc)],_0x4d9e19[_0x47a299(0x1fa)],0x1c0e+-0x828*0x4+0x493),document[_0x47a299(0x143)+_0x47a299(0x1e0)](_0x4d9e19[_0x47a299(0x239)])[_0x47a299(0x210)+_0x47a299(0x1ea)](_0x4d9e19[_0x47a299(0x198)],_0x465086=>{const _0x3b5afb=_0x47a299,_0x57c54d={'gjxvS':_0x4d9e19[_0x3b5afb(0x24f)]};_0x267a27[_0x3b5afb(0x187)][_0x3b5afb(0x133)]=0x70e+0x184f+-0x1f5d,_0x267a27[_0x3b5afb(0x181)+_0x3b5afb(0x194)](_0x4d9e19[_0x3b5afb(0x196)])[_0x3b5afb(0x171)][_0x3b5afb(0x1fe)](_0x4d9e19[_0x3b5afb(0x25b)]),_0x267a27[_0x3b5afb(0x181)+_0x3b5afb(0x194)](_0x4d9e19[_0x3b5afb(0x196)])[_0x3b5afb(0x171)][_0x3b5afb(0x12d)](_0x4d9e19[_0x3b5afb(0x1da)]),_0x4d9e19[_0x3b5afb(0x256)](setTimeout,()=>{const _0x393e57=_0x3b5afb;_0x267a27[_0x393e57(0x187)][_0x393e57(0x202)]=_0x57c54d[_0x393e57(0x23b)];},0x14*-0x1ae+0x2f*0x3a+0x18e6);});}}}});let zoomLevel=-0x17*-0x21+-0xe3*-0x4+-0x683+0.08;const zoomFactor=-0x8*0x3c1+-0x9a9*-0x1+-0x23*-0x95+0.1;let offsetX=0x15f0+0x3*0x4d5+-0x246f,offsetY=-0x1*0x241c+0x1*-0x5e5+-0x1*-0x2a01;function pan(_0x28a8b8){const _0x5ccd2a=_0x23f365,_0x376a42={'ywKXr':_0x5ccd2a(0x135),'daITz':_0x5ccd2a(0x1ce),'OdIIY':_0x5ccd2a(0x21d),'lOruv':function(_0x7b9666){return _0x7b9666();}},_0x10ea98=-0x1e9+0x1f50+0x1d3f*-0x1;switch(_0x28a8b8){case _0x376a42[_0x5ccd2a(0x12f)]:offsetX+=_0x10ea98;break;case _0x376a42[_0x5ccd2a(0x140)]:offsetX-=_0x10ea98;break;case'up':offsetY+=_0x10ea98;break;case _0x376a42[_0x5ccd2a(0x131)]:offsetY-=_0x10ea98;break;default:break;}_0x376a42[_0x5ccd2a(0x1c1)](updateCanvasContainerPosition);}function updateCanvasContainerPosition(){const _0x282981=_0x23f365,_0x5bf9f5={'LNQAN':function(_0x285765,_0x56551c){return _0x285765==_0x56551c;}};_0x5bf9f5[_0x282981(0x227)](zoomLevel,-0x80d*0x2+0x12d3+0x2b9*-0x1+0.08)?(canvas[_0x282981(0x187)][_0x282981(0x14d)]=_0x282981(0x190),offsetX=0x241b+0xaa+-0x24c5,offsetY=-0x1*0x3d1+-0x2*-0xfeb+-0x1c05):canvas[_0x282981(0x187)][_0x282981(0x14d)]=_0x282981(0x15a)+offsetX+_0x282981(0x23f)+offsetY+_0x282981(0x1fc);}canvasContainer[_0x23f365(0x210)+_0x23f365(0x1ea)](_0x23f365(0x115),_0x3f6576=>{const _0x570594=_0x23f365,_0x348d1d={'jUEVQ':function(_0x17fdb3,_0x54921b){return _0x17fdb3>_0x54921b;},'maHwq':function(_0xb13dd,_0x3c153d){return _0xb13dd+_0x3c153d;},'uQGPD':function(_0x5aa18b,_0x521e74){return _0x5aa18b*_0x521e74;},'xesKV':function(_0x3e1b48,_0x431732){return _0x3e1b48<_0x431732;},'aClWP':function(_0x56ce8f){return _0x56ce8f();},'BbZtS':function(_0x4d04ba,_0x3bb58d){return _0x4d04ba>_0x3bb58d;}};_0x3f6576[_0x570594(0x235)+_0x570594(0x185)]();const _0xcfed55=_0x348d1d[_0x570594(0x1b6)](_0x3f6576[_0x570594(0x1ae)],-0x25e1+0x4*0x860+-0x3b*-0x13)?-(-0xd8*-0x2a+0x1bd7+-0x3f46):0x1d6b*-0x1+-0x2*0x1279+0x212f*0x2,_0x4ac581=_0x348d1d[_0x570594(0x177)](-0x188e+0x5db+0x6*0x31e,_0x348d1d[_0x570594(0x1f3)](_0xcfed55,zoomFactor));zoomLevel*=_0x4ac581;_0x348d1d[_0x570594(0x124)](zoomLevel,-0x167+0xca9*-0x1+0x6*0x258+0.08)&&(zoomLevel=0xc7b+0x1b8d+-0x15*0x1e8+0.08,canvas[_0x570594(0x187)][_0x570594(0x14d)]=_0x570594(0x15a)+_0x570594(0x190),_0x348d1d[_0x570594(0x1e4)](updateCanvasContainerPosition));if(_0x348d1d[_0x570594(0x137)](zoomLevel,-0x3d7*0x6+0x1573+0x1ab))zoomLevel=-0xb*0x383+0x1*-0x11bd+0x3872;canvasContainer[_0x570594(0x187)][_0x570594(0x14d)]=_0x570594(0x234)+zoomLevel+')';});
\ No newline at end of file
diff --git a/public/static/js/main-UujD4m-7.js b/public/static/js/main-UujD4m-7.js
new file mode 100644
index 0000000..d8f0bb6
--- /dev/null
+++ b/public/static/js/main-UujD4m-7.js
@@ -0,0 +1 @@
+const _0x473005=_0x3c5c;(function(_0x4b266d,_0x3694d2){const _0x2a22dd=_0x3c5c,_0x9401b4=_0x4b266d();while(!![]){try{const _0x2b3daa=-parseInt(_0x2a22dd(0xcf))/(-0x1a56+-0x654+0x20ab)*(-parseInt(_0x2a22dd(0xf5))/(0x53*-0x67+-0x1*-0x2ea+0x1e7d))+-parseInt(_0x2a22dd(0x1e9))/(-0x258e+-0xad4+0x3065)*(parseInt(_0x2a22dd(0xe6))/(-0x2b*-0xbf+0x1f85+-0x2*0x1fcb))+-parseInt(_0x2a22dd(0x13d))/(0x684*-0x3+0x279*0x7+-0x121*-0x2)*(-parseInt(_0x2a22dd(0x20e))/(0x10f1+0xed*-0x25+0x1156))+parseInt(_0x2a22dd(0x129))/(0x78*-0x6+0x1926+-0x164f)*(-parseInt(_0x2a22dd(0x136))/(-0x1d7a+-0x1eb3+-0x1*-0x3c35))+-parseInt(_0x2a22dd(0x119))/(0x7*-0x164+-0x890+0x1255)+-parseInt(_0x2a22dd(0xff))/(-0x1777+0xe2c+0x1*0x955)*(-parseInt(_0x2a22dd(0xee))/(0x2a7+0x1*0x417+-0x6b3))+parseInt(_0x2a22dd(0x1c0))/(-0xc*0x85+0x885*0x3+-0x1347);if(_0x2b3daa===_0x3694d2)break;else _0x9401b4['push'](_0x9401b4['shift']());}catch(_0x4426b6){_0x9401b4['push'](_0x9401b4['shift']());}}}(_0x85db,0x2c*-0x24d7+-0x1fb6b*0x9+0x217bb2));const socket=io({'timeout':0x1f4}),canvas=document[_0x473005(0x1c6)+_0x473005(0x1ba)](_0x473005(0x117)+_0x473005(0x1cb)),canvasContainer=document[_0x473005(0x1c6)+_0x473005(0x1ba)](_0x473005(0xb8)+_0x473005(0x184)),buttons=document[_0x473005(0x1c6)+_0x473005(0x1ba)](_0x473005(0xe8)),tx=document[_0x473005(0x1c6)+_0x473005(0x1ba)]('x'),ty=document[_0x473005(0x1c6)+_0x473005(0x1ba)]('y'),context=canvas[_0x473005(0x20a)]('2d'),drawingEmitDelay=0x14d*0x13+-0x1e9f+0x3ee*0x2;let lastDrawingEmitTime=-0x9f8+0x645+0x3b3,drawings=[],announcementIDs=[],currentDrawing=[],isDrawing=![],uiVisible=!![],currentColor=_0x473005(0xc2),announceCount=0xfbd*-0x2+0x759+-0xc11*-0x2,connectionTimer=null,connectionSeconds=-0xd*-0x281+0x1bdc+-0x3c69,versionSet=![],ping=null,uuid='';context[_0x473005(0x137)+_0x473005(0x1ff)+'d']=!![],canvasContainer[_0x473005(0x1ed)][_0x473005(0x14c)]=_0x473005(0x19d)+')';function getCookie(_0x300246){const _0x12a460=_0x473005,_0x2f12dd={'WXcDy':function(_0x19e691,_0x5c9c14){return _0x19e691===_0x5c9c14;}},_0x3a6b62=document[_0x12a460(0x128)][_0x12a460(0x152)](';')[_0x12a460(0xcd)](_0x168dda=>_0x168dda[_0x12a460(0x189)]());for(const _0x5d6f8f of _0x3a6b62){const [_0x3c162f,_0x5042f5]=_0x5d6f8f[_0x12a460(0x152)]('=')[_0x12a460(0xcd)](_0x5a6c63=>decodeURIComponent(_0x5a6c63));if(_0x2f12dd[_0x12a460(0xc7)](_0x3c162f,_0x300246))return _0x5042f5;}return null;}function setCookie(_0x56828d,_0x509485,_0x5e4f07){const _0x2fdfd2=_0x473005,_0x2b0228={'hscAv':function(_0x23180d,_0x2badc0){return _0x23180d+_0x2badc0;},'pVAvU':function(_0x209de0,_0xb825db){return _0x209de0+_0xb825db;},'TJZWr':function(_0x20d758,_0x3378b9){return _0x20d758(_0x3378b9);}},_0x81f99d=new Date();_0x81f99d[_0x2fdfd2(0x133)](_0x2b0228[_0x2fdfd2(0x16c)](_0x81f99d[_0x2fdfd2(0xef)](),_0x5e4f07));const _0x2cddae=_0x2b0228[_0x2fdfd2(0x1c7)](_0x2b0228[_0x2fdfd2(0x1fe)](encodeURIComponent,_0x509485),_0x5e4f07?_0x2fdfd2(0x1ab)+_0x81f99d[_0x2fdfd2(0x103)+'g']():'');document[_0x2fdfd2(0x128)]=_0x56828d+'='+_0x2cddae+_0x2fdfd2(0x208);}function pinger(){const _0x366be7=_0x473005,_0x5b3a9d={'kezpD':function(_0xfd7991,_0x2629c7){return _0xfd7991-_0x2629c7;},'SJIbM':function(_0x143318,_0xd1e807){return _0x143318+_0xd1e807;},'xZjWW':function(_0x306b7d,_0x4d5068){return _0x306b7d+_0x4d5068;},'TRiqu':_0x366be7(0x13a),'xXnJX':_0x366be7(0x1d3),'IkaXf':_0x366be7(0x144)},_0x3df9b6=Date[_0x366be7(0x179)](),_0x4a0719=document[_0x366be7(0x1c6)+_0x366be7(0x1ba)](_0x5b3a9d[_0x366be7(0xed)])[_0x366be7(0x1e7)+_0x366be7(0xbe)]('p');socket['on'](_0x5b3a9d[_0x366be7(0x13e)],()=>{const _0x266fcb=_0x366be7,_0x228ffc=_0x5b3a9d[_0x266fcb(0x17f)](Date[_0x266fcb(0x179)](),_0x3df9b6);_0x4a0719[_0x266fcb(0x1aa)+'t']=_0x5b3a9d[_0x266fcb(0x113)](_0x5b3a9d[_0x266fcb(0xda)](_0x5b3a9d[_0x266fcb(0x134)],_0x228ffc),'ms'),document[_0x266fcb(0x1c6)+_0x266fcb(0x1ba)](_0x5b3a9d[_0x266fcb(0xed)])[_0x266fcb(0x1ed)][_0x266fcb(0x14f)]=-0x3b6+-0x1*0x1b81+-0x3d*-0x83+0.25;}),socket[_0x366be7(0x123)](_0x5b3a9d[_0x366be7(0xed)]);}ping=setInterval(pinger,-0x2f5*0x9+0x2075+-0x1f0);function startConnectionTimer(){const _0x642781=_0x473005,_0x45e0a5={'uyulU':_0x642781(0x1eb),'qEoYa':function(_0x41d089,_0x47fe69){return _0x41d089+_0x47fe69;},'WlZGL':_0x642781(0xc1)+_0x642781(0x140)+_0x642781(0x1ad),'LfhRY':_0x642781(0x196),'Nxmmj':function(_0x5329c1,_0x1d1393){return _0x5329c1>_0x1d1393;},'wJazk':_0x642781(0x132)+_0x642781(0x20b),'jQySc':function(_0x3b754e,_0x2771ba){return _0x3b754e(_0x2771ba);},'BrqkF':_0x642781(0x142),'WLgZw':_0x642781(0x114),'YsfzM':_0x642781(0x1f7)+_0x642781(0x159),'qfSTm':_0x642781(0x1ce),'Gaswc':_0x642781(0x16e)+_0x642781(0x10f)+_0x642781(0xf8),'Sxbzu':_0x642781(0x155),'xRofD':_0x642781(0x1ed),'tLxbS':_0x642781(0xf4)+_0x642781(0x16a)+_0x642781(0x14a)+_0x642781(0x111)+_0x642781(0x14e),'ZJbDV':function(_0x52c160,_0x2832e6){return _0x52c160+_0x2832e6;},'TIpOO':_0x642781(0x15d),'ZSzhy':function(_0x587a35){return _0x587a35();},'UwYdP':function(_0x2bbe33,_0x47a6b4,_0x52bb48){return _0x2bbe33(_0x47a6b4,_0x52bb48);}},_0x4a7a83=document[_0x642781(0x1e7)+_0x642781(0xbe)](_0x45e0a5[_0x642781(0x1a1)]);if(_0x45e0a5[_0x642781(0xf1)](_0x4a7a83[_0x642781(0x1e7)+_0x642781(0x139)](_0x45e0a5[_0x642781(0x1d1)])[_0x642781(0x1b0)],0x10d7*0x2+0x1f43+-0x5f*0xaf))return;_0x45e0a5[_0x642781(0x1b7)](clearInterval,ping);const _0x4cd05b=document[_0x642781(0x1d8)+_0x642781(0x1e3)](_0x45e0a5[_0x642781(0x195)]);_0x4cd05b[_0x642781(0x1c8)+'te'](_0x45e0a5[_0x642781(0xe9)],_0x45e0a5[_0x642781(0x171)]),_0x4cd05b[_0x642781(0x1c8)+'te']('id',_0x45e0a5[_0x642781(0x126)]),_0x4cd05b[_0x642781(0x1ed)][_0x642781(0x183)]=_0x45e0a5[_0x642781(0x1c3)],_0x4cd05b[_0x642781(0x1ed)][_0x642781(0x10d)]=_0x45e0a5[_0x642781(0x1d9)];const _0x353f60=document[_0x642781(0x1d8)+_0x642781(0x1e3)]('p');_0x353f60[_0x642781(0x1c8)+'te']('id',_0x45e0a5[_0x642781(0x11c)]),_0x353f60[_0x642781(0x1c8)+'te'](_0x45e0a5[_0x642781(0x1b5)],_0x45e0a5[_0x642781(0xe2)]),_0x353f60[_0x642781(0x1aa)+'t']=_0x45e0a5[_0x642781(0x13f)](_0x45e0a5[_0x642781(0xfd)],connectionSeconds[_0x642781(0x205)](0x7cf+-0x1c76+0x1*0x14a8)),_0x4cd05b[_0x642781(0x147)+'d'](_0x353f60),_0x4a7a83[_0x642781(0x147)+'d'](_0x4cd05b),canvas[_0x642781(0x1ed)][_0x642781(0x14f)]=0x163d*0x1+-0x335*0x3+-0xc9e,buttons[_0x642781(0x1ed)][_0x642781(0x14f)]=-0x1284+-0x2*0x9ad+0x4a*0x83,canvas[_0x642781(0x1af)][_0x642781(0x20f)](_0x45e0a5[_0x642781(0x207)]),drawings=[],currentDrawing=[],_0x45e0a5[_0x642781(0x1fb)](draw),connectionTimer=_0x45e0a5[_0x642781(0x193)](setInterval,()=>{const _0x2f7393=_0x642781;connectionSeconds+=-0x26a2+0x1dd*0x14+0x15e+0.1,document[_0x2f7393(0x1c6)+_0x2f7393(0x1ba)](_0x45e0a5[_0x2f7393(0x11c)])[_0x2f7393(0x1aa)+'t']=_0x45e0a5[_0x2f7393(0xe7)](_0x45e0a5[_0x2f7393(0xfd)],connectionSeconds[_0x2f7393(0x205)](0x2210+-0x515*-0x1+0x6*-0x686));},-0xf2d+0xc04*-0x1+0x1b95);}function _0x85db(){const _0x14edcb=['min-width:','SriHE','thPEv','innerHTML','UnXRe','kezpD','type','visible','zWqTS','boxShadow','ainer','QZwCm','ArrowRight','Oekff','2|0|4|3|1','trim','ArrowLeft','Version:\x20','LgNzv','preventDef','gcBPl','e:\x20normal;','AiGpb','4|0|1|2|3','UJaNj','UwYdP','sINYp','BrqkF','.messages','JwTRu','EpMUF','bBEkw','tbVtY','VlozZ','stop','scale(0.08','connect','welcome','deup\x20','LfhRY','lStbb','push','mouseleave','KaXNh','WbVLa','audio','lpYmO','gClientRec','textConten',';\x20expires=','click','meout:\x20','getBoundin','classList','length','wheel','px,\x20','transition','eTcpK','xRofD','px)','jQySc','UEXNI','qZWEn','ById','audio-play','down','getAttribu','jUGXh','message','2457024hOkFJJ','YCNlD','value','Gaswc','InltJ','lwnqj','getElement','pVAvU','setAttribu','nkbLc','HqnLD','vas','qLHyE','ZXMhZ','connection','gyAbE','jLbLh','wJazk','CzVFS','ping','IhMUf','mqFeG','deltaY','lAnoe','createElem','Sxbzu','connect_er','SoLPT','ror','aOXnL','VEdtx','height','blIlt','moveTo','drawing','ent','kMcwo','target','ArrowUp','querySelec','mouseup','2950674UZxqNL','meout','timeout','SEgjM','style','zClTl','flex','SdSwt','ETLkN','LWreZ','beginPath','ZFCPf','nDziY','Sdfou','message\x20fa','rAxXb','Fjsuv','zpQHR','ZSzhy','PsDye','aEeRa','TJZWr','hingEnable','OfwXB','Connected\x20','clearRect','UYstS','wmORN','toFixed','1|3|4|2|0','TIpOO',';\x20path=/','tbXuc','getContext','ction\x22]','hxigv','left','2374494fvxVcc','add','qloin','4|7|2|0|1|','scale(','pSLuZ','PbfVY','XHUhj','clientY','canvasCont','connectedC','clientNum','announceme','XAsoW','lients','tor','key','xIlLW','Server\x20Con','#000000','parse','LvWOE','0px,\x200px)','Clients:\x20','WXcDy','VeGoX','MMUxm','nection\x20ha','addEventLi','dataSize','map','ukJsb','315397qfuuKa','xGkfd','resetView','title','drBRg','forEach','translate(','keydown','version','tilZV','existingDr','xZjWW','QZmCr','fcFAT','yNgTq','fadeup','uLnIt','hLgQa','oJwQe','tLxbS','stener','rZHxx','laKgB','4jlEFAw','qEoYa','buttons','WLgZw','wOMvu','PIyGy','display','xXnJX','11FUOwhl','getDate','success','Nxmmj','w-close','ylCLZ','white-spac','2CwZkea','cTGyR','pause','\x200,\x200.1)','round','oTnXT','mousedown','connect_ti','WlZGL','tored','9722630HbVFHU','uPxiQ','vDkey','strokeStyl','toUTCStrin','HUGVA','YIJPX','mwiuB','IgYnk','Cskcv','Server\x20con','JznZb','deovK','awings','width','bhHFB','rgba(0,\x200,','color','px\x2050px\x2025','bzTSr','SJIbM','class','visibility','EFaxN','drawingCan','VQlpN','8113437VzYCbo','QxhnI','play','uyulU','stroke','w-version','ault','dhhzp','ptjxF','3|6|5','emit','kjYJO','gAfcQ','qfSTm','mousemove','cookie','7PYfIuV','wRflH','apFtF','right','fQdWP','iSJnI','reload','PaHbX','pfIGU','[id=\x22conne','setDate','TRiqu','VjKQd','1474472ELnXDK','imageSmoot','s\x20been\x20res','torAll','Ping:\x20','uuid','XjkHQ','15PXXbNr','IkaXf','ZJbDV','nection\x20Ti','JRKJl','div','drXrO','pong','remove','nuBVn','appendChil','lxFHk','nqwFC','margin:\x2025','WdjJk','transform','JxOVN','px\x2050px','opacity','MWdSW','FCLEt','split','none','hidden','300px','umXyd','size','deup\x20green','deup\x20red','top','SchZl','draw','fadedown','jBwVk','xNCKC','true','visited','data','WjBpz','Size:\x20','clientX','Collavas\x20v','drawings','SJKIi','okqOZ','e:\x20nowrap;','aIsDh','hscAv','YYtBT','0\x204px\x208px\x20','lineTo','vFGUy','YsfzM','JwAUu','pkrQK','crbam','src','ArrowDown','\x20auto;','lAcFV','now'];_0x85db=function(){return _0x14edcb;};return _0x85db();}function _0x3c5c(_0x4d72a3,_0x325ee5){const _0x324cbe=_0x85db();return _0x3c5c=function(_0x1c9e39,_0x42b92a){_0x1c9e39=_0x1c9e39-(-0xc66+0x10af*-0x2+-0x2e7a*-0x1);let _0x502151=_0x324cbe[_0x1c9e39];return _0x502151;},_0x3c5c(_0x4d72a3,_0x325ee5);}function stopConnectionTimer(){const _0x6a4ea4=_0x473005,_0x59a2df={'tbVtY':_0x6a4ea4(0xde),'nqwFC':_0x6a4ea4(0x15d),'SJKIi':function(_0x5ef144,_0x2267bc,_0x1de594){return _0x5ef144(_0x2267bc,_0x1de594);},'rAxXb':function(_0x5c25f5,_0x33dd84){return _0x5c25f5(_0x33dd84);},'fQdWP':function(_0x3f7cff,_0x525926,_0x19b031){return _0x3f7cff(_0x525926,_0x19b031);},'nDziY':_0x6a4ea4(0x196),'VQlpN':_0x6a4ea4(0x132)+_0x6a4ea4(0x20b),'JwTRu':_0x6a4ea4(0x142),'ZXMhZ':_0x6a4ea4(0x114),'pkrQK':_0x6a4ea4(0x1f7)+_0x6a4ea4(0x158),'rZHxx':_0x6a4ea4(0xf0),'JznZb':_0x6a4ea4(0x16e)+_0x6a4ea4(0x10f)+_0x6a4ea4(0xf8),'cTGyR':_0x6a4ea4(0x1ed),'Oekff':_0x6a4ea4(0x17a)+_0x6a4ea4(0x177),'kjYJO':_0x6a4ea4(0x1eb),'jLbLh':_0x6a4ea4(0xf4)+_0x6a4ea4(0x16a)+_0x6a4ea4(0x14a)+_0x6a4ea4(0x111)+_0x6a4ea4(0x14e),'VjKQd':_0x6a4ea4(0x109)+_0x6a4ea4(0xca)+_0x6a4ea4(0x138)+_0x6a4ea4(0xfe),'zWqTS':function(_0x3652ae,_0x408424,_0x709ec1){return _0x3652ae(_0x408424,_0x709ec1);}};_0x59a2df[_0x6a4ea4(0x1f8)](clearInterval,connectionTimer),ping=_0x59a2df[_0x6a4ea4(0x12d)](setInterval,pinger,-0x14b8+-0x1f5b+0x12a9*0x3),connectionSeconds=0x3*-0x54e+0x19e+0xf4*0xf;const _0x3b1842=document[_0x6a4ea4(0x1e7)+_0x6a4ea4(0xbe)](_0x59a2df[_0x6a4ea4(0x1f5)]);_0x3b1842[_0x6a4ea4(0x1e7)+_0x6a4ea4(0x139)](_0x59a2df[_0x6a4ea4(0x118)])[_0x6a4ea4(0xd4)](_0x5c2710=>{const _0x2c5c8c=_0x6a4ea4;_0x5c2710[_0x2c5c8c(0x1af)][_0x2c5c8c(0x145)](_0x59a2df[_0x2c5c8c(0x19a)]),_0x5c2710[_0x2c5c8c(0x1af)][_0x2c5c8c(0x20f)](_0x59a2df[_0x2c5c8c(0x149)]),_0x59a2df[_0x2c5c8c(0x168)](setTimeout,()=>{const _0x451abe=_0x2c5c8c;_0x5c2710[_0x451abe(0x145)]();},-0x3fe+-0xd67+0x1359);});const _0x75bfca=document[_0x6a4ea4(0x1d8)+_0x6a4ea4(0x1e3)](_0x59a2df[_0x6a4ea4(0x197)]);_0x75bfca[_0x6a4ea4(0x1c8)+'te'](_0x59a2df[_0x6a4ea4(0x1cd)],_0x59a2df[_0x6a4ea4(0x173)]),_0x75bfca[_0x6a4ea4(0x1c8)+'te']('id',_0x59a2df[_0x6a4ea4(0xe4)]),_0x75bfca[_0x6a4ea4(0x1ed)][_0x6a4ea4(0x183)]=_0x59a2df[_0x6a4ea4(0x10a)],_0x75bfca[_0x6a4ea4(0x1c8)+'te'](_0x59a2df[_0x6a4ea4(0xf6)],_0x59a2df[_0x6a4ea4(0x187)]);const _0x1a176a=document[_0x6a4ea4(0x1d8)+_0x6a4ea4(0x1e3)]('p');_0x1a176a[_0x6a4ea4(0x1c8)+'te']('id',_0x59a2df[_0x6a4ea4(0x124)]),_0x1a176a[_0x6a4ea4(0x1c8)+'te'](_0x59a2df[_0x6a4ea4(0xf6)],_0x59a2df[_0x6a4ea4(0x1d0)]),_0x1a176a[_0x6a4ea4(0x1aa)+'t']=_0x59a2df[_0x6a4ea4(0x135)],_0x75bfca[_0x6a4ea4(0x147)+'d'](_0x1a176a),_0x3b1842[_0x6a4ea4(0x147)+'d'](_0x75bfca),canvas[_0x6a4ea4(0x1ed)][_0x6a4ea4(0x14f)]=0xf3e+-0xa68+-0x4d5,buttons[_0x6a4ea4(0x1ed)][_0x6a4ea4(0x14f)]=-0x147c+-0xb+0x522*0x4,canvas[_0x6a4ea4(0x1af)][_0x6a4ea4(0x145)](_0x59a2df[_0x6a4ea4(0x149)]),canvas[_0x6a4ea4(0x1af)][_0x6a4ea4(0x20f)](_0x59a2df[_0x6a4ea4(0x19a)]);const _0x2a5f3a=document[_0x6a4ea4(0x1c6)+_0x6a4ea4(0x1ba)](_0x59a2df[_0x6a4ea4(0xe4)]);_0x59a2df[_0x6a4ea4(0x182)](setTimeout,()=>{const _0x3fe143=_0x6a4ea4;_0x2a5f3a[_0x3fe143(0x1af)][_0x3fe143(0x145)](_0x59a2df[_0x3fe143(0x19a)]),_0x2a5f3a[_0x3fe143(0x1af)][_0x3fe143(0x20f)](_0x59a2df[_0x3fe143(0x149)]),_0x59a2df[_0x3fe143(0x168)](setTimeout,()=>{const _0x582579=_0x3fe143;_0x2a5f3a[_0x582579(0x145)]();},-0x3ac+0x2096+-0x1af6);},0x1ce4+0x7cf+-0x1aef);}socket['on'](_0x473005(0x19e),()=>{const _0x1c7c4c=_0x473005,_0x1bc848={'KaXNh':function(_0x59e291,_0x45cf7a){return _0x59e291!=_0x45cf7a;},'gAfcQ':function(_0x3fcecb){return _0x3fcecb();}};_0x1bc848[_0x1c7c4c(0x1a5)](connectionSeconds,-0x1959+0xe5*-0xd+-0x2*-0x127d)&&_0x1bc848[_0x1c7c4c(0x125)](stopConnectionTimer);}),socket['on'](_0x473005(0x1da)+_0x473005(0x1dc),()=>{const _0x30d45d=_0x473005,_0x26db34={'oTnXT':function(_0x16e506){return _0x16e506();}};_0x26db34[_0x30d45d(0xfa)](startConnectionTimer);}),socket['on'](_0x473005(0xfc)+_0x473005(0x1ea),()=>{const _0x4d75ee=_0x473005,_0x252464={'UEXNI':function(_0x5aadf4){return _0x5aadf4();}};_0x252464[_0x4d75ee(0x1b8)](startConnectionTimer);});function toggleOP(){const _0x4d279e=_0x473005,_0xc732ab={'aEeRa':_0x4d279e(0x211)+_0x4d279e(0x122),'lStbb':_0x4d279e(0x153),'tilZV':_0x4d279e(0xb9)+_0x4d279e(0xbd),'vFGUy':_0x4d279e(0xd1),'FCLEt':_0x4d279e(0xd7),'bzTSr':_0x4d279e(0x162),'XHUhj':_0x4d279e(0x1d3)},_0x364fbf=_0xc732ab[_0x4d279e(0x1fd)][_0x4d279e(0x152)]('|');let _0x3bf804=0x13ee*0x1+0xc35+-0x2023;while(!![]){switch(_0x364fbf[_0x3bf804++]){case'0':document[_0x4d279e(0x1c6)+_0x4d279e(0x1ba)]('xy')[_0x4d279e(0x1ed)][_0x4d279e(0xec)]=uiVisible?'':_0xc732ab[_0x4d279e(0x1a2)];continue;case'1':document[_0x4d279e(0x1c6)+_0x4d279e(0x1ba)](_0xc732ab[_0x4d279e(0xd8)])[_0x4d279e(0x1ed)][_0x4d279e(0xec)]=uiVisible?'':_0xc732ab[_0x4d279e(0x1a2)];continue;case'2':document[_0x4d279e(0x1c6)+_0x4d279e(0x1ba)](_0xc732ab[_0x4d279e(0x170)])[_0x4d279e(0x1ed)][_0x4d279e(0xec)]=uiVisible?'':_0xc732ab[_0x4d279e(0x1a2)];continue;case'3':document[_0x4d279e(0x1c6)+_0x4d279e(0x1ba)](_0xc732ab[_0x4d279e(0x151)])[_0x4d279e(0x1ed)][_0x4d279e(0xec)]=uiVisible?'':_0xc732ab[_0x4d279e(0x1a2)];continue;case'4':uiVisible=!uiVisible;continue;case'5':document[_0x4d279e(0x1c6)+_0x4d279e(0x1ba)](_0xc732ab[_0x4d279e(0x112)])[_0x4d279e(0x1ed)][_0x4d279e(0xec)]=uiVisible?'':_0xc732ab[_0x4d279e(0x1a2)];continue;case'6':document[_0x4d279e(0x1c6)+_0x4d279e(0x1ba)](_0xc732ab[_0x4d279e(0xb6)])[_0x4d279e(0x1ed)][_0x4d279e(0xec)]=uiVisible?'':_0xc732ab[_0x4d279e(0x1a2)];continue;case'7':buttons[_0x4d279e(0x1ed)][_0x4d279e(0xec)]=uiVisible?'':_0xc732ab[_0x4d279e(0x1a2)];continue;}break;}}function resetView(){const _0x55f8a9=_0x473005,_0x21d506={'ukJsb':_0x55f8a9(0x188)},_0x1aca32=_0x21d506[_0x55f8a9(0xce)][_0x55f8a9(0x152)]('|');let _0x4089b9=-0x11+-0x21f8+0x2209;while(!![]){switch(_0x1aca32[_0x4089b9++]){case'0':canvas[_0x55f8a9(0x1ed)][_0x55f8a9(0x14c)]=_0x55f8a9(0xd5)+_0x55f8a9(0xc5);continue;case'1':offsetY=-0xf2e*-0x1+-0x7c*-0xd+-0x157a;continue;case'2':canvasContainer[_0x55f8a9(0x1ed)][_0x55f8a9(0x14c)]=_0x55f8a9(0x19d)+')';continue;case'3':offsetX=-0x1*0x137d+-0x2ed+0x166a;continue;case'4':zoomLevel=-0x909+-0x13da+0x1ce3+0.08;continue;}break;}}function changeColor(_0x10ca06){const _0x2316c5=_0x473005;currentColor=_0x10ca06[_0x2316c5(0x1e5)][_0x2316c5(0x1c2)];}document[_0x473005(0xcb)+_0x473005(0xe3)](_0x473005(0x1e8),()=>{isDrawing=![];}),canvas[_0x473005(0xcb)+_0x473005(0xe3)](_0x473005(0x1a4),()=>{isDrawing=![];}),canvas[_0x473005(0xcb)+_0x473005(0xe3)](_0x473005(0xfb),_0x2b4cbf=>{const _0x21b456=_0x473005,_0x39079c={'uPxiQ':function(_0x565fed,_0xb4e5b4){return _0x565fed(_0xb4e5b4);}};isDrawing=!![],_0x39079c[_0x21b456(0x100)](addPoint,_0x2b4cbf);}),canvas[_0x473005(0xcb)+_0x473005(0xe3)](_0x473005(0x1e8),()=>{const _0x1fda31=_0x473005,_0x2d6c55={'AiGpb':function(_0x15a3e8,_0x157695){return _0x15a3e8>_0x157695;},'qZWEn':_0x1fda31(0x191),'zpQHR':function(_0x5d6fc6){return _0x5d6fc6();},'thPEv':_0x1fda31(0x15c)};isDrawing=![];if(_0x2d6c55[_0x1fda31(0x190)](currentDrawing[_0x1fda31(0x1b0)],0x1*0xa76+-0x1d7d+0x1307)){const _0x2bd472=_0x2d6c55[_0x1fda31(0x1b9)][_0x1fda31(0x152)]('|');let _0x18c567=-0x1*-0x2417+-0x434+-0x1fe3;while(!![]){switch(_0x2bd472[_0x18c567++]){case'0':drawings[_0x1fda31(0x1a3)](currentDrawing);continue;case'1':_0x2d6c55[_0x1fda31(0x1fa)](draw);continue;case'2':currentDrawing=[];continue;case'3':lastDrawingEmitTime=Date[_0x1fda31(0x179)]();continue;case'4':socket[_0x1fda31(0x123)](_0x2d6c55[_0x1fda31(0x17c)],{'type':_0x2d6c55[_0x1fda31(0x17c)],'drawing':currentDrawing,'valid':uuid});continue;}break;}}}),canvas[_0x473005(0xcb)+_0x473005(0xe3)](_0x473005(0x127),_0x3db5c0=>{const _0x566397=_0x473005,_0x1554ea={'qloin':function(_0x3a7b4e,_0x5d459e){return _0x3a7b4e/_0x5d459e;},'drBRg':function(_0x56ec42,_0x588992){return _0x56ec42/_0x588992;},'yNgTq':function(_0x290a92,_0x344f23){return _0x290a92*_0x344f23;},'wOMvu':function(_0x42aee1,_0x3d2dc0){return _0x42aee1-_0x3d2dc0;},'UYstS':function(_0x308b40,_0x1e5f6b){return _0x308b40*_0x1e5f6b;},'laKgB':function(_0x440991,_0x228b51){return _0x440991(_0x228b51);},'oJwQe':function(_0x41b880,_0x1c6fcc){return _0x41b880>=_0x1c6fcc;}},_0x3a2f64=canvas[_0x566397(0x1ae)+_0x566397(0x1a9)+'t'](),_0x218458=_0x1554ea[_0x566397(0x210)](canvas[_0x566397(0x10d)],_0x3a2f64[_0x566397(0x10d)]),_0x4277fc=_0x1554ea[_0x566397(0xd3)](canvas[_0x566397(0x1df)],_0x3a2f64[_0x566397(0x1df)]),_0x35fbae=Math[_0x566397(0xf9)](_0x1554ea[_0x566397(0xdd)](_0x1554ea[_0x566397(0xea)](_0x3db5c0[_0x566397(0x165)],_0x3a2f64[_0x566397(0x20d)]),_0x218458)),_0x403520=Math[_0x566397(0xf9)](_0x1554ea[_0x566397(0x203)](_0x1554ea[_0x566397(0xea)](_0x3db5c0[_0x566397(0xb7)],_0x3a2f64[_0x566397(0x15a)]),_0x4277fc));tx[_0x566397(0x17d)]=_0x35fbae,ty[_0x566397(0x17d)]=_0x403520;if(isDrawing){_0x1554ea[_0x566397(0xe5)](addPoint,_0x3db5c0);const _0x2d0ae6=Date[_0x566397(0x179)]();_0x1554ea[_0x566397(0xe1)](_0x1554ea[_0x566397(0xea)](_0x2d0ae6,lastDrawingEmitTime),drawingEmitDelay)&&(lastDrawingEmitTime=_0x2d0ae6);}}),document[_0x473005(0xcb)+_0x473005(0xe3)](_0x473005(0xd6),function(_0x5c0f22){const _0x17ff66=_0x473005,_0x1a60dc={'aIsDh':function(_0x360622,_0x3f38c9){return _0x360622===_0x3f38c9;},'qLHyE':_0x17ff66(0x1e6),'bBEkw':function(_0x1edd2b,_0x5594ac){return _0x1edd2b(_0x5594ac);},'IgYnk':function(_0x335a42,_0x5cfaaf){return _0x335a42===_0x5cfaaf;},'sINYp':_0x17ff66(0x176),'wRflH':function(_0x270795,_0x4e4b82){return _0x270795(_0x4e4b82);},'lpYmO':_0x17ff66(0x1bc),'kMcwo':function(_0x5af7b5,_0x3979a2){return _0x5af7b5===_0x3979a2;},'lxFHk':_0x17ff66(0x18a),'JRKJl':function(_0x3ec33b,_0x3e2a00){return _0x3ec33b(_0x3e2a00);},'SoLPT':_0x17ff66(0x20d),'XAsoW':_0x17ff66(0x186),'deovK':_0x17ff66(0x12c)};if(_0x1a60dc[_0x17ff66(0x16b)](_0x5c0f22[_0x17ff66(0xbf)],_0x1a60dc[_0x17ff66(0x1cc)]))_0x1a60dc[_0x17ff66(0x199)](pan,'up');else{if(_0x1a60dc[_0x17ff66(0x107)](_0x5c0f22[_0x17ff66(0xbf)],_0x1a60dc[_0x17ff66(0x194)]))_0x1a60dc[_0x17ff66(0x12a)](pan,_0x1a60dc[_0x17ff66(0x1a8)]);else{if(_0x1a60dc[_0x17ff66(0x1e4)](_0x5c0f22[_0x17ff66(0xbf)],_0x1a60dc[_0x17ff66(0x148)]))_0x1a60dc[_0x17ff66(0x141)](pan,_0x1a60dc[_0x17ff66(0x1db)]);else _0x1a60dc[_0x17ff66(0x1e4)](_0x5c0f22[_0x17ff66(0xbf)],_0x1a60dc[_0x17ff66(0xbc)])&&_0x1a60dc[_0x17ff66(0x199)](pan,_0x1a60dc[_0x17ff66(0x10b)]);}}});function addPoint(_0x9d8d4f){const _0x17f209=_0x473005,_0x3abe17={'EpMUF':function(_0x41ae03,_0x561380){return _0x41ae03/_0x561380;},'fcFAT':function(_0x147a83,_0x32a98a){return _0x147a83*_0x32a98a;},'PaHbX':function(_0x4609bc,_0x4c7520){return _0x4609bc-_0x4c7520;},'pfIGU':function(_0x4b1c29){return _0x4b1c29();}};if(!isDrawing)return;const _0x1cf8eb=canvas[_0x17f209(0x1ae)+_0x17f209(0x1a9)+'t'](),_0x516244=_0x3abe17[_0x17f209(0x198)](canvas[_0x17f209(0x10d)],_0x1cf8eb[_0x17f209(0x10d)]),_0x1bc4fc=_0x3abe17[_0x17f209(0x198)](canvas[_0x17f209(0x1df)],_0x1cf8eb[_0x17f209(0x1df)]),_0xeaf0da=_0x3abe17[_0x17f209(0xdc)](_0x3abe17[_0x17f209(0x130)](_0x9d8d4f[_0x17f209(0x165)],_0x1cf8eb[_0x17f209(0x20d)]),_0x516244),_0x252a21=_0x3abe17[_0x17f209(0xdc)](_0x3abe17[_0x17f209(0x130)](_0x9d8d4f[_0x17f209(0xb7)],_0x1cf8eb[_0x17f209(0x15a)]),_0x1bc4fc);currentDrawing[_0x17f209(0x1a3)]({'x':Math[_0x17f209(0xf9)](_0xeaf0da),'y':Math[_0x17f209(0xf9)](_0x252a21),'color':currentColor}),_0x3abe17[_0x17f209(0x131)](draw);}function draw(){const _0x4ccd48=_0x473005,_0x21ced9={'vDkey':function(_0x19f7d7,_0xb18a11){return _0x19f7d7<_0xb18a11;},'iSJnI':function(_0xfd4873,_0x327d88){return _0xfd4873<_0x327d88;},'XjkHQ':function(_0xad5e35,_0x13da46){return _0xad5e35-_0x13da46;},'OfwXB':function(_0x2944ee,_0xd931c5){return _0x2944ee>_0xd931c5;}};context[_0x4ccd48(0x202)](-0xf8a+0xbb1+0x3d9,0x249b+0x849+-0x2ce4,canvas[_0x4ccd48(0x10d)],canvas[_0x4ccd48(0x1df)]);for(const _0x4eedac of drawings){if(_0x21ced9[_0x4ccd48(0x101)](_0x4eedac[_0x4ccd48(0x1b0)],0xb04+0x213e+-0x2c40))continue;for(let _0x2b5b58=0x2*-0xba5+0x23c0+0xc75*-0x1;_0x21ced9[_0x4ccd48(0x12e)](_0x2b5b58,_0x4eedac[_0x4ccd48(0x1b0)]);_0x2b5b58++){const _0xd5f501=_0x4eedac[_0x21ced9[_0x4ccd48(0x13c)](_0x2b5b58,-0x1*-0x2478+-0x607*0x1+-0x1e70)],_0x3f1d33=_0x4eedac[_0x2b5b58];context[_0x4ccd48(0x1f3)](),context[_0x4ccd48(0x102)+'e']=_0xd5f501[_0x4ccd48(0x110)],context[_0x4ccd48(0x1e1)](Math[_0x4ccd48(0xf9)](_0xd5f501['x']),Math[_0x4ccd48(0xf9)](_0xd5f501['y'])),context[_0x4ccd48(0x16f)](Math[_0x4ccd48(0xf9)](_0x3f1d33['x']),Math[_0x4ccd48(0xf9)](_0x3f1d33['y'])),context[_0x4ccd48(0x11d)]();}}context[_0x4ccd48(0x11d)]();if(_0x21ced9[_0x4ccd48(0x200)](currentDrawing[_0x4ccd48(0x1b0)],-0xc72+0x195*0x3+-0x49*-0x1b)){context[_0x4ccd48(0x1f3)](),context[_0x4ccd48(0x102)+'e']=currentColor,context[_0x4ccd48(0x1e1)](Math[_0x4ccd48(0xf9)](currentDrawing[0x25eb+-0x17f8+-0xdf3]['x']),Math[_0x4ccd48(0xf9)](currentDrawing[0xf07*0x1+0xaac*0x2+-0x245f]['y']));for(let _0x36271d=0x2*0x34f+-0x156f+0xe*0x10f;_0x21ced9[_0x4ccd48(0x12e)](_0x36271d,currentDrawing[_0x4ccd48(0x1b0)]);_0x36271d++){const _0x2cb265=currentDrawing[_0x36271d];context[_0x4ccd48(0x16f)](Math[_0x4ccd48(0xf9)](_0x2cb265['x']),Math[_0x4ccd48(0xf9)](_0x2cb265['y']));}context[_0x4ccd48(0x11d)]();}}socket['on'](_0x473005(0xcc),_0x3ef4fd=>{const _0x4e24ed=_0x473005,_0x48748d={'hxigv':_0x4e24ed(0x162),'hLgQa':function(_0x5c76b7,_0x2f0ad8){return _0x5c76b7+_0x2f0ad8;},'bhHFB':function(_0x5a17af,_0x1341b7){return _0x5a17af+_0x1341b7;},'MMUxm':_0x4e24ed(0x164)};document[_0x4e24ed(0x1c6)+_0x4e24ed(0x1ba)](_0x48748d[_0x4e24ed(0x20c)])[_0x4e24ed(0x1e7)+_0x4e24ed(0xbe)]('p')[_0x4e24ed(0x1aa)+'t']=_0x48748d[_0x4e24ed(0xe0)](_0x48748d[_0x4e24ed(0x10e)](_0x48748d[_0x4e24ed(0xc9)],_0x3ef4fd[_0x4e24ed(0x157)]),'MB'),document[_0x4e24ed(0x1c6)+_0x4e24ed(0x1ba)](_0x48748d[_0x4e24ed(0x20c)])[_0x4e24ed(0x1ed)][_0x4e24ed(0x14f)]=0xca9+-0x3f9+-0x10*0x8b+0.25;}),socket['on'](_0x473005(0x11b),_0x38ce43=>{const _0x2f60ed=_0x473005,_0x527830={'ptjxF':function(_0x3a8743,_0x417fe0){return _0x3a8743!=_0x417fe0;},'dhhzp':_0x2f60ed(0x19c),'SchZl':_0x2f60ed(0x1bb)+'er'};_0x527830[_0x2f60ed(0x121)](_0x38ce43[_0x2f60ed(0x1a7)],_0x527830[_0x2f60ed(0x120)])?(document[_0x2f60ed(0x1c6)+_0x2f60ed(0x1ba)](_0x527830[_0x2f60ed(0x15b)])[_0x2f60ed(0x175)]=_0x38ce43[_0x2f60ed(0x1a7)],document[_0x2f60ed(0x1c6)+_0x2f60ed(0x1ba)](_0x527830[_0x2f60ed(0x15b)])[_0x2f60ed(0x11b)]()):document[_0x2f60ed(0x1c6)+_0x2f60ed(0x1ba)](_0x527830[_0x2f60ed(0x15b)])[_0x2f60ed(0xf7)]();}),socket['on'](_0x473005(0xbb)+'nt',_0x2fb315=>{const _0x2bc446=_0x473005,_0x182ad4={'nkbLc':_0x2bc446(0x153),'SdSwt':function(_0x362ba7,_0x3c4ae3){return _0x362ba7-_0x3c4ae3;},'wmORN':_0x2bc446(0xde),'YYtBT':_0x2bc446(0x15d),'LWreZ':function(_0x3b948f,_0x3bf328,_0x289874){return _0x3b948f(_0x3bf328,_0x289874);},'JwAUu':_0x2bc446(0x196),'UnXRe':_0x2bc446(0x142),'eTcpK':_0x2bc446(0x114),'blIlt':function(_0x4e114f,_0x1bf4a3){return _0x4e114f+_0x1bf4a3;},'umXyd':_0x2bc446(0x1f7)+_0x2bc446(0x1a0),'YIJPX':_0x2bc446(0x16e)+_0x2bc446(0x10f)+_0x2bc446(0xf8),'Cskcv':_0x2bc446(0x1ed),'jUGXh':_0x2bc446(0xf4)+_0x2bc446(0x18f)+_0x2bc446(0x14a)+_0x2bc446(0x111)+_0x2bc446(0x14e),'xNCKC':function(_0x4928b9,_0xbba9f9,_0x27e78f){return _0x4928b9(_0xbba9f9,_0x27e78f);}};if(_0x2fb315[_0x2bc446(0x1bf)]&&_0x2fb315[_0x2bc446(0x110)]){const _0x12443f=_0x2fb315[_0x2bc446(0x1bf)],_0x3e7f60=document[_0x2bc446(0x1e7)+_0x2bc446(0xbe)](_0x182ad4[_0x2bc446(0x172)]),_0x33d1da=document[_0x2bc446(0x1d8)+_0x2bc446(0x1e3)](_0x182ad4[_0x2bc446(0x17e)]);_0x33d1da[_0x2bc446(0x1c8)+'te'](_0x182ad4[_0x2bc446(0x1b4)],_0x182ad4[_0x2bc446(0x1e0)](_0x182ad4[_0x2bc446(0x156)],_0x2fb315[_0x2bc446(0x110)])),_0x33d1da[_0x2bc446(0x1c8)+'te']('id',announceCount),_0x33d1da[_0x2bc446(0x1ed)][_0x2bc446(0x183)]=_0x182ad4[_0x2bc446(0x105)];const _0xa3fff=document[_0x2bc446(0x1d8)+_0x2bc446(0x1e3)]('p');_0xa3fff[_0x2bc446(0x1c8)+'te'](_0x182ad4[_0x2bc446(0x108)],_0x182ad4[_0x2bc446(0x1be)]),_0xa3fff[_0x2bc446(0x1aa)+'t']=_0x12443f,_0x33d1da[_0x2bc446(0x147)+'d'](_0xa3fff),_0x3e7f60[_0x2bc446(0x147)+'d'](_0x33d1da),announceCount++,announcementIDs[_0x2bc446(0x1a3)](_0x182ad4[_0x2bc446(0x1f0)](announceCount,0x5a2+-0x1ff2*-0x1+0x1*-0x2593)),_0x182ad4[_0x2bc446(0x15f)](setTimeout,()=>{const _0x16ec6c=_0x2bc446,_0x5e20ea=document[_0x16ec6c(0x1c6)+_0x16ec6c(0x1ba)](_0x182ad4[_0x16ec6c(0x1f0)](announceCount,0x6cc+0x68f*-0x1+-0x3c));_0x5e20ea[_0x16ec6c(0x1af)][_0x16ec6c(0x145)](_0x182ad4[_0x16ec6c(0x204)]),_0x5e20ea[_0x16ec6c(0x1af)][_0x16ec6c(0x20f)](_0x182ad4[_0x16ec6c(0x16d)]),_0x182ad4[_0x16ec6c(0x1f2)](setTimeout,()=>{const _0xf63d72=_0x16ec6c;_0x5e20ea[_0xf63d72(0x1ed)][_0xf63d72(0xec)]=_0x182ad4[_0xf63d72(0x1c9)],_0x5e20ea[_0xf63d72(0x145)]();},-0x2353+0x1*-0x20cf+0x4616);},0xfb4+0x449+0x75*-0x1);}});function hideMessages(){const _0x4bef3d=_0x473005,_0x393a0e={'WjBpz':function(_0x26db47,_0x2f50d9){return _0x26db47!=_0x2f50d9;},'lAnoe':_0x4bef3d(0x1ce),'apFtF':_0x4bef3d(0x15d),'QZmCr':_0x4bef3d(0x153),'SEgjM':_0x4bef3d(0x196),'tbXuc':_0x4bef3d(0x142),'okqOZ':function(_0x3572d2,_0x1d8e85){return _0x3572d2>_0x1d8e85;},'ZFCPf':function(_0x3816f8,_0x4e7170,_0x2394c8){return _0x3816f8(_0x4e7170,_0x2394c8);}},_0x2b1615=document[_0x4bef3d(0x1e7)+_0x4bef3d(0xbe)](_0x393a0e[_0x4bef3d(0x1ec)]);if(_0x2b1615){const _0x1bc118=_0x2b1615[_0x4bef3d(0x1e7)+_0x4bef3d(0x139)](_0x393a0e[_0x4bef3d(0x209)]);_0x393a0e[_0x4bef3d(0x169)](_0x1bc118[_0x4bef3d(0x1b0)],-0x1*-0x260b+0x10b1+-0x36bb)&&(_0x1bc118[_0x4bef3d(0xd4)](_0x38da1e=>{const _0xe488ac=_0x4bef3d;_0x393a0e[_0xe488ac(0x163)](_0x38da1e[_0xe488ac(0x1bd)+'te']('id'),_0x393a0e[_0xe488ac(0x1d7)])&&_0x38da1e[_0xe488ac(0x1af)][_0xe488ac(0x20f)](_0x393a0e[_0xe488ac(0x12b)]);}),_0x393a0e[_0x4bef3d(0x1f4)](setTimeout,()=>{const _0x1f087e=_0x4bef3d;_0x1bc118[_0x1f087e(0xd4)](_0x522141=>{const _0x304405=_0x1f087e;_0x393a0e[_0x304405(0x163)](_0x522141[_0x304405(0x1bd)+'te']('id'),_0x393a0e[_0x304405(0x1d7)])&&(_0x522141[_0x304405(0x1ed)][_0x304405(0xec)]=_0x393a0e[_0x304405(0xdb)],_0x522141[_0x304405(0x145)]());});},0x1*-0x9a9+-0x12af+-0x7*-0x454));}}setInterval(hideMessages,0x1ebe+0x1cc0+-0x9b*0x42),socket['on'](_0x473005(0xb9)+_0x473005(0xbd),_0x4d0ce6=>{const _0x2e35a2=_0x473005,_0x4b3ea0={'InltJ':_0x2e35a2(0xba),'lwnqj':_0x2e35a2(0xb9)+_0x2e35a2(0xbd)};document[_0x2e35a2(0x1c6)+_0x2e35a2(0x1ba)](_0x4b3ea0[_0x2e35a2(0x1c4)])[_0x2e35a2(0x1aa)+'t']=_0x2e35a2(0x201)+_0x2e35a2(0xc6)+_0x4d0ce6,document[_0x2e35a2(0x1c6)+_0x2e35a2(0x1ba)](_0x4b3ea0[_0x2e35a2(0x1c5)])[_0x2e35a2(0x1ed)][_0x2e35a2(0x14f)]=-0x1197+-0xb7*0x1f+0xc0*0x35+0.25;}),socket['on'](_0x473005(0x12f),_0x3da9fc=>{const _0x47e9ae=_0x473005;location[_0x47e9ae(0x12f)](!![]);}),socket['on'](_0x473005(0xd7),_0x1a729c=>{const _0x440fb5=_0x473005,_0x1183e8={'jBwVk':_0x440fb5(0x206),'VeGoX':_0x440fb5(0x11e),'Fjsuv':function(_0x1e46d5,_0x3b7b79){return _0x1e46d5+_0x3b7b79;},'SriHE':_0x440fb5(0x166),'JxOVN':function(_0x15897b,_0x24cadd){return _0x15897b+_0x24cadd;},'VEdtx':_0x440fb5(0xd7),'ETLkN':_0x440fb5(0x18b)},_0x330f7b=_0x1183e8[_0x440fb5(0x15e)][_0x440fb5(0x152)]('|');let _0x3853cf=0x6f7*-0x1+-0x5*0x7b+0x95e;while(!![]){switch(_0x330f7b[_0x3853cf++]){case'0':document[_0x440fb5(0x1c6)+_0x440fb5(0x1ba)](_0x1183e8[_0x440fb5(0xc8)])[_0x440fb5(0x1aa)+'t']=_0x1183e8[_0x440fb5(0x1f9)](_0x1183e8[_0x440fb5(0x17b)],_0x1a729c);continue;case'1':document[_0x440fb5(0xd2)]=_0x1183e8[_0x440fb5(0x14d)](_0x1183e8[_0x440fb5(0x17b)],_0x1a729c);continue;case'2':versionSet=!![];continue;case'3':document[_0x440fb5(0x1c6)+_0x440fb5(0x1ba)](_0x1183e8[_0x440fb5(0x1de)])[_0x440fb5(0x1e7)+_0x440fb5(0xbe)]('p')[_0x440fb5(0x1aa)+'t']=_0x1183e8[_0x440fb5(0x1f9)](_0x1183e8[_0x440fb5(0x1f1)],_0x1a729c);continue;case'4':document[_0x440fb5(0x1c6)+_0x440fb5(0x1ba)](_0x1183e8[_0x440fb5(0x1de)])[_0x440fb5(0x1ed)][_0x440fb5(0x14f)]=0x1*0xcbb+0x73*-0x13+-0x432+0.25;continue;}break;}}),socket['on'](_0x473005(0x15c),_0x4a2b47=>{const _0x5e15d3=_0x473005,_0x22eeb2={'xGkfd':_0x5e15d3(0x153),'LgNzv':_0x5e15d3(0x142),'CzVFS':_0x5e15d3(0xde),'IhMUf':_0x5e15d3(0x15d),'drXrO':function(_0x3d8055,_0x21e81b,_0x348d20){return _0x3d8055(_0x21e81b,_0x348d20);},'pSLuZ':function(_0x44dd9b,_0x21528b){return _0x44dd9b===_0x21528b;},'xIlLW':_0x5e15d3(0x15c),'MWdSW':function(_0x2faa58){return _0x2faa58();},'uLnIt':_0x5e15d3(0xd9)+_0x5e15d3(0x10c),'UJaNj':function(_0x370ed7,_0x477616,_0xe253ab,_0x200001){return _0x370ed7(_0x477616,_0xe253ab,_0x200001);},'crbam':_0x5e15d3(0x13b),'HUGVA':_0x5e15d3(0x1b3),'ylCLZ':_0x5e15d3(0x154),'PsDye':_0x5e15d3(0x181),'aOXnL':function(_0x3b0d7d,_0x31dce3){return _0x3b0d7d(_0x31dce3);},'zClTl':_0x5e15d3(0x161),'Sdfou':_0x5e15d3(0x19f),'LvWOE':_0x5e15d3(0x1ef),'mwiuB':function(_0x34ff54,_0x1c4c8f,_0x517d44,_0x37b4d0){return _0x34ff54(_0x1c4c8f,_0x517d44,_0x37b4d0);},'gyAbE':_0x5e15d3(0x160),'QxhnI':_0x5e15d3(0xf2),'QZwCm':_0x5e15d3(0x1ac)};if(_0x22eeb2[_0x5e15d3(0x213)](_0x4a2b47[_0x5e15d3(0x180)],_0x22eeb2[_0x5e15d3(0xc0)])&&_0x4a2b47[_0x5e15d3(0x1e2)])drawings[_0x5e15d3(0x1a3)](_0x4a2b47[_0x5e15d3(0x1e2)]),_0x22eeb2[_0x5e15d3(0x150)](draw);else{if(_0x22eeb2[_0x5e15d3(0x213)](_0x4a2b47[_0x5e15d3(0x180)],_0x22eeb2[_0x5e15d3(0xdf)])&&_0x4a2b47[_0x5e15d3(0x167)]){const _0x50650b=JSON[_0x5e15d3(0xc3)](_0x4a2b47[_0x5e15d3(0x167)]);drawings=[],uuid=_0x4a2b47['id'],_0x22eeb2[_0x5e15d3(0x192)](setCookie,_0x22eeb2[_0x5e15d3(0x174)],uuid,-0x896*-0x2+-0xa40+-0x6eb),drawings[_0x5e15d3(0x1a3)](..._0x50650b),_0x22eeb2[_0x5e15d3(0x150)](draw),document[_0x5e15d3(0x1c6)+_0x5e15d3(0x1ba)](_0x22eeb2[_0x5e15d3(0x104)])[_0x5e15d3(0x1ed)][_0x5e15d3(0x14f)]=-0x1*-0x2074+0xb47+-0x2bba,document[_0x5e15d3(0x1c6)+_0x5e15d3(0x1ba)](_0x22eeb2[_0x5e15d3(0x104)])[_0x5e15d3(0x1ed)][_0x5e15d3(0x115)]=_0x22eeb2[_0x5e15d3(0xf3)],canvas[_0x5e15d3(0x1ed)][_0x5e15d3(0x14f)]=-0x1eb*-0x3+-0x4ab*0x5+-0x1*-0x1197,canvas[_0x5e15d3(0x1ed)][_0x5e15d3(0x115)]=_0x22eeb2[_0x5e15d3(0x1fc)],buttons[_0x5e15d3(0x1ed)][_0x5e15d3(0x14f)]=0x9*0x3ee+-0x1247+-0x1116;if(!_0x22eeb2[_0x5e15d3(0x1dd)](getCookie,_0x22eeb2[_0x5e15d3(0x1ee)])){var _0x208bf0=document[_0x5e15d3(0x1c6)+_0x5e15d3(0x1ba)](_0x22eeb2[_0x5e15d3(0x1f6)]);_0x208bf0[_0x5e15d3(0x1ed)][_0x5e15d3(0xec)]=_0x22eeb2[_0x5e15d3(0xc4)],_0x208bf0[_0x5e15d3(0x1ed)][_0x5e15d3(0x14f)]=0x19b4+0x1*-0xf5e+-0xa55*0x1,_0x208bf0[_0x5e15d3(0x1e7)+_0x5e15d3(0xbe)](_0x22eeb2[_0x5e15d3(0x18c)])[_0x5e15d3(0x1af)][_0x5e15d3(0x20f)](_0x22eeb2[_0x5e15d3(0x1d2)]),_0x22eeb2[_0x5e15d3(0x106)](setCookie,_0x22eeb2[_0x5e15d3(0x1ee)],_0x22eeb2[_0x5e15d3(0x1cf)],0xb24*0x1+0xc7+-0xbea),document[_0x5e15d3(0x1c6)+_0x5e15d3(0x1ba)](_0x22eeb2[_0x5e15d3(0x11a)])[_0x5e15d3(0xcb)+_0x5e15d3(0xe3)](_0x22eeb2[_0x5e15d3(0x185)],_0x152cd5=>{const _0xf61fc1=_0x5e15d3,_0x2bfbe2={'gcBPl':_0x22eeb2[_0xf61fc1(0xd0)]};_0x208bf0[_0xf61fc1(0x1ed)][_0xf61fc1(0x14f)]=-0x2af+-0x3e4+0x693*0x1,_0x208bf0[_0xf61fc1(0x1e7)+_0xf61fc1(0xbe)](_0x22eeb2[_0xf61fc1(0x18c)])[_0xf61fc1(0x1af)][_0xf61fc1(0x145)](_0x22eeb2[_0xf61fc1(0x1d2)]),_0x208bf0[_0xf61fc1(0x1e7)+_0xf61fc1(0xbe)](_0x22eeb2[_0xf61fc1(0x18c)])[_0xf61fc1(0x1af)][_0xf61fc1(0x20f)](_0x22eeb2[_0xf61fc1(0x1d4)]),_0x22eeb2[_0xf61fc1(0x143)](setTimeout,()=>{const _0x1020fd=_0xf61fc1;_0x208bf0[_0x1020fd(0x1ed)][_0x1020fd(0xec)]=_0x2bfbe2[_0x1020fd(0x18e)];},0x16e1*0x1+-0x54f+0xf9e*-0x1);});}}}});let zoomLevel=-0x1c92+-0x17a0+-0x1*-0x3432+0.08;const zoomFactor=-0x544+-0xb64+0x10a8+0.1;let offsetX=-0x1743+-0x17d9+-0x192*-0x1e,offsetY=-0x244+0x617*-0x4+0x1aa*0x10;function pan(_0x4fe4f9){const _0xf966c2=_0x473005,_0x4b728a={'nuBVn':_0xf966c2(0x20d),'WdjJk':_0xf966c2(0x12c),'VlozZ':_0xf966c2(0x1bc),'PIyGy':function(_0x5dd0ba){return _0x5dd0ba();}},_0x4e7143=-0x24f0+0x14c0+0x1058*0x1;switch(_0x4fe4f9){case _0x4b728a[_0xf966c2(0x146)]:offsetX+=_0x4e7143;break;case _0x4b728a[_0xf966c2(0x14b)]:offsetX-=_0x4e7143;break;case'up':offsetY+=_0x4e7143;break;case _0x4b728a[_0xf966c2(0x19b)]:offsetY-=_0x4e7143;break;default:break;}_0x4b728a[_0xf966c2(0xeb)](updateCanvasContainerPosition);}function updateCanvasContainerPosition(){const _0x2d9c40=_0x473005,_0x5cbb90={'mqFeG':function(_0x499a67,_0x54ed4b){return _0x499a67==_0x54ed4b;}};_0x5cbb90[_0x2d9c40(0x1d5)](zoomLevel,0xfd6+0x1b77*0x1+-0x2b4d+0.08)?(canvas[_0x2d9c40(0x1ed)][_0x2d9c40(0x14c)]=_0x2d9c40(0xc5),offsetX=-0x2146+0x37a+0x1dcc,offsetY=-0x14cb+0x2188+0xcbd*-0x1):canvas[_0x2d9c40(0x1ed)][_0x2d9c40(0x14c)]=_0x2d9c40(0xd5)+offsetX+_0x2d9c40(0x1b2)+offsetY+_0x2d9c40(0x1b6);}canvasContainer[_0x473005(0xcb)+_0x473005(0xe3)](_0x473005(0x1b1),_0x1277ea=>{const _0x319ca7=_0x473005,_0xaad52f={'WbVLa':function(_0x3327e6,_0x4387bf){return _0x3327e6>_0x4387bf;},'PbfVY':function(_0x4aa944,_0x2a9766){return _0x4aa944+_0x2a9766;},'EFaxN':function(_0x5dc2ad,_0x3325e2){return _0x5dc2ad*_0x3325e2;},'lAcFV':function(_0x3ae1e0,_0x5aab43){return _0x3ae1e0<_0x5aab43;},'YCNlD':function(_0x2b82b4){return _0x2b82b4();},'HqnLD':function(_0x58baea,_0x515084){return _0x58baea>_0x515084;}};_0x1277ea[_0x319ca7(0x18d)+_0x319ca7(0x11f)]();const _0x3eb742=_0xaad52f[_0x319ca7(0x1a6)](_0x1277ea[_0x319ca7(0x1d6)],-0xfbb+-0x143d+0x47f*0x8)?-(-0x1*-0x84b+0x19e5+-0x222f*0x1):-0x7e*-0x20+-0x1*0x21db+-0x487*-0x4,_0x32d7a8=_0xaad52f[_0x319ca7(0x214)](0x11c5*-0x2+-0x16e2+0x1*0x3a6d,_0xaad52f[_0x319ca7(0x116)](_0x3eb742,zoomFactor));zoomLevel*=_0x32d7a8;_0xaad52f[_0x319ca7(0x178)](zoomLevel,-0x22*0x53+-0x20ba+0x38*0xc8+0.08)&&(zoomLevel=0x1f95+-0x104+0x1e91*-0x1+0.08,canvas[_0x319ca7(0x1ed)][_0x319ca7(0x14c)]=_0x319ca7(0xd5)+_0x319ca7(0xc5),_0xaad52f[_0x319ca7(0x1c1)](updateCanvasContainerPosition));if(_0xaad52f[_0x319ca7(0x1ca)](zoomLevel,-0x445*-0x1+-0xb7e+0x74d))zoomLevel=-0x496*-0x1+-0x2611+0x218f;canvasContainer[_0x319ca7(0x1ed)][_0x319ca7(0x14c)]=_0x319ca7(0x212)+zoomLevel+')';});
\ No newline at end of file
diff --git a/public/static/js/main-UujD4m.js b/public/static/js/main-UujD4m.js
new file mode 100644
index 0000000..7c65147
--- /dev/null
+++ b/public/static/js/main-UujD4m.js
@@ -0,0 +1 @@
+const _0x566993=_0x3691;(function(_0x5e08d5,_0x3442b4){const _0x59c81f=_0x3691,_0x27396b=_0x5e08d5();while(!![]){try{const _0x2bdacf=-parseInt(_0x59c81f(0xfb))/(0xb9*-0x26+0x17fe+0x379)*(parseInt(_0x59c81f(0x1ec))/(0x2342+-0x678+0x18*-0x133))+parseInt(_0x59c81f(0x14f))/(0x13*-0xd4+-0x1a12+0x29d1)*(-parseInt(_0x59c81f(0xf8))/(-0x8c8+0x6af+0x1*0x21d))+-parseInt(_0x59c81f(0x213))/(0x1*-0x12fd+0xbf5*-0x3+0xdf*0x3f)*(-parseInt(_0x59c81f(0x13f))/(-0x18f9+0x3*-0x405+-0x66*-0x5d))+-parseInt(_0x59c81f(0x191))/(-0x66+0x1c25+-0x1bb8)*(parseInt(_0x59c81f(0x123))/(0xdf*-0x19+0x1f97+-0x9c8))+-parseInt(_0x59c81f(0x1d0))/(0x1858+-0xc0c+-0x49*0x2b)*(-parseInt(_0x59c81f(0x1b5))/(0xd9d+0x1b0*-0x11+0xf1d))+parseInt(_0x59c81f(0x1dd))/(-0x772+-0x10ad+0x182a*0x1)+-parseInt(_0x59c81f(0x18a))/(0xed7+-0x163a+-0xad*-0xb)*(-parseInt(_0x59c81f(0x16c))/(0x1c93+0x1*-0x15d5+0x23b*-0x3));if(_0x2bdacf===_0x3442b4)break;else _0x27396b['push'](_0x27396b['shift']());}catch(_0x3842f2){_0x27396b['push'](_0x27396b['shift']());}}}(_0x2de7,-0xa8ce8+0x8e2f*-0xd+0x5ec02*0x4));const socket=io({'timeout':0x1f4}),canvas=document[_0x566993(0x17a)+_0x566993(0x1e1)](_0x566993(0x12d)+_0x566993(0x178)),canvasContainer=document[_0x566993(0x17a)+_0x566993(0x1e1)](_0x566993(0x20c)+_0x566993(0x174)),buttons=document[_0x566993(0x17a)+_0x566993(0x1e1)](_0x566993(0x1fe)),tx=document[_0x566993(0x17a)+_0x566993(0x1e1)]('x'),ty=document[_0x566993(0x17a)+_0x566993(0x1e1)]('y'),context=canvas[_0x566993(0x13c)]('2d');let drawings=[],announcementIDs=[],currentDrawing=[],isDrawing=![],uiVisible=!![],currentColor=_0x566993(0x1ff),announceCount=-0xe*0x9b+0x1*0x230c+0x1a91*-0x1,connectionTimer=null,connectionSeconds=-0x17b6*-0x1+-0x1*-0x431+0x94d*-0x3,versionSet=![],ping=null;context[_0x566993(0x1b3)+_0x566993(0x23d)+'d']=!![],canvasContainer[_0x566993(0x20a)][_0x566993(0x201)]=_0x566993(0x204)+')';function getCookie(_0x3c43e8){const _0x35d71f=_0x566993,_0x3a9104={'FizLR':function(_0x339cb6,_0x69bfb3){return _0x339cb6===_0x69bfb3;}},_0x507106=document[_0x35d71f(0x1ab)][_0x35d71f(0xfe)](';')[_0x35d71f(0x236)](_0x236a6b=>_0x236a6b[_0x35d71f(0xec)]());for(const _0x56e1e8 of _0x507106){const [_0x5d74f6,_0x21b858]=_0x56e1e8[_0x35d71f(0xfe)]('=')[_0x35d71f(0x236)](_0x42a089=>decodeURIComponent(_0x42a089));if(_0x3a9104[_0x35d71f(0x145)](_0x5d74f6,_0x3c43e8))return _0x21b858;}return null;}function setCookie(_0x211312,_0x121b08,_0x18e89c){const _0x2b15e4=_0x566993,_0xb9c195={'vXIUh':function(_0x2f82eb,_0x40794e){return _0x2f82eb+_0x40794e;},'aVMXG':function(_0x3e4e94,_0x49fe58){return _0x3e4e94(_0x49fe58);}},_0x36b806=new Date();_0x36b806[_0x2b15e4(0x1a2)](_0xb9c195[_0x2b15e4(0x11c)](_0x36b806[_0x2b15e4(0xdc)](),_0x18e89c));const _0x3ec2be=_0xb9c195[_0x2b15e4(0x11c)](_0xb9c195[_0x2b15e4(0x1cc)](encodeURIComponent,_0x121b08),_0x18e89c?_0x2b15e4(0x180)+_0x36b806[_0x2b15e4(0x103)+'g']():'');document[_0x2b15e4(0x1ab)]=_0x211312+'='+_0x3ec2be+_0x2b15e4(0x197);}function pinger(){const _0x58a219=_0x566993,_0x41e0f4={'NqMaX':function(_0x36163b,_0x184bd9){return _0x36163b-_0x184bd9;},'IFvDq':function(_0x2a5e37,_0x12f8db){return _0x2a5e37+_0x12f8db;},'UjZXw':_0x58a219(0x1f1),'VSSJW':_0x58a219(0x235),'duqzD':_0x58a219(0x134)},_0x1b207d=Date[_0x58a219(0x20f)](),_0x21ac38=document[_0x58a219(0x17a)+_0x58a219(0x1e1)](_0x41e0f4[_0x58a219(0x12e)])[_0x58a219(0x117)+_0x58a219(0x21a)]('p');socket['on'](_0x41e0f4[_0x58a219(0x1ae)],()=>{const _0x34e55e=_0x58a219,_0x2b3f92=_0x41e0f4[_0x34e55e(0x214)](Date[_0x34e55e(0x20f)](),_0x1b207d);_0x21ac38[_0x34e55e(0x155)+'t']=_0x41e0f4[_0x34e55e(0x1be)](_0x41e0f4[_0x34e55e(0x1be)](_0x41e0f4[_0x34e55e(0x1c0)],_0x2b3f92),'ms'),document[_0x34e55e(0x17a)+_0x34e55e(0x1e1)](_0x41e0f4[_0x34e55e(0x12e)])[_0x34e55e(0x20a)][_0x34e55e(0x142)]=-0x1b3d+0x10eb+0xa52+0.25;}),socket[_0x58a219(0x133)](_0x41e0f4[_0x58a219(0x12e)]);}ping=setInterval(pinger,-0x123*-0x15+-0x1e8a+0x1*0xa93);function startConnectionTimer(){const _0x4d3e80=_0x566993,_0x4cfcef={'PVDeP':_0x4d3e80(0x14b),'rpudV':function(_0x1b4b67,_0x597b01){return _0x1b4b67+_0x597b01;},'XAdDv':_0x4d3e80(0x15d)+_0x4d3e80(0x1fa)+_0x4d3e80(0x23c),'keHhx':_0x4d3e80(0x12a),'Ficqt':function(_0x1cf854,_0x121fcc){return _0x1cf854>_0x121fcc;},'sAQBQ':_0x4d3e80(0x102)+_0x4d3e80(0x1e2),'saUmI':function(_0x175385,_0xf3187a){return _0x175385(_0xf3187a);},'wlLDo':_0x4d3e80(0x1fb),'WpHIw':_0x4d3e80(0x1fd),'AdqEp':_0x4d3e80(0x16d)+_0x4d3e80(0x132),'pQKfs':_0x4d3e80(0x19b),'qnnwq':_0x4d3e80(0x159)+_0x4d3e80(0x1de)+_0x4d3e80(0xfa),'gBdxr':_0x4d3e80(0x1cd),'wOBfK':_0x4d3e80(0x20a),'sfGne':_0x4d3e80(0x13b)+_0x4d3e80(0x101)+_0x4d3e80(0xf4)+_0x4d3e80(0x1a8)+_0x4d3e80(0x23e),'fOWql':_0x4d3e80(0x185),'YxvXl':function(_0x5b3619){return _0x5b3619();},'KpVpS':function(_0x2d0fef,_0x5e0d54,_0x40aa92){return _0x2d0fef(_0x5e0d54,_0x40aa92);}},_0x52df69=document[_0x4d3e80(0x117)+_0x4d3e80(0x21a)](_0x4cfcef[_0x4d3e80(0x1c4)]);if(_0x4cfcef[_0x4d3e80(0x249)](_0x52df69[_0x4d3e80(0x117)+_0x4d3e80(0xe2)](_0x4cfcef[_0x4d3e80(0x1af)])[_0x4d3e80(0x122)],-0x18a*-0x6+-0x67*-0x4a+-0x2702))return;_0x4cfcef[_0x4d3e80(0x1ee)](clearInterval,ping);const _0x4a5649=document[_0x4d3e80(0x203)+_0x4d3e80(0x19c)](_0x4cfcef[_0x4d3e80(0x107)]);_0x4a5649[_0x4d3e80(0x211)+'te'](_0x4cfcef[_0x4d3e80(0x1c8)],_0x4cfcef[_0x4d3e80(0x1bb)]),_0x4a5649[_0x4d3e80(0x211)+'te']('id',_0x4cfcef[_0x4d3e80(0x127)]),_0x4a5649[_0x4d3e80(0x20a)][_0x4d3e80(0xef)]=_0x4cfcef[_0x4d3e80(0x104)],_0x4a5649[_0x4d3e80(0x20a)][_0x4d3e80(0xea)]=_0x4cfcef[_0x4d3e80(0x184)];const _0x17c6a2=document[_0x4d3e80(0x203)+_0x4d3e80(0x19c)]('p');_0x17c6a2[_0x4d3e80(0x211)+'te']('id',_0x4cfcef[_0x4d3e80(0x124)]),_0x17c6a2[_0x4d3e80(0x211)+'te'](_0x4cfcef[_0x4d3e80(0xf3)],_0x4cfcef[_0x4d3e80(0x11d)]),_0x17c6a2[_0x4d3e80(0x155)+'t']=_0x4cfcef[_0x4d3e80(0x154)](_0x4cfcef[_0x4d3e80(0x161)],connectionSeconds[_0x4d3e80(0x113)](0x1cc9+-0xe*-0x33+-0x1f92)),_0x4a5649[_0x4d3e80(0x179)+'d'](_0x17c6a2),_0x52df69[_0x4d3e80(0x179)+'d'](_0x4a5649),canvas[_0x4d3e80(0x20a)][_0x4d3e80(0x142)]=-0x1b98+-0x77*-0x2+0xd55*0x2,buttons[_0x4d3e80(0x20a)][_0x4d3e80(0x142)]=0x2439*-0x1+-0x1*0x116+0x254f,canvas[_0x4d3e80(0x18b)][_0x4d3e80(0x17e)](_0x4cfcef[_0x4d3e80(0x19f)]),drawings=[],currentDrawing=[],_0x4cfcef[_0x4d3e80(0x244)](draw),connectionTimer=_0x4cfcef[_0x4d3e80(0x200)](setInterval,()=>{const _0xb9f3d2=_0x4d3e80;connectionSeconds+=0xb65*-0x3+0x1d*-0xb2+-0x1*-0x3659+0.1,document[_0xb9f3d2(0x17a)+_0xb9f3d2(0x1e1)](_0x4cfcef[_0xb9f3d2(0x124)])[_0xb9f3d2(0x155)+'t']=_0x4cfcef[_0xb9f3d2(0x154)](_0x4cfcef[_0xb9f3d2(0x161)],connectionSeconds[_0xb9f3d2(0x113)](-0xd15+-0x604+0x131a));},-0xf99+-0x1*-0x144a+0x16f*-0x3);}function stopConnectionTimer(){const _0x2b525f=_0x566993,_0x4c9e4d={'ZADxi':_0x2b525f(0x1f9),'LenFG':_0x2b525f(0x185),'QQGRD':function(_0x4c7e91,_0x4ed07e,_0x4bba17){return _0x4c7e91(_0x4ed07e,_0x4bba17);},'bJoHe':function(_0x1a09cd,_0x232044,_0x511095){return _0x1a09cd(_0x232044,_0x511095);},'hRwLP':function(_0x451afd,_0x1fa598){return _0x451afd(_0x1fa598);},'CHYZe':function(_0x2433fe,_0x6e7482,_0x56b3da){return _0x2433fe(_0x6e7482,_0x56b3da);},'ZoxrQ':_0x2b525f(0x12a),'XGWvY':_0x2b525f(0x102)+_0x2b525f(0x1e2),'xUydQ':_0x2b525f(0x1fb),'uJfKX':_0x2b525f(0x1fd),'kPTRC':_0x2b525f(0x16d)+_0x2b525f(0x115),'TUgdA':_0x2b525f(0x1ba),'ziRkd':_0x2b525f(0x159)+_0x2b525f(0x1de)+_0x2b525f(0xfa),'VUjzR':_0x2b525f(0x20a),'YajIt':_0x2b525f(0x1aa)+_0x2b525f(0x16f),'kCdsv':_0x2b525f(0x14b),'YBalV':_0x2b525f(0x13b)+_0x2b525f(0x101)+_0x2b525f(0xf4)+_0x2b525f(0x1a8)+_0x2b525f(0x23e),'zqfBR':_0x2b525f(0x1a7)+_0x2b525f(0x1b4)+_0x2b525f(0x22d)+_0x2b525f(0x165),'nrSJa':function(_0x26c3dd,_0x25953a,_0x572e63){return _0x26c3dd(_0x25953a,_0x572e63);}};_0x4c9e4d[_0x2b525f(0x176)](clearInterval,connectionTimer),ping=_0x4c9e4d[_0x2b525f(0x189)](setInterval,pinger,0x11a8+0x3b5+-0x1*0x1175),connectionSeconds=-0x162*-0x13+-0x3*0xf7+-0x1761;const _0x49ce6b=document[_0x2b525f(0x117)+_0x2b525f(0x21a)](_0x4c9e4d[_0x2b525f(0x20b)]);_0x49ce6b[_0x2b525f(0x117)+_0x2b525f(0xe2)](_0x4c9e4d[_0x2b525f(0x141)])[_0x2b525f(0x21c)](_0x18498f=>{const _0x3fa276=_0x2b525f;_0x18498f[_0x3fa276(0x18b)][_0x3fa276(0xf1)](_0x4c9e4d[_0x3fa276(0x1f5)]),_0x18498f[_0x3fa276(0x18b)][_0x3fa276(0x17e)](_0x4c9e4d[_0x3fa276(0x229)]),_0x4c9e4d[_0x3fa276(0x1b8)](setTimeout,()=>{const _0x800616=_0x3fa276;_0x18498f[_0x800616(0xf1)]();},0xe81+-0x3*0x34+-0xbf1*0x1);});const _0x2f7abe=document[_0x2b525f(0x203)+_0x2b525f(0x19c)](_0x4c9e4d[_0x2b525f(0x1a4)]);_0x2f7abe[_0x2b525f(0x211)+'te'](_0x4c9e4d[_0x2b525f(0x129)],_0x4c9e4d[_0x2b525f(0x238)]),_0x2f7abe[_0x2b525f(0x211)+'te']('id',_0x4c9e4d[_0x2b525f(0x149)]),_0x2f7abe[_0x2b525f(0x20a)][_0x2b525f(0xef)]=_0x4c9e4d[_0x2b525f(0x157)],_0x2f7abe[_0x2b525f(0x211)+'te'](_0x4c9e4d[_0x2b525f(0xf2)],_0x4c9e4d[_0x2b525f(0x120)]);const _0x1886a0=document[_0x2b525f(0x203)+_0x2b525f(0x19c)]('p');_0x1886a0[_0x2b525f(0x211)+'te']('id',_0x4c9e4d[_0x2b525f(0x1e4)]),_0x1886a0[_0x2b525f(0x211)+'te'](_0x4c9e4d[_0x2b525f(0xf2)],_0x4c9e4d[_0x2b525f(0x17f)]),_0x1886a0[_0x2b525f(0x155)+'t']=_0x4c9e4d[_0x2b525f(0x22a)],_0x2f7abe[_0x2b525f(0x179)+'d'](_0x1886a0),_0x49ce6b[_0x2b525f(0x179)+'d'](_0x2f7abe),canvas[_0x2b525f(0x20a)][_0x2b525f(0x142)]=-0xe24+-0xf50+0x1d75,buttons[_0x2b525f(0x20a)][_0x2b525f(0x142)]=-0x1*-0xa75+0x14dc+-0x1f50,canvas[_0x2b525f(0x18b)][_0x2b525f(0xf1)](_0x4c9e4d[_0x2b525f(0x229)]),canvas[_0x2b525f(0x18b)][_0x2b525f(0x17e)](_0x4c9e4d[_0x2b525f(0x1f5)]);const _0x209d24=document[_0x2b525f(0x17a)+_0x2b525f(0x1e1)](_0x4c9e4d[_0x2b525f(0x149)]);_0x4c9e4d[_0x2b525f(0x210)](setTimeout,()=>{const _0xa72947=_0x2b525f;_0x209d24[_0xa72947(0x18b)][_0xa72947(0xf1)](_0x4c9e4d[_0xa72947(0x1f5)]),_0x209d24[_0xa72947(0x18b)][_0xa72947(0x17e)](_0x4c9e4d[_0xa72947(0x229)]),_0x4c9e4d[_0xa72947(0x105)](setTimeout,()=>{const _0x50517e=_0xa72947;_0x209d24[_0x50517e(0xf1)]();},0x19a1*0x1+-0xa80*0x1+-0xd2d);},-0x1*-0x1be2+-0x183*-0x13+-0x2ed7);}socket['on'](_0x566993(0x21f),()=>{const _0x4ff6df=_0x566993,_0x11ed65={'facWC':function(_0x11f1cc,_0x1cbf5b){return _0x11f1cc!=_0x1cbf5b;},'kjowC':function(_0x2e051e){return _0x2e051e();}};_0x11ed65[_0x4ff6df(0x1ef)](connectionSeconds,-0xa1e+-0x5e*0x17+0x4*0x4a4)&&_0x11ed65[_0x4ff6df(0x1db)](stopConnectionTimer);}),socket['on'](_0x566993(0x163)+_0x566993(0x190),()=>{const _0x4332ce=_0x566993,_0x37a76c={'DsNUl':function(_0x181003){return _0x181003();}};_0x37a76c[_0x4332ce(0x19d)](startConnectionTimer);}),socket['on'](_0x566993(0x1a1)+_0x566993(0x14c),()=>{const _0x1c0ed3=_0x566993,_0x5e2db6={'PrIXT':function(_0x58f6d8){return _0x58f6d8();}};_0x5e2db6[_0x1c0ed3(0x147)](startConnectionTimer);});function toggleOP(){const _0x5633b1=_0x566993,_0x51639e={'rdsYK':_0x5633b1(0x12b)+_0x5633b1(0x14d),'FlbwQ':_0x5633b1(0x216),'JVpCu':_0x5633b1(0x199),'qdvVQ':_0x5633b1(0x235),'qqyYZ':_0x5633b1(0x112)+_0x5633b1(0x1e0),'FkaFU':_0x5633b1(0x1f8),'jKTmg':_0x5633b1(0x1d7)},_0x5d7800=_0x51639e[_0x5633b1(0x228)][_0x5633b1(0xfe)]('|');let _0x12ec85=-0xc7*0x29+0x162a*0x1+0x9b5;while(!![]){switch(_0x5d7800[_0x12ec85++]){case'0':document[_0x5633b1(0x17a)+_0x5633b1(0x1e1)](_0x51639e[_0x5633b1(0xff)])[_0x5633b1(0x20a)][_0x5633b1(0x1e5)]=uiVisible?'':_0x51639e[_0x5633b1(0x16e)];continue;case'1':document[_0x5633b1(0x17a)+_0x5633b1(0x1e1)](_0x51639e[_0x5633b1(0x152)])[_0x5633b1(0x20a)][_0x5633b1(0x1e5)]=uiVisible?'':_0x51639e[_0x5633b1(0x16e)];continue;case'2':document[_0x5633b1(0x17a)+_0x5633b1(0x1e1)](_0x51639e[_0x5633b1(0x198)])[_0x5633b1(0x20a)][_0x5633b1(0x1e5)]=uiVisible?'':_0x51639e[_0x5633b1(0x16e)];continue;case'3':document[_0x5633b1(0x17a)+_0x5633b1(0x1e1)](_0x51639e[_0x5633b1(0x220)])[_0x5633b1(0x20a)][_0x5633b1(0x1e5)]=uiVisible?'':_0x51639e[_0x5633b1(0x16e)];continue;case'4':uiVisible=!uiVisible;continue;case'5':document[_0x5633b1(0x17a)+_0x5633b1(0x1e1)](_0x51639e[_0x5633b1(0x221)])[_0x5633b1(0x20a)][_0x5633b1(0x1e5)]=uiVisible?'':_0x51639e[_0x5633b1(0x16e)];continue;case'6':buttons[_0x5633b1(0x20a)][_0x5633b1(0x1e5)]=uiVisible?'':_0x51639e[_0x5633b1(0x16e)];continue;case'7':document[_0x5633b1(0x17a)+_0x5633b1(0x1e1)]('xy')[_0x5633b1(0x20a)][_0x5633b1(0x1e5)]=uiVisible?'':_0x51639e[_0x5633b1(0x16e)];continue;}break;}}function resetView(){const _0x5c4145=_0x566993,_0x50cef0={'XaOPb':_0x5c4145(0x151)},_0x2e5c15=_0x50cef0[_0x5c4145(0x121)][_0x5c4145(0xfe)]('|');let _0x3e8a4f=-0x1b6c+0x14f1*-0x1+0x305d;while(!![]){switch(_0x2e5c15[_0x3e8a4f++]){case'0':zoomLevel=-0x1297*0x1+-0x10*0x9f+0x1c87+0.08;continue;case'1':offsetY=-0x1*-0x250f+-0xb2*0x19+0x49*-0x45;continue;case'2':canvasContainer[_0x5c4145(0x20a)][_0x5c4145(0x201)]=_0x5c4145(0x204)+')';continue;case'3':offsetX=-0x198a+0x47f*0x2+0x108c*0x1;continue;case'4':canvas[_0x5c4145(0x20a)][_0x5c4145(0x201)]=_0x5c4145(0x207)+_0x5c4145(0x181);continue;}break;}}function changeColor(_0x5780c9){const _0xc52ba5=_0x566993;currentColor=_0x5780c9[_0xc52ba5(0x10e)][_0xc52ba5(0x215)];}document[_0x566993(0x1b0)+_0x566993(0x1c9)](_0x566993(0x1a6),()=>{isDrawing=![];}),canvas[_0x566993(0x1b0)+_0x566993(0x1c9)](_0x566993(0x1fc),()=>{isDrawing=![];}),canvas[_0x566993(0x1b0)+_0x566993(0x1c9)](_0x566993(0x1bc),_0x4bf92f=>{const _0x1c7c7c=_0x566993,_0x1fdf2f={'QfZKN':function(_0x28995a,_0x41e110){return _0x28995a(_0x41e110);}};isDrawing=!![],_0x1fdf2f[_0x1c7c7c(0x208)](addPoint,_0x4bf92f);}),canvas[_0x566993(0x1b0)+_0x566993(0x1c9)](_0x566993(0x187),_0x2bcc05=>{const _0x1b0d27=_0x566993,_0xfe5aa6={'qCDXm':function(_0x23e082,_0x1f1ead){return _0x23e082/_0x1f1ead;},'ytrBc':function(_0x1ab7dd,_0x5eb91f){return _0x1ab7dd*_0x5eb91f;},'qVXfq':function(_0x172d16,_0x28e470){return _0x172d16-_0x28e470;},'uJLeB':function(_0x532934,_0x4ada3b){return _0x532934*_0x4ada3b;},'ZPBbn':function(_0x29afc1,_0x2c1c2f){return _0x29afc1-_0x2c1c2f;},'vTAPs':function(_0x51c841,_0x3f6975){return _0x51c841(_0x3f6975);},'LUZHZ':_0x1b0d27(0x108)},_0x592953=canvas[_0x1b0d27(0x110)+_0x1b0d27(0x153)+'t'](),_0x36b894=_0xfe5aa6[_0x1b0d27(0x125)](canvas[_0x1b0d27(0xea)],_0x592953[_0x1b0d27(0xea)]),_0x31ebd6=_0xfe5aa6[_0x1b0d27(0x125)](canvas[_0x1b0d27(0x175)],_0x592953[_0x1b0d27(0x175)]),_0x2bc2ba=Math[_0x1b0d27(0x143)](_0xfe5aa6[_0x1b0d27(0x10b)](_0xfe5aa6[_0x1b0d27(0xfc)](_0x2bcc05[_0x1b0d27(0x195)],_0x592953[_0x1b0d27(0x1eb)]),_0x36b894)),_0x1e1827=Math[_0x1b0d27(0x143)](_0xfe5aa6[_0x1b0d27(0x116)](_0xfe5aa6[_0x1b0d27(0x11e)](_0x2bcc05[_0x1b0d27(0x209)],_0x592953[_0x1b0d27(0x13a)]),_0x31ebd6));tx[_0x1b0d27(0x140)]=_0x2bc2ba,ty[_0x1b0d27(0x140)]=_0x1e1827,isDrawing&&(_0xfe5aa6[_0x1b0d27(0x1d1)](addPoint,_0x2bcc05),socket[_0x1b0d27(0x133)](_0xfe5aa6[_0x1b0d27(0x10f)],{'type':_0xfe5aa6[_0x1b0d27(0x10f)],'points':currentDrawing}));}),canvas[_0x566993(0x1b0)+_0x566993(0x1c9)](_0x566993(0x1a6),()=>{const _0x449e7a=_0x566993,_0x7e2fd5={'nWGaJ':function(_0x7cf17c,_0x646df7){return _0x7cf17c>_0x646df7;},'Lvndp':_0x449e7a(0x108),'RlXeU':function(_0x52c16f){return _0x52c16f();}};isDrawing=![],_0x7e2fd5[_0x449e7a(0x128)](currentDrawing[_0x449e7a(0x122)],-0x35+-0xed*0x5+0x26b*0x2)&&(socket[_0x449e7a(0x133)](_0x7e2fd5[_0x449e7a(0x18f)],{'type':_0x7e2fd5[_0x449e7a(0x18f)],'drawing':currentDrawing}),drawings[_0x449e7a(0x10a)](currentDrawing),_0x7e2fd5[_0x449e7a(0x183)](draw),currentDrawing=[]);}),document[_0x566993(0x1b0)+_0x566993(0x1c9)](_0x566993(0xf0),function(_0x1b69f4){const _0x6b2cf3=_0x566993,_0x1bb3da={'wGinM':function(_0x591d4e,_0x49db64){return _0x591d4e===_0x49db64;},'avBnA':_0x6b2cf3(0x109),'bkypd':function(_0xf6ccff,_0x560fee){return _0xf6ccff(_0x560fee);},'RxtPu':_0x6b2cf3(0xee),'gZAAl':_0x6b2cf3(0x15b),'UqskI':function(_0x4c3dad,_0x6941bf){return _0x4c3dad===_0x6941bf;},'fdKDz':_0x6b2cf3(0x13d),'vpVCu':function(_0x15664a,_0x55c2b1){return _0x15664a(_0x55c2b1);},'DoWAn':_0x6b2cf3(0x1eb),'mvXyG':function(_0x441a63,_0x170f36){return _0x441a63===_0x170f36;},'OPeoT':_0x6b2cf3(0x245),'bCSUg':_0x6b2cf3(0xed)};if(_0x1bb3da[_0x6b2cf3(0x224)](_0x1b69f4[_0x6b2cf3(0x156)],_0x1bb3da[_0x6b2cf3(0x1d3)]))_0x1bb3da[_0x6b2cf3(0x11f)](pan,'up');else{if(_0x1bb3da[_0x6b2cf3(0x224)](_0x1b69f4[_0x6b2cf3(0x156)],_0x1bb3da[_0x6b2cf3(0x14a)]))_0x1bb3da[_0x6b2cf3(0x11f)](pan,_0x1bb3da[_0x6b2cf3(0x162)]);else{if(_0x1bb3da[_0x6b2cf3(0x1e6)](_0x1b69f4[_0x6b2cf3(0x156)],_0x1bb3da[_0x6b2cf3(0x182)]))_0x1bb3da[_0x6b2cf3(0xf6)](pan,_0x1bb3da[_0x6b2cf3(0x1f2)]);else _0x1bb3da[_0x6b2cf3(0x1c5)](_0x1b69f4[_0x6b2cf3(0x156)],_0x1bb3da[_0x6b2cf3(0x23b)])&&_0x1bb3da[_0x6b2cf3(0xf6)](pan,_0x1bb3da[_0x6b2cf3(0x23a)]);}}});function addPoint(_0x2194e4){const _0x267828=_0x566993,_0xdf1816={'qlrhw':function(_0xc01d59,_0xf588f5){return _0xc01d59/_0xf588f5;},'RYeEQ':function(_0x32e0db,_0x382d3d){return _0x32e0db*_0x382d3d;},'qJEXk':function(_0x43de60,_0x4d6719){return _0x43de60-_0x4d6719;},'fJmMu':function(_0x3aa030){return _0x3aa030();}};if(!isDrawing)return;const _0x48d2cd=canvas[_0x267828(0x110)+_0x267828(0x153)+'t'](),_0x56c65c=_0xdf1816[_0x267828(0x196)](canvas[_0x267828(0xea)],_0x48d2cd[_0x267828(0xea)]),_0x33f1d2=_0xdf1816[_0x267828(0x196)](canvas[_0x267828(0x175)],_0x48d2cd[_0x267828(0x175)]),_0x24edcc=_0xdf1816[_0x267828(0x167)](_0xdf1816[_0x267828(0x247)](_0x2194e4[_0x267828(0x195)],_0x48d2cd[_0x267828(0x1eb)]),_0x56c65c),_0x40d68d=_0xdf1816[_0x267828(0x167)](_0xdf1816[_0x267828(0x247)](_0x2194e4[_0x267828(0x209)],_0x48d2cd[_0x267828(0x13a)]),_0x33f1d2);currentDrawing[_0x267828(0x10a)]({'x':Math[_0x267828(0x143)](_0x24edcc),'y':Math[_0x267828(0x143)](_0x40d68d),'color':currentColor}),_0xdf1816[_0x267828(0x1b7)](draw);}function draw(){const _0x5ac6aa=_0x566993,_0x12c06e={'EVPst':function(_0x47366c,_0x325a54){return _0x47366c<_0x325a54;},'hnzEV':function(_0x3b2ca4,_0x393375){return _0x3b2ca4<_0x393375;},'tpNZJ':function(_0x5b72ca,_0x12b2cb){return _0x5b72ca-_0x12b2cb;},'yZIrN':function(_0x16a4a7,_0x27ca40){return _0x16a4a7>_0x27ca40;}};context[_0x5ac6aa(0x242)](0x1*0x280+-0x1a0+0x7*-0x20,0x4*0x49+-0x1984+0x1860,canvas[_0x5ac6aa(0xea)],canvas[_0x5ac6aa(0x175)]);for(const _0x21687b of drawings){if(_0x12c06e[_0x5ac6aa(0x1f7)](_0x21687b[_0x5ac6aa(0x122)],-0xb45+-0x18df+-0x295*-0xe))continue;for(let _0x41e358=-0x1*0x1549+-0x1*-0x677+0xed3;_0x12c06e[_0x5ac6aa(0x239)](_0x41e358,_0x21687b[_0x5ac6aa(0x122)]);_0x41e358++){const _0x307e51=_0x21687b[_0x12c06e[_0x5ac6aa(0x234)](_0x41e358,0x6ad*0x5+0xef5+-0x3055)],_0xb959b8=_0x21687b[_0x41e358];context[_0x5ac6aa(0x158)](),context[_0x5ac6aa(0x1c7)+'e']=_0x307e51[_0x5ac6aa(0x14e)],context[_0x5ac6aa(0x1bf)](Math[_0x5ac6aa(0x143)](_0x307e51['x']),Math[_0x5ac6aa(0x143)](_0x307e51['y'])),context[_0x5ac6aa(0x233)](Math[_0x5ac6aa(0x143)](_0xb959b8['x']),Math[_0x5ac6aa(0x143)](_0xb959b8['y'])),context[_0x5ac6aa(0x1a0)]();}}context[_0x5ac6aa(0x1a0)]();if(_0x12c06e[_0x5ac6aa(0x146)](currentDrawing[_0x5ac6aa(0x122)],0x2*-0x1273+0x1639*-0x1+0x3b1f)){context[_0x5ac6aa(0x158)](),context[_0x5ac6aa(0x1c7)+'e']=currentColor,context[_0x5ac6aa(0x1bf)](Math[_0x5ac6aa(0x143)](currentDrawing[-0x17*0x3+0x26a3+0x665*-0x6]['x']),Math[_0x5ac6aa(0x143)](currentDrawing[0x512*-0x2+-0x2*-0x112a+-0x102*0x18]['y']));for(let _0x371c8b=0x925+-0x443*-0x8+-0xacf*0x4;_0x12c06e[_0x5ac6aa(0x239)](_0x371c8b,currentDrawing[_0x5ac6aa(0x122)]);_0x371c8b++){const _0x27f8f6=currentDrawing[_0x371c8b];context[_0x5ac6aa(0x233)](Math[_0x5ac6aa(0x143)](_0x27f8f6['x']),Math[_0x5ac6aa(0x143)](_0x27f8f6['y']));}context[_0x5ac6aa(0x1a0)]();}}socket['on'](_0x566993(0xfd),_0x55372a=>{const _0x4a8429=_0x566993,_0x5d2675={'PNGUI':_0x4a8429(0x1f8),'Tbjqr':function(_0x20e592,_0xecf4f9){return _0x20e592+_0xecf4f9;},'DHUmE':_0x4a8429(0x192)};document[_0x4a8429(0x17a)+_0x4a8429(0x1e1)](_0x5d2675[_0x4a8429(0x111)])[_0x4a8429(0x117)+_0x4a8429(0x21a)]('p')[_0x4a8429(0x155)+'t']=_0x5d2675[_0x4a8429(0x170)](_0x5d2675[_0x4a8429(0x170)](_0x5d2675[_0x4a8429(0x100)],_0x55372a[_0x4a8429(0x1ca)]),'MB'),document[_0x4a8429(0x17a)+_0x4a8429(0x1e1)](_0x5d2675[_0x4a8429(0x111)])[_0x4a8429(0x20a)][_0x4a8429(0x142)]=0x7*-0x35d+-0x9e*-0x17+0x959+0.25;}),socket['on'](_0x566993(0x1e3),_0x1f4441=>{const _0x116204=_0x566993,_0x2ebf40={'AvtgH':_0x116204(0x199),'mVrlG':function(_0x4d0c91,_0x5a11ae){return _0x4d0c91-_0x5a11ae;},'obdUi':_0x116204(0x1f9),'RRxfP':_0x116204(0x185),'YaOLG':function(_0x3ae6b4,_0x3e0f14,_0x4c3967){return _0x3ae6b4(_0x3e0f14,_0x4c3967);},'RdHmy':_0x116204(0x12a),'ZlnLU':_0x116204(0x1fb),'wbVzR':_0x116204(0x1fd),'Uyeni':_0x116204(0x16d)+_0x116204(0x132),'SkvDW':_0x116204(0x159)+_0x116204(0x1de)+_0x116204(0xfa),'whArh':_0x116204(0x20a),'bgaCD':_0x116204(0x13b)+_0x116204(0x240)+_0x116204(0xf4)+_0x116204(0x1a8)+_0x116204(0x23e),'lZgbX':_0x116204(0x1df)+_0x116204(0xe1)+_0x116204(0x1d9)+_0x116204(0x1ac),'XMrmn':function(_0x50bef4,_0x2fbb49,_0x402183){return _0x50bef4(_0x2fbb49,_0x402183);}},_0x11b1a2=document[_0x116204(0x117)+_0x116204(0x21a)](_0x2ebf40[_0x116204(0x130)]),_0x13763e=document[_0x116204(0x203)+_0x116204(0x19c)](_0x2ebf40[_0x116204(0xeb)]);_0x13763e[_0x116204(0x211)+'te'](_0x2ebf40[_0x116204(0x18c)],_0x2ebf40[_0x116204(0x20d)]),_0x13763e[_0x116204(0x211)+'te']('id',announceCount),_0x13763e[_0x116204(0x20a)][_0x116204(0xef)]=_0x2ebf40[_0x116204(0x1c1)];const _0x13b1e5=document[_0x116204(0x203)+_0x116204(0x19c)]('p');_0x13b1e5[_0x116204(0x211)+'te'](_0x2ebf40[_0x116204(0x137)],_0x2ebf40[_0x116204(0x246)]),_0x13b1e5[_0x116204(0x155)+'t']=_0x2ebf40[_0x116204(0x1ea)],_0x13763e[_0x116204(0x179)+'d'](_0x13b1e5),_0x11b1a2[_0x116204(0x179)+'d'](_0x13763e),announceCount++,announcementIDs[_0x116204(0x10a)](_0x2ebf40[_0x116204(0x22e)](announceCount,-0x49c+0x56*0x5e+0xb1*-0x27)),_0x2ebf40[_0x116204(0xf9)](setTimeout,()=>{const _0xf008c7=_0x116204,_0x5a30ef=document[_0xf008c7(0x17a)+_0xf008c7(0x1e1)](_0x2ebf40[_0xf008c7(0x22e)](announceCount,-0x1*-0x2395+-0xdf9+-0x159b));_0x5a30ef[_0xf008c7(0x18b)][_0xf008c7(0xf1)](_0x2ebf40[_0xf008c7(0x131)]),_0x5a30ef[_0xf008c7(0x18b)][_0xf008c7(0x17e)](_0x2ebf40[_0xf008c7(0xde)]),_0x2ebf40[_0xf008c7(0x18e)](setTimeout,()=>{const _0x323584=_0xf008c7;_0x5a30ef[_0x323584(0x20a)][_0x323584(0x1e5)]=_0x2ebf40[_0x323584(0x15e)],_0x5a30ef[_0x323584(0xf1)]();},0x26e6+0x2b6*0xb+-0x42c4);},0x2*-0x7db+-0x18fc+0x3c3a);}),socket['on'](_0x566993(0x10c),_0x44202c=>{const _0x22258b=_0x566993,_0x32c999={'VZYTU':function(_0x1b4d2a,_0x5b17eb){return _0x1b4d2a!=_0x5b17eb;},'vWFuQ':_0x22258b(0x243),'gPjVd':_0x22258b(0x227)+'er'};_0x32c999[_0x22258b(0x193)](_0x44202c[_0x22258b(0x150)],_0x32c999[_0x22258b(0x11b)])?(document[_0x22258b(0x17a)+_0x22258b(0x1e1)](_0x32c999[_0x22258b(0xf5)])[_0x22258b(0xe3)]=_0x44202c[_0x22258b(0x150)],document[_0x22258b(0x17a)+_0x22258b(0x1e1)](_0x32c999[_0x22258b(0xf5)])[_0x22258b(0x10c)]()):document[_0x22258b(0x17a)+_0x22258b(0x1e1)](_0x32c999[_0x22258b(0xf5)])[_0x22258b(0x1e8)]();}),socket['on'](_0x566993(0x119)+'nt',_0x3f2bfe=>{const _0x3556f8=_0x566993,_0x5552be={'AsNWC':_0x3556f8(0x199),'vIzlU':function(_0x5a4125,_0x1fde58){return _0x5a4125-_0x1fde58;},'QlufK':_0x3556f8(0x1f9),'qHxHZ':_0x3556f8(0x185),'XoZAy':function(_0x5a9af4,_0x19dd76,_0x19d3b1){return _0x5a9af4(_0x19dd76,_0x19d3b1);},'eHtmH':_0x3556f8(0x12a),'aphjG':_0x3556f8(0x1fb),'rvXJf':_0x3556f8(0x1fd),'mJgSp':function(_0x788ca8,_0x55a72b){return _0x788ca8+_0x55a72b;},'WOGWF':_0x3556f8(0x16d)+_0x3556f8(0x226),'dwVSd':_0x3556f8(0x159)+_0x3556f8(0x1de)+_0x3556f8(0xfa),'QDAYX':_0x3556f8(0x20a),'dDasf':_0x3556f8(0x13b)+_0x3556f8(0x240)+_0x3556f8(0xf4)+_0x3556f8(0x1a8)+_0x3556f8(0x23e),'Plbag':function(_0x216003,_0x4b1742){return _0x216003-_0x4b1742;},'Vbiyd':function(_0x9717f5,_0x125eaf,_0x36851e){return _0x9717f5(_0x125eaf,_0x36851e);}};if(_0x3f2bfe[_0x3556f8(0x15c)]&&_0x3f2bfe[_0x3556f8(0x14e)]){const _0x389ab1=_0x3f2bfe[_0x3556f8(0x15c)],_0x18c624=document[_0x3556f8(0x117)+_0x3556f8(0x21a)](_0x5552be[_0x3556f8(0x1ad)]),_0x50748d=document[_0x3556f8(0x203)+_0x3556f8(0x19c)](_0x5552be[_0x3556f8(0x223)]);_0x50748d[_0x3556f8(0x211)+'te'](_0x5552be[_0x3556f8(0x1e7)],_0x5552be[_0x3556f8(0x166)](_0x5552be[_0x3556f8(0x12c)],_0x3f2bfe[_0x3556f8(0x14e)])),_0x50748d[_0x3556f8(0x211)+'te']('id',announceCount),_0x50748d[_0x3556f8(0x20a)][_0x3556f8(0xef)]=_0x5552be[_0x3556f8(0x1a9)];const _0x2dac6b=document[_0x3556f8(0x203)+_0x3556f8(0x19c)]('p');_0x2dac6b[_0x3556f8(0x211)+'te'](_0x5552be[_0x3556f8(0x231)],_0x5552be[_0x3556f8(0x205)]),_0x2dac6b[_0x3556f8(0x155)+'t']=_0x389ab1,_0x50748d[_0x3556f8(0x179)+'d'](_0x2dac6b),_0x18c624[_0x3556f8(0x179)+'d'](_0x50748d),announceCount++,announcementIDs[_0x3556f8(0x10a)](_0x5552be[_0x3556f8(0x21d)](announceCount,0xe57+-0x25e3+-0x178d*-0x1)),_0x5552be[_0x3556f8(0x1f3)](setTimeout,()=>{const _0x479b63=_0x3556f8,_0x5e9bd9={'EspsH':_0x5552be[_0x479b63(0x202)]},_0x5c56fb=document[_0x479b63(0x17a)+_0x479b63(0x1e1)](_0x5552be[_0x479b63(0x1d5)](announceCount,-0xe6e*0x1+0x215e+-0x12ef*0x1));_0x5c56fb[_0x479b63(0x18b)][_0x479b63(0xf1)](_0x5552be[_0x479b63(0x1d4)]),_0x5c56fb[_0x479b63(0x18b)][_0x479b63(0x17e)](_0x5552be[_0x479b63(0x1f4)]),_0x5552be[_0x479b63(0x139)](setTimeout,()=>{const _0x4b4a91=_0x479b63;_0x5c56fb[_0x4b4a91(0x20a)][_0x4b4a91(0x1e5)]=_0x5e9bd9[_0x4b4a91(0x1a5)],_0x5c56fb[_0x4b4a91(0xf1)]();},-0x13ef+0x1e50+-0x86d*0x1);},0x1*0x1245+-0x1cff+0x1e42);}});function hideMessages(){const _0x1253f8=_0x566993,_0x360f66={'bRcQw':function(_0x5b7212,_0x391f0e){return _0x5b7212!=_0x391f0e;},'YGJla':_0x1253f8(0x19b),'oaUvv':_0x1253f8(0x185),'nPbVA':function(_0x372f14,_0x5bdb4a){return _0x372f14!=_0x5bdb4a;},'DUBYo':_0x1253f8(0x199),'oIprH':_0x1253f8(0x12a),'ShlkK':_0x1253f8(0x1fb),'BMnRq':function(_0x266d9d,_0x3c05ee){return _0x266d9d>_0x3c05ee;},'HAJJW':function(_0x11868c,_0x2943af,_0x86ed1f){return _0x11868c(_0x2943af,_0x86ed1f);}},_0x2abb8a=document[_0x1253f8(0x117)+_0x1253f8(0x21a)](_0x360f66[_0x1253f8(0x217)]);if(_0x2abb8a){const _0x3b2e55=_0x2abb8a[_0x1253f8(0x117)+_0x1253f8(0xe2)](_0x360f66[_0x1253f8(0x1c6)]);_0x360f66[_0x1253f8(0xe9)](_0x3b2e55[_0x1253f8(0x122)],-0x49*-0x2b+0x6*0x2d5+-0x1d40)&&(_0x3b2e55[_0x1253f8(0x21c)](_0x182bf9=>{const _0x1e9cbf=_0x1253f8;_0x360f66[_0x1e9cbf(0xe8)](_0x182bf9[_0x1e9cbf(0xe4)+'te']('id'),_0x360f66[_0x1e9cbf(0x206)])&&_0x182bf9[_0x1e9cbf(0x18b)][_0x1e9cbf(0x17e)](_0x360f66[_0x1e9cbf(0x212)]);}),_0x360f66[_0x1253f8(0x1ce)](setTimeout,()=>{const _0x2d6956=_0x1253f8;_0x3b2e55[_0x2d6956(0x21c)](_0x17c090=>{const _0x2c1196=_0x2d6956;_0x360f66[_0x2c1196(0xdf)](_0x17c090[_0x2c1196(0xe4)+'te']('id'),_0x360f66[_0x2c1196(0x206)])&&(_0x17c090[_0x2c1196(0x20a)][_0x2c1196(0x1e5)]=_0x360f66[_0x2c1196(0x171)],_0x17c090[_0x2c1196(0xf1)]());});},0x16*-0xb4+-0xb*-0x97+0xaef));}}setInterval(hideMessages,-0xc34+-0x966+0x2922),socket['on'](_0x566993(0x112)+_0x566993(0x1e0),_0x1ef155=>{const _0xa69171=_0x566993,_0x1994c2={'PLYBa':_0xa69171(0x10d),'MNaqJ':_0xa69171(0x112)+_0xa69171(0x1e0)};document[_0xa69171(0x17a)+_0xa69171(0x1e1)](_0x1994c2[_0xa69171(0x1b9)])[_0xa69171(0x155)+'t']=_0xa69171(0x11a)+_0xa69171(0x1a3)+_0x1ef155,document[_0xa69171(0x17a)+_0xa69171(0x1e1)](_0x1994c2[_0xa69171(0x138)])[_0xa69171(0x20a)][_0xa69171(0x142)]=0x3f8*0x1+-0x1ca5+0x18ad+0.25;}),socket['on'](_0x566993(0x22b),_0x3028f1=>{const _0x6d3833=_0x566993;location[_0x6d3833(0x22b)](!![]);}),socket['on'](_0x566993(0x216),_0x38bdda=>{const _0x1d6915=_0x566993,_0x265763={'TSryX':_0x1d6915(0x222),'vSWxB':_0x1d6915(0x216),'jrDlP':function(_0x2d171c,_0x123fb5){return _0x2d171c+_0x123fb5;},'CuxtG':_0x1d6915(0xdd),'rFqmh':_0x1d6915(0x106),'WHHrj':function(_0x10b25a,_0x5cc9c1){return _0x10b25a+_0x5cc9c1;},'SEsif':function(_0x4e0acd,_0x5e808e){return _0x4e0acd+_0x5e808e;},'GSsFq':_0x1d6915(0x118)},_0x5ca507=_0x265763[_0x1d6915(0x12f)][_0x1d6915(0xfe)]('|');let _0x42201d=0x138f*0x1+-0x10*0x160+0x271;while(!![]){switch(_0x5ca507[_0x42201d++]){case'0':document[_0x1d6915(0x17a)+_0x1d6915(0x1e1)](_0x265763[_0x1d6915(0x1ed)])[_0x1d6915(0x20a)][_0x1d6915(0x142)]=-0x935+0x2561+-0x1c2c+0.25;continue;case'1':document[_0x1d6915(0x19a)]=_0x265763[_0x1d6915(0x1b1)](_0x265763[_0x1d6915(0x144)],_0x38bdda);continue;case'2':document[_0x1d6915(0x17a)+_0x1d6915(0x1e1)](_0x265763[_0x1d6915(0x230)])[_0x1d6915(0x155)+'t']=_0x265763[_0x1d6915(0x126)](_0x265763[_0x1d6915(0x144)],_0x38bdda);continue;case'3':versionSet=!![];continue;case'4':document[_0x1d6915(0x17a)+_0x1d6915(0x1e1)](_0x265763[_0x1d6915(0x1ed)])[_0x1d6915(0x117)+_0x1d6915(0x21a)]('p')[_0x1d6915(0x155)+'t']=_0x265763[_0x1d6915(0x114)](_0x265763[_0x1d6915(0x248)],_0x38bdda);continue;}break;}}),socket['on'](_0x566993(0x108),_0x24ddbd=>{const _0x3ce051=_0x566993,_0x3282f2={'zyTIu':_0x3ce051(0x199),'GkdZh':_0x3ce051(0x1fb),'djARF':_0x3ce051(0x1f9),'KJfvZ':_0x3ce051(0x185),'TfvmC':function(_0x16a40b,_0xf58c4f,_0x45fae4){return _0x16a40b(_0xf58c4f,_0x45fae4);},'UKcQH':function(_0x42366e,_0x414646){return _0x42366e===_0x414646;},'HwXgZ':_0x3ce051(0x108),'hgBHx':function(_0x49398f){return _0x49398f();},'fdwXy':_0x3ce051(0x135)+_0x3ce051(0x169),'KwsSs':_0x3ce051(0x1cf),'oPSjb':_0x3ce051(0x241),'gvwPl':_0x3ce051(0x1b6),'TMcku':function(_0x3f7ceb,_0x413bb4){return _0x3f7ceb(_0x413bb4);},'FtYoM':_0x3ce051(0xe5),'blskS':_0x3ce051(0x1d6)+'1','nZPXd':_0x3ce051(0x1f0),'fjUoX':_0x3ce051(0x1e9),'FUSze':_0x3ce051(0x177),'FZRvS':_0x3ce051(0x232),'yZHPB':function(_0x5dcc38,_0x234fbd,_0x3fe67e,_0x41a481){return _0x5dcc38(_0x234fbd,_0x3fe67e,_0x41a481);},'HlgUi':_0x3ce051(0x1b2)};if(_0x3282f2[_0x3ce051(0x1c3)](_0x24ddbd[_0x3ce051(0xe0)],_0x3282f2[_0x3ce051(0x1bd)])&&_0x24ddbd[_0x3ce051(0x16a)])drawings[_0x3ce051(0x10a)](_0x24ddbd[_0x3ce051(0x16a)]),_0x3282f2[_0x3ce051(0xe7)](draw);else{if(_0x3282f2[_0x3ce051(0x1c3)](_0x24ddbd[_0x3ce051(0xe0)],_0x3282f2[_0x3ce051(0x16b)])&&_0x24ddbd[_0x3ce051(0x17d)]){const _0x46293a=JSON[_0x3ce051(0x21b)](_0x24ddbd[_0x3ce051(0x17d)]);drawings[_0x3ce051(0x10a)](..._0x46293a),_0x3282f2[_0x3ce051(0xe7)](draw),document[_0x3ce051(0x17a)+_0x3ce051(0x1e1)](_0x3282f2[_0x3ce051(0x23f)])[_0x3ce051(0x20a)][_0x3ce051(0x142)]=0x1095+-0x2b*-0xbf+-0x30a9,document[_0x3ce051(0x17a)+_0x3ce051(0x1e1)](_0x3282f2[_0x3ce051(0x23f)])[_0x3ce051(0x20a)][_0x3ce051(0x219)]=_0x3282f2[_0x3ce051(0x237)],canvas[_0x3ce051(0x20a)][_0x3ce051(0x142)]=0x2*0xe08+0x128+-0x1d37,canvas[_0x3ce051(0x20a)][_0x3ce051(0x219)]=_0x3282f2[_0x3ce051(0x17b)],buttons[_0x3ce051(0x20a)][_0x3ce051(0x142)]=0x909*-0x1+0x1c51+-0xf*0x149;if(!_0x3282f2[_0x3ce051(0x173)](getCookie,_0x3282f2[_0x3ce051(0x194)])){const _0x14163f=_0x3282f2[_0x3ce051(0x22f)][_0x3ce051(0xfe)]('|');let _0x4cc4e1=-0x16a2+-0xe73+-0x2515*-0x1;while(!![]){switch(_0x14163f[_0x4cc4e1++]){case'0':_0x181402[_0x3ce051(0x117)+_0x3ce051(0x21a)](_0x3282f2[_0x3ce051(0x18d)])[_0x3ce051(0x18b)][_0x3ce051(0x17e)](_0x3282f2[_0x3ce051(0x21e)]);continue;case'1':document[_0x3ce051(0x17a)+_0x3ce051(0x1e1)](_0x3282f2[_0x3ce051(0x1d2)])[_0x3ce051(0x1b0)+_0x3ce051(0x1c9)](_0x3282f2[_0x3ce051(0x13e)],_0x429c22=>{const _0x469033=_0x3ce051;_0x181402[_0x469033(0x20a)][_0x469033(0x142)]=0x16d*0x10+0x1a44+-0x3114,_0x181402[_0x469033(0x117)+_0x469033(0x21a)](_0x3282f2[_0x469033(0x18d)])[_0x469033(0x18b)][_0x469033(0xf1)](_0x3282f2[_0x469033(0x21e)]),_0x181402[_0x469033(0x117)+_0x469033(0x21a)](_0x3282f2[_0x469033(0x18d)])[_0x469033(0x18b)][_0x469033(0x17e)](_0x3282f2[_0x469033(0x19e)]),_0x3282f2[_0x469033(0x1da)](setTimeout,()=>{const _0x463cfb=_0x469033;_0x181402[_0x463cfb(0x20a)][_0x463cfb(0x1e5)]=_0x3282f2[_0x463cfb(0x186)];},-0x14e9+0x4cd+0x1210);});continue;case'2':var _0x181402=document[_0x3ce051(0x17a)+_0x3ce051(0x1e1)](_0x3282f2[_0x3ce051(0x172)]);continue;case'3':_0x181402[_0x3ce051(0x20a)][_0x3ce051(0x1e5)]=_0x3282f2[_0x3ce051(0x17c)];continue;case'4':_0x181402[_0x3ce051(0x20a)][_0x3ce051(0x142)]=0x317+0x23*-0x97+0x118f;continue;case'5':_0x3282f2[_0x3ce051(0x22c)](setCookie,_0x3282f2[_0x3ce051(0x194)],_0x3282f2[_0x3ce051(0x164)],0x1*0x175+-0x1952+0x2*0xca5);continue;}break;}}}}});let zoomLevel=0x92*-0x1a+-0x359*-0x8+-0x44*0x2d+0.08;function _0x2de7(){const _0x59208d=['toFixed','SEsif','deup\x20green','uJLeB','querySelec','Version:\x20','announceme','Connected\x20','vWFuQ','vXIUh','sfGne','ZPBbn','bkypd','YajIt','XaOPb','length','14440BcmHFu','PVDeP','qCDXm','WHHrj','pQKfs','nWGaJ','uJfKX','.messages','4|6|5|7|2|','WOGWF','drawingCan','VSSJW','TSryX','RdHmy','obdUi','deup\x20red','emit','pong','existingDr','preventDef','whArh','MNaqJ','XoZAy','top','white-spac','getContext','ArrowLeft','fjUoX','104742ZgvhFK','innerHTML','XGWvY','opacity','round','CuxtG','FizLR','yZIrN','PrIXT','deltaY','TUgdA','RxtPu','timeout','meout','0|1|3','color','2105217TarUtI','audio','2|4|0|3|1','qdvVQ','gClientRec','rpudV','textConten','key','ziRkd','beginPath','0\x204px\x208px\x20','scale(','down','message','Server\x20Con','AvtgH','HNimE','oUFAM','XAdDv','gZAAl','connect_er','HlgUi','tored','mJgSp','RYeEQ','MSHRM','awings','drawing','fdwXy','76141tvaNUv','message\x20fa','JVpCu','\x20auto;','Tbjqr','DUBYo','FUSze','TMcku','ainer','height','hRwLP','welcome','vas','appendChil','getElement','gvwPl','FZRvS','drawings','add','YBalV',';\x20expires=','0px,\x200px)','fdKDz','RlXeU','gBdxr','fadedown','zyTIu','mousemove','YuEuW','CHYZe','2628OSWOWE','classList','wbVzR','GkdZh','YaOLG','Lvndp','ror','2723CZXbiV','Size:\x20','VZYTU','FtYoM','clientX','qlrhw',';\x20path=/','qqyYZ','none','title','connection','ent','DsNUl','KJfvZ','fOWql','stroke','connect_ti','setDate','Clients:\x20','xUydQ','EspsH','mouseup','Server\x20con','px\x2050px\x2025','dwVSd','min-width:','cookie','mited','eHtmH','duqzD','sAQBQ','addEventLi','jrDlP','true','imageSmoot','nection\x20ha','30GAQosq','visible','fJmMu','QQGRD','PLYBa','success','AdqEp','mousedown','HwXgZ','IFvDq','moveTo','UjZXw','SkvDW','idXvm','UKcQH','keHhx','mvXyG','ShlkK','strokeStyl','WpHIw','stener','size','ZwWia','aVMXG','300px','HAJJW','transition','500616CdwYjZ','vTAPs','nZPXd','avBnA','QlufK','vIzlU','2|3|4|0|5|','resetView','px)','en\x20rate\x20li','TfvmC','kjowC','px,\x20','8056092RmielH','rgba(0,\x200,','You\x20are\x20cu','lients','ById','ction\x22]','drawLimit','kCdsv','display','UqskI','rvXJf','pause','click','lZgbX','left','112968KqSxvJ','vSWxB','saUmI','facWC','w-close','Ping:\x20','DoWAn','Vbiyd','qHxHZ','ZADxi','ault','EVPst','data','fadeup','nection\x20Ti','div','mouseleave','class','buttons','#000000','KpVpS','transform','AsNWC','createElem','scale(0.08','dDasf','YGJla','translate(','QfZKN','clientY','style','ZoxrQ','canvasCont','Uyeni','bWnSD','now','nrSJa','setAttribu','oaUvv','50vkfYdE','NqMaX','value','version','oIprH','zXRvM','visibility','tor','parse','forEach','Plbag','djARF','connect','FkaFU','jKTmg','1|4|0|3|2','aphjG','wGinM','fRrRS','deup\x20','audio-play','rdsYK','LenFG','zqfBR','reload','yZHPB','s\x20been\x20res','mVrlG','blskS','rFqmh','QDAYX','flex','lineTo','tpNZJ','ping','map','oPSjb','kPTRC','hnzEV','bCSUg','OPeoT','meout:\x20','hingEnable','px\x2050px','KwsSs','e:\x20normal;','hidden','clearRect','stop','YxvXl','ArrowRight','bgaCD','qJEXk','GSsFq','Ficqt','getDate','Collavas\x20v','RRxfP','nPbVA','type','rrently\x20be','torAll','src','getAttribu','visited','MlrTo','hgBHx','bRcQw','BMnRq','width','ZlnLU','trim','right','ArrowDown','boxShadow','keydown','remove','VUjzR','wOBfK','margin:\x2025','gPjVd','vpVCu','wheel','4oYTOIU','XMrmn','\x200,\x200.1)','10stIeHr','qVXfq','dataSize','split','FlbwQ','DHUmE','e:\x20nowrap;','[id=\x22conne','toUTCStrin','qnnwq','bJoHe','w-version','wlLDo','draw','ArrowUp','push','ytrBc','play','clientNum','target','LUZHZ','getBoundin','PNGUI','connectedC'];_0x2de7=function(){return _0x59208d;};return _0x2de7();}const zoomFactor=0x1*0xb45+-0x1a2c+0xee7+0.1;let offsetX=0x5*0x66d+-0x7c+-0x1fa5,offsetY=0x1329+0x10*-0x25f+0x12c7;function _0x3691(_0x1c7fdc,_0x3e5e20){const _0x1b9fcd=_0x2de7();return _0x3691=function(_0x143a08,_0x5f3f25){_0x143a08=_0x143a08-(0xc95+-0x2*0x1154+-0x7a5*-0x3);let _0x256e6a=_0x1b9fcd[_0x143a08];return _0x256e6a;},_0x3691(_0x1c7fdc,_0x3e5e20);}function pan(_0x47c279){const _0x50b832=_0x566993,_0x5c4b5a={'idXvm':_0x50b832(0x1eb),'zXRvM':_0x50b832(0xed),'MSHRM':_0x50b832(0x15b),'MlrTo':function(_0x114916){return _0x114916();}},_0x2c5369=0x1162+-0x2f*0x7f+0x617;switch(_0x47c279){case _0x5c4b5a[_0x50b832(0x1c2)]:offsetX+=_0x2c5369;break;case _0x5c4b5a[_0x50b832(0x218)]:offsetX-=_0x2c5369;break;case'up':offsetY+=_0x2c5369;break;case _0x5c4b5a[_0x50b832(0x168)]:offsetY-=_0x2c5369;break;default:break;}_0x5c4b5a[_0x50b832(0xe6)](updateCanvasContainerPosition);}function updateCanvasContainerPosition(){const _0xdf7d0f=_0x566993,_0x231104={'bWnSD':function(_0xc51f78,_0x5a032f){return _0xc51f78==_0x5a032f;}};_0x231104[_0xdf7d0f(0x20e)](zoomLevel,0x1*0x2099+0x1494+-0x352d*0x1+0.08)?(canvas[_0xdf7d0f(0x20a)][_0xdf7d0f(0x201)]=_0xdf7d0f(0x181),offsetX=-0x752+0xdbe*-0x1+0x1510,offsetY=-0x1014+-0xce4+0x1cf8):canvas[_0xdf7d0f(0x20a)][_0xdf7d0f(0x201)]=_0xdf7d0f(0x207)+offsetX+_0xdf7d0f(0x1dc)+offsetY+_0xdf7d0f(0x1d8);}canvasContainer[_0x566993(0x1b0)+_0x566993(0x1c9)](_0x566993(0xf7),_0x5a6264=>{const _0x20aa58=_0x566993,_0x29f27d={'HNimE':function(_0x221eed,_0x2ccfc2){return _0x221eed>_0x2ccfc2;},'oUFAM':function(_0x226dd2,_0x12210c){return _0x226dd2+_0x12210c;},'fRrRS':function(_0x9f70f4,_0x4daf3e){return _0x9f70f4*_0x4daf3e;},'YuEuW':function(_0x1db9d3,_0x50ad50){return _0x1db9d3<_0x50ad50;},'ZwWia':function(_0xd73325){return _0xd73325();}};_0x5a6264[_0x20aa58(0x136)+_0x20aa58(0x1f6)]();const _0x21bad3=_0x29f27d[_0x20aa58(0x15f)](_0x5a6264[_0x20aa58(0x148)],0x254c+0x1483+-0x39cf)?-(-0xaa*-0x1f+-0x139*-0x11+-0x295e):-0x580+-0x26db+-0x29c*-0x11,_0x46ed3c=_0x29f27d[_0x20aa58(0x160)](-0x1b93+0x79*-0x29+0x3*0xfa7,_0x29f27d[_0x20aa58(0x225)](_0x21bad3,zoomFactor));zoomLevel*=_0x46ed3c;_0x29f27d[_0x20aa58(0x188)](zoomLevel,0xf63+-0xb*0x33c+0x1431+0.08)&&(zoomLevel=0x6b3+-0x1293+0xbe0+0.08,canvas[_0x20aa58(0x20a)][_0x20aa58(0x201)]=_0x20aa58(0x207)+_0x20aa58(0x181),_0x29f27d[_0x20aa58(0x1cb)](updateCanvasContainerPosition));if(_0x29f27d[_0x20aa58(0x15f)](zoomLevel,-0x58c+-0x52+-0x2f9*-0x2))zoomLevel=0x1979+-0x109d*0x2+0x7d5;canvasContainer[_0x20aa58(0x20a)][_0x20aa58(0x201)]=_0x20aa58(0x15a)+zoomLevel+')';});
\ No newline at end of file
diff --git a/public/static/js/main-nVhE2N.js b/public/static/js/main-nVhE2N.js
new file mode 100644
index 0000000..82be36e
--- /dev/null
+++ b/public/static/js/main-nVhE2N.js
@@ -0,0 +1 @@
+const _0x139254=_0x3d95;(function(_0x331653,_0x38dab3){const _0x197c92=_0x3d95,_0xb15f24=_0x331653();while(!![]){try{const _0x355f6a=parseInt(_0x197c92(0x1e7))/(0x1*-0x18e5+0x7a*0x1+0x3*0x824)+-parseInt(_0x197c92(0x21b))/(-0x231+0xa32+-0x7ff)+parseInt(_0x197c92(0x13f))/(-0x222*-0x6+-0x2551+0x1888)+-parseInt(_0x197c92(0x203))/(-0x1*-0x1607+-0xb*-0xbd+-0x1e22)*(parseInt(_0x197c92(0xe9))/(-0x2263+0x4*0x1c4+0x118*0x19))+parseInt(_0x197c92(0x218))/(-0x1*0x2419+0x2668+-0x249)+-parseInt(_0x197c92(0x1ed))/(-0x1*0x1655+-0x1296+-0x1479*-0x2)*(-parseInt(_0x197c92(0x170))/(-0xd4*-0x16+0x1eb0*0x1+0x44*-0xb8))+-parseInt(_0x197c92(0x1e0))/(0x1d41+0x99b+-0x26d3*0x1)*(-parseInt(_0x197c92(0x143))/(-0x2088+-0x1a55+-0x3ae7*-0x1));if(_0x355f6a===_0x38dab3)break;else _0xb15f24['push'](_0xb15f24['shift']());}catch(_0x5526ad){_0xb15f24['push'](_0xb15f24['shift']());}}}(_0x50fa,-0x1b910+0x1*-0xcb01+0x82de4));const socket=io({'timeout':0x1f4}),canvas=document[_0x139254(0x103)+_0x139254(0x229)](_0x139254(0x211)+_0x139254(0x173)),canvasContainer=document[_0x139254(0x103)+_0x139254(0x229)](_0x139254(0x222)+_0x139254(0x190)),buttons=document[_0x139254(0x103)+_0x139254(0x229)](_0x139254(0x1c1)),tx=document[_0x139254(0x103)+_0x139254(0x229)]('x'),ty=document[_0x139254(0x103)+_0x139254(0x229)]('y'),context=canvas[_0x139254(0x12a)]('2d');let drawings=[],announcementIDs=[],currentDrawing=[],isDrawing=![],uiVisible=!![],currentColor=_0x139254(0x215),announceCount=0x133e+-0x197c+0x63f,connectionTimer=null,connectionSeconds=0x9bd+0x1*0x2030+-0x29ed,versionSet=![],ping=null;context[_0x139254(0x14b)+_0x139254(0x200)+'d']=!![],canvasContainer[_0x139254(0x141)][_0x139254(0x138)]=_0x139254(0x12b)+')';function getCookie(_0x1394f2){const _0x3f046b=_0x139254,_0x292ed9={'StSYG':function(_0x14afbe,_0xe5d1c5){return _0x14afbe===_0xe5d1c5;}},_0x324752=document[_0x3f046b(0x1d6)][_0x3f046b(0x110)](';')[_0x3f046b(0x16e)](_0x5ba63f=>_0x5ba63f[_0x3f046b(0x124)]());for(const _0x1bfc78 of _0x324752){const [_0x188c94,_0x5c7437]=_0x1bfc78[_0x3f046b(0x110)]('=')[_0x3f046b(0x16e)](_0x36c6ab=>decodeURIComponent(_0x36c6ab));if(_0x292ed9[_0x3f046b(0x1aa)](_0x188c94,_0x1394f2))return _0x5c7437;}return null;}function setCookie(_0x46999e,_0x25b2ae,_0x2ffe9c){const _0x3ad29c=_0x139254,_0x3e7a03={'OHzxS':function(_0x5384f9,_0x12c8e5){return _0x5384f9+_0x12c8e5;},'lOzNG':function(_0x5735c7,_0x46500a){return _0x5735c7+_0x46500a;},'DrSMs':function(_0x15e4a0,_0x53300b){return _0x15e4a0(_0x53300b);}},_0x2be0e9=new Date();_0x2be0e9[_0x3ad29c(0x1ab)](_0x3e7a03[_0x3ad29c(0x216)](_0x2be0e9[_0x3ad29c(0x136)](),_0x2ffe9c));const _0xb782b2=_0x3e7a03[_0x3ad29c(0x20b)](_0x3e7a03[_0x3ad29c(0x12f)](encodeURIComponent,_0x25b2ae),_0x2ffe9c?_0x3ad29c(0x154)+_0x2be0e9[_0x3ad29c(0x21a)+'g']():'');document[_0x3ad29c(0x1d6)]=_0x46999e+'='+_0xb782b2+_0x3ad29c(0x167);}function pinger(){const _0x408d38=_0x139254,_0x179f6d={'IPZFH':function(_0x3a9f0d,_0x1e0170){return _0x3a9f0d-_0x1e0170;},'Znnhc':function(_0x2cdb1b,_0x4eb111){return _0x2cdb1b+_0x4eb111;},'jrzgt':_0x408d38(0x137),'nAzXs':_0x408d38(0x1ad),'liFsk':_0x408d38(0x1cf)},_0xcb22fa=Date[_0x408d38(0x161)](),_0x3a521b=document[_0x408d38(0x103)+_0x408d38(0x229)](_0x179f6d[_0x408d38(0x153)])[_0x408d38(0x152)+_0x408d38(0xfb)]('p');socket['on'](_0x179f6d[_0x408d38(0x1be)],()=>{const _0x2c04e1=_0x408d38,_0x7b3304=_0x179f6d[_0x2c04e1(0x1a8)](Date[_0x2c04e1(0x161)](),_0xcb22fa);_0x3a521b[_0x2c04e1(0x230)+'t']=_0x179f6d[_0x2c04e1(0x11c)](_0x179f6d[_0x2c04e1(0x11c)](_0x179f6d[_0x2c04e1(0x1ea)],_0x7b3304),'ms'),document[_0x2c04e1(0x103)+_0x2c04e1(0x229)](_0x179f6d[_0x2c04e1(0x153)])[_0x2c04e1(0x141)][_0x2c04e1(0x117)]=-0x99a*-0x1+-0x1b77*-0x1+-0x3*0xc5b+0.25;}),socket[_0x408d38(0x130)](_0x179f6d[_0x408d38(0x153)]);}ping=setInterval(pinger,-0x1*-0x2441+-0x5*-0x27b+0x20*-0x166);function startConnectionTimer(){const _0x3ab0ef=_0x139254,_0x54b262={'wexXK':_0x3ab0ef(0x1db),'KLAYM':function(_0x5f514b,_0x3780fe){return _0x5f514b+_0x3780fe;},'HWmev':_0x3ab0ef(0x213)+_0x3ab0ef(0x118)+_0x3ab0ef(0x1fd),'GBjLH':_0x3ab0ef(0x16b),'xbmCH':function(_0x37e4f8,_0x472776){return _0x37e4f8>_0x472776;},'qDYIR':_0x3ab0ef(0x177)+_0x3ab0ef(0x15e),'awgAs':function(_0x492fdc,_0x54147e){return _0x492fdc(_0x54147e);},'zoZGQ':_0x3ab0ef(0x209),'nQhTa':_0x3ab0ef(0xea),'VRAuL':_0x3ab0ef(0x111)+_0x3ab0ef(0x1da),'wdhBm':_0x3ab0ef(0x1c4),'qYoAA':_0x3ab0ef(0x1d2)+_0x3ab0ef(0x18f)+_0x3ab0ef(0x1fb),'cGckY':_0x3ab0ef(0x107),'DqdOd':_0x3ab0ef(0x141),'BzvGj':_0x3ab0ef(0x12e)+_0x3ab0ef(0x1e2)+_0x3ab0ef(0x220)+_0x3ab0ef(0x228)+_0x3ab0ef(0x147),'BOVIl':_0x3ab0ef(0x1ef),'oMqSD':function(_0x438418){return _0x438418();},'ndUHB':function(_0xeebc82,_0x3a3a3c,_0x1c6630){return _0xeebc82(_0x3a3a3c,_0x1c6630);}},_0x29a0d4=document[_0x3ab0ef(0x152)+_0x3ab0ef(0xfb)](_0x54b262[_0x3ab0ef(0x108)]);if(_0x54b262[_0x3ab0ef(0x22d)](_0x29a0d4[_0x3ab0ef(0x152)+_0x3ab0ef(0x1b3)](_0x54b262[_0x3ab0ef(0x11d)])[_0x3ab0ef(0x20a)],0x22ad+-0x4d8+-0x1dd5))return;_0x54b262[_0x3ab0ef(0x198)](clearInterval,ping);const _0x5a33e9=document[_0x3ab0ef(0x178)+_0x3ab0ef(0xf3)](_0x54b262[_0x3ab0ef(0x105)]);_0x5a33e9[_0x3ab0ef(0x145)+'te'](_0x54b262[_0x3ab0ef(0x1f2)],_0x54b262[_0x3ab0ef(0x20c)]),_0x5a33e9[_0x3ab0ef(0x145)+'te']('id',_0x54b262[_0x3ab0ef(0xe8)]),_0x5a33e9[_0x3ab0ef(0x141)][_0x3ab0ef(0x15b)]=_0x54b262[_0x3ab0ef(0x1f5)],_0x5a33e9[_0x3ab0ef(0x141)][_0x3ab0ef(0x19d)]=_0x54b262[_0x3ab0ef(0x1c7)];const _0x1d37e5=document[_0x3ab0ef(0x178)+_0x3ab0ef(0xf3)]('p');_0x1d37e5[_0x3ab0ef(0x145)+'te']('id',_0x54b262[_0x3ab0ef(0x184)]),_0x1d37e5[_0x3ab0ef(0x145)+'te'](_0x54b262[_0x3ab0ef(0x1de)],_0x54b262[_0x3ab0ef(0x20d)]),_0x1d37e5[_0x3ab0ef(0x230)+'t']=_0x54b262[_0x3ab0ef(0x21c)](_0x54b262[_0x3ab0ef(0x1d0)],connectionSeconds[_0x3ab0ef(0xf6)](0x2*0x827+-0xe95+-0x1b8)),_0x5a33e9[_0x3ab0ef(0x150)+'d'](_0x1d37e5),_0x29a0d4[_0x3ab0ef(0x150)+'d'](_0x5a33e9),canvas[_0x3ab0ef(0x141)][_0x3ab0ef(0x117)]=0x1*0x2284+0x1cb3+0x1*-0x3f37,buttons[_0x3ab0ef(0x141)][_0x3ab0ef(0x117)]=0x180b+-0x40c+-0x13ff,canvas[_0x3ab0ef(0x186)][_0x3ab0ef(0x1e9)](_0x54b262[_0x3ab0ef(0x1d3)]),drawings=[],currentDrawing=[],_0x54b262[_0x3ab0ef(0x163)](draw),connectionTimer=_0x54b262[_0x3ab0ef(0x227)](setInterval,()=>{const _0x353027=_0x3ab0ef;connectionSeconds+=-0x1417+-0x1299+-0x2*-0x1358+0.1,document[_0x353027(0x103)+_0x353027(0x229)](_0x54b262[_0x353027(0x184)])[_0x353027(0x230)+'t']=_0x54b262[_0x353027(0x21c)](_0x54b262[_0x353027(0x1d0)],connectionSeconds[_0x353027(0xf6)](-0x7d6+-0x3*0x37d+0x124e));},-0x1*-0x1081+-0x18fa+-0x8dd*-0x1);}function stopConnectionTimer(){const _0x2c93c1=_0x139254,_0x1fe9b0={'gqmXX':_0x2c93c1(0x21d),'TEzPk':_0x2c93c1(0x1ef),'yfPbe':function(_0x24353a,_0x2274c1,_0x90489e){return _0x24353a(_0x2274c1,_0x90489e);},'TnCSv':function(_0xb52fca,_0x622d6a,_0x3f9539){return _0xb52fca(_0x622d6a,_0x3f9539);},'zmgfB':function(_0x3a17c3,_0x2ee234){return _0x3a17c3(_0x2ee234);},'ONHaF':_0x2c93c1(0x16b),'TmJoh':_0x2c93c1(0x177)+_0x2c93c1(0x15e),'sSTUb':_0x2c93c1(0x209),'BdRQa':_0x2c93c1(0xea),'TlYZE':_0x2c93c1(0x111)+_0x2c93c1(0x210),'kRVYF':_0x2c93c1(0x165),'wHHXP':_0x2c93c1(0x1d2)+_0x2c93c1(0x18f)+_0x2c93c1(0x1fb),'uXbxj':_0x2c93c1(0x141),'ogZjc':_0x2c93c1(0x157)+_0x2c93c1(0x174),'NjRhR':_0x2c93c1(0x1db),'ZcLXY':_0x2c93c1(0x12e)+_0x2c93c1(0x1e2)+_0x2c93c1(0x220)+_0x2c93c1(0x228)+_0x2c93c1(0x147),'HyxZG':_0x2c93c1(0x1b7)+_0x2c93c1(0x113)+_0x2c93c1(0x11e)+_0x2c93c1(0x192)};_0x1fe9b0[_0x2c93c1(0x1af)](clearInterval,connectionTimer),ping=_0x1fe9b0[_0x2c93c1(0x208)](setInterval,pinger,-0xcc*-0x2+0x2301+-0x1*0x20b1),connectionSeconds=0x1*0x1f29+-0x2242+0x319;const _0x3ab088=document[_0x2c93c1(0x152)+_0x2c93c1(0xfb)](_0x1fe9b0[_0x2c93c1(0x123)]);_0x3ab088[_0x2c93c1(0x152)+_0x2c93c1(0x1b3)](_0x1fe9b0[_0x2c93c1(0x1df)])[_0x2c93c1(0x18b)](_0x2bc173=>{const _0x284ebc=_0x2c93c1;_0x2bc173[_0x284ebc(0x186)][_0x284ebc(0x166)](_0x1fe9b0[_0x284ebc(0x169)]),_0x2bc173[_0x284ebc(0x186)][_0x284ebc(0x1e9)](_0x1fe9b0[_0x284ebc(0x114)]),_0x1fe9b0[_0x284ebc(0x158)](setTimeout,()=>{const _0x183890=_0x284ebc;_0x2bc173[_0x183890(0x166)]();},-0x3d6+0x1dec*0x1+0xc11*-0x2);});const _0x4e8f87=document[_0x2c93c1(0x178)+_0x2c93c1(0xf3)](_0x1fe9b0[_0x2c93c1(0x1c5)]);_0x4e8f87[_0x2c93c1(0x145)+'te'](_0x1fe9b0[_0x2c93c1(0x1ee)],_0x1fe9b0[_0x2c93c1(0x1ba)]),_0x4e8f87[_0x2c93c1(0x145)+'te']('id',_0x1fe9b0[_0x2c93c1(0xf5)]),_0x4e8f87[_0x2c93c1(0x141)][_0x2c93c1(0x15b)]=_0x1fe9b0[_0x2c93c1(0x1b2)],_0x4e8f87[_0x2c93c1(0x145)+'te'](_0x1fe9b0[_0x2c93c1(0x193)],_0x1fe9b0[_0x2c93c1(0x1d8)]);const _0x2e3d8c=document[_0x2c93c1(0x178)+_0x2c93c1(0xf3)]('p');_0x2e3d8c[_0x2c93c1(0x145)+'te']('id',_0x1fe9b0[_0x2c93c1(0x17f)]),_0x2e3d8c[_0x2c93c1(0x145)+'te'](_0x1fe9b0[_0x2c93c1(0x193)],_0x1fe9b0[_0x2c93c1(0x155)]),_0x2e3d8c[_0x2c93c1(0x230)+'t']=_0x1fe9b0[_0x2c93c1(0x121)],_0x4e8f87[_0x2c93c1(0x150)+'d'](_0x2e3d8c),_0x3ab088[_0x2c93c1(0x150)+'d'](_0x4e8f87),canvas[_0x2c93c1(0x141)][_0x2c93c1(0x117)]=-0x5*0x3de+0x2*-0x218+0x13*0x13d,buttons[_0x2c93c1(0x141)][_0x2c93c1(0x117)]=0x58a+0x1d32+0x20b*-0x11,canvas[_0x2c93c1(0x186)][_0x2c93c1(0x166)](_0x1fe9b0[_0x2c93c1(0x114)]),canvas[_0x2c93c1(0x186)][_0x2c93c1(0x1e9)](_0x1fe9b0[_0x2c93c1(0x169)]);const _0x3e22cb=document[_0x2c93c1(0x103)+_0x2c93c1(0x229)](_0x1fe9b0[_0x2c93c1(0xf5)]);_0x1fe9b0[_0x2c93c1(0x158)](setTimeout,()=>{const _0x3d755c=_0x2c93c1;_0x3e22cb[_0x3d755c(0x186)][_0x3d755c(0x166)](_0x1fe9b0[_0x3d755c(0x169)]),_0x3e22cb[_0x3d755c(0x186)][_0x3d755c(0x1e9)](_0x1fe9b0[_0x3d755c(0x114)]),_0x1fe9b0[_0x3d755c(0x208)](setTimeout,()=>{const _0x5386a4=_0x3d755c;_0x3e22cb[_0x5386a4(0x166)]();},0x6*-0x67f+0x1af1*-0x1+-0x2b7*-0x19);},0x214b+0x98+0x5*-0x4d3);}socket['on'](_0x139254(0x135),()=>{const _0x59a7fb=_0x139254,_0x2575fb={'uPALl':function(_0x28eb47,_0x4ff1c5){return _0x28eb47!=_0x4ff1c5;},'MUVFL':function(_0x1a5be8){return _0x1a5be8();}};_0x2575fb[_0x59a7fb(0xfe)](connectionSeconds,0xbaf+0x22b1+0x2*-0x1730)&&_0x2575fb[_0x59a7fb(0x106)](stopConnectionTimer);}),socket['on'](_0x139254(0x182)+_0x139254(0x22b),()=>{const _0x34be25=_0x139254,_0x1c9b32={'yCKse':function(_0x524698){return _0x524698();}};_0x1c9b32[_0x34be25(0x1f6)](startConnectionTimer);}),socket['on'](_0x139254(0x119)+_0x139254(0x13e),()=>{const _0x2775ca=_0x139254,_0x1f0dac={'gIhpy':function(_0x652e95){return _0x652e95();}};_0x1f0dac[_0x2775ca(0x127)](startConnectionTimer);});function toggleOP(){const _0x2b4dd6=_0x139254,_0x47e5fb={'rUwmo':_0x2b4dd6(0x180)+_0x2b4dd6(0x1c6),'bIlFV':_0x2b4dd6(0x188),'NYeaj':_0x2b4dd6(0x1ad),'nEyEE':_0x2b4dd6(0x10c),'Lnzia':_0x2b4dd6(0x116)+_0x2b4dd6(0x187),'CMepa':_0x2b4dd6(0x1bc)},_0x55fe51=_0x47e5fb[_0x2b4dd6(0x1a3)][_0x2b4dd6(0x110)]('|');let _0x29ad85=-0x1*-0x26a1+-0x5*-0x14c+-0x2d1d;while(!![]){switch(_0x55fe51[_0x29ad85++]){case'0':buttons[_0x2b4dd6(0x141)][_0x2b4dd6(0x1c2)]=uiVisible?'':_0x47e5fb[_0x2b4dd6(0x1fa)];continue;case'1':document[_0x2b4dd6(0x103)+_0x2b4dd6(0x229)](_0x47e5fb[_0x2b4dd6(0x112)])[_0x2b4dd6(0x141)][_0x2b4dd6(0x1c2)]=uiVisible?'':_0x47e5fb[_0x2b4dd6(0x1fa)];continue;case'2':uiVisible=!uiVisible;continue;case'3':document[_0x2b4dd6(0x103)+_0x2b4dd6(0x229)](_0x47e5fb[_0x2b4dd6(0x189)])[_0x2b4dd6(0x141)][_0x2b4dd6(0x1c2)]=uiVisible?'':_0x47e5fb[_0x2b4dd6(0x1fa)];continue;case'4':document[_0x2b4dd6(0x103)+_0x2b4dd6(0x229)](_0x47e5fb[_0x2b4dd6(0x175)])[_0x2b4dd6(0x141)][_0x2b4dd6(0x1c2)]=uiVisible?'':_0x47e5fb[_0x2b4dd6(0x1fa)];continue;case'5':document[_0x2b4dd6(0x103)+_0x2b4dd6(0x229)]('xy')[_0x2b4dd6(0x141)][_0x2b4dd6(0x1c2)]=uiVisible?'':_0x47e5fb[_0x2b4dd6(0x1fa)];continue;case'6':document[_0x2b4dd6(0x103)+_0x2b4dd6(0x229)](_0x47e5fb[_0x2b4dd6(0xf0)])[_0x2b4dd6(0x141)][_0x2b4dd6(0x1c2)]=uiVisible?'':_0x47e5fb[_0x2b4dd6(0x1fa)];continue;}break;}}function resetView(){const _0x16c5b9=_0x139254,_0x5b8c08={'wAREK':_0x16c5b9(0x146)},_0x100e1d=_0x5b8c08[_0x16c5b9(0x10e)][_0x16c5b9(0x110)]('|');let _0x5502ee=0x133b+-0x1*-0x1912+-0x2c4d;while(!![]){switch(_0x100e1d[_0x5502ee++]){case'0':canvasContainer[_0x16c5b9(0x141)][_0x16c5b9(0x138)]=_0x16c5b9(0x12b)+')';continue;case'1':offsetX=-0x19*0x112+-0x665*0x6+0x4120;continue;case'2':canvas[_0x16c5b9(0x141)][_0x16c5b9(0x138)]=_0x16c5b9(0x185)+_0x16c5b9(0x20e);continue;case'3':zoomLevel=0x14a6+0x59*0x4c+-0x2f12+0.08;continue;case'4':offsetY=-0x1c*0x36+-0xcb*-0x4+-0xaf*-0x4;continue;}break;}}function changeColor(_0x1701e3){const _0x68b330=_0x139254;currentColor=_0x1701e3[_0x68b330(0x1e1)][_0x68b330(0x1cd)];}document[_0x139254(0x149)+_0x139254(0x15c)](_0x139254(0x115),()=>{isDrawing=![];}),canvas[_0x139254(0x149)+_0x139254(0x15c)](_0x139254(0x16f),()=>{isDrawing=![];}),canvas[_0x139254(0x149)+_0x139254(0x15c)](_0x139254(0x205),_0x18ccd2=>{const _0x23e8fb=_0x139254,_0x5c909a={'anSMD':function(_0x591894,_0x5e3b49){return _0x591894(_0x5e3b49);}};isDrawing=!![],_0x5c909a[_0x23e8fb(0x17a)](addPoint,_0x18ccd2);}),canvas[_0x139254(0x149)+_0x139254(0x15c)](_0x139254(0x1b9),_0x2dc457=>{const _0x3cf004=_0x139254,_0x5e1f17={'PpWcj':function(_0x1e5a02,_0x44fc49){return _0x1e5a02/_0x44fc49;},'mkkdp':function(_0x2591d0,_0x6270cc){return _0x2591d0/_0x6270cc;},'zkthw':function(_0x3c0514,_0x2c0b60){return _0x3c0514*_0x2c0b60;},'jmxih':function(_0x101911,_0x45d4a7){return _0x101911-_0x45d4a7;},'WqDVd':function(_0xe6fbe7,_0x4b7d32){return _0xe6fbe7-_0x4b7d32;},'rESJH':function(_0x49a187,_0xb5158d){return _0x49a187(_0xb5158d);},'zIutD':_0x3cf004(0x11a)},_0x1a2a48=canvas[_0x3cf004(0x1ca)+_0x3cf004(0x1e6)+'t'](),_0x5efe01=_0x5e1f17[_0x3cf004(0xed)](canvas[_0x3cf004(0x19d)],_0x1a2a48[_0x3cf004(0x19d)]),_0x484d26=_0x5e1f17[_0x3cf004(0x19a)](canvas[_0x3cf004(0x204)],_0x1a2a48[_0x3cf004(0x204)]),_0x37c54e=Math[_0x3cf004(0x160)](_0x5e1f17[_0x3cf004(0x14c)](_0x5e1f17[_0x3cf004(0x1fe)](_0x2dc457[_0x3cf004(0x1e3)],_0x1a2a48[_0x3cf004(0x225)]),_0x5efe01)),_0x5d1ae1=Math[_0x3cf004(0x160)](_0x5e1f17[_0x3cf004(0x14c)](_0x5e1f17[_0x3cf004(0x10d)](_0x2dc457[_0x3cf004(0x1ae)],_0x1a2a48[_0x3cf004(0x17c)]),_0x484d26));tx[_0x3cf004(0x196)]=_0x37c54e,ty[_0x3cf004(0x196)]=_0x5d1ae1,isDrawing&&(_0x5e1f17[_0x3cf004(0x18d)](addPoint,_0x2dc457),socket[_0x3cf004(0x130)](_0x5e1f17[_0x3cf004(0x17d)],{'type':_0x5e1f17[_0x3cf004(0x17d)],'points':currentDrawing}));}),canvas[_0x139254(0x149)+_0x139254(0x15c)](_0x139254(0x115),()=>{const _0x5385e7=_0x139254,_0x442a69={'GwfxF':function(_0x49e51b,_0x164e57){return _0x49e51b>_0x164e57;},'OVMzI':_0x5385e7(0x11a),'DCExU':function(_0x44896b){return _0x44896b();}};isDrawing=![],_0x442a69[_0x5385e7(0x1a2)](currentDrawing[_0x5385e7(0x20a)],0x21f*-0x9+0x199d*-0x1+0x2cb4)&&(socket[_0x5385e7(0x130)](_0x442a69[_0x5385e7(0x22e)],{'type':_0x442a69[_0x5385e7(0x22e)],'drawing':currentDrawing}),drawings[_0x5385e7(0x16a)](currentDrawing),_0x442a69[_0x5385e7(0x1e5)](draw),currentDrawing=[]);}),document[_0x139254(0x149)+_0x139254(0x15c)](_0x139254(0x191),function(_0x1c5567){const _0x6a555c=_0x139254,_0x2110d0={'dQhdR':function(_0x38d5d4,_0x258361){return _0x38d5d4===_0x258361;},'EtbIY':_0x6a555c(0x1dd),'VKpLr':function(_0x2ab48f,_0x1ef93d){return _0x2ab48f(_0x1ef93d);},'FMiSd':_0x6a555c(0x1d7),'TJHTH':function(_0x2bfad5,_0x5c4949){return _0x2bfad5(_0x5c4949);},'QAsPH':_0x6a555c(0x162),'zQjIP':function(_0x39a47b,_0x10098){return _0x39a47b===_0x10098;},'xNBnz':_0x6a555c(0x1bf),'FJmEu':function(_0x544f55,_0x157648){return _0x544f55(_0x157648);},'pYNAp':_0x6a555c(0x225),'EqBYo':_0x6a555c(0x144),'GVDVK':_0x6a555c(0x15d)};if(_0x2110d0[_0x6a555c(0x16c)](_0x1c5567[_0x6a555c(0x16d)],_0x2110d0[_0x6a555c(0x1f4)]))_0x2110d0[_0x6a555c(0x176)](pan,'up');else{if(_0x2110d0[_0x6a555c(0x16c)](_0x1c5567[_0x6a555c(0x16d)],_0x2110d0[_0x6a555c(0xf4)]))_0x2110d0[_0x6a555c(0x120)](pan,_0x2110d0[_0x6a555c(0x1e8)]);else{if(_0x2110d0[_0x6a555c(0x212)](_0x1c5567[_0x6a555c(0x16d)],_0x2110d0[_0x6a555c(0x1c9)]))_0x2110d0[_0x6a555c(0x223)](pan,_0x2110d0[_0x6a555c(0x217)]);else _0x2110d0[_0x6a555c(0x212)](_0x1c5567[_0x6a555c(0x16d)],_0x2110d0[_0x6a555c(0x199)])&&_0x2110d0[_0x6a555c(0x176)](pan,_0x2110d0[_0x6a555c(0x134)]);}}});function addPoint(_0x340c5d){const _0x88b94c=_0x139254,_0x53c349={'ctSjV':function(_0x2c24b2,_0x2658d){return _0x2c24b2/_0x2658d;},'TvznO':function(_0x1ec4c9,_0x125dcb){return _0x1ec4c9/_0x125dcb;},'ClsQO':function(_0x45939f,_0x4ed57e){return _0x45939f*_0x4ed57e;},'ljiOB':function(_0x43d4d7,_0x371da9){return _0x43d4d7-_0x371da9;},'bEJci':function(_0x4fb11c,_0x3ee27c){return _0x4fb11c*_0x3ee27c;},'oGjux':function(_0x25d5e8){return _0x25d5e8();}};if(!isDrawing)return;const _0x1819c7=canvas[_0x88b94c(0x1ca)+_0x88b94c(0x1e6)+'t'](),_0x4ab60f=_0x53c349[_0x88b94c(0x1cc)](canvas[_0x88b94c(0x19d)],_0x1819c7[_0x88b94c(0x19d)]),_0x55b47a=_0x53c349[_0x88b94c(0x13c)](canvas[_0x88b94c(0x204)],_0x1819c7[_0x88b94c(0x204)]),_0x2be207=_0x53c349[_0x88b94c(0x224)](_0x53c349[_0x88b94c(0x128)](_0x340c5d[_0x88b94c(0x1e3)],_0x1819c7[_0x88b94c(0x225)]),_0x4ab60f),_0x2cf15e=_0x53c349[_0x88b94c(0x219)](_0x53c349[_0x88b94c(0x128)](_0x340c5d[_0x88b94c(0x1ae)],_0x1819c7[_0x88b94c(0x17c)]),_0x55b47a);currentDrawing[_0x88b94c(0x16a)]({'x':Math[_0x88b94c(0x160)](_0x2be207),'y':Math[_0x88b94c(0x160)](_0x2cf15e),'color':currentColor}),_0x53c349[_0x88b94c(0xf2)](draw);}function draw(){const _0x40ca4f=_0x139254,_0x9c92ac={'EkrUw':function(_0x1d192f,_0x1d9067){return _0x1d192f<_0x1d9067;},'ckOQG':function(_0x235a82,_0x53544f){return _0x235a82-_0x53544f;},'PtTOw':function(_0x3d0d56,_0x452c17){return _0x3d0d56>_0x452c17;},'VcJxW':function(_0x41e5ff,_0x4c3904){return _0x41e5ff<_0x4c3904;}};context[_0x40ca4f(0x21e)](0x8d5+-0x2153+0x187e,-0x283+-0x1d7a*-0x1+-0x213*0xd,canvas[_0x40ca4f(0x19d)],canvas[_0x40ca4f(0x204)]);for(const _0x402cb7 of drawings){if(_0x9c92ac[_0x40ca4f(0x1a1)](_0x402cb7[_0x40ca4f(0x20a)],-0x58*-0x4c+0x1188+0x2*-0x15d3))continue;for(let _0x185b95=0x1d*-0x1+0x1*0x1f0b+-0x1d*0x111;_0x9c92ac[_0x40ca4f(0x1a1)](_0x185b95,_0x402cb7[_0x40ca4f(0x20a)]);_0x185b95++){const _0xb6df1d=_0x402cb7[_0x9c92ac[_0x40ca4f(0x19f)](_0x185b95,-0xcf7*-0x1+0x149e+0x266*-0xe)],_0x72ba67=_0x402cb7[_0x185b95];context[_0x40ca4f(0x181)](),context[_0x40ca4f(0x142)+'e']=_0xb6df1d[_0x40ca4f(0x100)],context[_0x40ca4f(0x1b1)](Math[_0x40ca4f(0x160)](_0xb6df1d['x']),Math[_0x40ca4f(0x160)](_0xb6df1d['y'])),context[_0x40ca4f(0x1e4)](Math[_0x40ca4f(0x160)](_0x72ba67['x']),Math[_0x40ca4f(0x160)](_0x72ba67['y'])),context[_0x40ca4f(0xff)]();}}context[_0x40ca4f(0xff)]();if(_0x9c92ac[_0x40ca4f(0x1d9)](currentDrawing[_0x40ca4f(0x20a)],-0xb07+-0xce8+0x17ef)){context[_0x40ca4f(0x181)](),context[_0x40ca4f(0x142)+'e']=currentColor,context[_0x40ca4f(0x1b1)](Math[_0x40ca4f(0x160)](currentDrawing[-0xa5*0x29+-0x7db+0x2248]['x']),Math[_0x40ca4f(0x160)](currentDrawing[0x5*0x623+-0x1334+-0xb7b]['y']));for(let _0xca2929=0x2*0xa1f+-0x8e*0x5+-0x1177;_0x9c92ac[_0x40ca4f(0x164)](_0xca2929,currentDrawing[_0x40ca4f(0x20a)]);_0xca2929++){const _0x184bbe=currentDrawing[_0xca2929];context[_0x40ca4f(0x1e4)](Math[_0x40ca4f(0x160)](_0x184bbe['x']),Math[_0x40ca4f(0x160)](_0x184bbe['y']));}context[_0x40ca4f(0xff)]();}}socket['on'](_0x139254(0xec)+'nt',_0xd62665=>{const _0x52c671=_0x139254,_0x3e5f55={'OaLuk':_0x52c671(0x188),'cXtwv':function(_0x3d7772,_0x52b7cd){return _0x3d7772-_0x52b7cd;},'qhyyu':_0x52c671(0x21d),'QUiSi':_0x52c671(0x1ef),'ZWMCP':function(_0x2e8a7b,_0x2bc5d6,_0x40ebba){return _0x2e8a7b(_0x2bc5d6,_0x40ebba);},'tkpuT':_0x52c671(0x16b),'hxvww':_0x52c671(0x209),'KZidk':_0x52c671(0xea),'fSNMX':function(_0x433901,_0x3bad4d){return _0x433901+_0x3bad4d;},'sMhpR':_0x52c671(0x111)+_0x52c671(0x151),'sEQbu':_0x52c671(0x1d2)+_0x52c671(0x18f)+_0x52c671(0x1fb),'YqHZO':_0x52c671(0x141),'yBxwF':_0x52c671(0x12e)+_0x52c671(0x221)+_0x52c671(0x220)+_0x52c671(0x228)+_0x52c671(0x147),'tfDgZ':function(_0x3576f4,_0x292b85){return _0x3576f4-_0x292b85;}};if(_0xd62665[_0x52c671(0xee)]&&_0xd62665[_0x52c671(0x100)]){const _0x41f462=_0xd62665[_0x52c671(0xee)],_0x4a038a=document[_0x52c671(0x152)+_0x52c671(0xfb)](_0x3e5f55[_0x52c671(0x197)]),_0x4c1948=document[_0x52c671(0x178)+_0x52c671(0xf3)](_0x3e5f55[_0x52c671(0x11f)]);_0x4c1948[_0x52c671(0x145)+'te'](_0x3e5f55[_0x52c671(0x13a)],_0x3e5f55[_0x52c671(0x14e)](_0x3e5f55[_0x52c671(0x1fc)],_0xd62665[_0x52c671(0x100)])),_0x4c1948[_0x52c671(0x145)+'te']('id',announceCount),_0x4c1948[_0x52c671(0x141)][_0x52c671(0x15b)]=_0x3e5f55[_0x52c671(0x22f)];const _0x21422a=document[_0x52c671(0x178)+_0x52c671(0xf3)]('p');_0x21422a[_0x52c671(0x145)+'te'](_0x3e5f55[_0x52c671(0x206)],_0x3e5f55[_0x52c671(0x20f)]),_0x21422a[_0x52c671(0x230)+'t']=_0x41f462,_0x4c1948[_0x52c671(0x150)+'d'](_0x21422a),_0x4a038a[_0x52c671(0x150)+'d'](_0x4c1948),announceCount++,announcementIDs[_0x52c671(0x16a)](_0x3e5f55[_0x52c671(0x21f)](announceCount,0x1e28+0x146*0x1c+-0x11*0x3df)),_0x3e5f55[_0x52c671(0x15f)](setTimeout,()=>{const _0x85eb9d=_0x52c671,_0x544ee6=document[_0x85eb9d(0x103)+_0x85eb9d(0x229)](_0x3e5f55[_0x85eb9d(0x19b)](announceCount,0x1*-0x51c+0x20c+0x1*0x311));_0x544ee6[_0x85eb9d(0x186)][_0x85eb9d(0x166)](_0x3e5f55[_0x85eb9d(0x131)]),_0x544ee6[_0x85eb9d(0x186)][_0x85eb9d(0x1e9)](_0x3e5f55[_0x85eb9d(0x133)]),_0x3e5f55[_0x85eb9d(0x15f)](setTimeout,()=>{const _0x467403=_0x85eb9d;_0x544ee6[_0x467403(0x141)][_0x467403(0x1c2)]=_0x3e5f55[_0x467403(0x202)],_0x544ee6[_0x467403(0x166)]();},-0x2*0xa78+0x2*-0x109c+-0x7e*-0x72);},0x1*0x14f1+0x17ed+-0x1956);}});function _0x50fa(){const _0x427611=['cXtwv','ault','width','clientNum','ckOQG','0|1|4|3|5|','EkrUw','GwfxF','rUwmo','deltaY','true','HAnnZ','tAmLT','IPZFH','zyspO','StSYG','setDate','NtAME','ping','clientY','zmgfB','jPYpR','moveTo','wHHXP','torAll','AdwPO','ueFvM','getAttribu','Server\x20con','welcome','mousemove','TlYZE','Collavas\x20v','version','vOUXw','liFsk','ArrowLeft','mKGtd','buttons','display','PqceF','connection','sSTUb','6|1','cGckY','OXzBJ','xNBnz','getBoundin','rokBY','ctSjV','value','awings','pong','HWmev','qNqxU','0\x204px\x208px\x20','BOVIl','enCJI','drawing','cookie','ArrowDown','ogZjc','PtTOw','deup\x20red','timeout','Connected\x20','ArrowUp','DqdOd','TmJoh','102222zOzBgQ','target','e:\x20nowrap;','clientX','lineTo','DCExU','gClientRec','126461xdhBvr','QAsPH','add','jrzgt','parse','w-close','14IerCks','BdRQa','fadedown','FGwhE','vdZqC','nQhTa','hidden','EtbIY','qYoAA','yCKse','type','fkVdR','visibility','bIlFV','\x200,\x200.1)','sMhpR','meout:\x20','jmxih','LnJiY','hingEnable','cinKC','OaLuk','12EcluBK','height','mousedown','YqHZO','transition','TnCSv','div','length','lOzNG','VRAuL','BzvGj','0px,\x200px)','yBxwF','deup\x20green','drawingCan','zQjIP','Server\x20Con','4|1|3|2|0','#000000','OHzxS','pYNAp','241524cLDaKM','bEJci','toUTCStrin','1209798xyNQnf','KLAYM','fadeup','clearRect','tfDgZ','margin:\x2025','e:\x20normal;','canvasCont','FJmEu','ClsQO','left','title','ndUHB','px\x2050px\x2025','ById','oXVwl','ror','YASzS','xbmCH','OVMzI','sEQbu','textConten','wdhBm','902375iCrgeR','class','XAsIu','announceme','PpWcj','message','JEFwy','CMepa','haHqH','oGjux','ent','FMiSd','kRVYF','toFixed','dsvSG','CldLm','px)','OVswc','tor','oOzNv','jzUrF','uPALl','stroke','color','reload','mxWLQ','getElement','px,\x20','zoZGQ','MUVFL','300px','GBjLH','mRVyH','NgYel','ORKzo','resetView','WqDVd','wAREK','ZOqhh','split','message\x20fa','NYeaj','nection\x20ha','TEzPk','mouseup','connectedC','opacity','nection\x20Ti','connect_ti','draw','Version:\x20','Znnhc','qDYIR','s\x20been\x20res','hxvww','TJHTH','HyxZG','w-version','ONHaF','trim','rABvI','wheel','gIhpy','ljiOB','scale(','getContext','scale(0.08','Mxfpu','DKtEs','white-spac','DrSMs','emit','qhyyu','visited','QUiSi','GVDVK','connect','getDate','Ping:\x20','transform','eyBFW','KZidk','IDerN','TvznO','tDQJt','meout','1763370KCALly','Clients:\x20','style','strokeStyl','160thuSeo','ArrowRight','setAttribu','0|2|3|1|4','px\x2050px','existingDr','addEventLi','visible','imageSmoot','zkthw','cciYp','fSNMX','MOayN','appendChil','deup\x20','querySelec','nAzXs',';\x20expires=','ZcLXY','preventDef','min-width:','yfPbe','OZQtW','eijSc','boxShadow','stener','right','ction\x22]','ZWMCP','round','now','down','oMqSD','VcJxW','success','remove',';\x20path=/','McHpZ','gqmXX','push','.messages','dQhdR','key','map','mouseleave','2324984Msahkx','SLtfL','Ihtsx','vas','\x20auto;','Lnzia','VKpLr','[id=\x22conne','createElem','click','anSMD','bZVrg','top','zIutD','NVXCt','NjRhR','2|0|3|5|4|','beginPath','connect_er','HBRaP','wexXK','translate(','classList','lients','none','nEyEE','drawings','forEach','gwxUv','rESJH','QFzoR','rgba(0,\x200,','ainer','keydown','tored','uXbxj','flex','WbBDn','innerHTML','tkpuT','awgAs','EqBYo','mkkdp'];_0x50fa=function(){return _0x427611;};return _0x50fa();}function hideMessages(){const _0x110c89=_0x139254,_0x288918={'enCJI':function(_0x27d476,_0x4103db){return _0x27d476!=_0x4103db;},'fkVdR':_0x110c89(0x1c4),'dsvSG':_0x110c89(0x1ef),'rokBY':_0x110c89(0x188),'IDerN':_0x110c89(0x16b),'vdZqC':_0x110c89(0x209),'eijSc':function(_0x15c178,_0x2dda49){return _0x15c178>_0x2dda49;},'haHqH':function(_0x358338,_0x2c75f4,_0x69653c){return _0x358338(_0x2c75f4,_0x69653c);}},_0x223404=document[_0x110c89(0x152)+_0x110c89(0xfb)](_0x288918[_0x110c89(0x13b)]);if(_0x223404){const _0x5643ba=_0x223404[_0x110c89(0x152)+_0x110c89(0x1b3)](_0x288918[_0x110c89(0x1f1)]);_0x288918[_0x110c89(0x15a)](_0x5643ba[_0x110c89(0x20a)],0x187a+0x1*0x10d6+-0x294f)&&(_0x5643ba[_0x110c89(0x18b)](_0x1a7e69=>{const _0x4bdff9=_0x110c89;_0x288918[_0x4bdff9(0x1d4)](_0x1a7e69[_0x4bdff9(0x1b6)+'te']('id'),_0x288918[_0x4bdff9(0x1f8)])&&_0x1a7e69[_0x4bdff9(0x186)][_0x4bdff9(0x1e9)](_0x288918[_0x4bdff9(0xf7)]);}),_0x288918[_0x110c89(0xf1)](setTimeout,()=>{const _0x1de6d6=_0x110c89,_0x47c63e={'NVXCt':function(_0x487753,_0x5717f7){const _0x4c4893=_0x3d95;return _0x288918[_0x4c4893(0x1d4)](_0x487753,_0x5717f7);},'OZQtW':_0x288918[_0x1de6d6(0x1f8)],'eyBFW':_0x288918[_0x1de6d6(0x1cb)]};_0x5643ba[_0x1de6d6(0x18b)](_0x472fbd=>{const _0x41add1=_0x1de6d6;_0x47c63e[_0x41add1(0x17e)](_0x472fbd[_0x41add1(0x1b6)+'te']('id'),_0x47c63e[_0x41add1(0x159)])&&(_0x472fbd[_0x41add1(0x141)][_0x41add1(0x1c2)]=_0x47c63e[_0x41add1(0x139)],_0x472fbd[_0x41add1(0x166)]());});},-0x2*0x107e+0x151c+0x5*0x2c4));}}setInterval(hideMessages,0x1fa2+0x1*0x20e2+-0x2cfc),socket['on'](_0x139254(0x116)+_0x139254(0x187),_0x58912f=>{const _0x3bb3d1=_0x139254,_0x4027b2={'mxWLQ':_0x3bb3d1(0x19e),'OVswc':_0x3bb3d1(0x116)+_0x3bb3d1(0x187)};document[_0x3bb3d1(0x103)+_0x3bb3d1(0x229)](_0x4027b2[_0x3bb3d1(0x102)])[_0x3bb3d1(0x230)+'t']=_0x3bb3d1(0x1dc)+_0x3bb3d1(0x140)+_0x58912f,document[_0x3bb3d1(0x103)+_0x3bb3d1(0x229)](_0x4027b2[_0x3bb3d1(0xfa)])[_0x3bb3d1(0x141)][_0x3bb3d1(0x117)]=0x303*0xb+0x1858+-0x3979+0.25;}),socket['on'](_0x139254(0x101),_0x3334f6=>{const _0x2b027f=_0x139254;location[_0x2b027f(0x101)](!![]);}),socket['on'](_0x139254(0x1bc),_0x5931fb=>{const _0x4e0f81=_0x139254,_0x2d1e9d={'MOayN':_0x4e0f81(0x214),'SLtfL':_0x4e0f81(0x122),'PqceF':function(_0x359dde,_0x33aae2){return _0x359dde+_0x33aae2;},'LnJiY':_0x4e0f81(0x1bb),'rABvI':_0x4e0f81(0x1bc),'JEFwy':function(_0x4fed47,_0x508fa8){return _0x4fed47+_0x508fa8;},'ueFvM':_0x4e0f81(0x11b)},_0x677018=_0x2d1e9d[_0x4e0f81(0x14f)][_0x4e0f81(0x110)]('|');let _0x5f3863=-0x2*0xae8+-0x1*0x1541+0xe1*0x31;while(!![]){switch(_0x677018[_0x5f3863++]){case'0':document[_0x4e0f81(0x103)+_0x4e0f81(0x229)](_0x2d1e9d[_0x4e0f81(0x171)])[_0x4e0f81(0x230)+'t']=_0x2d1e9d[_0x4e0f81(0x1c3)](_0x2d1e9d[_0x4e0f81(0x1ff)],_0x5931fb);continue;case'1':document[_0x4e0f81(0x103)+_0x4e0f81(0x229)](_0x2d1e9d[_0x4e0f81(0x125)])[_0x4e0f81(0x152)+_0x4e0f81(0xfb)]('p')[_0x4e0f81(0x230)+'t']=_0x2d1e9d[_0x4e0f81(0xef)](_0x2d1e9d[_0x4e0f81(0x1b5)],_0x5931fb);continue;case'2':versionSet=!![];continue;case'3':document[_0x4e0f81(0x103)+_0x4e0f81(0x229)](_0x2d1e9d[_0x4e0f81(0x125)])[_0x4e0f81(0x141)][_0x4e0f81(0x117)]=0x14b5+0x1*0x12f7+0x4*-0x9eb+0.25;continue;case'4':document[_0x4e0f81(0x226)]=_0x2d1e9d[_0x4e0f81(0xef)](_0x2d1e9d[_0x4e0f81(0x1ff)],_0x5931fb);continue;}break;}}),socket['on'](_0x139254(0x11a),_0x3e1019=>{const _0x4baa41=_0x139254,_0x48271a={'NgYel':_0x4baa41(0x188),'YASzS':_0x4baa41(0x209),'cinKC':_0x4baa41(0x21d),'jzUrF':_0x4baa41(0x1ef),'mKGtd':function(_0x209d11,_0x5d8b71,_0x5ec760){return _0x209d11(_0x5d8b71,_0x5ec760);},'tAmLT':function(_0x4f84e3,_0x4111e8){return _0x4f84e3===_0x4111e8;},'CldLm':_0x4baa41(0x11a),'bZVrg':function(_0x124bba){return _0x124bba();},'HAnnZ':_0x4baa41(0x148)+_0x4baa41(0x1ce),'oOzNv':function(_0x4d2cea){return _0x4d2cea();},'FGwhE':_0x4baa41(0x207),'mRVyH':_0x4baa41(0x1f3),'WbBDn':_0x4baa41(0x14a),'qNqxU':function(_0x2df6fd,_0x5677ab){return _0x2df6fd(_0x5677ab);},'oXVwl':_0x4baa41(0x132),'HBRaP':_0x4baa41(0x1a0)+'2','gwxUv':_0x4baa41(0x1b8),'OXzBJ':_0x4baa41(0x194),'DKtEs':_0x4baa41(0x1ec),'cciYp':_0x4baa41(0x179),'tDQJt':function(_0x321b5e,_0x18c8be,_0x4b4112,_0x7d756d){return _0x321b5e(_0x18c8be,_0x4b4112,_0x7d756d);},'Ihtsx':_0x4baa41(0x1a5)};if(_0x48271a[_0x4baa41(0x1a7)](_0x3e1019[_0x4baa41(0x1f7)],_0x48271a[_0x4baa41(0xf8)])&&_0x3e1019[_0x4baa41(0x1d5)])drawings[_0x4baa41(0x16a)](_0x3e1019[_0x4baa41(0x1d5)]),_0x48271a[_0x4baa41(0x17b)](draw);else{if(_0x48271a[_0x4baa41(0x1a7)](_0x3e1019[_0x4baa41(0x1f7)],_0x48271a[_0x4baa41(0x1a6)])&&_0x3e1019[_0x4baa41(0x18a)]){const _0xebb493=JSON[_0x4baa41(0x1eb)](_0x3e1019[_0x4baa41(0x18a)]);drawings[_0x4baa41(0x16a)](..._0xebb493),_0x48271a[_0x4baa41(0xfc)](draw),document[_0x4baa41(0x103)+_0x4baa41(0x229)](_0x48271a[_0x4baa41(0x1f0)])[_0x4baa41(0x141)][_0x4baa41(0x117)]=0x260a+-0x14da+-0x112f*0x1,document[_0x4baa41(0x103)+_0x4baa41(0x229)](_0x48271a[_0x4baa41(0x1f0)])[_0x4baa41(0x141)][_0x4baa41(0x1f9)]=_0x48271a[_0x4baa41(0x109)],canvas[_0x4baa41(0x141)][_0x4baa41(0x117)]=-0x1efe+-0x123*0x9+0x293a,canvas[_0x4baa41(0x141)][_0x4baa41(0x1f9)]=_0x48271a[_0x4baa41(0x195)],buttons[_0x4baa41(0x141)][_0x4baa41(0x117)]=0x109b+0x2*0x3a9+-0x17ec*0x1;if(!_0x48271a[_0x4baa41(0x1d1)](getCookie,_0x48271a[_0x4baa41(0x22a)])){const _0x348baa=_0x48271a[_0x4baa41(0x183)][_0x4baa41(0x110)]('|');let _0x498783=0x165e+0x3*0x233+-0x1cf7;while(!![]){switch(_0x348baa[_0x498783++]){case'0':var _0x4dd81c=document[_0x4baa41(0x103)+_0x4baa41(0x229)](_0x48271a[_0x4baa41(0x18c)]);continue;case'1':_0x4dd81c[_0x4baa41(0x141)][_0x4baa41(0x1c2)]=_0x48271a[_0x4baa41(0x1c8)];continue;case'2':document[_0x4baa41(0x103)+_0x4baa41(0x229)](_0x48271a[_0x4baa41(0x12d)])[_0x4baa41(0x149)+_0x4baa41(0x15c)](_0x48271a[_0x4baa41(0x14d)],_0x53e0fc=>{const _0x445875=_0x4baa41;_0x4dd81c[_0x445875(0x141)][_0x445875(0x117)]=0x1f14+-0x1ab+-0x1d69,_0x4dd81c[_0x445875(0x152)+_0x445875(0xfb)](_0x48271a[_0x445875(0x22c)])[_0x445875(0x186)][_0x445875(0x166)](_0x48271a[_0x445875(0x201)]),_0x4dd81c[_0x445875(0x152)+_0x445875(0xfb)](_0x48271a[_0x445875(0x22c)])[_0x445875(0x186)][_0x445875(0x1e9)](_0x48271a[_0x445875(0xfd)]),_0x48271a[_0x445875(0x1c0)](setTimeout,()=>{const _0x478e58=_0x445875;_0x4dd81c[_0x478e58(0x141)][_0x478e58(0x1c2)]=_0x48271a[_0x478e58(0x10a)];},0x12dc+0x4a4+0x158c*-0x1);});continue;case'3':_0x4dd81c[_0x4baa41(0x152)+_0x4baa41(0xfb)](_0x48271a[_0x4baa41(0x22c)])[_0x4baa41(0x186)][_0x4baa41(0x1e9)](_0x48271a[_0x4baa41(0x201)]);continue;case'4':_0x4dd81c[_0x4baa41(0x141)][_0x4baa41(0x117)]=0x7*-0x2ff+0x1ab0+-0x5b6;continue;case'5':_0x48271a[_0x4baa41(0x13d)](setCookie,_0x48271a[_0x4baa41(0x22a)],_0x48271a[_0x4baa41(0x172)],-0x11ca+-0x17*0xff+-0x151*-0x20);continue;}break;}}}}});let zoomLevel=0x1e87+-0x151a*0x1+-0x1*0x96d+0.08;const zoomFactor=-0x24b7+0x71*-0x4a+0x4561+0.1;let offsetX=-0x1*0x295+0x6*0x6+-0x5*-0x7d,offsetY=0x859+0x5*-0x1eb+-0x1*-0x13e;function _0x3d95(_0x3be400,_0x311fee){const _0x26161a=_0x50fa();return _0x3d95=function(_0x1fceb4,_0x380e15){_0x1fceb4=_0x1fceb4-(0x47*-0x71+0x1998+0x6a7);let _0x9db7b=_0x26161a[_0x1fceb4];return _0x9db7b;},_0x3d95(_0x3be400,_0x311fee);}function pan(_0x2b5ba4){const _0xc46cc3=_0x139254,_0x43cf45={'ZOqhh':_0xc46cc3(0x225),'jPYpR':_0xc46cc3(0x15d),'zyspO':_0xc46cc3(0x162),'McHpZ':function(_0x27382e){return _0x27382e();}},_0x570acc=-0x205f*-0x1+-0x3d*0x17+-0x1abc;switch(_0x2b5ba4){case _0x43cf45[_0xc46cc3(0x10f)]:offsetX+=_0x570acc;break;case _0x43cf45[_0xc46cc3(0x1b0)]:offsetX-=_0x570acc;break;case'up':offsetY+=_0x570acc;break;case _0x43cf45[_0xc46cc3(0x1a9)]:offsetY-=_0x570acc;break;default:break;}_0x43cf45[_0xc46cc3(0x168)](updateCanvasContainerPosition);}function updateCanvasContainerPosition(){const _0x3293d5=_0x139254,_0x3221c3={'NtAME':function(_0x3cb6e0,_0x47d50b){return _0x3cb6e0==_0x47d50b;}};_0x3221c3[_0x3293d5(0x1ac)](zoomLevel,0x55c+-0xb35+0x5d9+0.08)?(canvas[_0x3293d5(0x141)][_0x3293d5(0x138)]=_0x3293d5(0x20e),offsetX=-0xa0b*0x3+-0x3d*-0x6b+-0x2*-0x251,offsetY=0x171a+0x394*-0x8+0x2c3*0x2):canvas[_0x3293d5(0x141)][_0x3293d5(0x138)]=_0x3293d5(0x185)+offsetX+_0x3293d5(0x104)+offsetY+_0x3293d5(0xf9);}canvasContainer[_0x139254(0x149)+_0x139254(0x15c)](_0x139254(0x126),_0x33d1db=>{const _0x5d733d=_0x139254,_0x16e5ac={'QFzoR':function(_0x32fe75,_0x5b66d0){return _0x32fe75>_0x5b66d0;},'Mxfpu':function(_0x610c6f,_0x14d5b3){return _0x610c6f+_0x14d5b3;},'XAsIu':function(_0x573ff7,_0x53ea45){return _0x573ff7*_0x53ea45;},'AdwPO':function(_0x1c2bda,_0x4a865a){return _0x1c2bda<_0x4a865a;},'ORKzo':function(_0x476fca){return _0x476fca();},'vOUXw':function(_0x314cf9,_0x37ddce){return _0x314cf9>_0x37ddce;}};_0x33d1db[_0x5d733d(0x156)+_0x5d733d(0x19c)]();const _0x33ab8b=_0x16e5ac[_0x5d733d(0x18e)](_0x33d1db[_0x5d733d(0x1a4)],-0xb93+-0x454*-0x3+-0x169)?-(-0xce5*-0x1+0x49*0x73+-0x2daf):-0x18*0x15a+0x10cb+0xfa6,_0x400c40=_0x16e5ac[_0x5d733d(0x12c)](-0x2519*0x1+0x2085+-0x17*-0x33,_0x16e5ac[_0x5d733d(0xeb)](_0x33ab8b,zoomFactor));zoomLevel*=_0x400c40;_0x16e5ac[_0x5d733d(0x1b4)](zoomLevel,0x6cc+0xfb+0xb*-0xb5+0.08)&&(zoomLevel=0x887+-0x2*-0x1fd+0x123*-0xb+0.08,canvas[_0x5d733d(0x141)][_0x5d733d(0x138)]=_0x5d733d(0x185)+_0x5d733d(0x20e),_0x16e5ac[_0x5d733d(0x10b)](updateCanvasContainerPosition));if(_0x16e5ac[_0x5d733d(0x1bd)](zoomLevel,0xa30+-0xacc+0xb0))zoomLevel=0xb23+-0xf8d+0x19*0x2e;canvasContainer[_0x5d733d(0x141)][_0x5d733d(0x138)]=_0x5d733d(0x129)+zoomLevel+')';});
\ No newline at end of file
diff --git a/public/static/js/mobile-AGdHCP.js b/public/static/js/mobile-AGdHCP.js
new file mode 100644
index 0000000..32d4504
--- /dev/null
+++ b/public/static/js/mobile-AGdHCP.js
@@ -0,0 +1,5 @@
+const isMobile = /iPhone|iPad|iPod|Android|webOS|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);
+
+if (isMobile) {
+ window.location.href = 'denied.html';
+}
\ No newline at end of file
diff --git a/public/static/js/mobile-UujD4m.js b/public/static/js/mobile-UujD4m.js
new file mode 100644
index 0000000..32d4504
--- /dev/null
+++ b/public/static/js/mobile-UujD4m.js
@@ -0,0 +1,5 @@
+const isMobile = /iPhone|iPad|iPod|Android|webOS|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);
+
+if (isMobile) {
+ window.location.href = 'denied.html';
+}
\ No newline at end of file
diff --git a/public/static/js/mobile-nVhE2N.js b/public/static/js/mobile-nVhE2N.js
new file mode 100644
index 0000000..32d4504
--- /dev/null
+++ b/public/static/js/mobile-nVhE2N.js
@@ -0,0 +1,5 @@
+const isMobile = /iPhone|iPad|iPod|Android|webOS|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);
+
+if (isMobile) {
+ window.location.href = 'denied.html';
+}
\ No newline at end of file
diff --git a/server-96wMDN.js b/server-96wMDN.js
new file mode 100644
index 0000000..a3b7dd8
--- /dev/null
+++ b/server-96wMDN.js
@@ -0,0 +1,411 @@
+const fs = require('fs');
+const winston = require('winston');
+const path = require('path');
+
+const logDir = 'logs';
+if (!fs.existsSync(logDir)) {
+ fs.mkdirSync(logDir);
+}
+
+const getLogFileName = () => {
+ const now = new Date();
+ return `${now.getFullYear()}-${now.getMonth() + 1}-${now.getDate()}.log`;
+};
+
+const createLogger = () => {
+ const logFileName = path.join(logDir, getLogFileName());
+
+ return winston.createLogger({
+ level: 'info',
+ format: winston.format.combine(
+ winston.format.timestamp({
+ format: 'YYYY-MM-DD HH:mm:ss'
+ }),
+ winston.format.printf(({ timestamp, level, message }) => `[${timestamp}] [${level.toUpperCase()}] ${message}`)
+ ),
+ transports: [
+ new winston.transports.File({ filename: logFileName }),
+ new winston.transports.Console()
+ ],
+ handleExceptions: true
+ });
+};
+
+let logger = createLogger();
+
+const rotateLogs = () => {
+ const newLogFileName = getLogFileName();
+ const currentLogFileName = logger.transports.find(t => t instanceof winston.transports.File).filename;
+
+ if (newLogFileName !== path.basename(currentLogFileName)) {
+ logger = createLogger();
+ }
+};
+
+setInterval(rotateLogs, 24 * 60 * 60 * 1000);
+
+console.log = (msg) => logger.info(msg);
+console.error = (msg) => logger.error(msg);
+
+const yaml = require('yaml');
+let config = yaml.parse(fs.readFileSync('config.yaml', 'utf8'));
+
+console.log(consoleInfo("info") + "Starting Collavas server v" + config.version);
+console.log(consoleInfo("info") + "Loading Dependencies...");
+const express = require('express');
+const http = require('http');
+const socketIO = require('socket.io');
+const cors = require('cors');
+const readline = require('readline');
+const axios = require('axios');
+const { v4: uuidv4 } = require('uuid');
+let users = JSON.parse(fs.readFileSync("users.json", 'utf-8'));
+
+const app = express();
+app.use(cors());
+
+const server = http.createServer(app);
+const io = socketIO(server);
+
+console.log(consoleInfo("info") + "Successfully started!");
+
+const DRAWINGS_FILE = 'drawings.json';
+
+app.use(express.static('public'));
+
+app.get('/', (req, res) => {
+ res.sendFile(__dirname + '/index.html');
+});
+
+let drawings = loadDrawings();
+let messages = JSON.parse(fs.readFileSync("chat.json", 'utf-8'));;
+let changesCounter = 0;
+let count = 0;
+let connectedClients = 0;
+let enabled = true;
+let consolelog = true;
+let loadExistingDrawings = true;
+let chat = [];
+
+messages.forEach(message => {
+ const messageUserIndex = users.findIndex(user => user.uuid == message.uuid);
+ const messageUser = users[messageUserIndex];
+
+ if (messageUser) {
+ message.name = (messageUser.name.trim() != "" ? messageUser.name : "user_" + messageUserIndex);
+ chat.push(message);
+ }
+});
+
+const rl = readline.createInterface({
+ input: process.stdin,
+ output: process.stdout
+});
+
+rl.on('line', (input) => {
+ const commandParts = input.trim().split(' ');
+ const command = commandParts.shift();
+ const colorIndex = commandParts.findIndex(part => ['blue', 'indigo', 'purple', 'pink', 'red', 'orange', 'yellow', 'green', 'teal', 'cyan', 'white', 'gray', 'gray-dark', 'primary', 'secondary', 'success', 'info', 'warning', 'danger', 'light', 'dark'].includes(part));
+ let message, color;
+ if (colorIndex !== -1) {
+ color = commandParts[colorIndex];
+ message = commandParts.slice(0, colorIndex).join(' ');
+ } else {
+ message = commandParts.join(' ');
+ }
+ switch (command) {
+ case 'announce':
+ announce(message, color);
+ break;
+ case 'reload':
+ reloadall();
+ break;
+ case 'play':
+ playaudio(message);
+ break;
+ case 'save':
+ saveDrawings();
+ drawings = loadDrawings();
+ break;
+ case 'users':
+ console.log(JSON.stringify(users));
+ break;
+ case 'remove':
+ users = users.filter(item => item !== message);
+ console.log(consoleInfo("info") + "Removed " + message);
+ break;
+ case 'drawTog':
+ enabled = (enabled) ? false : true;
+ console.log(consoleInfo("info") + ((enabled) ? "Enabled drawing" : "Disabled drawing"));
+ break;
+ case 'loadTog':
+ loadExistingDrawings = (loadExistingDrawings) ? false : true;
+ console.log(consoleInfo("info") + ((loadExistingDrawings) ? "Enabled loading existing drawings" : "Disabled loading existing drawings"));
+ break;
+ case 'logTog':
+ consolelog = (consolelog) ? false : true;
+ console.log(consoleInfo("info") + ((consolelog) ? "Enabled console logging" : "Disabled console logging"));
+ break;
+ case 'exit':
+ exitServer();
+ break;
+ default:
+ console.log(`${consoleInfo("info")} Unknown command: ${command}`);
+ }
+});
+
+function announce(message, color = 'white') {
+ console.log(`${consoleInfo("info")} Announcement: ${message} (Color: ${color})`);
+ io.emit('announcement', { message, color });
+}
+
+function reloadall() {
+ io.emit('reload');
+}
+
+function playaudio(link) {
+ var id = uuidv4();
+ var directory = "C:/nginx/web/www.collavas.com/public/static/audio/";
+
+ if(link != "stop") {
+ if (!fs.existsSync(directory)) {
+ fs.mkdirSync(directory, { recursive: true });
+ }
+
+ console.log(consoleInfo("info") + "Downloading...");
+ axios({
+ method: 'get',
+ url: link,
+ responseType: 'stream'
+ })
+ .then(response => {
+ response.data.pipe(fs.createWriteStream(directory + id + ".mp3"));
+ link = "/static/audio/" + id + ".mp3";
+
+ setTimeout(() => {
+ io.emit('play', { audio: link });
+ console.log(consoleInfo("info") + "Done, now playing to clients");
+ }, 5000);
+ })
+ .catch(error => {
+ console.error(consoleInfo("info") + 'Error downloading the MP3 file:', error);
+ });
+ } else {
+ io.emit('play', { audio: "stop" });
+ console.log(consoleInfo("info") + "Stopped");
+ }
+}
+
+function exitServer() {
+ console.log(consoleInfo("info") + "Server is shutting down...");
+ saveDrawings();
+ saveChat();
+ setTimeout(() => {
+ process.exit(0);
+ }, 500);
+}
+
+io.on('connection', (socket) => {
+ connectedClients++;
+ updateConsole();
+
+ io.emit('dataSize', { size: (fs.statSync(DRAWINGS_FILE).size / (1024 * 1024)).toFixed(2) });
+ io.emit('connectedClients', connectedClients);
+ io.emit('version', config.version);
+
+ let userFound = false;
+
+ users.forEach(entry => {
+ if(entry.ip == socket.handshake.headers['x-forwarded-for']) {
+ const userIndex = users.findIndex(user => user.uuid == entry.uuid);
+ const user = users[userIndex];
+
+ if(user) {
+ if(!entry.name) {
+ users[userIndex].name = "";
+ entry.name = "";
+ }
+
+ if(!entry.lastNameChange) {
+ users[userIndex].lastNameChange = new Date();
+ }
+
+ if(!entry.lastChat) {
+ users[userIndex].lastChat = new Date();
+ }
+
+ userFound = true;
+
+ if(loadExistingDrawings) {
+ socket.emit('draw', { type: 'existingDrawings', drawings: JSON.stringify(drawings), id: entry.uuid, name: entry.name, chat: JSON.stringify(chat) });
+ }
+
+ socket.emit('chat', { type: 'existingMessages', messages: JSON.stringify(chat) });
+ }
+ }
+ });
+
+ if(!userFound) {
+ const uuid = uuidv4();
+ users.push({ uuid: uuid, name: "", ip: socket.handshake.headers['x-forwarded-for'], lastdraw: new Date(), lastNameChange: new Date(), lastChat: new Date() });
+
+ if(loadExistingDrawings) {
+ socket.emit('draw', { type: 'existingDrawings', drawings: JSON.stringify(drawings), id: uuid, name: "", chat: JSON.stringify(chat) });
+ }
+ }
+
+ socket.on('changeName', (data) => {
+ const invalidChars = /[<>\s;:.\)\(*&^%$?/#\-+=\\|"@!~`]/;
+
+ if(invalidChars.test(data.name)) {
+ socket.emit('changeName', { status: { message: "Invalid characters" } });
+ } else if(users.find(user => user.name == data.name) && data.name.trim() != "") {
+ socket.emit('changeName', { status: { message: "A user already exists with this name" } });
+ } else if(new Date().getTime() - new Date(users.find(user => user.uuid == data.uuid).lastNameChange).getTime() < 10000) {
+ socket.emit('changeName', { status: { message: "Wait before you change your name again" } });
+ } else {
+ users[users.findIndex(user => user.uuid == data.uuid)].name = data.name;
+ users[users.findIndex(user => user.uuid == data.uuid)].lastNameChange = new Date();
+ socket.emit('changeName', { status: { message: "Successfully changed name" } });
+ }
+ });
+
+ socket.on('message', (data) => {
+ if (data && typeof data.content === 'string' && data.content.trim() != "" && data.content.length < 150) {
+ const user = users.find(user => user.uuid == data.uuid);
+ if (user && new Date().getTime() - new Date(user.lastChat).getTime() > 1000) {
+ data.date = new Date();
+ messages.push(data);
+ users[users.findIndex(entry => entry.uuid == data.uuid)].lastChat = new Date();
+ io.emit('chat', {
+ type: 'message',
+ uuid: data.uuid,
+ name: (user.name.trim() != "" ? user.name : "user_" + users.findIndex(entry => entry.uuid == data.uuid)),
+ content: data.content
+ });
+ saveChat();
+ }
+ }
+ });
+
+ socket.on('draw', (data) => {
+ const keysOrder = JSON.stringify(Object.keys(data));
+ if (keysOrder == JSON.stringify(["type", "drawing", "valid"]) && data.type === 'draw' && data.drawing && data.drawing.length > 1 && data.valid /*&& data.drawing[1] && !(data.drawing[0].x < 100) && !(data.drawing[data.drawing.length - 1].x > 9000) */&& users.find(user => user.uuid == data.valid) && enabled) {
+ const entry = users.find(user => user.uuid == data.valid);
+ console.log(new Date().getTime() - entry.lastdraw + " " + new Date().getTime());
+
+ if (new Date().getTime() - new Date(entry.lastdraw).getTime() < 2000) {
+ if(consolelog) {
+ console.error(consoleInfo("info") + 'Drawing data exceeds the maximum size. Seconds: ' + new Date().getTime() - new Date(entry.lastdraw).getTime() + ' Length: ' + data.drawing.length);
+ }
+ socket.emit('drawLimit');
+
+ /*
+ data.drawing = data.drawing.slice(0, 25);
+ drawings.push(data.drawing);
+ saveDrawings();
+ drawings = loadDrawings();
+ socket.emit('dataSize', { size: (fs.statSync(DRAWINGS_FILE).size / (1024 * 1024)).toFixed(2) });
+ */
+ } else {
+ socket.broadcast.emit('draw', { type: 'draw', drawing: data.drawing });
+ drawings.push(data.drawing);
+ users[users.findIndex(user => user.uuid == data.valid)].lastdraw = new Date();
+
+ if(consolelog) {
+ console.log(consoleInfo("info") + data.valid + " " + JSON.stringify(data));
+ }
+
+ if(count > 10) {
+ saveDrawings();
+ drawings = loadDrawings();
+ socket.emit('dataSize', { size: (fs.statSync(DRAWINGS_FILE).size / (1024 * 1024)).toFixed(2) });
+ count = 0;
+ } else {
+ count++;
+ }
+ }
+ } else {
+ if(consolelog) {
+ console.log(consoleInfo("info") + "Drawing not authenticated" + " " + data.valid);
+ }
+ socket.emit('drawLimit');
+ }
+ });
+
+ socket.on('ping', () => {
+ socket.emit('pong');
+ });
+
+ socket.on('disconnect', () => {
+ connectedClients--;
+ updateConsole();
+ io.emit('connectedClients', connectedClients);
+ });
+});
+
+server.listen(config.port, () => {
+ console.log(consoleInfo("info") + 'Server is running on port ' + config.port);
+ updateConsole();
+});
+
+function removeDuplicates(arr) {
+ if (!Array.isArray(arr)) {
+ return [];
+ }
+
+ function isEqual(obj1, obj2) {
+ return obj1.x === obj2.x && obj1.y === obj2.y && obj1.color === obj2.color;
+ }
+
+ const uniqueArrays = arr.map(innerArray =>
+ innerArray.filter((elem, index) =>
+ index === innerArray.findIndex((t) => isEqual(t, elem))
+ )
+ );
+
+ return uniqueArrays;
+}
+
+function loadDrawings() {
+ try {
+ const data = fs.readFileSync(DRAWINGS_FILE, 'utf-8');
+ return JSON.parse(data) || [];
+ } catch (error) {
+ console.error(consoleInfo("error") + 'Error loading drawings:', error.message);
+ return [];
+ }
+}
+
+
+function saveDrawings() {
+ console.log(consoleInfo("info") + "Saving drawings");
+ try {
+ fs.writeFileSync(DRAWINGS_FILE, JSON.stringify(removeDuplicates(drawings)), 'utf-8');
+ console.log(consoleInfo("info") + "Drawings saved");
+ } catch (error) {
+ console.error(consoleInfo("error") + 'Error saving drawings:', error.message);
+ }
+}
+
+function saveChat() {
+ console.log(consoleInfo("info") + "Saving chat");
+ try {
+ fs.writeFileSync("chat.json", JSON.stringify(messages), 'utf-8');
+ console.log(consoleInfo("info") + "Chat saved");
+ } catch (error) {
+ console.error(consoleInfo("error") + 'Error saving chat:', error.message);
+ }
+}
+
+function updateConsole() {
+ if(consolelog) {
+ console.log(`${consoleInfo("info")}Connected Clients: ${io.sockets.sockets.size}`);
+ }
+}
+
+function consoleInfo(type) {
+ const currentDate = new Date();
+ return "";
+ //return "[" + currentDate.getFullYear() + "-" + String(currentDate.getMonth() + 1).padStart(2, '0') + "-" + String(currentDate.getDate()).padStart(2, '0') + " " + String(currentDate.getHours()).padStart(2, '0') + ":" + String(currentDate.getMinutes()).padStart(2, '0') + ":" + String(currentDate.getSeconds()).padStart(2, '0') + "] [" + type.toUpperCase() + "] ";
+}
\ No newline at end of file
diff --git a/users.json b/users.json
new file mode 100644
index 0000000..0637a08
--- /dev/null
+++ b/users.json
@@ -0,0 +1 @@
+[]
\ No newline at end of file