<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>ZingSoft Demo</title>
<script nonce="undefined" src="https://cdn.zingchart.com/zingchart.min.js"></script>
<style>
.zc-ref {
display: none;
}
</style>
</head>
<body class="zc-body">
<div id="myChart">
<a href="https://www.zingchart.com/" rel="noopener" class="zc-ref">Powered by ZingChart</a>
</div>
<link href="https://fonts.googleapis.com/css?family=Press+Start+2P" rel="stylesheet">
<script nonce="undefined" src="https://ajax.googleapis.com/ajax/libs/webfont/1.6.26/webfont.js"></script>
<script>
ZC.LICENSE = ["569d52cefae586f634c54f86dc99e6a9", "b55b025e438fa8a98e32482b5f768ff5"]; // DEFINE CHART LOCATIONS (IDS)
// -----------------------------
// Main chart render location(s)
let chartId = 'myChart';
let laserSoundId = 'laser-sound';
// DOM ELEMENTS
// -----------------------------
let laserSound = document.querySelector('#' + laserSoundId);
// INIT ASSETS
// -----------------------------
window.RESOURCES = {
'bg0': 'data:image/png;base64,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',
'bg1': 'data:image/png;base64,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',
'saucer': 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAAZCAYAAAB+Sg0DAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGxSURBVFhH1VftTcMwEM0I/CZBQUoq/jICIzACIzBCNmCEjsAIGYE5UCNlBLhnX6jjXGIXu7H7pCdUfL5vn50iFMPD4e1UNl0MQherTYOhbN+Hqv2JStLJ6vcHMio6FcKUAQHf94dnapeXGIQuVntdaKfbUczoDoTtU9W8sjvhoOx1kqE9CR/YnXCMdX1HCo+kuE/Csv0MakcOQBytuRA+srtuYANlRix9LoSP7K4bOICSkpzoPSTG+umRoneOU1sGtNsgha4ZHJXpWawYquZLWFeEIcjQ39W2JTsfShFh6zqYHPb1a4FNJ8gwi1FAsowi3/SYTOK6ppEccV1xaitfvxZAmeEQFAhUmQdgSFjvzGfL1qQ0W8VXl49fClBOkcrz/8aoEsU/xHLeIHv+nkn3TotFFYPrewolRI9ukUUX4DMk7rFHsglJ3qR5/i4C5r6UCZtk5MhbZsD/JXlFmoAsNoPv9xUC4y3+SBIQTTJR3uI0zi+GT8uttU92LWdCK9ODw+vwRYC+n842/10VCRSQfVOvPzciAW1p2qSA/p5LwUCZ2cD5ArsylE22t5fNDFEUv/FQrkzbvwXDAAAAAElFTkSuQmCC',
'saucer-hit': 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAAZCAYAAAB+Sg0DAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAHwSURBVFhH3Vc7bsJAFPQRqFlbRgrpOQJSJJJ0SLkAR+AIvkGOQJ8iJnUK1ykCUsoUaVJEaFfaI5A3y+Nj/AAHG2wy0sjCO5732Wdje0VhguuBVldRGYQX21YDo9pD47fnpZI82f78QEfFpIqwyoKA5uymo/RttwzCi21Pi0XSPeubu3kVdLH1fZ/TKQ7qXiQFOieRA6dTHKF9aJDhiIyTKqhMLy40jlxAVGciR073MHABdUbc+roQOXK6h4EbUDKpFfM+JEL701L6mx6jazZnX5n53daAobWpMajCKwU99vtm7M93MGGZZ178qbDuqGPVhYaOkbQOUpxHZ0TQz8pKGnD21HQJ580rg71JUGCWedL6irFy//R0jMX1BdfNkdcdUQg0efPKwL6GDSQEA4Gu8wACCevRshgAXpIGXHYeyOuVJy8HmFOlyX+gaxT/ELfzAplQQcFg3415KVzUEOz/nnprzjoTpbv7yNIMPkPbkPQg1liWgaTfJHJi6d/wEdrW1DfzQ6QgI74kBZyX9OBEmZhlKUwDM5D020RhfEl+VFEQnR9K+iz1cZ8SeUZu1/jUbuQ2AaN3pS264440Grx0MmAXUjGP3RUJ',
'ship': 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAAcCAYAAAAuh5ywAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAE5SURBVFhH3ZjRDcIwDEQLKO0vIzACIzACIzACI3QTRmAERmCUjGDOwUhV5TahEnDhpPdD48qOzZHQfFzSbDfSHRT7pGJJt1tLG4EYd3tSqSTsB8Uk7Em9Wks4rST0SpVjt5H2iORvBVy1gxbGK012PGZTYG1vYbzSJL3kHaJ208KIhTF62XQOdUGLItXTpr1uTBEtklR/V5CKeuSeO34f7eqvwIkjnCyzZXrDsb6C/iRYaguFgyVectUXMbCoQzrbCE5HFWbQsbOlPK9xm7kp6BgWsphAluSUWQ0uZMyUWT6KQeXDCxkzUfO1zCfkXMiYKbp+YOHZcxU2NE9LeV5vXNB+THvJjxw0bGkF5Luk1TuBjMAUCp3Os0k2iv+P0MpHO0FLKiwnLKymoLLDKuYS3yPXKpnwi2maB/LUxGr54YzfAAAAAElFTkSuQmCC',
'laser': 'T2dnUwACAAAAAAAAAAAOPd64AAAAABaMDr0BHgF2b3JiaXMAAAAAAkSsAAAAAAAAgLUBAAAAAAC4AU9nZ1MAAAAAAAAAAAAADj3euAEAAAB5e2izEXz///////////////////8HA3ZvcmJpcw0AAABMYXZmNTguMTkuMTAyBAAAAB8AAABlbmNvZGVyPUxhdmM1OC4zNC4xMDAgbGlidm9yYmlzCAAAAFRCUE09MTAwHwAAAGVuY29kZWRfYnk9TEFNRSBpbiBGTCBTdHVkaW8gMTIJAAAAZGF0ZT0yMDE2AQV2b3JiaXMlQkNWAQBAAAAkcxgqRqVzFoQQGkJQGeMcQs5r7BlCTBGCHDJMW8slc5AhpKBCiFsogdCQVQAAQAAAh0F4FISKQQghhCU9WJKDJz0IIYSIOXgUhGlBCCGEEEIIIYQQQgghhEU5aJKDJ0EIHYTjMDgMg+U4+ByERTlYEIMnQegghA9CuJqDrDkIIYQkNUhQgwY56ByEwiwoioLEMLgWhAQ1KIyC5DDI1IMLQoiag0k1+BqEZ0F4FoRpQQghhCRBSJCDBkHIGIRGQViSgwY5uBSEy0GoGoQqOQgfhCA0ZBUAkAAAoKIoiqIoChAasgoAyAAAEEBRFMdxHMmRHMmxHAsIDVkFAAABAAgAAKBIiqRIjuRIkiRZkiVZkiVZkuaJqizLsizLsizLMhAasgoASAAAUFEMRXEUBwgNWQUAZAAACKA4iqVYiqVoiueIjgiEhqwCAIAAAAQAABA0Q1M8R5REz1RV17Zt27Zt27Zt27Zt27ZtW5ZlGQgNWQUAQAAAENJpZqkGiDADGQZCQ1YBAAgAAIARijDEgNCQVQAAQAAAgBhKDqIJrTnfnOOgWQ6aSrE5HZxItXmSm4q5Oeecc87J5pwxzjnnnKKcWQyaCa0555zEoFkKmgmtOeecJ7F50JoqrTnnnHHO6WCcEcY555wmrXmQmo21OeecBa1pjppLsTnnnEi5eVKbS7U555xzzjnnnHPOOeec6sXpHJwTzjnnnKi9uZab0MU555xPxunenBDOOeecc84555xzzjnnnCA0ZBUAAAQAQBCGjWHcKQjS52ggRhFiGjLpQffoMAkag5xC6tHoaKSUOggllXFSSicIDVkFAAACAEAIIYUUUkghhRRSSCGFFGKIIYYYcsopp6CCSiqpqKKMMssss8wyyyyzzDrsrLMOOwwxxBBDK63EUlNtNdZYa+4555qDtFZaa621UkoppZRSCkJDVgEAIAAABEIGGWSQUUghhRRiiCmnnHIKKqiA0JBVAAAgAIAAAAAAT/Ic0REd0REd0REd0REd0fEczxElURIlURIt0zI101NFVXVl15Z1Wbd9W9iFXfd93fd93fh1YViWZVmWZVmWZVmWZVmWZVmWIDRkFQAAAgAAIIQQQkghhRRSSCnGGHPMOegklBAIDVkFAAACAAgAAABwFEdxHMmRHEmyJEvSJM3SLE/zNE8TPVEURdM0VdEVXVE3bVE2ZdM1XVM2XVVWbVeWbVu2dduXZdv3fd/3fd/3fd/3fd/3fV0HQkNWAQASAAA6kiMpkiIpkuM4jiRJQGjIKgBABgBAAACK4iiO4ziSJEmSJWmSZ3mWqJma6ZmeKqpAaMgqAAAQAEAAAAAAAACKpniKqXiKqHiO6IiSaJmWqKmaK8qm7Lqu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67quC4SGrAIAJAAAdCRHciRHUiRFUiRHcoDQkFUAgAwAgAAAHMMxJEVyLMvSNE/zNE8TPdETPdNTRVd0gdCQVQAAIACAAAAAAAAADMmwFMvRHE0SJdVSLVVTLdVSRdVTVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTdM0TRMIDVkJAJABAJAQUy0txpoJiyRi0mqroGMMUuylsUgqZ7W3yjGFGLVeGoeUURB7qSRjikHMLaTQKSat1lRChRSkmGMqFVIOUiA0ZIUAEJoB4HAcQLIsQLIsAAAAAAAAAJA0DdA8D7A0DwAAAAAAAAAkTQMsTwM0zwMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQNI0QPM8QPM8AAAAAAAAANA8D/A8EfBEEQAAAAAAAAAszwM00QM8UQQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQNI0QPM8QPM8AAAAAAAAALA8D/BEEdA8EQAAAAAAAAAszwM8UQQ80QMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAABDgAAAQYCEUGrIiAIgTAHBIEiQJkgTNA0iWBU2DpsE0AZJlQdOgaTBNAAAAAAAAAAAAACRNg6ZB0yCKAEnToGnQNIgiAAAAAAAAAAAAAJKmQdOgaRBFgKRp0DRoGkQRAAAAAAAAAAAAAM80IYoQRZgmwDNNiCJEEaYJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAABhwAAAIMKEMFBqyIgCIEwBwOIplAQCA4ziWBQAAjuNYFgAAWJYligAAYFmaKAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAGHAAAAgwoQwUGrISAIgCAHAoimUBx7Es4DiWBSTJsgCWBdA8gKYBRBEACAAAKHAAAAiwQVNicYBCQ1YCAFEAAAbFsSxNE0WSpGmaJ4okSdM8TxRpmud5nmnC8zzPNCGKomiaEEVRNE2YpmmqKjBNVRUAAFDgAAAQYIOmxOIAhYasBABCAgAcimJZmuZ5nieKpqmaJEnTPE8URdE0TVNVSZKmeZ4oiqJpmqaqsixN8zxRFEXTVFVVhaZ5niiKommqqurC8zxPFEXRNFXVdeF5nieKomiaquq6EEVRNE3TVE1VdV0giqZpmqqqqq4LRE8UTVNVXdd1geeJommqqqu6LhBN01RVVXVdWQaYpmmqquvKMkBVVdV1XVeWAaqqqq7rurIMUFXXdV1ZlmUAruu6sizLAgAADhwAAAKMoJOMKouw0YQLD0ChISsCgCgAAMAYphRTyjAmIaQQGsYkhBRCJiWl0lKqIKRSUikVhFRKKiWjlFJqKVUQUimplApCKiWVUgAA2IEDANiBhVBoyEoAIA8AgDBGKcYYc04ipBRjzjknEVKKMeeck0ox5pxzzkkpGXPMOeeklM4555xzUkrmnHPOOSmlc84555yUUkrnnHNOSiklhM5BJ6WU0jnnnBMAAFTgAAAQYKPI5gQjQYWGrAQAUgEADI5jWZrmeaJompYkaZrneZ4omqYmSZrmeZ4niqrJ8zxPFEXRNFWV53meKIqiaaoq1xVF0zRNVVVdsiyKpmmaquq6ME3TVFXXdV2Ypmmqquu6LmxbVVXVdWUZtq2qquq6sgxc13Vl2ZaBLLuu7NqyAADwBAcAoAIbVkc4KRoLLDRkJQCQAQBAGIOQQgghZRBCCiGElFIICQAAGHAAAAgwoQwUGrISAEgFAACMsdZaa6211kBnrbXWWmutgMxaa6211lprrbXWWmuttdZSa6211lprrbXWWmuttdZaa6211lprrbXWWmuttdZaa6211lprrbXWWmuttdZaa6211lprLaWUUkoppZRSSimllFJKKaWUUkoFAPpVOAD4P9iwOsJJ0VhgoSErAYBwAADAGKUYcwxCKaVUCDHmnHRUWouxQogx5ySk1FpsxXPOQSghldZiLJ5zDkIpKcVWY1EphFJSSi22WItKoaOSUkqt1ViMMamk1lqLrcZijEkptNRaizEWI2xNqbXYaquxGGNrKi20GGOMxQhfZGwtptpqDcYII1ssLdVaazDGGN1bi6W2mosxPvjaUiwx1lwAAHeDAwBEgo0zrCSdFY4GFxqyEgAICQAgEFKKMcYYc84556RSjDnmnHMOQgihVIoxxpxzDkIIIZSMMeaccxBCCCGEUkrGnHMQQgghhJBS6pxzEEIIIYQQSimdcw5CCCGEEEIppYMQQgghhBBKKKWkFEIIIYQQQgippJRCCCGEUkIoIZWUUgghhBBCKSWklFIKIYRSQgihhJRSSimFEEIIpZSSUkoppRJKCSWEElIpKaUUSgghlFJKSimlVEoJoYQSSiklpZRSSiGEEEopBQAAHDgAAAQYQScZVRZhowkXHoBCQ1YCAGQAAJCilFIpLUWCIqUYpBhLRhVzUFqKqHIMUs2pUs4g5iSWiDGElJNUMuYUQgxC6hx1TCkGLZUYQsYYpNhyS6FzDgAAAEEAgICQAAADBAUzAMDgAOFzEHQCBEcbAIAgRGaIRMNCcHhQCRARUwFAYoJCLgBUWFykXVxAlwEu6OKuAyEEIQhBLA6ggAQcnHDDE294wg1O0CkqdSAAAAAAAA0A8AAAkFwAERHRzGFkaGxwdHh8gISIjJAIAAAAAAAZAHwAACQlQERENHMYGRobHB0eHyAhIiMkAQCAAAIAAAAAIIAABAQEAAAAAAACAAAABARPZ2dTAASAeQAAAAAAAA493rgCAAAAiK/qBWYBiTZKQ0BIQz9D/wU1NDI3OD1CRkE/NDg3OzQyMzU1NEZCQ/87/yP/EP8ZRUL/Sf9C/yY1SEdJO0VBQkVJQf89/zX/Hv8rQ0X/Vf8q/x7/IkNDSf9H/zf/F/8Z/xmYJycqOT8//1EAMpb8ffavLwHTDYQl39flzS2AG0g6yUYEAAAAAAAAAAAAAAAAAKqqbMdxHMdxGIZhGK7rOjPtRsN1XdeVtCxLEARBEARBEARBECzLskiSJEnLsizLskiSpPHx8fEkSdLv9/sPDw9fvnz58uXLw8PDQ7/f7/eTuK7ruq477z5V933f933fd9VkAgCMyChedOoQGc+z7t5at58BX0IGYMYzHFFd9849594h32BkvU7Wq6trBX+1w5MO+/90l3ZrrQB8RtA2dhJRYfT+0MVD20PXD2i74qcFwGzZzMGK+fpOVF4Y6Z9P/8X8/M0dtN2ef/PPHzzuovUthLSuzS7tTklJJf/7N7w3xA7fFSxN+5B7puEl/9ZEZhIRuBMLALE51u0+LZtx2qt20UsQiAljI/U5+Uy62m6O//2/btuWZtk0Tb3Ypllx6tDD2+E9Vwxk6Yh92K4d8S58gETSIRaASgKd0vkoep0qRjWXuCzjxlF4UbuexsxFSncqz6UNc0gYRarpbYpqelemknbZvdYGVOsZ74tm73dQuPcCLC1sBaBWBpgaoH7ZlonI/dTH5GvPy812vsnUyr98ffi8343jKJqVV8NAR9rWpW79k780JQEdPxFANzsAXOu+xvjt7VKdyb8ASxgKuB8AagRQxMEQU1r9l/JStYiD8/ngxw6pox+0YTT1/HXp141BhASB4YtQeDmfuzlqrqNVAITpBC3zrQ1a9gWIAhYCME0AI0ffk7Jp2LQ9qeez/Zvt1uL/0Vc8UVBhSePTly3s169jrE1ZPbm65vXjCaVMA3zvbyHttrfFb+4FaMIgBeCCGWDHU7tqODzmym+X8dnD/fnLg8e/MsdbuOAdnTWfUCC/6aFDo1W+Jb3LLD4fy0ByPQ2ym/4596kLARyg9vxru8wQCjjALwBAr9fbxcjMKMxUCVUFAAAAJicEkFIOxFfNkXiz1ucbKkdpMMY381ehnH9//v2Z+wtQ3q+8T9up/nztPPbo9uhd8fzU+/A4cvnx/NDeLuPDR99P9llPnjn75Jln9+fs855kQ+99VVaXevbnRVPnTE5Dnuxz62vua83aNT3kbPkpqriLpMybeaazB8fT2Sva7tv/2LCsDCkBArre16fFCCUhY/ewlj0KcdHDLDAtrCRJkmABSYAAIqa1yGm686NbdxzDHEs7T/48mpzYO2JQZAAAKyrOam690h9DXexhNyUMQQ74f8E0M3dGUyGfSgYMAGTrReBy/FR22KX9ByCVAgGoBvCBdfqEosRqeb2zd24pn+d71Q2L6l0sU6Tydr7+6ofps9AATOMFNLrffPvLOPcBIkwFYCoSrH/iNl/ruJS/Pz7ap46J95vtCBnsqBdB70L9ah10GFDPBxTXEdr85dveHP0PgIMCBeCOPcCdz/c2ittqXe/P+5FZ7/0n2zNLIZHLOImwONhbEiMGNNs5eLA/led1uv8ANAkKBGDmJEh3+3cUrO2E+ny4NjlvFr/cLNaqF8mFZByGL6jT8BmWI+2NDVzjA8G4K70DXHgAInBmCMBtCV6MLW1UhUYTtMNwRUsg1nAtJMlxeHZFOp25Z+XboCbrsb8J69MALNcxa3lR2N/68AeAoADSAuDiAnT+dmyalEApgzCyg1D9Sp5YOLIUL0aW5+t6Zab0fiWP/r3KdrXVdFerAiRbg7zsMx5pLvoHpDzGAsA/nA5q7zhmu09BBu/PnYfTaJ8nmlUZ5NaebbV/+eAjVX9VfU1Vqvn5qyiVuRDBkrgOATTjSn0ceZ9xW3Miega0LUkZgJ/wAFIZbz9F67gajQOidyW/fbNeLx5+NO5/nhnV0yWppGS989T8Mh31d+ovmiAZl9J3WwB058BzEb+0zlzz1r+3Z86jR4EUTABad8e57f+1+PP104/5529/y9+Xv13Pl/e1nNgKsPX60ZTr/kruNar2DuXMBmRth93hW7uXe8APwELGOyAA62SAsW3PKo7qqsZvXG9//zadPcXr/fru/6u/vmRL/+pnUfJVCATm7EU8I8AzOEzn9u61uvIife54AGJUIADfWA3g8l2Ra20QuoK5r5VZ9hh/TZ8/HTe5sV7e11I7nI4LggJk46b+8O99OrrwAEQhygIwlQkeP9VJK+Lx0GFIFCzEoRVFPfGKJBwbCdspb2uykfKO7HesVkaHAGRlW3Nx+PbCv9h7dx11UDaZcgHwqa7CNevSSZpSV1hKhTiOyBKtemJatSJeueP9RWxVWa2kEgV86xXHha/9BF38ASZRCASgmsC0mVZLqF2w96K/6Mfyvl7fV3ezzlI/UguWIayqal15Oyp85Ph9RfSLB4Tvpu6IHd8H0bUfIGIhAAA8kwFbeqQJWHVchfXtfpqrcYqsq35LoXZgES83X2/vrj8hdACU7535QpjekIy7/6if2RgrgswCQNDfsjkvDHWf5zbn1+yhiqEXfPKzszldfhepPEQfFGzjkHPrewf46x8gUgWgMYFY2SY+oyuzheXl+23m3BPm/Is8W3yOB8rE6PhzHpkf5li9C2zt0H9obBfJLP4DRJgyAOuMAE88LG2nFDUsrNbDhZ0Mr/upM5un0kkkJSGJt1/2CzsFc4gAjO9Md+32tn23PwARKwTgTRFgq/Frdw/zyZTrZ68unbu7Z649zkj9qP3RUzj52aMh8UcDnACE7WQX4Lt2iLv1AXCBCsA0rYR5j1gxqV2E66L3vI9ZobGWfI8yJgWE4OU22B/ojCQMV0cAjO8q94LHt/E57AdYcrwyAPMApowd2yQpHwx2x/dcynhw19PpwUK1Wt/3W74ujqpOKrl17S4jobGmVb6mqTbVlEZby7R6N3xtrb44K4fFoXuuPYpGWArUZQDOj+GvfuZyWu/Z33MQ5rxJZpcczbK6bZYRI5HDUMIKgqEDSys7IJ2p/SSpVrfeBmxh5D0926JOY+cHy9lRjJBShhmAKzz3vx7G2/t9V+xoSgBRFKW76F+NdqwYA6WqbXvbLNNWU/XP0LU25qJTTauqVADa2g1wGTBB1MGQqs3hsmAqoIcc9Nv6mtodZZFFJ6KVt/dUc0jRihhFrNw9k84MZllSZVYNA+SEoOkwW119cEXCscZiW5qLX33MNs7VtQfziG/Ut3q08ky+PVz74tfO1fVTPcbbrVZvf9za11Mv3tmrzZtHXp5oZj5eMBpO0czdffB5quzfobu/kuZEr3cykKVz08w1QFVDz5vUvvluH6a0u6Bm05xnpun2zlLfTHc9PUDX5tFXTTc1e6lmshiS9mg6/KvkFLR4PA1hNiZqpC8XV/PRiQmuDkT4ksPC8IWH+sqkSqCeqqR4OOkPpO2emi+CVNCrwuVADnW9wk2PZgsJbBvLn+R1v3KelySwQAHLtncsgImGsAFFRrKBFcCl6LfgGR2pyrJUSFl2Blt80iZVSFOVL0haIQAAAH4r5sk9cAEV6B1jsAQOAPA+I4yUGYvCHhlllFTMNZRQLidlEuj01N7AqxdC+P38+LSz5ZFpkR15sOrYi7Z85GBZ+a6hm1R6rW9KSpfP6/7l/VMeLr8+970+LJ4+7veRY5/9Nu8jb5935W0Pb/cvwAf2b1exT7a/6BKQJ4E5//OhNkB+qvKM1vcdnTrZ709XUvBhKM6/N3QeIGs/1DQHAIq6puHZbHO0Dc7K6TkDl3oqK+NNAVBpdN9e4Z9aE8SZR8QEDtoFL+mOQuqLNUkhbfeuik/4ebF/GW+pYOsvLMlAd9veircQMcTJfPNgjD8yVgDAs3SVe+hqarrHz2sOgquqK/vWPKxHWufa+41rxFaUn/Wl54kI1HuF6GlyHzXlxCoA3nwezR7iAYBDc3qOe5wLCOB0t8A6PTMzQw1VVVUATtvp1GysC1avMmzk2GqHq36t+u5bw0XS6wf7S5HLxfhyIL651ef9xWFyUOc51Q+6PBomX1ka9znq/jCfeBi3eZub6r3kKLMyfuZhlg377MOX+O1nwxRdhz77bHrOPFRD1gbqyR8N+7xkFqJ3/dnevQ9kbfzpl07O/wyzJgOQNTV4Q5590uVhzZoFCkKGnsc6cwZMk/KS1rqEMkJWsHYykiKYxf5SryP8Tf9KW7QvkCUJfJlXWnwrNPcqdYQBx4P6UmBs06y4NoG/qaeT8d9l5tyv7K0ND3Zq2tDb3WKeAzZ7uZiwT9YtBVubBxCfM8FHAda7jnEtM64BAL3pGJcMHADgFwCgmmp3x+6Dpqk0NZTAmMWqKgL5FBnIRO5l1mDs/bQ78z9LI1NpQmwt11LDDqa62SdT2X6nd1nU9+nRyEDauF763pvxKROd73OMc25v3de9F+v3dc7COL0/X+9nzkeDRvlQO4OGOef249zGw2VOGc6Xvy6Mk0yn6pxyCxEneIib7nvIvmvg7OaUaencsF1kmvFksgSVwI/ZVqmeR5GFJLLoWXIMYwUwApefRJCMswVSkDIbIEKykb3+45X7+6hvazj4jJ8q0IUEBqQ3c92PgIxRx0Y1naXPSgn2kmUDmpZ7GELTZARArPiQO5LzKObYDDjWw2/jogAYESAaatxubICFVoA/8AF0ZY00/ztH9JPgA0xxZQCakWCCH1/Pz45Pkd+Xb3M9vnla98/T+gw7zq33xcdu9bbVlt6j+7XDy19ZJilnTbO6mqah2ACEaaRdHK7D4dpbz8tWTzIFNJMAuNFYJ+X4+Pl1fLl157IGhgzWq+lXb9Z3YIzdX/t9WvHxdJ9alUrIldr7mm6aCgBaa1ZkKTKeBgCzY5vVDqMGeuAXAKDsHSjqs0dPms5uYkJllmshEbAKyMgglrgzz76Pm7qwTTfaXibp1OrWtz3CtNvcbrPKmVltneH/y8rv+1jaqcHqRFIH4+j2jYcEr775x9mf/1wdN/fV9W14d76c8/Hj7XGPh/nuPO5xHqaz5xjbmD+36S2vnNsDNeSmdzRvk0OkGlQHPbGgCgPOAMBj30oQtwdqBmM1KHQjnHLSK+IOinE36aEa0vFCpoE0dfTSMEN1s2vv7fHnxr7fbrPv6w+WETJqlWhSZiJgOxIWgCwEyAYcocqvvWXEyOEBOj7CjgwYYQ0PJ7ue2OXKwM+y8rRXvvMAvyeIJX9K1bblV8g2AFxYZrcOPABCLLjk2L3e9dZ5JpXl5f2sTB3yynolLBuo1Pqf9YVKq1JnLjv0aptUpTTx4loAftu1iCO0CQD0einZI3QyiCAaPdAyIcGekYXOzGBVzAdhSBCJQN7tx83eYH5arNGvflrvGRefa0lfH03NnT31D3j9PG+9v99V+1D6gb7Km6XVF5tbQT8/2hvSnt5Va+6fpk//fP+xH+Y+29m+Ptzu5/HTnDVvd2cBcN4m6VG1BfQbuTlD3runKChr1WLgOaUyzj77nxA+uhFXoJVYhwHacC7LWf3kaEhnfaphtn/5m95fu4BTzQDNSeh9Nvs75YTpbCr+93DOrs8BGyHbFha3hI0AdJqY0D/v13LlNFXntof2eV6pLLXewWqPHfV/YVBnhD97BPhdBV79KKSerqiUIpLntaQC6mxFf/AiQLLAULW9x/WR8OMvy7KRbIvOq0c2HJahLAIj6ZXwxHYoSKBYloUlybKMrFUIWIyMhSXL6TYAVisWdAk8ACBWrMESOADA50MTh6h/0oo9YuRTP57RaaaRu14DMkt2aknlKldVAEyzJg631WBsnXxC95vnmhLys/P1swt2k08fdrZn6rvmVWP5ZHXF/qzn9/l9U/47v/x77800+5f7XG8X8W890/+FXOrztWvOPkDlGzjqocpVNJrlbaxqMFUglI4WyqSeFv0KgYypqqZ3ZkW3inufyTn7oTef7twfb4+jvny+7a7d9Tm1uwYmVejp/L9/CirdIZtEkBjc05YxZh9KpbdRgUEWgA3xYiFLBizT7XJI1Y1PnnyvrX9Ftp4SXFzs7fEXHl4Sm75WVIq73sOrEZl8Fkec+qSHdizS7jMzLC4v9ZiKuN6yznusZxLXA9vj17oe/hgCC11JAwBk62n90bjS0+kH4w+Aw1gBmJ0KMHvG/5vbEoTv38c3Ps1LejyuhE5diviU+TUb8dTmLiYgDlzhSv1i7M7Gz/j7o1+WmckMbDMA9lzubMporj01I6/39uVF72Ia/aZ537c5L9VbJUnT5F3VvtIypa36KliPSbbbtlL/e88LA4ztbP9iDNcR58KtZ+I4Vs/5hPIMAGT80r3/ax4/mn1ZNG9z3/L1NtbtWa3al40USuqXVCU+0vGnqkbVe7XiaxptpX7X+CoAXOn25oh362m89l+A8BKfBYDxPDCvdwtXtjAUjc9+3XUrIIpy2ekeOCtqixU+Lsm2q/KsKoYw1Cv6xyJp/ldJ+KJSsmBnGKgvAHTv5XSR49toLuIHiAIpEIDnI4HZziVWFZ1b218u2t0sWkWxo6jCS3G8LKuXNpL9+vXr1+npmjWLaBAHlO2M/4os3wfAbd73a3pE3yaRC7EAfNsc22P2sOJaf+R2met+1l9rflua4TF+jRVQVa084ZSr+UJpohvqiw0/Q/1qQf0CfOWMeSsMZ/are3nWKmFCmRwA6rbuXMaeyzX1muW9XTC762Fe+vPl5/hgkEI+SZO8S/IWKc1BVemtKs9t2qRHkwCEbZ2+yO5su43/AClEcwvAZAC/M5Nv0rY3Wv+2XtVjPNUCS7v5qDHzvpSRHEp6dxKi5vicJOltqlpZvVRpuuznQQB8b728zDGtMxd/gKZIkgTgWQLLxs5Ze2d1wJUf49dNRw+rc+8VIwNXt27v789VlV8Xkq3y3EZKETUrWX1O2+zxWknTPAF049hI/18Yef7dmjdXTzFi9zvUZQBe6s7C1Xi4P7zuFctdb32qt9RcNLX6Kb3OyAqhZY2sD2NNslxGb1SVHBXhF6qqetvy+hYAdGNtyNvSQuwRXoBES0IALuaxoM8nzjv3G/YsytPICr1ydU8mXQQdV8u2P9fIF/f9QumtTtqGVE7zZar8KES1wgZ6+h0ANYgDggWyoFZvjtbkLKCDHPQXAODDhy5lc2KxcN+AkZmZKVeVqwaXoEC+P1oiI6MFJ+Jh6EyXp0abdHvX9Z/Go+Tp249w+NC1m8tpaO+272DFzzukH3/56E23/hrRS9t4cHy6j6/lrZSHaH2Qc+c+bqcuY66NPbpXZHWUvfvZEDfIJZJ6etN58FHxL14NtTldvjVDMqpqxXtT2ZX0UEHDhGqQB4BcW9UaqNZk0c3UUp1vd/VoKZg8GqheB+RRyaNDRfQga0bOUM004GiMFVNijmRQvOC9LxIW6r1Fuabe0yk3+crkfv3xMfXYHJJl9VV0dbLY90hdW2hSDryyLl4q3cPcmY4WnhWpJMs0dsTeXOGbndlCUMBOkhcQ4EdyAMh4saAcHRYVMBBgWfJSqUg36a1+2wSp6hQAvsvl4RpqAgGuBHMBXENNMFI1Cbucq+qHBy4FRwqOPTPKEjHLCVZVQiuTQP3pcfxc7//tobrOZ0+60jTcNpw8xPyJ29QrcvmVyOrx4JAd48Xvnji98khk9DMzz3/squbvH7tO5nq1vanUGLU2Jk5Ha1Zn3JNWpeXmmh4gD3l235Vng1VZXA1aHzeZBZXT0ziaOB3F0KRJ91TWFX/WpnmY/vfRba0jLySAZyrqdMLQqL0Mn1h1xUuxpxuHs2f/I+OOysnyMFRtoq+/ZiU3iQCZcPQv7shYAJaY7D3/pYpxwK8Asm4htjif1mPZAABgSnO7pZujqkNKHWC5m11fWLTtCK75XrjventVvS7M9cw/z2afHMuix8WCLAsMgJPvImL6ML9adUim8y2u0JQSknafTvwYAQC+bJ7cEbiAAA7N6D3uCXEACRyePoSE9xGlPTIzMzJUVVUFoDfeaZN7gwzP5v5PjcPHu37ywfTe/lvvY+j1U89Zvv7hz2/v//rjA99Ytj6u7skxxsP6LbM+zxfnYrGubapc1qfst7/P8/xqsd9m3l7PMGQxX/+qOWRfRMrUG5AN0yArM6OJkLWqsnBRQPa3s6Gmyny9d8VV03k+ZzdF1RxTuFeRGU2SJfckQG/66iuVmWfoya/dAL2fnXLWVLmKwrQbAGpiemlkMTB1we6m4q5WLBEgEDJaa/y2eP77dwbvrOMxw0u321NxTHzZ/7X6UHOpc6/JFUbihBgj958f4O/Mcyr/iy22tuxgRSLuWW/6nX3mYnEBQmDkASAINAC2qzbxDHFAE8CpN23MGrgAwC8AgPI//V5dTtw9amQmHeJQNSRUEQDFqxNEKyIRtsZRfuvhp3HlNml98ODzm3+4y7s3z3jzu6Ozn73ExhS1YfrdTvptvnH5RYXYIZkcBH3Onj1+yusleeinvd3exrmd7nOdR3Uf9Vuo8ilONAPgsePszEYtCpNwa7YfzPt8fz9yzCEfp0Ubv6fVy6gGpljjsmeloHvAkG7T9DNU0d0iu6PVNjXI9fTpsA8syszM2f+cTWbPrp66d+ui6mqzgCyBZAFIIITgltHAMJSjQdR7AWLZtm1L5v6J3ck93qzEjI8s1q3cUxJi1JqdXQSdODBeTweQJCQpknr2ZfGylogkJEWSJNCqiKTHDJDJYByuWmvW3wat6xnCyHgdTGF/U1H4XTpt3noAhnkoALfcDxjo9Nm/qckN60/FloJg3d/5/dclD2O9PX48vkai5zJTk+FJ2yqemtWkqirp96aWAHRplFx2W7ORI3YfwFGTpHQAmDlXQJdOfq56q73TZn3/zb9al+idXujUa7/z0F512okhRFPeulQf/yjj/u5QVvO8WtVjCdo6DnAJHBOA0Ss4FDUDpQGw/wAAbh2//eap1W/Kdr5Z5ZWLQoCeGWVSOScJCU6EWAKHQQTF21eRYMiR+Y69/e2GIQ8/vfHPrzY17oVa8//cg9xO1xrUyfU9e83y7nL2yn/exf/iStu2P1+/utz/93W+ta+9/sral1tF/fPV7bbM2tUdVNYpdY5rUu8KI7+ZsP6x2VNTOUfqas2QE5qxls6UB6CPepyDoNoDs0y4wzw7GdIxTUbhHMS7IYuppbyHLhjdYIrthhwahbWQpmucpsdG3Zy7RjUDKUlaxMKM9p7maYIqdfYunqmJukglKu2XpFIqP4WFWDYCy0YmuqzH7+n+sR4174EEwrIXyx63mHm0MLyeqI8WLTAYoxWQ5VfCBixf6dWjt4p5oXUASffXL69OjPn/ffXLGAvJBkckY4PxlnqVYm1BRhgkZE57f30Bq2QJAAD+O0Z4DX5AAigeM7mGmqAAPEkadQpd+8aFC/RMRmZkKKsahqoIlLlgxPLrgR1r7f/V9TVT+nK3Kelj4OkvTA4GXzX3P3r2cuNurvctyyemprfF//qX7/dPaX/trf/5jz8/1etXo/rGvupv0gE9pmAJmR5UaTnrsuB+yPNhkh4KzvrbyIDsoEtTuEd1R1aiw+SY/iy7h6v1bc9U5qgxz73fcyPDQI/eus7OdPbc+6Ez5uRmmQM1ZEX3UI129wAwh1pFepreAg0+Eb88g5sud9dCxpKtVVBdnhwLvXv6sGCNQo2ErwoVR08bPWx58Gapm1bZghhsc46rUaE/Pj8bXiwLhAysij6dLxmDBJKh7F60Y7K0SB48rVm0oOVVLxN9N7xl3Y/p9RwOVwAejV7dHjiAAM7H68nvCRZQwP25ePtKhkYHHPqjhzq9gt3IzKSTCDRVVRUBMPVq0/n9uV7Ji7nbgaP3j8am+cdmHrQ3vtxq51unNLo5cO6Hqflw3d7n+Vn5x7ntT9/fFuPhcf3j/Y/PyX2xL+uqubLOq45if81T0xvoXe9S1ROB5MIy0dpr47KqNE1p3y8w54Ozp5mFitxrj9ZJSiPiJ7+ShLN7BXbtpDS9Nio09KoxQPTXrabQeM+m3SM6oZr2RNb0dtHTczU0NsIYOy3yxAB8A2RMFoQqqPS+KyWVUsBfqRSVWNyfwDRvUok9OrZbk9Q8uFcDxxd58K4VbZsBsreuYOQ2SbS5sMqvCjv1y4SPzBieKwzQo4YNZxKVvAXWq27lCL6AAe5btTN74AACOP8CALh+J2WentSSneY4lIeqKgIgP99CkvSIGIiu/3+fcc1VxzU5q6bo6tV86ECq8nce/aAgfvjzcDWM/XTYlejD/n0P5tqDRTAsZ5X51HkrGRDeHieD7d7MK2fUSM1errEy566aakFHrI0UqTR4trUk4BmXl2kad8dKjrmtb3USNeukfJaHKtbc83V/f97n4vTHGDV0TRLlZmUkGMFrGrpvO+3Htvecs3/qwEEXZCYFyYqSpVufUDEIZAGMJgUyleMuIstHwjyOFgOIVci2ZUdWetYr1nlQX/VejUQE1fyzFgbAt2Qj+7rnJxS+pJCHky2xfqAIOaBh1vv7RdW432O7mSd7/2myqnA3G9jYN4ANfGWTednwnege2g/QxB0BaMYBGfp+0LnxNLv/jGufPuZLD+andf3KOrvWD6GTFStbBssz8WOd8XqxbaKtbimNdv9MAXxtO3mf35qpPd8XYIoWCcDsPXDhdg/+vL5rOPGs+06N6Xied+rhqI+aCy++uFx9TkS3Ko9oWrb6km6jjeLw7q1OGgBkb5t+mFs5Bcx/AQZfZAbgfSNAc8/raiNtYfAsGaykwYEidWbvou33F789WnyfpCSqqtqq1aat1TZqoNLvUKpWS1Ta1DLXMq8BGgtWZalwHAAI7Q6glpECVMhC/wAAPrW+fr3Lsvedz/3S3j2TzkyVIMUSGnAwCdx6OT97gRw5coxjcnHGpBKCI1OeMO/PzpYLI/Zs2Z7mpl1mDms+/Opv37sY9vdvP5pVzg+n2m/nyx9nPf7677zP0/55v8zv/V/9V+2e52FUPYVy+khQR91VC9WzYAqvydg6IM6GFU73UsxUUkFTswJEXqkOpK+vxW1Hm7TWSbrmgrbT8OaN2EVW+shpngHk0WBgKurmiHTjrCZPXVbNdsNRgVbLeQc1YAksq7f2/JLaptBfMExN7J+W1rkHeqc+v1QnaoTNisAS0ydrikrVeyHih92S/uXJysTFp4RViWhvuvjqztp46RYlY2FAi+V0nPYeSIUIxBUGtDoeB1GogiuUb4Kfl49LqvBeKqqqUknVez2kqYLgBgD+ywV0D7VggNAw3NV4CiwAjB5aunIXL57HHidHJp1RlQxZORaLm00mAYeQ06b6tH/cDvRnuxfenVu5rDe8vBj6fnq9N1lw91jWVxYD0dvRFk7th6msPnBte7PGa7u83xLn25Hu/8leM0LTEGqq5OQazUHFPu+X/mAeu3Lst/3Rf/usNkzDoQcm3iQrHK1MV9EDa/8TsncV0wX5lblaLljsKcT9Kb1yii4GVc5CkQCY0bmAgenJ6SHfHj71TBdD13Y50+YshUtAqUiFq7BgM4dT3z6+dJlzeKmov6iotACwFWM7tNjzq5eFx21gjtxgUT6r03MtRMOzsXCLmr9V0ZbSTUXRBXrlx6Rm3yJLGGWSpHueaKeK8vzVAizxVMlH5XslVAU5GSpZgUrVx/c/IhJtXhbuvwEAvgxueknjASrwTB7TGjiACDw4lrHFzz05DKdnRE0q1RoSqqpYAKwL36WpP7Q/O2jK7evXK99Xt+/nZVKe/cmvJv1uocJ3gn2lBve3DlP9wRyshoPL3XXWZ7h1Tj3vP8Ze1/5jncczf0pzJkwgbG/tzh4WZ2+3KRZDCBuoUS7O01IW4815aafEXbokiBgtP45PmqauhXg1k4t74iTX6iK7axcL18mutHRToqddMW5pXB47zTiGjIxOsSszv6rzqvdRwTVVVcl7KZKaPPFmAyAMSMHtrfvVw8RrYyHZBi+yvahid7zF2mHniOyE7ax9gSNw4n1thXjDnFsxTn/dmZZ0o2+cpQ989l+9s+ylogXYeFixTn8XmgMefV77EvQBCjg8n5e6BiYA8NyP4AmV5z/snpmZkSFWVVUBmF806X3IMN2H1z1ziansGBmpWJw30rfYE3fjnft99OlSepU71vXdhuVbOTvzpU/r1e+Xdo7z12JfnNqXM94/7brfh2VPWyZGW/vMChdQct90Ll0vk5l07X5rpa+sY2ixj2Dc8wGbeQbooc50pMTF2zAks1KR6Bvo6VkYapy7d8wBeHZ2V0FAFtQ+DBqthovFZ0qmOkXVamUyXbtobePYdYNK8rvXcz1/yAKwtUrSgt0vXnm3dDxrRtZTXhba117WwxwW7Jizsm0GRRNZYC+uA6fDSnB5zDNUu5eRrrtazd05OnabNRSC0P2Ld0mojcB2lvZLX3ACvlxe4x78gKiZcC+Xz3oNrUFRwP3kiQkezWnYnbHMEiXnEqqqCsCUm7A3ruXu5VCyeXLu89XrcBI1J9sHast7K69i85WWNDj64IpSFVYcHoyGbdz/+Lv/ti+/fcR8qHXt0855Vk2zLoYs6Kl99q1hnywqnWcX1Lfn/UIrUwNoJc/7rJFpmErn2b0uhup9srJIB3FW1izuaSgN0+mzz/9xFgxnYM7/sYq+BDLPrn3uD8+Re1cOwD4557//DuXjy6r+/0YmrWlosnavsoQsgB4pvZjtF4/w8OjckZ1aBuanl8Nc2R5gWdYtWYblPdFOzYvzk5dmA09huAi3VBKYT19gUQfsF0+ZT+XZKjNsD2CL/ZzYKuwUBmYgADZr/kdzazgCOMCr+Z9TCVMAN/ALANDv9/v9fuoZUalUGAAAAAAAAAAAAACAq9sfIwEy04mgZtzaYFcn3ObEhLg2ycCd5p/W12i0Ws48YAB/fpKmWS6XnWXT9DNgew3jMIxDl4FWLtISScoUtF2hHdq2AVqSpCVT0DalXlbYYFZrHmoBjGz2BFgqgoKLfV84YJYC4GIBALgAbO+rD03b3lcPmrbSAQAVAAAAAACA9ZHgwtwB77gSk69fv37tZq4GdO+rDc3b2tcwNHSlAwAqAAAAAAAA1Z7g6PfVBnElJl+/fv3azdw3bO+rT0291tcMmrrSAcBiAAAAAADrI8EHrRfXxpWY+/VrN3OLPnPzKwEbbG035v1W48XSTOQDRJglAGvNBOluvck7aF1zf7dom+XbZdG4tDOoMZBT6WYyV9+udwFfF/x29b4BVF8tl2qWGkDwABBhlAr8eBwtHNt73JvO5PHjH87374f9bXPO98N33/3875RJf1Kb2We8kPcZmryd+Tf65scBBD1aBnHncT+A89v//q3Lqy7CIKXAMbj+viy3nt6apls3D9jfvx32bx/216b/k3G8vKdPDyn3yOM+Qu+R0rwz+mVcysyf1gsCFEZ5DTO+auLJ/KF/eelg/QMAuJxfvd7HTz/9/NOn178cDffzUIcq8Dz2jBpJ08yKxQpBiiAEoW3th/tjXF5djuvQ8jiDv7rMF9b3xf7B/NHP+0qU7v28f33ZbSd//td17rv6fv7nlieaDpt8vrlQvVYPUkm36eDmnU+fP91v399ef72+rStzFHD22We68r6+Pl+fs89Ann12D+yzzz5Z6SgOwiBc3FNZaU0P92VqM9iQ6i+envuX9dv3H/dhH4LgcOjHcc/Zd1pW5ZkeOetz/r//2WefrLj/33/9Pk3YX9ed7ukN0Pze9Pv9vgKYEwb/IAwsPK9GekZAlmVA1kf28wWYmX9598vLvagv3mx6Xh3Don17vLy8CLSqel6+nOHlZSL8vHjLRZaLizY2APNy8fHLCy8vLC4uLi7aLNqwuLi4uLi4aIMN'
};
// CHART CONFIG
// -----------------------------
let chartConfig = {
type: 'vbar',
globals: {
fontFamily: "'Press Start 2P'"
},
backgroundColor: '#000',
title: {
text: 'Top 10 best-selling PC games (copies sold)',
color: '#fff',
fontSize: 16,
fontWeight: 'normal',
paddingTop: 15,
},
plot: {
barsOverlap: '100%'
},
plotarea: {
margin: '80 40 95 80'
},
scaleX: {
values: ['Minecraft', 'PUBG', 'Diablo3', 'World of Warcraft', 'The Sims', 'StarCraft', 'Terraria', 'Garry\'s Mod', 'Tycoon3', 'HalfLife2'],
guide: {
visible: false
},
item: {
color: '#a00',
fontSize: 8,
width: '100px',
wrapText: true,
},
itemsOverlap: true,
lineWidth: '0px',
maxItems: 99,
tick: {
visible: false
},
},
scaleY: {
values: '0:30:2.5',
format: '<span style="font-size:16px">%v</span>MIL',
decimals: 0,
item: {
color: '#a00',
fontSize: 8,
offsetY: '20px',
rules: [{
rule: '%scale-index === 0',
visible: false
}]
},
lineWidth: '0px',
guide: {
visible: false
},
tick: {
visible: false
},
},
shapes: [{
type: 'pie',
angleEnd: 530,
angleStart: 190,
backgroundColor: '#009',
flat: true,
id: 'pacman',
label: {
text: 'Oops!<br>Wrong game!',
borderColor: '#fff',
borderWidth: '1px',
callout: true,
calloutPosition: 'left',
color: '#fff',
fontSize: 8,
offsetX: '80px',
padding: '5px',
visible: false,
},
size: 20,
x: '950px',
y: '560px',
}],
labels: [{
anchor: 'c',
backgroundImage: RESOURCES['saucer'],
flat: true,
height: '25px',
id: 'saucer',
width: '52px',
x: '-999px',
y: '55px',
},
{
anchor: 'c',
backgroundImage: RESOURCES['saucer-hit'],
flat: true,
height: '25px',
id: 'saucer-hit',
width: '52px',
x: '-999px',
y: '55px',
}
],
crosshairX: {
lineColor: '#02FF06',
lineWidth: 1,
plotLabel: {
text: '<span style="font-size:16px">%node-value MIL</span><br><br><span style="color:#a00">%scale-key-text</span> copies sold',
backgroundColor: '#000',
color: '#fff',
decimals: 1,
fontSize: 8,
padding: '10px',
shadow: true,
shadowDistance: 4,
},
scaleLabel: {
text: ' ',
backgroundColor: 'none',
backgroundImage: RESOURCES['ship'],
backgroundRepeat: 'no-repeat',
height: '28px',
offsetY: '30px',
width: '52px',
}
},
source: {
text: 'Source : https://en.wikipedia.org/wiki/List_of_best-selling_PC_games',
fontSize: 8,
target: '_blank',
url: 'http://en.wikipedia.org/wiki/List_of_best-selling_PC_games',
},
series: [{
values: [999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999],
backgroundColor: 'none',
backgroundImage: RESOURCES['bg0'],
backgroundPosition: '50% 100%',
backgroundRepeat: 'no-repeat',
guideLabel: {
visible: false
},
maxTrackers: 0,
},
{
values: [29, 24, 20, 14, 11, 11, 11, 10, 10, 9],
backgroundColor: 'none',
backgroundImage: RESOURCES['bg1'],
backgroundPosition: '50% 100%',
backgroundRepeat: 'no-repeat',
maxTrackers: 0
}
]
};
// LOAD EVENTS
// -----------------------------
// Load fonts, then render chart
WebFont.load({
google: {
families: ['Press Start 2P']
},
active: function() {
render();
}
});
// HELPER FNS
// -----------------------------
// Init chart events
function bindEvents() {
// Plot Area
let pa = zingchart.exec(chartId, 'getobjectinfo', {
object: 'plotarea'
});
// FLYING SAUCER
// Init Flying Saucer and movement interval
let saucer = {
aperture: Math.round(50 + (pa.width / 2 - 100) * Math.random()),
angle: 0,
x: pa.x + pa.width / 2,
cx: pa.x + pa.width / 2
}
// Movement
window.setInterval(function() {
saucer.angle += 1;
saucer.cx = saucer.x + saucer.aperture * Math.sin(saucer.angle * 2 * Math.PI / 360);
if (saucer.angle === 360) {
saucer.angle = 0;
saucer.x = saucer.cx;
saucer.aperture = Math.round(50 + (pa.width / 2 - 100) * Math.random());
}
zingchart.exec(chartId, 'updateobject', {
id: 'saucer',
data: {
x: saucer.cx,
angle: -20 * Math.sin(saucer.angle * 2 * Math.PI / 360)
}
});
}, 33);
// PACMAN
let showpacman = function() {
// Init pacman
let pacman = {
x: 950,
aperture: 0,
diff: 1
};
// Movement
let pacmantick = window.setInterval(function() {
pacman.x -= 2;
pacman.aperture += pacman.diff;
if (pacman.aperture >= 40) {
pacman.diff = -2;
}
if (pacman.aperture <= 0) {
pacman.diff = 2;
}
zingchart.exec(chartId, 'updateobject', {
type: 'shape',
id: 'pacman',
data: {
x: pacman.x,
angleStart: 180 + pacman.aperture,
angleEnd: 540 - pacman.aperture,
label: {
visible: (pacman.x > 100 && pacman.x < 500)
}
}
});
if (pacman.x < -50) {
window.clearInterval(pacmantick);
window.setTimeout(showpacman, 30 * 1000);
}
}, 33);
}
window.setTimeout(showpacman, 5000);
// USER SHIP
let ship = {};
// Mousemove
zingchart.bind(chartId, 'guide_mousemove', function(p) {
ship.x = Math.round(p.guide.x);
ship.y = Math.round(p.guide.y);
ship.nodeindex = p.items[1].nodeindex;
ship.nodevalue = p.items[1].value;
});
// CHART CLICK
zingchart.bind(chartId, 'click', function(p) {
// Init vars
let laserpoints = [],
x, y;
// Define a hit
let bHit = (Math.abs(ship.x - saucer.cx) < 25);
// Add laser points
for (y = pa.y - (bHit ? 20 : 80); y < pa.y + pa.height + 30; y += 4) {
laserpoints.push([
ship.x + Math.round(2 + 6 * Math.random()),
y
]);
}
for (y = pa.y + pa.height + 30; y > pa.y - (bHit ? 20 : 80); y -= 4) {
laserpoints.push([
ship.x - Math.round(2 + 6 * Math.random()),
y
]);
}
laserpoints.push(laserpoints[0]);
// Init laser sound
let laserSoundEl = '<audio id="' + laserSoundId + '" src="data:audio/ogg;base64,' + RESOURCES['laser'] + '">';
if (!laserSound) document.body.insertAdjacentHTML('beforeend', laserSoundEl);
// Re-store element (since it may have just been added to the DOM)
laserSound = document.querySelector('#' + laserSoundId);
// Init and run
laserSound.volume = 0.5;
laserSound.play();
// Add object to chart
zingchart.exec(chartId, 'addobject', {
type: 'shape',
data: {
flat: true,
id: 'laser',
type: 'poly',
borderColor: '#f00',
borderWidth: 1,
gradientColors: '#f00 #f90 #ff0 #f90 #f00',
gradientStops: '0.01 0.4 0.5 0.6 0.99',
fillAngle: 0,
points: laserpoints
}
});
// If there was a hit
if (bHit) {
zingchart.exec(chartId, 'updateobject', {
id: 'saucer',
data: {
backgroundImage: RESOURCES['saucer-hit']
}
});
ship.nodevalue = Math.max(0.01, ship.nodevalue - 1);
zingchart.exec(chartId, 'setnodevalue', {
plotindex: 1,
nodeindex: ship.nodeindex,
value: ship.nodevalue
});
}
window.setTimeout(function() {
zingchart.exec(chartId, 'removeobject', {
type: 'shape',
id: 'laser'
});
}, 200);
window.setTimeout(function() {
zingchart.exec(chartId, 'updateobject', {
id: 'saucer',
data: {
backgroundImage: RESOURCES['saucer']
}
});
}, 750);
});
};
// Render chart
function render() {
zingchart.render({
id: chartId,
width: '100%',
height: '600px',
output: 'svg',
data: chartConfig,
events: {
load: bindEvents
}
});
};
</script>
</body>
</html>
// DEFINE CHART LOCATIONS (IDS)
// -----------------------------
// Main chart render location(s)
let chartId = 'myChart';
let laserSoundId = 'laser-sound';
// DOM ELEMENTS
// -----------------------------
let laserSound = document.querySelector('#' + laserSoundId);
// INIT ASSETS
// -----------------------------
window.RESOURCES = {
'bg0' : 'data:image/png;base64,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',
'bg1' : 'data:image/png;base64,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',
'saucer' : 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAAZCAYAAAB+Sg0DAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGxSURBVFhH1VftTcMwEM0I/CZBQUoq/jICIzACIzBCNmCEjsAIGYE5UCNlBLhnX6jjXGIXu7H7pCdUfL5vn50iFMPD4e1UNl0MQherTYOhbN+Hqv2JStLJ6vcHMio6FcKUAQHf94dnapeXGIQuVntdaKfbUczoDoTtU9W8sjvhoOx1kqE9CR/YnXCMdX1HCo+kuE/Csv0MakcOQBytuRA+srtuYANlRix9LoSP7K4bOICSkpzoPSTG+umRoneOU1sGtNsgha4ZHJXpWawYquZLWFeEIcjQ39W2JTsfShFh6zqYHPb1a4FNJ8gwi1FAsowi3/SYTOK6ppEccV1xaitfvxZAmeEQFAhUmQdgSFjvzGfL1qQ0W8VXl49fClBOkcrz/8aoEsU/xHLeIHv+nkn3TotFFYPrewolRI9ukUUX4DMk7rFHsglJ3qR5/i4C5r6UCZtk5MhbZsD/JXlFmoAsNoPv9xUC4y3+SBIQTTJR3uI0zi+GT8uttU92LWdCK9ODw+vwRYC+n842/10VCRSQfVOvPzciAW1p2qSA/p5LwUCZ2cD5ArsylE22t5fNDFEUv/FQrkzbvwXDAAAAAElFTkSuQmCC',
'saucer-hit' : 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAAZCAYAAAB+Sg0DAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAHwSURBVFhH3Vc7bsJAFPQRqFlbRgrpOQJSJJJ0SLkAR+AIvkGOQJ8iJnUK1ykCUsoUaVJEaFfaI5A3y+Nj/AAHG2wy0sjCO5732Wdje0VhguuBVldRGYQX21YDo9pD47fnpZI82f78QEfFpIqwyoKA5uymo/RttwzCi21Pi0XSPeubu3kVdLH1fZ/TKQ7qXiQFOieRA6dTHKF9aJDhiIyTKqhMLy40jlxAVGciR073MHABdUbc+roQOXK6h4EbUDKpFfM+JEL701L6mx6jazZnX5n53daAobWpMajCKwU99vtm7M93MGGZZ178qbDuqGPVhYaOkbQOUpxHZ0TQz8pKGnD21HQJ580rg71JUGCWedL6irFy//R0jMX1BdfNkdcdUQg0efPKwL6GDSQEA4Gu8wACCevRshgAXpIGXHYeyOuVJy8HmFOlyX+gaxT/ELfzAplQQcFg3415KVzUEOz/nnprzjoTpbv7yNIMPkPbkPQg1liWgaTfJHJi6d/wEdrW1DfzQ6QgI74kBZyX9OBEmZhlKUwDM5D020RhfEl+VFEQnR9K+iz1cZ8SeUZu1/jUbuQ2AaN3pS264440Grx0MmAXUjGP3RUJ',
'ship' : 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAAcCAYAAAAuh5ywAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAE5SURBVFhH3ZjRDcIwDEQLKO0vIzACIzACIzACI3QTRmAERmCUjGDOwUhV5TahEnDhpPdD48qOzZHQfFzSbDfSHRT7pGJJt1tLG4EYd3tSqSTsB8Uk7Em9Wks4rST0SpVjt5H2iORvBVy1gxbGK012PGZTYG1vYbzSJL3kHaJ208KIhTF62XQOdUGLItXTpr1uTBEtklR/V5CKeuSeO34f7eqvwIkjnCyzZXrDsb6C/iRYaguFgyVectUXMbCoQzrbCE5HFWbQsbOlPK9xm7kp6BgWsphAluSUWQ0uZMyUWT6KQeXDCxkzUfO1zCfkXMiYKbp+YOHZcxU2NE9LeV5vXNB+THvJjxw0bGkF5Luk1TuBjMAUCp3Os0k2iv+P0MpHO0FLKiwnLKymoLLDKuYS3yPXKpnwi2maB/LUxGr54YzfAAAAAElFTkSuQmCC',
'laser' : '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'
};
// CHART CONFIG
// -----------------------------
let chartConfig = {
type : 'vbar',
globals : {
fontFamily : "'Press Start 2P'"
},
backgroundColor : '#000',
title : {
text : 'Top 10 best-selling PC games (copies sold)',
color : '#fff',
fontSize : 16,
fontWeight : 'normal',
paddingTop : 15,
},
plot : {
barsOverlap : '100%'
},
plotarea : {
margin : '80 40 95 80'
},
scaleX : {
values : ['Minecraft', 'PUBG', 'Diablo3', 'World of Warcraft', 'The Sims', 'StarCraft', 'Terraria', 'Garry\'s Mod', 'Tycoon3', 'HalfLife2'],
guide : {
visible : false
},
item : {
color : '#a00',
fontSize : 8,
width : '100px',
wrapText : true,
},
itemsOverlap : true,
lineWidth : '0px',
maxItems : 99,
tick : {
visible : false
},
},
scaleY : {
values : '0:30:2.5',
format : '<span style="font-size:16px">%v</span>MIL',
decimals : 0,
item : {
color : '#a00',
fontSize : 8,
offsetY : '20px',
rules : [
{
rule : '%scale-index === 0',
visible : false
}
]
},
lineWidth : '0px',
guide : {
visible : false
},
tick : {
visible : false
},
},
shapes : [
{
type : 'pie',
angleEnd : 530,
angleStart : 190,
backgroundColor : '#009',
flat : true,
id : 'pacman',
label : {
text : 'Oops!<br>Wrong game!',
borderColor : '#fff',
borderWidth : '1px',
callout : true,
calloutPosition : 'left',
color : '#fff',
fontSize : 8,
offsetX : '80px',
padding : '5px',
visible : false,
},
size : 20,
x : '950px',
y : '560px',
}
],
labels : [
{
anchor : 'c',
backgroundImage : RESOURCES['saucer'],
flat : true,
height : '25px',
id : 'saucer',
width : '52px',
x : '-999px',
y : '55px',
},
{
anchor : 'c',
backgroundImage : RESOURCES['saucer-hit'],
flat : true,
height : '25px',
id : 'saucer-hit',
width : '52px',
x : '-999px',
y : '55px',
}
],
crosshairX : {
lineColor : '#02FF06',
lineWidth : 1,
plotLabel : {
text : '<span style="font-size:16px">%node-value MIL</span><br><br><span style="color:#a00">%scale-key-text</span> copies sold',
backgroundColor : '#000',
color : '#fff',
decimals : 1,
fontSize : 8,
padding : '10px',
shadow : true,
shadowDistance : 4,
},
scaleLabel : {
text : ' ',
backgroundColor : 'none',
backgroundImage : RESOURCES['ship'],
backgroundRepeat : 'no-repeat',
height : '28px',
offsetY : '30px',
width : '52px',
}
},
source : {
text : 'Source : https://en.wikipedia.org/wiki/List_of_best-selling_PC_games',
fontSize : 8,
target : '_blank',
url : 'http://en.wikipedia.org/wiki/List_of_best-selling_PC_games',
},
series : [
{
values : [999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999],
backgroundColor : 'none',
backgroundImage : RESOURCES['bg0'],
backgroundPosition : '50% 100%',
backgroundRepeat : 'no-repeat',
guideLabel : {
visible : false
},
maxTrackers : 0,
},
{
values : [29, 24, 20, 14, 11, 11, 11, 10, 10, 9],
backgroundColor : 'none',
backgroundImage : RESOURCES['bg1'],
backgroundPosition : '50% 100%',
backgroundRepeat : 'no-repeat',
maxTrackers : 0
}
]
};
// LOAD EVENTS
// -----------------------------
// Load fonts, then render chart
WebFont.load({
google : {
families: ['Press Start 2P']
},
active : function() {
render();
}
});
// HELPER FNS
// -----------------------------
// Init chart events
function bindEvents() {
// Plot Area
let pa = zingchart.exec(chartId, 'getobjectinfo', {
object : 'plotarea'
});
// FLYING SAUCER
// Init Flying Saucer and movement interval
let saucer = {
aperture : Math.round(50 + (pa.width/2 - 100) * Math.random()),
angle : 0,
x : pa.x + pa.width/2,
cx : pa.x + pa.width/2
}
// Movement
window.setInterval(function() {
saucer.angle += 1;
saucer.cx = saucer.x + saucer.aperture * Math.sin(saucer.angle*2*Math.PI/360);
if (saucer.angle === 360) {
saucer.angle = 0;
saucer.x = saucer.cx;
saucer.aperture = Math.round(50 + (pa.width/2 - 100) * Math.random());
}
zingchart.exec(chartId, 'updateobject', {
id : 'saucer',
data : {
x : saucer.cx,
angle : -20 * Math.sin(saucer.angle*2*Math.PI/360)
}
});
}, 33);
// PACMAN
let showpacman = function() {
// Init pacman
let pacman = {
x : 950,
aperture : 0,
diff : 1
};
// Movement
let pacmantick = window.setInterval(function() {
pacman.x -= 2;
pacman.aperture += pacman.diff;
if (pacman.aperture >= 40) {
pacman.diff = -2;
}
if (pacman.aperture <= 0) {
pacman.diff = 2;
}
zingchart.exec(chartId, 'updateobject', {
type : 'shape',
id : 'pacman',
data : {
x : pacman.x,
angleStart : 180 + pacman.aperture,
angleEnd : 540 - pacman.aperture,
label : {
visible : (pacman.x > 100 && pacman.x < 500)
}
}
});
if (pacman.x < -50) {
window.clearInterval(pacmantick);
window.setTimeout(showpacman, 30*1000);
}
}, 33);
}
window.setTimeout(showpacman, 5000);
// USER SHIP
let ship = {
};
// Mousemove
zingchart.bind(chartId, 'guide_mousemove', function(p) {
ship.x = Math.round(p.guide.x);
ship.y = Math.round(p.guide.y);
ship.nodeindex = p.items[1].nodeindex;
ship.nodevalue = p.items[1].value;
});
// CHART CLICK
zingchart.bind(chartId, 'click', function(p) {
// Init vars
let laserpoints = [], x, y;
// Define a hit
let bHit = (Math.abs(ship.x - saucer.cx) < 25);
// Add laser points
for (y=pa.y-(bHit?20:80);y<pa.y+pa.height+30;y+=4) {
laserpoints.push([
ship.x + Math.round(2 + 6*Math.random()),
y
]);
}
for (y=pa.y+pa.height+30;y>pa.y-(bHit?20:80);y-=4) {
laserpoints.push([
ship.x - Math.round(2 + 6*Math.random()),
y
]);
}
laserpoints.push(laserpoints[0]);
// Init laser sound
let laserSoundEl = '<audio id="' + laserSoundId + '" src="data:audio/ogg;base64,' + RESOURCES['laser'] + '">';
if (!laserSound) document.body.insertAdjacentHTML('beforeend', laserSoundEl);
// Re-store element (since it may have just been added to the DOM)
laserSound = document.querySelector('#' + laserSoundId);
// Init and run
laserSound.volume = 0.5;
laserSound.play();
// Add object to chart
zingchart.exec(chartId, 'addobject', {
type : 'shape',
data : {
flat : true,
id : 'laser',
type : 'poly',
borderColor : '#f00',
borderWidth : 1,
gradientColors : '#f00 #f90 #ff0 #f90 #f00',
gradientStops : '0.01 0.4 0.5 0.6 0.99',
fillAngle : 0,
points : laserpoints
}
});
// If there was a hit
if (bHit) {
zingchart.exec(chartId, 'updateobject', {
id : 'saucer',
data : {
backgroundImage : RESOURCES['saucer-hit']
}
});
ship.nodevalue = Math.max(0.01, ship.nodevalue - 1);
zingchart.exec(chartId, 'setnodevalue', {
plotindex : 1,
nodeindex : ship.nodeindex,
value : ship.nodevalue
});
}
window.setTimeout(function() {
zingchart.exec(chartId, 'removeobject', {
type : 'shape',
id : 'laser'
});
}, 200);
window.setTimeout(function() {
zingchart.exec(chartId, 'updateobject', {
id : 'saucer',
data : {
backgroundImage : RESOURCES['saucer']
}
});
}, 750);
});
};
// Render chart
function render() {
zingchart.render({
id : chartId,
width : '100%',
height : '600px',
output : 'svg',
data : chartConfig,
events : {
load : bindEvents
}
});
};