Greasy Fork

osu! download redirector

redirect download request to bloodcat

当前为 2019-07-15 提交的版本,查看 最新版本

// ==UserScript==
// @name         osu! download redirector
// @namespace    http://tampermonkey.net/
// @version      0.1.3
// @description  redirect download request to bloodcat
// @author       kamimi
// @match        https://osu.ppy.sh/*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';
    window.onload = function() {
        const bloodUrl = "https://bloodcat.com/osu/s/";
        if (window.location.pathname === "/beatmapsets") {
			let beatmapList = document.getElementsByClassName("beatmapsets__items")[0];
			let iconBoxs = beatmapList.getElementsByClassName("beatmapset-panel__icons-box");
			addIconList(iconBoxs);
            beatmapList.addEventListener("DOMNodeInserted", function (e) {
				let iconBoxs = e.srcElement.getElementsByClassName("beatmapset-panel__icons-box");
				addIconList(iconBoxs);
            });
        } else if (/^\/beatmapsets\/[0-9]*.*$/.test(window.location.pathname)) {
			let iconBoxs = document.getElementsByClassName("beatmapset-header__buttons");
			addIconDetail(iconBoxs);
		} else if (/^\/(s)|(b)\/[0-9]*.*$/.test(window.location.pathname)) {
            let iconBoxs = document.getElementsByClassName("paddingboth");
			addIconDetailOld(iconBoxs);
        }

		function addIconList(iconBoxs) {
			for (let i = 0; i < iconBoxs.length; i++) {
				let downloadLink = iconBoxs[i].getElementsByClassName("js-beatmapset-download-link")[0];
				if (downloadLink) {
					let newNode = copyElement(downloadLink);
					replaceUrl(newNode, -2);
					newNode.style.color = "#4ad";
					iconBoxs[i].appendChild(newNode);
				}
			}
		}

		function addIconDetail(iconBoxs) {
			for (let i = 0; i < iconBoxs.length; i++) {
				let downloadLink = iconBoxs[i].getElementsByClassName("js-beatmapset-download-link")[0];
				if (downloadLink) {
					let newNode = copyElement(downloadLink);
					replaceUrl(newNode, -2);
					newNode.style.backgroundColor = "#4ad";
					iconBoxs[i].appendChild(newNode);
				}
			}
		}

		function addIconDetailOld(iconBoxs) {
			for (let i = 0; i < iconBoxs.length; i++) {
				let downloadButtons = iconBoxs[i].getElementsByClassName("beatmapDownloadButton");
				let downloadButton = downloadButtons[downloadButtons.length - 1];
				if (downloadButton) {
					let downloadLink = downloadButton.getElementsByClassName("beatmap_download_link")[0];
					if (downloadLink) {
						let newButton = downloadButton.cloneNode();
						let newNode = downloadLink.cloneNode();
						let img = document.createElement("img");
						img.src = "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAkACQAAD/4QB0RXhpZgAATU0AKgAAAAgABAEaAAUAAAABAAAAPgEbAAUAAAABAAAARgEoAAMAAAABAAIAAIdpAAQAAAABAAAATgAAAAAAAACQAAAAAQAAAJAAAAABAAKgAgAEAAAAAQAAALCgAwAEAAAAAQAAAIYAAAAA/+0AOFBob3Rvc2hvcCAzLjAAOEJJTQQEAAAAAAAAOEJJTQQlAAAAAAAQ1B2M2Y8AsgTpgAmY7PhCfv/iD6xJQ0NfUFJPRklMRQABAQAAD5xhcHBsAhAAAG1udHJSR0IgWFlaIAfjAAYAGwANAC8AEWFjc3BBUFBMAAAAAEFQUEwAAAAAAAAAAAAAAAAAAAAAAAD21gABAAAAANMtYXBwbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEWRlc2MAAAFQAAAAYmRzY20AAAG0AAAEhGNwcnQAAAY4AAAAI3d0cHQAAAZcAAAAFHJYWVoAAAZwAAAAFGdYWVoAAAaEAAAAFGJYWVoAAAaYAAAAFHJUUkMAAAasAAAIDGFhcmcAAA64AAAAIHZjZ3QAAA7YAAAAMG5kaW4AAA8IAAAAPmNoYWQAAA9IAAAALG1tb2QAAA90AAAAKGJUUkMAAAasAAAIDGdUUkMAAAasAAAIDGFhYmcAAA64AAAAIGFhZ2cAAA64AAAAIGRlc2MAAAAAAAAACERpc3BsYXkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABtbHVjAAAAAAAAACYAAAAMaHJIUgAAABQAAAHYa29LUgAAAAwAAAHsbmJOTwAAABIAAAH4aWQAAAAAABIAAAIKaHVIVQAAABQAAAIcY3NDWgAAABYAAAIwZGFESwAAABwAAAJGbmxOTAAAABYAAAJiZmlGSQAAABAAAAJ4aXRJVAAAABQAAAKIZXNFUwAAABIAAAKccm9STwAAABIAAAKcZnJDQQAAABYAAAKuYXIAAAAAABQAAALEdWtVQQAAABwAAALYaGVJTAAAABYAAAL0emhUVwAAAAwAAAMKdmlWTgAAAA4AAAMWc2tTSwAAABYAAAMkemhDTgAAAAwAAAMKcnVSVQAAACQAAAM6ZW5HQgAAABQAAANeZnJGUgAAABYAAANybXMAAAAAABIAAAOIaGlJTgAAABIAAAOadGhUSAAAAAwAAAOsY2FFUwAAABgAAAO4ZW5BVQAAABQAAANeZXNYTAAAABIAAAKcZGVERQAAABAAAAPQZW5VUwAAABIAAAPgcHRCUgAAABgAAAPycGxQTAAAABIAAAQKZWxHUgAAACIAAAQcc3ZTRQAAABAAAAQ+dHJUUgAAABQAAAROcHRQVAAAABYAAARiamFKUAAAAAwAAAR4AEwAQwBEACAAdQAgAGIAbwBqAGnO7LfsACAATABDAEQARgBhAHIAZwBlAC0ATABDAEQATABDAEQAIABXAGEAcgBuAGEAUwB6AO0AbgBlAHMAIABMAEMARABCAGEAcgBlAHYAbgD9ACAATABDAEQATABDAEQALQBmAGEAcgB2AGUAcwBrAOYAcgBtAEsAbABlAHUAcgBlAG4ALQBMAEMARABWAOQAcgBpAC0ATABDAEQATABDAEQAIABjAG8AbABvAHIAaQBMAEMARAAgAGMAbwBsAG8AcgBBAEMATAAgAGMAbwB1AGwAZQB1AHIgDwBMAEMARAAgBkUGRAZIBkYGKQQaBD4EOwRMBD4EQAQ+BDIEOAQ5ACAATABDAEQgDwBMAEMARAAgBeYF0QXiBdUF4AXZX2mCcgAgAEwAQwBEAEwAQwBEACAATQDgAHUARgBhAHIAZQBiAG4A/QAgAEwAQwBEBCYEMgQ1BEIEPQQ+BDkAIAQWBBoALQQ0BDgEQQQ/BDsENQQ5AEMAbwBsAG8AdQByACAATABDAEQATABDAEQAIABjAG8AdQBsAGUAdQByAFcAYQByAG4AYQAgAEwAQwBECTAJAgkXCUAJKAAgAEwAQwBEAEwAQwBEACAOKg41AEwAQwBEACAAZQBuACAAYwBvAGwAbwByAEYAYQByAGIALQBMAEMARABDAG8AbABvAHIAIABMAEMARABMAEMARAAgAEMAbwBsAG8AcgBpAGQAbwBLAG8AbABvAHIAIABMAEMARAOIA7MDxwPBA8kDvAO3ACADvwO4A8wDvQO3ACAATABDAEQARgDkAHIAZwAtAEwAQwBEAFIAZQBuAGsAbABpACAATABDAEQATABDAEQAIABhACAAQwBvAHIAZQBzMKsw6TD8AEwAQwBEdGV4dAAAAABDb3B5cmlnaHQgQXBwbGUgSW5jLiwgMjAxOQAAWFlaIAAAAAAAAPMWAAEAAAABFspYWVogAAAAAAAAgt0AAD1Z////vFhZWiAAAAAAAABMTgAAtOgAAArsWFlaIAAAAAAAACerAAANvgAAyIVjdXJ2AAAAAAAABAAAAAAFAAoADwAUABkAHgAjACgALQAyADYAOwBAAEUASgBPAFQAWQBeAGMAaABtAHIAdwB8AIEAhgCLAJAAlQCaAJ8AowCoAK0AsgC3ALwAwQDGAMsA0ADVANsA4ADlAOsA8AD2APsBAQEHAQ0BEwEZAR8BJQErATIBOAE+AUUBTAFSAVkBYAFnAW4BdQF8AYMBiwGSAZoBoQGpAbEBuQHBAckB0QHZAeEB6QHyAfoCAwIMAhQCHQImAi8COAJBAksCVAJdAmcCcQJ6AoQCjgKYAqICrAK2AsECywLVAuAC6wL1AwADCwMWAyEDLQM4A0MDTwNaA2YDcgN+A4oDlgOiA64DugPHA9MD4APsA/kEBgQTBCAELQQ7BEgEVQRjBHEEfgSMBJoEqAS2BMQE0wThBPAE/gUNBRwFKwU6BUkFWAVnBXcFhgWWBaYFtQXFBdUF5QX2BgYGFgYnBjcGSAZZBmoGewaMBp0GrwbABtEG4wb1BwcHGQcrBz0HTwdhB3QHhgeZB6wHvwfSB+UH+AgLCB8IMghGCFoIbgiCCJYIqgi+CNII5wj7CRAJJQk6CU8JZAl5CY8JpAm6Cc8J5Qn7ChEKJwo9ClQKagqBCpgKrgrFCtwK8wsLCyILOQtRC2kLgAuYC7ALyAvhC/kMEgwqDEMMXAx1DI4MpwzADNkM8w0NDSYNQA1aDXQNjg2pDcMN3g34DhMOLg5JDmQOfw6bDrYO0g7uDwkPJQ9BD14Peg+WD7MPzw/sEAkQJhBDEGEQfhCbELkQ1xD1ERMRMRFPEW0RjBGqEckR6BIHEiYSRRJkEoQSoxLDEuMTAxMjE0MTYxODE6QTxRPlFAYUJxRJFGoUixStFM4U8BUSFTQVVhV4FZsVvRXgFgMWJhZJFmwWjxayFtYW+hcdF0EXZReJF64X0hf3GBsYQBhlGIoYrxjVGPoZIBlFGWsZkRm3Gd0aBBoqGlEadxqeGsUa7BsUGzsbYxuKG7Ib2hwCHCocUhx7HKMczBz1HR4dRx1wHZkdwx3sHhYeQB5qHpQevh7pHxMfPh9pH5Qfvx/qIBUgQSBsIJggxCDwIRwhSCF1IaEhziH7IiciVSKCIq8i3SMKIzgjZiOUI8Ij8CQfJE0kfCSrJNolCSU4JWgllyXHJfcmJyZXJocmtyboJxgnSSd6J6sn3CgNKD8ocSiiKNQpBik4KWspnSnQKgIqNSpoKpsqzysCKzYraSudK9EsBSw5LG4soizXLQwtQS12Last4S4WLkwugi63Lu4vJC9aL5Evxy/+MDUwbDCkMNsxEjFKMYIxujHyMioyYzKbMtQzDTNGM38zuDPxNCs0ZTSeNNg1EzVNNYc1wjX9Njc2cjauNuk3JDdgN5w31zgUOFA4jDjIOQU5Qjl/Obw5+To2OnQ6sjrvOy07azuqO+g8JzxlPKQ84z0iPWE9oT3gPiA+YD6gPuA/IT9hP6I/4kAjQGRApkDnQSlBakGsQe5CMEJyQrVC90M6Q31DwEQDREdEikTORRJFVUWaRd5GIkZnRqtG8Ec1R3tHwEgFSEtIkUjXSR1JY0mpSfBKN0p9SsRLDEtTS5pL4kwqTHJMuk0CTUpNk03cTiVObk63TwBPSU+TT91QJ1BxULtRBlFQUZtR5lIxUnxSx1MTU19TqlP2VEJUj1TbVShVdVXCVg9WXFapVvdXRFeSV+BYL1h9WMtZGllpWbhaB1pWWqZa9VtFW5Vb5Vw1XIZc1l0nXXhdyV4aXmxevV8PX2Ffs2AFYFdgqmD8YU9homH1YklinGLwY0Njl2PrZEBklGTpZT1lkmXnZj1mkmboZz1nk2fpaD9olmjsaUNpmmnxakhqn2r3a09rp2v/bFdsr20IbWBtuW4SbmtuxG8eb3hv0XArcIZw4HE6cZVx8HJLcqZzAXNdc7h0FHRwdMx1KHWFdeF2Pnabdvh3VnezeBF4bnjMeSp5iXnnekZ6pXsEe2N7wnwhfIF84X1BfaF+AX5ifsJ/I3+Ef+WAR4CogQqBa4HNgjCCkoL0g1eDuoQdhICE44VHhauGDoZyhteHO4efiASIaYjOiTOJmYn+imSKyoswi5aL/IxjjMqNMY2Yjf+OZo7OjzaPnpAGkG6Q1pE/kaiSEZJ6kuOTTZO2lCCUipT0lV+VyZY0lp+XCpd1l+CYTJi4mSSZkJn8mmia1ZtCm6+cHJyJnPedZJ3SnkCerp8dn4uf+qBpoNihR6G2oiailqMGo3aj5qRWpMelOKWpphqmi6b9p26n4KhSqMSpN6mpqhyqj6sCq3Wr6axcrNCtRK24ri2uoa8Wr4uwALB1sOqxYLHWskuywrM4s660JbSctRO1irYBtnm28Ldot+C4WbjRuUq5wro7urW7LrunvCG8m70VvY++Cr6Evv+/er/1wHDA7MFnwePCX8Lbw1jD1MRRxM7FS8XIxkbGw8dBx7/IPci8yTrJuco4yrfLNsu2zDXMtc01zbXONs62zzfPuNA50LrRPNG+0j/SwdNE08bUSdTL1U7V0dZV1tjXXNfg2GTY6Nls2fHadtr724DcBdyK3RDdlt4c3qLfKd+v4DbgveFE4cziU+Lb42Pj6+Rz5PzlhOYN5pbnH+ep6DLovOlG6dDqW+rl63Dr++yG7RHtnO4o7rTvQO/M8Fjw5fFy8f/yjPMZ86f0NPTC9VD13vZt9vv3ivgZ+Kj5OPnH+lf65/t3/Af8mP0p/br+S/7c/23//3BhcmEAAAAAAAMAAAACZmYAAPKnAAANWQAAE9AAAApbdmNndAAAAAAAAAABAAEAAAAAAAAAAQAAAAEAAAAAAAAAAQAAAAEAAAAAAAAAAQAAbmRpbgAAAAAAAAA2AACuAAAAUgAAAEPAAACwwAAAJoAAAA0AAABQAAAAVEAAAjMzAAIzMwACMzMAAAAAAAAAAHNmMzIAAAAAAAEMcgAABfj///MdAAAHugAA/XL///ud///9pAAAA9kAAMBxbW1vZAAAAAAAAAYQAACgQAAAAADVGGSAAAAAAAAAAAAAAAAAAAAAAP/AABEIAIYAsAMBIgACEQEDEQH/xAAfAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJCgv/xAC1EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2wBDAAICAgICAgMCAgMFAwMDBQYFBQUFBggGBgYGBggKCAgICAgICgoKCgoKCgoMDAwMDAwODg4ODg8PDw8PDw8PDw//2wBDAQICAgQEBAcEBAcQCwkLEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBD/3QAEAAv/2gAMAwEAAhEDEQA/AP0m+MP7RviDwP4xuvCfh/TLaR7AR+bNd75N5ljWUBVRkxgNg5Jz7d/KP+GtviP/ANA3Sf8AvzP/APH64j9owj/hcviH/t0/9JYa8T61+D5zxJjo4urCNVpKTS9E7H4nnHEmOji6sI1WkpNL0TsfUf8Aw1v8R/8AoG6T/wB+Z/8A4/R/w1t8R/8AoG6T/wB+Z/8A4/XzVDp9xOMoufpRNp9xCMuuK8v/AFqx+3tmeX/rVj9vbM+lf+Gt/iP/ANA3Sf8AvzP/APH6P+GtviP/ANA3Sf8AvzP/APH6+Y4reSZtqitCXRb6GJZZI2VXGVJBwcelN8U4/wD5/Mf+tWP/AOfzPoz/AIa3+I//AEDdJ/78z/8Ax+j/AIa2+I//AEDdJ/78z/8Ax+vmZLOVzwOlAs5mOMUf604//n8w/wBasf8A8/mfTP8Aw1v8R/8AoG6T/wB+Z/8A4/R/w1t8R/8AoG6T/wB+Z/8A4/XzMLSYttxzUo064PQUv9asf/z+YnxVj/8An8z6U/4a3+I//QN0n/vzP/8AH6P+GtviP/0DdJ/78z//AB+vmZ7SVG2kc0GzmHan/rTj/wDn8x/604//AJ/M+mf+Gt/iP/0DdJ/78z//AB+j/hrb4j/9A3Sf+/M//wAfr5lltZIhlhUCIZG2r1oXFGP/AOfzBcU4/wD5/M+of+Gt/iP/ANA3Sf8AvzP/APH6P+GtviP/ANA3Sf8AvzP/APH6+c10W+eE3CxsY14LY4B+tZkkTxNtbrQuKcf/AM/mC4px7/5fM+n/APhrf4j/APQN0n/vzP8A/H6P+GtviP8A9A3Sf+/M/wD8fr5pjsZ5V3KOKgaB1fYetH+tOP8A+fzD/WnH/wDP5n07/wANb/Ef/oG6T/35n/8Aj9H/AA1t8R/+gbpP/fmf/wCP183Jpd1Iu9VJH0qtNaTQH5xikuKsf/z+YlxVj/8An8z6a/4a3+I//QN0n/vzP/8AH6+nvgR8Yb/4pWeojUrGOzvNKaESNCzeVKJ9+3CtkrjYcgsfX2r8vcivtz9jf73i366f/wC3FfS8J8QYytj6dKrUbi73T9Gz6ThTP8ZWx1OlVqNxd7p+jZ//0Pdf2m5I1+N/iQM5U/6Hxj/pzhrwqOSLzF/eHr6CvaP2oJAvx08SjGf+PP8A9I4favBoZf3q4U9fX/61fzXnn++1/wDFL82fztnv++1/8UvzZ+qn7PL6bpvwUOr3Futwtm13M2VXcRGNxAJHtXQ2sfw++P3g2+WPTFt7iHdCHeNVmglK5Rldc5X274IIrjfgg+f2dNRbGMQ6j/6AazP2R5Wl0zxIWHSa27/7MlfouXYpv6lgppOFSm7prsrn6Ll2Kb+pYKSThUpu6a7I4b9mP4b6PqXiDVdc1qBbv+x/LjiikVWTzpC3zkdCUCcdsnI5FfSHh34i+EPivq2teBbrSxPBZq5HnbXSaNHEZYDHykFgVwc85yDXnn7MDl/+EtyMYuof/alea/sxzNJ8VteUjGLG57/9PMPtXnZDipUMPgaVNK1WU+e6TvZ2R52RYmVDD4GlTStVlPnuk72dkdt8C9D07wp8UPGPgtcXEcSl4/MUE7IJMKTxjO2UZq38JvCdjbfGzxvctErx2jTqqMoKr9onDrjr0VSOtc34Z1g2P7U+pWbcJey3MBP/AGy3j8yor6M0XT7fw54m8ceKLv8AdW11LasW/wBmC2Ut/wCPOfzrqyPBxqRpJfDSrTXorSa/Gx1ZHg41I0rfDSqzXorSa/Gx4hofhCyt/wBpzUpBEDHFDJeBSo24mhVScY/vSEV03hd9P1D9ovxMiwoUttN8kLtG0bGt93GOu4mvU4fD/l/FW58TKuFk0iO3J9X89mP6Kv5V82fArWP7b+Oni6/A+W4hvZF5z8pu4sdPatamF+rVqNH+evKXyt/wUa1ML9WrUaNvjryl8rf8FFT49eCbXT/ihoHiSCMR2+rSQK4VRtM0Dqpzx3Qr9ea6T9omysF8YeCQI1iBlfhVAz+9i68V698T9Kt/GXhcXOnjzbnQdRjmx/Ept5NswPt5ZLe/FeS/tHPt8Y+CBjOZX/8ARsVc3EGXqhSxk4/DN05L5y1/H8zmz/LlQpYycfhm6cl85a/j+Zyv7ZNvZ29p4WaJFgJN99xQM/6jrxXzr+z/AODtN8b/ABD0/S9TJls4988ycfOsSlgp9i2AfbNfRX7aj7LPwpxnJvv/AGhXkn7I0m74nICMf6Jcd/YV4+cUYTz/ANnNXi5Quv8At2J4+c0Izz/2cldOUNPlE+3Lr4m+FdF8d2vwnTTgkcipDlQohRpU3JH5eMYII/PpXxJ+0t4F0fwf48Q6LGLW01OBbkRIAEjcsyOqjsMrux0GcDivR/F0zD9q22jwcfbtOHX/AKYQ1V/a858ZaIuM/wCg+v8A01eunP8AGyxGDxTrJfuqvLHTZbWOnP8AGyxGDxTqpfuqvLHTZXtY+iP2dvD1nYfCjSZJoEeS9aadi6AnDSFV5x/dUV8G/GjRLfQ/ixr1kp8tHu2mCqoAUXGJQAMdAG4r9CLK/Pgfwt8PNGJKNdTWdlIvIyXtn3ZH/XTB+tfI/wC1bpX2L4lWuooh26hZxSFs4BeNmjI/BVX866OLMNCOVUoR+Knyp/OP+Z0cWYWMcqpQj8VPlT+cf87H134j8X+H/hz4G0TXNS00XUU4trfEaoGBaEvu+Yc8Ia8j+PXg3wd4x+GA+Jfh62S2uIUinEkcYjaWGVgjLIo4LKWBz1GCAcVN+0bIY/gx4cYDObqz74/5dZaSWRm/ZKaQ9TZ+v/T1616WZ4l1qmIwdRJwjS5lpqmlvc9LMsS61TEYOok4Rpcy01TS3ufmtK8SyMPMIwfQf4V94fsRMrN4y2sW503/ANua+Arqb9+3yn8//rV96fsNPubxpxjB03/25r47gr/kZUvn/wCks+O4L/5GVL5/+ks//9H3j9poJ/wu/wASZAJ/0P0/59Ia8KiEfmL8o6+1fQX7Sll53xr8Ryev2Pv/ANOkNeGppxDg+/rX8155/vtf/FL82fzvnn++1/8AFL82fpL8Fdp/Z71DAwPJ1D/0A1W/ZWtXh0jX5iuI5J4VBHcqrEj8Awrkfgt8WvAnhX4eJ4W8RvKZWkn8yMRGRGjl7E+46iuh8SftA+B/DfhmfSPh1YmK4lVhFshWCGFnGDIQOWYdRxyepr7fA4zBwWExVSsr0oNOO7basfcYHGYOCwmKqV0vZQacd221bY1/2aihHiopj/j5h6f9tK4L9nK1e2+KWvB12kWdwpxjr9oi9K8o+CPxVHw61+5fUYnm03UVVJwhy6lCSjqDgHbkjGehr6gl+MnwY8KpqGv+GohcanqOXlSGCSN5HPPzvIoVQTydueecE1w5LiMNOhhJ1Kqg6Lk2nu7u6t3ODJK+GnQwk6lZQdFybT3d3dW7ngWvaqmk/tKG8IAEerQhjx91iqt19ia+ufjlqX9m/DPVSpw9z5UK/wDA5F3f+Og1+ZWra7qGs+KrnxNdNi6urhrhiOgdm3cAjoOwr6k+OHxm8M+OfCVlo3h55TN9pSeYOhQKFRhgHvy36Vy5ZnUIYXHxvZzu4rq+a6/DQ5sszqnDC4+PNZzu4rq+a609ND7BHiBP+EJ/4Swng6cL0twOPJ836f0r4t/ZUkWT4hao2OTpsv8A6PhrVi+Nfhz/AIUi3g6SSUa0bJ7TaEOzBYqPn6f6vnp14rzD4AeN9C+H/i2+1fxE8kdvPZSQKUUyHe0sbDgY4wp5r08wzyjXx2CqOatFXfk3vf7j0swzyjXx2BqOatFXb7N7389D6/8Ah94kA+JvjXwhO3yyXBvIgcdQFSQe+Rs/I1xP7Qmz/hLvBe4A/vX/APRkdeBj4mWFh8bJPHmnvI2myXe5uMM0Ei7H+U98EkD1Arsfi/8AFPwp4w8Q+GtR0SSWSHTHZpi6FCAXRuAevCmubFZ3Tq5bXw8pLmVTTzjzqV16a/I58VndOrllfDymuZVNPOPOpXXpr8jpv2xYWms/DG1d203v/tCvJ/2UYTF8SU3Jtzaz+noK+ltZ+MnwR8TrCdftjqAt93l+fa79m/G7GemcDP0rwjxD8RvBPh74i6L4r+G1glva2MRS4hWIW4kLswcYAIyUbAbscelGbzw6zFZjCvGUeaDsnd2Vk/yuGcSw0cxWZRrxlHmg7J3dlZN/hc6vxVauf2oLaUJ1vLAg47CGLJ/Q/lWl+0Rpa618S/C+lFdxvIooR6/vJ2X+td8vxh+CN/dweNLtdmswRlUD2zm4UY6AqDGTyQDu4HcV873fxX0zxN8ZNO8a62j2ulac6iJAN7rFCGZMgdWLnJ7DPXipzR4WNGrSVaMvbVVLR7Rbu79ic0eFjRq0lWjL21VS0e0W7vm7H214z0jwhql3o8viTUksJdKnF1bKZ44cuhBBIfkgEdsV4L+1VpCXFn4f1kKD5Uk0DH13hWX8trV4d8dfiPpfjrxTZX3h53aytbVIsupQl97sxwfYgfhXofxG+Lfg7xn8M9P0SKWY6vbfZZWQxkJ5qJskG/8A4E2D3rrzrPcNiqWMoJJbNO/xNf8ADWR153nuGxdLG0FyrZxd/ia/4ayPQP2go/N+EHh9MZ/0m04OP+faWi+hNp+yw0U42/6ErY9nuAy/mCKtL8aPg/q2g6fpXiCJr5LRIT5c1t5iCSNNucHIPUj8a8f+OHxx0vxZ4d/4Q3wlbPFp7FDLK4Ee5YjlERBnCggHJx0AxWuYYzCQlXxSrKTnT5FFau9uppmGMwcJV8Wqyk50+RRWrvY+J7kRmZvlHX2r7q/YjChvGW0Y507/ANua+IG08sxY9T7190fsV232dvGH+0dO/T7RXznBX/IypfP/ANJZ83wX/wAjKl8//SWf/9L6c/aLjRvjJ4gYjJ/0T/0lhrxLyY/Svcv2iB/xeLxB/wBun/pLFXimK/nTOor65W/xS/Nn8/Z1D/bK3+KX5sjChRxxQyK33uat28BmlEY6mvpWy/Zm8Y3dpDdCa02zIrj962cMMjPyVy4XLqtdv2MHK3Y5sJltau2qEHK29kfLoiRTkCpD8wweR9a9W8b/AAp8TeBpIhrFuBFMSI5UO+NiO2R0PscGuu8J/ADxT4r0O21+zktlt7rfsDyMr/I5Q5AU91Peqp5ZWlUdGNN8y3VtSqeV4idV0I0nzrVq2v8AWp87+TH1xSlFPUfrX0L4v+AXifwjoN14ivpLZra0CbwkjF/ndUGAVHdh3rivAPw11n4gahPp2kGJXt4zK7SsVXaGC4BAPPP86KmWVoVFRlTak9l1HUyvEQqxoTptTeytq/6seX7FxjHH1oEaDoK9V8efDHW/AF9b2WrmNzcx+YjQsWXGSMEkA54rv9A/Z08V67o9nrMEtqIb2JZUDSMG2uMjICdadPK686kqUabcluraodPKcROpKjCm3KO6tqj5r8tM5xzS7V/ya+m9W/Zu8WaVpt1qk0tqYrOJ5nCyMWKxqWOBs64HFVIf2dPF9zoUevQSWzRS24uVTzG3lGTeBjbjdjtnrWryXFKXK6Tva+3Q1eRYxS5XRd7X26Hzj0700opOT/OvRvB3w/1bxnri6HpexZmVnzISqAIMnJAJ/Stj4hfCbXfh4lm+rvA4vvM8vynLf6vbnOVH94Yrlhgpuk66h7i69P61OSGBqyovERg+RaN9P61PI+gxnimeWmc45+te2eAvgz4i8fafPqOlPBHDBJ5ZMrlSWwDxhT2NcV4s8Haj4R1640DUgv2i2Khihyp3KGBBwOxFE8DONNVpQtF7PowqYGrClGvKDUHs+j/qxxBjQ9Rml2r/AJNfSegfs6eLNc0i01mCW1EN7EsqBpGDBXGRkbOtc541+CPi3wZZjUb+FJrTIVpYX3qpPQMMAjPTOMZreplGIhD2sqT5d720sdFXJsVCn7aVJ8u97aW7niPSmGNGOWGa9u8L/BbxL4q8PT+I9Oe3W2tzIrCR2V8xqGOAFPY8c147cQGGQoe1c1TCShGMpRspbeZy1MJOEYznGylqvMo+TH6V9tfscoqN4t2jGTp//txXxZivtf8AY8GG8WfWw/8AbivoeDor+0qXz/8ASWfQcHR/4UaXz/8ASWf/0/qH9ogn/hcXiD/t0/8ASWKvFMmvR/2mNSe3+NviSIHG37H2He0hNeEf2u/979BX84Z3V/22t/il+bP58zur/ttb/FL82eiaRzeJ9RX6OfEfW9W0DwFo97o9y1rM0tuhZMZKmFyRz2yBX5Z6RrDi8Q7u49K/WTxBrvg7RfBuiXvjiJJLCQ2yp5kXnKsxhLKxUAn7obsa9nhm86OKip8nur3r2tq+p73Cac6OLiqnJ7sfebtbV63OY8e3L678FE1TWVBunitZgSAMuZFXcB23KSeOx9Kb4YvbvTPgQl9p8hhngguGRl6g/aH6Vh/HptQ1r4dWniDwxdxyaHCY5pEjXBdHIWNwfRScFcDGcnpxtfDXVNItPgVY6n4ijE2nxxXLTrt3goLmQY296+j528yqQcrWoW5u+q97T+tD6i8nmlSDla1C3O+uq9666a/gfIHin4neN9ZtJtF1PUpZrOfaHjYjDbWDDt2IBr6L/ZgsVi07W9XkOATFGD2AAZm/pXz78cPG3w21ptIT4fWqWrwmf7VtgEW7d5fl/XGG+lfQ/wAHpJNI+Amra2BmS4S9lQgAklY/KUD/AIEtfO5E2syvOp7RU4t81209PPs3958xw+ms05p1PaKnFy5rtprl6N9m/vJP2mrKO40TRtbhwwVpI93qJArr/wCgn864/wCAPjjxLqniSx8O3l/JJYQQyKkRI2hUQ7R+Fdt8T3m1z9nqy1cqfNtIbOZwRzuGIXODz1Yn6V87/sy37zfFCzhY5/dXHp2iaurMK0o5xRqQbSqcj07Oy/Q68yrSjndGrBtKp7N6PdOy/Q9r+OPjfxFo/imbQbG+kisri2RXiBG0iRSGH4ivpjwYQ/g3Qs9GsLX9Ylr4T/aY1J7b4lmIHGLaA/oa+u9H17+yfAXge9dgEuk0yBvQ/aYQg/Vga9bI8a1meLdRu0fPZcx7WQY1rNMZKo21G+72XN+R578G/DC6T458SSbeNP32wz23y8fpGazP2oFD2vh8e91/7Sr1bXoV8GaR4x8R5Cf2jJGY8di8ccKk+/msxrxf9qy6aCPwwoON5vP08n/Gss0wywmT1sP1TT+TqWX4IxzbCLB5LXw3WLT+TqWX4I9T+BVrFpPw3tLiUiMXtw7/AFZnEKj8SoFeCftGaX9n8cw3ygYvLeJyf9pSYz+iivXdZvp/BvwY8NmNT5m7TnYKvIbety3A9Cprj/2qLeSG10DV04AeaBzjPUKyfyaoztL+yvYJa0405P1d0zPPoL+x/q6WtKNOT9ZXTPTbjUr7SPgfZ6jpszW9zDZ2ex0+8NzxqcfUEipdD1O98ZfCTUptccTTNb3UZcqBny1JRiBgZBx+VP0U+Hbn4MaT/wAJdKsOkvZWpncsUA+ZNnK8jL7a8q+Ivxn+G3hTwJc+EfAlxHczXUTQIkIZkiSXh2d3+8SCcck5POBXfiKyo2r1aqUPYpct9W9fs/hc9HFVvYcuIrVkqfsUuS+rbvry/hc6b4USxwfCjxKA23ymu3J6YH2ZOc/hXwXqrZu3x6mvq34Q+ImuPgt48uHw3kxXHPf95bkfpXw9f6y7XLHd39BXw2aV74XCL+6/z/4B+f5tXvhMGv7j/wDSmv0Oiya+1/2PD83iz62H/txX58f2w/8Ae/QV93/sTXjXbeMdxzsOnfr9ors4NqXzKkvX/wBJZ0cHVL5lSXr/AOks/9T2L9qPyP8Ahevibe+D/oWRk/8APnDXgH+jf89P1Ne3/tVXLx/HrxQgHA+xdh/z5QV89/a39P0H+NfzZnj/ANtr/wCKX5s/nfPP99r/AOOX5s6fSvsoulzJxn1P+Nfqb8WvCuueMvhd4f0vw/aveTpLaSlUZVIQW7qTlioxlh371+SEN/JE4cDp7D/Gvp6w/a3+J1jZQWUb2vl26LGubcZ2oMDPzegrpybG4enTrUsTe00l7tr9e53ZDj8LSp16OK5uWokvdtfS/c+yvEWlnwF+ztPoevyhZ4bbym+bd+8uJtwQHvtLY47DPSqng/S7rX/2aU0nSI2uZ7u3u0jVTgsTdSdCSP51+fnj/wCOfjn4iCGHxBeB7a3O5IY0WOMMRjcQOp9Cc47dTXUeDv2mfiD4L8PWnhrSXtxZ2e/yw8IZv3jtI2Tnn5mNetDP8L9Zu1JU1S9mtubdantQ4lwf1ptxkqSpeyW3Nutd7bE3iL4I+PPDVpP4g1vS5bbT7cp5krSIQu9gi8ByeWYDp3r7y0TxHZfCT4HaDqtzB58cdvAREG8ss10fMPJDc/MSa+CvFv7TXxA8ZaBc+HNXa3Nnd7PMCQBW/dusi4OePmUVz3i/49+NvGfhq28Kaq0C6faNG0axRBD+6QooJzyAD09cVx4HM8Lgp1Z4Ryu4WTklo7/dbRHDl+bYTATq1ME5XcLRcktJX18raLufpEvimx+MHwh8QXtpbmBZYLqER795EsUe9eQB32npXxv+zELeP4t2KxybmMVzgZP/ADyb3ryfwJ8fvHHw90efRNBeD7LcymZ1mhEvzMoQ9T0IUZFch4L+JGu+BfEMXiTQyi3cKuqmRA64kUqeM+hp4vPYV62FxFS7lC3NotbNPT8ew8ZxFDEV8Hiat3OFufRa2aen49j6W/ala3PxTYSPhvstvxk+hr6H8e3Rsv2e/C95FJsaC30mRGz0KxKVNfnL45+JniD4ga6fEGvmNrpo0jJjQIu1OnGa6vWfj34217wbZ+Bb94TpllHBHGFiCvtt1Cpls88Dn1rFZvSVTGTV/wB6ny/N9TFZ3SVXGzV/3qfL831P0F+Ovii0uPAOh+S+1NeurWReesQXzev121yv7UFiup3/AIN08viS5luo0x1LO0Cj07mvgrWPi94r13TdC0nUZle28OoY7RQgGB8v3jn5sBABnoK6TxN+0L448W6pour6ybd59BmM9tthCrvLI3zDPzDMa8V1ZlxBTxMMRGd/fVNL/t13l+tjszTiali6eJhNP94qaX/brvL8b2P0o+JfxT0r4S2uk289mboXgkSNFkEe1YAg/ut/eFcV8bJrPxv8FbTxTCuyENaXwGclPNHllcjGcGTB7cZr87viF8Z/F3xJns7jxG8bNYqyRiKMRgByCcjPU4FbKftA+OB4HHw/doH0kQ+Tgwgybd28fNnqD0rrx3FarvEUZX9lKNoqyunbr8/M7Mw4yWIeJozv7KUbQVldOy3+fmz7p8ZvHH+yyjBtqCw0/Bz28+HvX5k3MsbztmUnn1Nel6n8f/G+qeBf+Fe3LQHSRFFCAIQJNkLK6fPnrlRmvFGvXLFtv6D/ABrwM7x9PE1Kcqd/dgo691f/ADPm+IMyp4qpSnTT92EYu/dX/wAz6u+Gfh/4sal8PtebwTMv/CPXhkhv1ZoMsY4gzgeYC4+RxyhGfqK+bbpbdZTmT9T/AI16N4M+O3jTwN4ZvPCuhtCtjfPJJIJIg7bpUWNsNnj5VFeQTX8krliOvsP8a48TOk6dNQcm0tb7L/D5HBi6lJ06Spyk2k732Wv2fI0P9G/56fqa/QD9hby93jXy23c6bnnP/PzX51fa39P0H+NfoV+wbM0reN8jGDpnb/r6r3OC3/wp0vn/AOks9rgz/kZUvn/6Sz//1fQv2sZ7hPj/AOKVQ/KPsPf/AKcoK+dftN36/rX0t+1ZGjfHzxQT1/0Luf8Anygr558pPT9TX8155/vtf/HL82fzvnn++1/8cvzZn/abr+9+tH2m79f1rQ8pPT9TR5Sen6mvLPLKH2i8PQ/rR9pu+5/Wvoj4b+CPDOpaDqPiLxFDcXUFpcWtosFtOts5e6SdxIZHjmGFEBG3ZyWB3Dbhu+8Q/sxanb6hJZaPe2+oTC4kjjgUvFOYlvGsUlbeBEoaYAbRKzDcCRtBI9elklepTVSmrnq0smr1KaqQVz44+03X979aPtN36/rX11e/su6/ZSSQT3ltDM720VqsouYmu5rsyrFHGjwqyFnhdczCJc4O7YQ1eA6L4QvNf1+18PabH513ezJbwpuC7pJGCoMsQBkkckgetY4jKq9JqM46vYxxGWV6TUZx1exwf2m6/vfrR9pu/X9a+obL9nm+vJpHj1OzawS1+2reILqSOSAO0bOIkga4VUeN1d3hVFK8sN8ZfC1z4RW+gaNpmuy6rZ3A1LOy2j+0LcKqj5nYSQohRW+TcrMrOGCltj7dJZNXjHmktDSWUV1Hma0Pn3z7z/Jpv2m79f1r76n/AGfPBUkLrp1290tvpsFxJMk5w1zNptzertjktoyI2aJCAW3BOCS7kReG/ET4F698P5rI6xGFS/3qpAkXbLFt8yP94qbtm9fnTdG2fkdsHG+K4fxFKHO1dLsbYnIsRSjztXS7Hzx9puz3/Wj7Reev619p6R+zBd217NHrl5a+TAblHdJpVVGh+2pvJ8lyUVrJ2IC5ZSoG0sSlj4g/s9aFpdnqLeG9QWe5sb/VIkhlZ98ttYRRTNtPlKnmRI0hl3MobaBEGON1/wCreKVN1HG1vvL/ANXsSqbqNf5nxH9puv7360fabv1/WvdfDnwe1LxBo02swSwxqpuBDE7v5lx9jiE1z5eFKDyYmV28xk3A4j3tlR02rfs/ajpFnLdTXttJJBZJfSRL54IieaKBSjvEsUoZ5fleJ3jYKxDkbd3HDJ8RKPOo6f1/w/pqckMqryjzqOn9f16anzL9ou/X9aT7Td+v619F+MvhLbeE9JhS4l8zUo9X1PTZ9jZhIsFttrJlVblpXyT1G3gHObupfs+6ppOmajqN9f2ccelQTvcndMfLubaSGKW04jO6VXnjXcuYTuyJSASG8mxCco8u2/l1KeUV02uXbfyPmf7Tdf3v1o+03fr+tas1vHHKyenuai8pPT9TXmNWPMZn/abr+9+tfot+wHLLI3jnzTnB0vHP/X1X58+Unp+pr9Dv2CkVW8cbe50z/wBuq+o4L/5GdL5/+ks+o4M/5GVL5/8ApLP/1vUf2qv+S9+KP+3L/wBIoK+eq/Qf4rfCS38ZfGPxfr2rXSWtoIZPs6At5txcWWkxTlUwjqFQmMvvKblYhCWBx41dfs366bjXorC7tr3/AIR93SfyPNbJhUtNgmMBAgB5l8sSFSIjIQRX4Fm+R4ieJq1IxunOX5tn4ZnGTYieKrVIxunOX5tny7S4Ir6H1v4IXPhebT/7U1K023d1NZTbfOP2Se28rzlm/dfNs80ZMXmA4O0txn0nxh+zxolnDqC+G9SSe4stR1SBIpS++W2sIopTtPkqnmRKzmXcyq20CINxnz4ZBiGpaaq2nqedHIsQ1LTa34nzd4O+IWt+DvNTTmiaG42mSK4giuoWZM7X8qdHTeoZgr7dwDMAQGIPpeq/tB+J7vStMsLOZraeyRvOuVK/abiY3Ul0HacKJQAzqdhcrvQSfexjF+IPwS8SfDs2J1tAovt6rgOu2WLb5sf7xE3bN6/Om6Js/I7YbHT2v7Ous3Go6fpP9oWpur63NzsVLpykYAwV2wH7QGOQrWvnIQrPu8sF66qFHMIXoQuraW9TqoUsfC9GN1bS3qcpc/HTxnNPDcwS29pJb3Ftdp9ns7aBBPZlzC5SONVJUyN1B3ZAbIAx55pHivU9FvW1DTpPJuDtKyhVMsbJIsivE5G6NwyDDoQ2MjO0kH3uH9mPxbNqT6aWhV1CjIZnzJulWSNVjRnZo/s8+7CkN5TeWXLRCS/Zfs5z6bdajF4quktFtLe/eBBvEtzLbWRu12KYjsUBomcTeW21ioAcELUsuzGbUp39WOWX4+bUp333Z5xH8cPGUdxJdRyQJKyKkbJZWy/ZwhYr9mxEBbHczPmHYd53k7uaxvEfxV8Q+JdPttN1M27paLEiSLaW8c+2CPyo1adI1lcKgAwzkHAJ5Ax7h4c+DXhXVfBVrq/2nztUuptTBiWZo1jisLTz+QbdgX3FWOJMFSqjDF2jx/iL+zrqnhuDWfEOlhn0bTryeJDJuMn2eO4NusjSCMQk+YApQMJM/N5ez5q1q4LMHScuZtbvX5mtXB490nLmbW71+Z5pZfGrxrZRSxJe/LPDDA/7qPmOC1eyjH3eMQSMmRyc7iSwBGV4n+J+v+KzbvqzRPJb7j5iW8UUsjNjc00saK8rHGd0jMcknOSSfWPD/wAA5vEOh6ZqttdW9s99FEqRzSyM9xc3FxdQxRxhIdsZP2Yj53K5wxkAbamh4k/Z3VdTWw8Nanb3EbwaaEeQyjzb6/gDx26fuVwZWDtGzhUVNokkVsioeBzCVLduL89767EPBY+VLdtPz36nnQ+PHj6SMRz6i8nyyoxKISwmiaFyx2/MzLJIdzZO+SSQHzJHZq2sfHDxvrNxJdXV4vmzG8ZykEMYLX8C21ydqIBmSNQCcZzlhhiSfSPhb8GfDfi3TVutX1DypTrOm6eYYywkMF35nmEExMm87cxktgBH3DJQNFD+zR4l1uaU+HpYb+38pJIJ4RMUnMjyRogBi3x5eKRS8yxxqVyzqrKWtYXMZ04yjJtS6J9i1hswnCLjJtS7PseP6L8TvEuh6ZcaRZXOy2uN2QURmTzFCSeW7KXi81AFk8sr5igK+5QBXRt8cvGLXSXAlt0SNGT7OlnbJaMHKli9ssQgckqhLMhOUQ5yi4qeEPhLqvi+S4WzmhgEU0NrH5zMPOu7nf5Fum1Ww8nlvhn2xjHzuuRnql+AWqvpVnqRvrZXvre6uY4iJyTFaQPPIRKIjAxCptKrKzK7BXCkNt5KFPHuCcG7evn/AJnLQp45wTg3b18/8zy/X/HuteI72XUNTkSWe4uZruSQRRo7zXBBcllUErlcqv3VJO0Dc2d3VfjD4z1jT59Nvb3fFdw+RMBFGvmgyRzM7lVBaV3ijLzHMj7QGYjiun1f4TRaF4XvtRv5t19bz6OIxG37ow6naT3XzBlB3qEQcHAO4fNwa6/w1+zbq2oy6dcXdxbyW121qzIkrxuY7n7EwUOYnCttvoxnawBV+Gwoe6eCx0pNRbu99fVa/cyoYPGttRb1319Vr+J8qOxdy56mmV9Qyfs8anvtXgv7SZJIoZbnaZR9jSe2a7Qzboxu/cI7kReYfkI+8VDaXif9nj7I7vol9FNAtrDNFvZ9906WUV3dmL92oVI1k3gS7GKEKu98iuZ5BibOXL/X9fjpuc7yLE2cuX+v609dNz5Mr9DP2DPveN/rpn/tzXlFr+zbd6d4h0ux8Q3kTWd1qtrp0xtnbzMT3VxbMyF48cG1kIJB4KcHJC+z/sPQLb3XjiNOgOmf+3Ne7wtllWhmNF1Va/N/6Sz3uFsuq0cxouorX5v/AEln/9f6i+PvxM8U+DfjF4u0fSp0FreJACrxRSlBPYQxSmJpFZomkT5XMZUsAuSdox5Fp3xy8bw3WpTSXSytq0lxJOXhhch7sFZ2iLIfJMinDGLbkAA8KuNv9qz/AJLr4h/3LL/0lir59tv9Z+NfgGa5hXjjKsYzaSlLr5s/Cs2x9aOMqxjN2UpdfNnv3xL+MUvi2106ysrJ7SCyaabfO8UtxLNOIw7ySRQwByRGvzMhkJ3FnbIC85e/HDx1f3j311eIZpXu5HKQQxBnvoVt7htqIq5kjUAnHXLDDEk+baj9xfpWMeorhxGZ4iU3Jzd3b8NvuOGvmNeU3Jzd3b8NvuPQ/E/xL8QeKzbNrBhke33HzFt4Y5ZGbG5ppY0V5WOMlpGY5JOck56CL43eNIrmK4SS3jSNGT7PHZ2sdowcqWL2qRCBySqEsyE5RDn5Fx421OrBZhXTclN3fmYLHVlJy53d+Z69N8bPG89+NQku8yi6ubw/u49rTXgVZ9y7drJIqBWjIKFcjbgkGd/jj40Md7HFJbxJfpJG6pZ2yqizReTL5KiMCEyR/K7RBC2BuJIFeMfxU49Kr+08R/z8f3lf2jX/AJ3956HpPxQ8VaNax2VldbIITdlF2IcfboVt5+SCfnjUL1+XGVwcmtbXfjL4v8RWN3Y6tJDcreSvM7yW0DSq0knmsI5SnmRKXJYpGyrlm4+Zs+RU89KhY+uouKm7epEcdWUeVTdvU9V0r4yeNdItNPsrO82RaXLBNbjy4zse2kmmiOSpLbXuJThsg7sHICgXX+N/jk7XS7VHjt4LdWEEAKi2XZBIDs4niU4jnH75BwrivGx1px6VSzLEJWVR29So5hXSSU3956T4Z+KvivwpHLFo1wkQluLa6O6GKUia0YtC6mRWKlSzZ243AlWyCRWrYfGnxlYWkVlHNFPbwReSkVxbQXMQUSSSgmOaN0LBpZMOQWAYqCFJFeQLSr0pQzCvFJRm1bzFTx1aKSjN6eZ33h34k+JvDElw+kXPk/acMwKI+2RM7JU3htkqbjslTEiZO1hk530+M/jGKKzgt5YreKyxtSG2giWXCGP/AEgJGBcZRmU+dvyruDkO2fIB1p9TDH1oq0ZtL1FTxtaKtGb+87vxL8RvEHie4mutUaFpJzb7ilvDFtFtH5USp5aLsQJwVTCthSwJVSOj0z44+PtLtrO2ttRYLYNC0RKIxBt2DRhiyksAUQYYkERxKQVijC+OvQOlEcfXUnJTd35hHHVlJyU3d+Z7DB8a/G8MpkS86/ZdwMcZVhZwNbRKwK4ZfJdkZTlXBO8NVm/+Onjm/F0J7pQLtVRtkEMexVjWErDsQeSGiRY3EW3egCvuHFeLr1pT0rT+08Ra3tH95p/aNe1ud/eeqat8Y/GutLbpqN59pW2mSdVliidHkToZVZSsvJZiJAwLPIxBaWQt9a/sJu8reNpnOdzaaPfI+0/41+edfoX+wf8A6jxp/wBdNP8A5XFe9wpialTM6TqSb33/AMLPd4UxE6mZ0nOTe/8A6Sz/2Q==";
						newNode.appendChild(img);
						replaceUrl(newNode, -1);
						newButton.appendChild(newNode);
						iconBoxs[i].insertBefore(newButton, downloadButton);
					}
				}
			}
		}

        function replaceUrl(linkNode, pathIndex) {
            if (linkNode.href && linkNode.href.indexOf(bloodUrl) === -1) {
				let splitUrl = linkNode.href.split("/");
				let index;
				if (pathIndex >= 0) {
					index = pathIndex;
				} else {
					index = splitUrl.length + pathIndex;
				}
				let setId = splitUrl[index];
				linkNode.href = bloodUrl + setId;
			}
        }

		function copyElement(linkNode) {
			let objE = document.createElement("div");
   		objE.innerHTML = linkNode.outerHTML;
			return objE.childNodes[0];
		}
    }
})();