{"id":2067,"artifact_id":1899,"version":1,"data":{"version":1,"artifact":{"chain":"tezos","title":"color-xray","artist":"tz1SvPd1aUYZSkr22JTdRzUEGMb6ZjoPEXTz","tokenId":"38004","description":"Infinite running live code audiovisual composition (click to activate sound). | NFT: SVG/JavaScript | Alexandre Rangel, 2021 | www.alexandrerangel.art.br | @AlexandreRangel","contractAddress":"KT1RJ6PbjHpwc3M5rw5s2Nbmefwbuwbdxton"},"snapshot":{"net":[{"data":{"url":"https://ipfs.arkivo.art/ipfs/QmR2q7YbbwSCXq2TfPMnJU85crCQv6cwNrukQ7QeQHxPbT?creator=tz1SvPd1aUYZSkr22JTdRzUEGMb6ZjoPEXTz&viewer=&objkt=38004","host":"ipfs.arkivo.art","path":"/ipfs/QmR2q7YbbwSCXq2TfPMnJU85crCQv6cwNrukQ7QeQHxPbT","type":"http","query":"?creator=tz1SvPd1aUYZSkr22JTdRzUEGMb6ZjoPEXTz&viewer=&objkt=38004","method":"GET","headers":{"sec-ch-ua":"\"HeadlessChrome\";v=\"119\", \"Chromium\";v=\"119\", \"Not?A_Brand\";v=\"24\"","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/119.0.6045.9 Safari/537.36","sec-ch-ua-mobile":"?0","sec-ch-ua-platform":"\"Linux\"","upgrade-insecure-requests":"1"},"fragment":"","postData":null,"protocol":"https:"},"type":1,"external":false,"timestamp":1723847822321},{"data":{"url":"https://ipfs.arkivo.art/ipfs/QmR2q7YbbwSCXq2TfPMnJU85crCQv6cwNrukQ7QeQHxPbT?creator=tz1SvPd1aUYZSkr22JTdRzUEGMb6ZjoPEXTz&viewer=&objkt=38004","body":"","status":200,"headers":{"date":"Fri, 16 Aug 2024 22:37:02 GMT","etag":"\"QmR2q7YbbwSCXq2TfPMnJU85crCQv6cwNrukQ7QeQHxPbT\"","server":"nginx/1.27.0","connection":"keep-alive","x-ipfs-path":"/ipfs/QmR2q7YbbwSCXq2TfPMnJU85crCQv6cwNrukQ7QeQHxPbT","content-type":"image/svg+xml","x-ipfs-roots":"QmR2q7YbbwSCXq2TfPMnJU85crCQv6cwNrukQ7QeQHxPbT","accept-ranges":"bytes","cache-control":"public, max-age=29030400, immutable","content-length":"1007063","access-control-allow-origin":"*","access-control-allow-headers":"Content-Type\nRange\nUser-Agent\nX-Requested-With","access-control-allow-methods":"GET\nHEAD\nOPTIONS","access-control-expose-headers":"Content-Length\nContent-Range\nX-Chunked-Output\nX-Ipfs-Path\nX-Ipfs-Roots\nX-Stream-Output"}},"type":2,"external":false,"timestamp":1723847822381},{"data":{"url":"blob:https://ipfs.arkivo.art/a0b60e4e-2dee-41b6-af38-123b5f693f93","host":"","path":"https://ipfs.arkivo.art/a0b60e4e-2dee-41b6-af38-123b5f693f93","type":"http","query":"","method":"GET","headers":{"referer":"","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/119.0.6045.9 Safari/537.36"},"fragment":"","postData":null,"protocol":"blob:"},"type":1,"external":false,"timestamp":1723847823943},{"data":{"url":"blob:https://ipfs.arkivo.art/a0b60e4e-2dee-41b6-af38-123b5f693f93","body":"\"\\n\\t\\t\\t// the initial timeout time\\n\\t\\t\\tlet timeoutTime =  50.0;\\n\\t\\t\\t// onmessage callback\\n\\t\\t\\tself.onmessage = function(msg){\\n\\t\\t\\t\\ttimeoutTime = parseInt(msg.data);\\n\\t\\t\\t};\\n\\t\\t\\t// the tick function which posts a message\\n\\t\\t\\t// and schedules a new tick\\n\\t\\t\\tfunction tick(){\\n\\t\\t\\t\\tsetTimeout(tick, timeoutTime);\\n\\t\\t\\t\\tself.postMessage('tick');\\n\\t\\t\\t}\\n\\t\\t\\t// call tick initially\\n\\t\\t\\ttick();\\n\\t\\t\\t\"","status":200,"headers":{"content-type":"text/javascript","content-length":"371"}},"type":2,"external":true,"timestamp":1723847824313}],"browser":{"name":"chromium","version":"119.0.6045.9"},"viewport":{"width":2000,"height":2000},"screenshot":"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VAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAFQCOgAAAAAAAABUAjoAAAAAAAAAVAI6AAAAAAAAAPQ/7NmBAAAAAICg/akXKY1KoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAC8KAfwAAAgAElEQVQAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVA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JaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAAAAAAAAQCWgAwAAAAAAAEAloAMAAAAAAABAJaADAP8/e3YgAAAAACBof+pFSiMAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXS4PTsQAAAAABC0P/UipREAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAs3S06AAABhBJREFUAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoBLoAAAAAAAAAFAJdAAAAAAAAACoBDoAAAAAAAAAVAIdAAAAAAAAACqBDgAAAAAAAACVQAcAAAAAAACASqADAAAAAAAAQCXQAQAAAAAAAKAS6AAAAAAAAABQCXQAAAAAAAAAqAQ6AAAAAAAAAFQCHQAAAAAAAAAqgQ4AAAAAAAAAlUAHAAAAAAAAgEqgAwAAAAAAAEAl0AEAAAAAAACgEugAAAAAAAAAUAl0AAAAAAAAAKgEOgAAAAAAAABUAh0AAAAAAAAAKoEOAAAAAAAAAJVABwAAAAAAAIBKoAMAAAAAAABAJdABAAAAAAAAoKoBvUm8uAkxLrgAAAAASUVORK5CYII=","consoleMessages":[{"text":"%c * Tone.js v14.8.14 *  background: #000; color: #fff","level":"log","timestamp":1723847822707},{"text":"The AudioContext was not allowed to start. It must be resumed (or created) after a user gesture on the page. https://goo.gl/7K7WLu","level":"warning","timestamp":1723847822777},{"text":"The ScriptProcessorNode is deprecated. Use AudioWorkletNode instead. (https://bit.ly/audio-worklet)","level":"warning","timestamp":1723847822786},{"text":"The AudioContext was not allowed to start. It must be resumed (or created) after a user gesture on the page. https://goo.gl/7K7WLu","level":"warning","timestamp":1723847822786},{"text":"The AudioContext was not allowed to start. It must be resumed (or created) after a user gesture on the page. https://goo.gl/7K7WLu","level":"warning","timestamp":1723847822803},{"text":"The AudioContext was not allowed to start. It must be resumed (or created) after a user gesture on the page. https://goo.gl/7K7WLu","level":"warning","timestamp":1723847822813},{"text":"class HydraSynth {\n\n            constructor ({\n                pb = null,\n                width = 512,\n                height = 512,\n                numSources = 4,\n                numOutputs = 4,\n                makeGlobal = true,\n                autoLoop = true,\n                detectAudio = false,\n                enableStreamCapture = false,\n                canvas,\n                precision = 'mediump'\n            } = {}) {\n\n                this.bpm = 60\n                this.pb = pb\n                this.width = width\n                this.height = height\n                this.time = 0\n                this.makeGlobal = makeGlobal\n                this.renderAll = false\n                this.detectAudio = detectAudio\n\n                // only allow valid precision options\n                let precisionOptions = ['lowp','mediump','highp']\n                let precisionValid = precisionOptions.includes(precision.toLowerCase())\n\n                this.precision = precisionValid ? precision.toLowerCase() : 'mediump'\n\n                if(!precisionValid){\n                console.warn('[hydra-synth warning]\\nConstructor was provided an invalid floating point precision value of \"' + precision + '\". Using default value of \"mediump\" instead.')\n                }\n\n                // boolean to store when to save screenshot\n                this.saveFrame = false\n\n                // if stream capture is enabled, this object contains the capture stream\n                this.captureStream = null\n\n                this._initCanvas(canvas)\n                this._initRegl()\n                this._initOutputs(numOutputs)\n                this._initSources(numSources)\n                this._generateGlslTransforms()\n\n                window.screencap = () => {\n                this.saveFrame = true\n                }\n\n                if (enableStreamCapture) {\n                this.captureStream = this.canvas.captureStream(25)\n\n                // to do: enable capture stream of specific sources and outputs\n                window.vidRecorder = new VidRecorder(this.captureStream)\n                }\n\n                if(detectAudio) this._initAudio()\n                //if(makeGlobal) {\n                window.mouse = mouse\n                window.time = this.time\n                window['render'] = this.render.bind(this)\n                //  window.bpm = this.bpm\n                window.bpm = this._setBpm.bind(this)\n            //  }\n                if(autoLoop) loop(this.tick.bind(this)).start()\n            }\n\n            getScreenImage(callback) {\n                this.imageCallback = callback\n                this.saveFrame = true\n            }\n\n            resize(width, height) {\n                console.log(width, height)\n                this.canvas = document.querySelector('foreignObject').querySelector('canvas');\n                this.canvas.width = width\n                this.canvas.height = height\n                this.width = width\n                this.height = height\n                this.regl.poll()\n                this.o.forEach((output) => {\n                output.resize(width, height)\n                })\n                this.s.forEach((source) => {\n                source.resize(width, height)\n                })\n            }\n            canvasToImage (callback) {\n                const a = document.createElement('a')\n                a.style.display = 'none'\n\n                let d = new Date()\n                a.download = `hydra-${d.getFullYear()}-${d.getMonth() + 1}-${d.getDate()}-${d.getHours()}.${d.getMinutes()}.${d.getSeconds()}.png`\n                document.body.appendChild(a)\n                var self = this\n                this.canvas.toBlob( (blob) => {\n                //  var url = window.URL.createObjectURL(blob)\n\n                    if(self.imageCallback){\n                    self.imageCallback(blob)\n                    delete self.imageCallback\n                    } else {\n                    a.href = URL.createObjectURL(blob)\n                    console.log(a.href)\n                    a.click()\n                    }\n                }, 'image/png')\n                setTimeout(() => {\n                document.body.removeChild(a);\n                window.URL.revokeObjectURL(a.href);\n                }, 300);\n            }\n\n            _initAudio () {\n                this.audio = new Audio({\n                numBins: 4\n                })\n                if(this.makeGlobal) window.a = this.audio\n            }\n            // create main output canvas and add to screen\n            _initCanvas (canvas) {\n                if (canvas) {\n                this.canvas = canvas\n                this.width = canvas.width\n                this.height = canvas.height\n                } else {\n                this.canvas = document.createElement('canvas')\n                this.canvas.width = this.width\n                this.canvas.height = this.height\n                this.canvas.style.width = '100%'\n                this.canvas.style.height = '100%'\n                document.body.appendChild(this.canvas)\n                }\n            }\n\n            _initRegl () {\n                this.regl = require('regl')({\n                canvas: this.canvas,\n                pixelRatio: 1,\n                extensions: [\n                    'oes_texture_half_float',\n                    'oes_texture_half_float_linear'\n                ],\n                optionalExtensions: [\n                    'oes_texture_float',\n                    'oes_texture_float_linear'\n                ]})\n\n                // This clears the color buffer to black and the depth buffer to 1\n                this.regl.clear({\n                color: [0, 0, 0, 1]\n                })\n\n                this.renderAll = this.regl({\n                frag: `\n                precision ${this.precision} float;\n                varying vec2 uv;\n                uniform sampler2D tex0;\n                uniform sampler2D tex1;\n                uniform sampler2D tex2;\n                uniform sampler2D tex3;\n\n                void main () {\n                    vec2 st = vec2(1.0 - uv.x, uv.y);\n                    st*= vec2(2);\n                    vec2 q = floor(st).xy*(vec2(2.0, 1.0));\n                    int quad = int(q.x) + int(q.y);\n                    st.x += step(1., mod(st.y,2.0));\n                    st.y += step(1., mod(st.x,2.0));\n                    st = fract(st);\n                    if(quad==0){\n                    gl_FragColor = texture2D(tex0, st);\n                    } else if(quad==1){\n                    gl_FragColor = texture2D(tex1, st);\n                    } else if (quad==2){\n                    gl_FragColor = texture2D(tex2, st);\n                    } else {\n                    gl_FragColor = texture2D(tex3, st);\n                    }\n\n                }\n                `,\n                vert: `\n                precision ${this.precision} float;\n                attribute vec2 position;\n                varying vec2 uv;\n\n                void main () {\n                    uv = position;\n                    gl_Position = vec4(1.0 - 2.0 * position, 0, 1);\n                }`,\n                attributes: {\n                    position: [\n                    [-2, 0],\n                    [0, -2],\n                    [2, 2]\n                    ]\n                },\n                uniforms: {\n                    tex0: this.regl.prop('tex0'),\n                    tex1: this.regl.prop('tex1'),\n                    tex2: this.regl.prop('tex2'),\n                    tex3: this.regl.prop('tex3')\n                },\n                count: 3,\n                depth: { enable: false }\n                })\n\n                this.renderFbo = this.regl({\n                frag: `\n                precision ${this.precision} float;\n                varying vec2 uv;\n                uniform vec2 resolution;\n                uniform sampler2D tex0;\n\n                void main () {\n                    gl_FragColor = texture2D(tex0, vec2(1.0 - uv.x, uv.y));\n                }\n                `,\n                vert: `\n                precision ${this.precision} float;\n                attribute vec2 position;\n                varying vec2 uv;\n\n                void main () {\n                    uv = position;\n                    gl_Position = vec4(1.0 - 2.0 * position, 0, 1);\n                }`,\n                attributes: {\n                    position: [\n                    [-2, 0],\n                    [0, -2],\n                    [2, 2]\n                    ]\n                },\n                uniforms: {\n                    tex0: this.regl.prop('tex0'),\n                    resolution: this.regl.prop('resolution')\n                },\n                count: 3,\n                depth: { enable: false }\n                })\n            }\n\n            _initOutputs (numOutputs) {\n                const self = this\n                this.o = (Array(numOutputs)).fill().map((el, index) => {\n                var o = new Output({\n                    regl: this.regl,\n                    width: this.width,\n                    height: this.height,\n                    precision: this.precision\n                })\n                o.render()\n                o.id = index\n                if (self.makeGlobal) window['o' + index] = o\n                return o\n                })\n\n                // set default output\n                this.output = this.o[0]\n            }\n\n            _initSources (numSources) {\n                this.s = []\n                for(var i = 0; i < numSources; i++) {\n                this.createSource()\n                }\n            }\n\n            _setBpm(bpm) {\n                this.bpm = bpm\n            }\n\n            createSource () {\n                let s = new Source({regl: this.regl, pb: this.pb, width: this.width, height: this.height})\n                if(this.makeGlobal) {\n                window['s' + this.s.length] = s\n                }\n                this.s.push(s)\n                return s\n            }\n\n            _generateGlslTransforms () {\n                const self = this\n                const gen = new GeneratorFactory(this.o[0], this.precision)\n                window.generator = gen\n                Object.keys(gen.functions).forEach((key)=>{\n                self[key] = gen.functions[key]\n                if(self.makeGlobal === true) {\n                    window[key] = gen.functions[key]\n                }\n                })\n            }\n\n            render (output) {\n                if (output) {\n                this.output = output\n                this.isRenderingAll = false\n                } else {\n                this.isRenderingAll = true\n                }\n            }\n\n            tick (dt, uniforms) {\n\n            //  if(self.detectAudio === true) self.fft = self.audio.frequencies()\n            // this.regl.frame(function () {\n                this.time += dt * 0.001\n                // console.log(this.time)\n                // this.regl.clear({\n                //   color: [0, 0, 0, 1]\n                // })\n                window.time = this.time\n                if(this.detectAudio === true) this.audio.tick()\n                for (let i = 0; i < this.s.length; i++) {\n                this.s[i].tick(this.time)\n                }\n\n                for (let i = 0; i < this.o.length; i++) {\n                //  console.log('WIDTH', this.canvas.width, this.o[0].getCurrent())\n                this.o[i].tick({\n                    time: this.time,\n                    mouse: mouse,\n                    bpm: this.bpm,\n                    resolution: [this.canvas.width, this.canvas.height]\n                })\n                }\n\n                // console.log(\"looping\", self.o[0].fbo)\n                if (this.isRenderingAll) {\n                this.renderAll({\n                    tex0: this.o[0].getCurrent(),\n                    tex1: this.o[1].getCurrent(),\n                    tex2: this.o[2].getCurrent(),\n                    tex3: this.o[3].getCurrent(),\n                    resolution: [this.canvas.width, this.canvas.height]\n                })\n                } else {\n                //  console.log('out', self.output.id)\n                this.renderFbo({\n                    tex0: this.output.getCurrent(),\n                    resolution: [this.canvas.width, this.canvas.height]\n                })\n                }\n                if(this.saveFrame === true) {\n                this.canvasToImage()\n                this.saveFrame = false\n                }\n            }\n\n\n            }","level":"log","timestamp":1723847823091},{"text":"1235127721900.2861","level":"log","timestamp":1723847823211},{"text":"0.9969821252641421","level":"log","timestamp":1723847823212},{"text":"[.WebGL-0x3d4400390e00]GL Driver Message (OpenGL, Performance, GL_CLOSE_PATH_NV, High): GPU stall due to ReadPixels","level":"warning","timestamp":1723847823948},{"text":"[.WebGL-0x3d4400390e00]GL Driver Message (OpenGL, Performance, GL_CLOSE_PATH_NV, High): GPU stall due to ReadPixels","level":"warning","timestamp":1723847823952},{"text":"[.WebGL-0x3d4400390e00]GL Driver Message (OpenGL, Performance, GL_CLOSE_PATH_NV, High): GPU stall due to ReadPixels","level":"warning","timestamp":1723847823954},{"text":"[.WebGL-0x3d4400390e00]GL Driver Message (OpenGL, Performance, GL_CLOSE_PATH_NV, High): GPU stall due to ReadPixels (this message will no longer repeat)","level":"warning","timestamp":1723847824185}],"screenshotDelay":10000},"timestamp":1723847821836},"created_at":"2024-08-16T22:37:13.327+00:00","updated_at":"2024-08-16T22:37:13.327+00:00"}