File: blk03511.txt
q%%d/Foundry USA Pool #dropgold/ CjA+:BTC.BTC:maya1w0mwu4hp3l4jgeeqgj6ed469mwzx5he9cr0ve0:wr:30:TIER1 IjGREFUND:1F4E75A3E1A13F048C0D7478D65D23037E6F443F47B7D229051D14E99B9187AA Bj@=:ETH.ETH:0xbD67F54906Dc97D02DFaD68A4B388Ed016699CC6:79407536::0 <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">"Honour Shout" Grave Wand of Giants +1</text><text x="10" y="40" class="base">"Vengeance Sun" Silk Robe of Perfection +1</text><text x="10" y="60" class="base">"Tempest Bender" Divine Hood of Perfection +1</text><text x="10" y="80" class="base">"Grim Shout" Silk SashMk of Giants +1</text><text x="10" y="100" class="base">"Beast Bane" Leather Boots of Perfection +1</text><text x="10" y="120" class="base">"Skull Moon" Demon's Hands of the Twins +1</text><text x="10" y="140" class="base">"Blight Moon" Pendant of the Twins +1</text><text x="10" y="160" class="base">"Empyrean Instrument" Gold Ring of Enlightenment +1</text></svg>h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Short Sword</text><text x="10" y="40" class="base">Shirt</text><text x="10" y="60" class="base">Ancient Helm</text><text x="10" y="80" class="base">"Brimstone Peak" Silk Sash</text><text x="10" y="100" class="base">Greaves</text><text x="10" y="120" class="base">HeavLzy Gloves</text><text x="10" y="140" class="base">Necklace</text><text x="10" y="160" class="base">Bronze Ring</text></svg>h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 "name": "people.ord" text/plain;charset=utf-8 &{"p":"sns","op":"reg","name":"4.sats"}h! text/plain;charset=utf-8 Imagine a world where the only trusted communication channel was bitcoin. All the cost-free channels have long ago been filled with AI spam. It would no longer be a world with constant updates. It would no longer be a world with continuous time. It would be a world that updates one block at a time. It would be a world with discrete time. Tick tock, next block. Smarak Satyavrata Nayak aka mil2d2_ <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Short Sword</text><text x="10" y="40" class="base">Plate Mail</text><text x="10" y="60" class="base">Ancient Helm</text><text x="10" y="80" class="base">Leather Belt</text><text x="10" y="100" class="base">Leather Boots</text><text x="10" y="120" class="base">Wool GlLuoves</text><text x="10" y="140" class="base">Pendant</text><text x="10" y="160" class="base">Silver Ring</text></svg>h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Long Sword</text><text x="10" y="40" class="base">Leather Armor</text><text x="10" y="60" class="base">Demon Crown</text><text x="10" y="80" class="base">Heavy Belt</text><text x="10" y="100" class="base">Ornate Greaves</text><text x="10" y="120" class="base">Hard LeL}ather Gloves</text><text x="10" y="140" class="base">Pendant</text><text x="10" y="160" class="base">Silver Ring</text></svg>h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"BAYC","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"BAYC","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"BAYC","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"BAYC","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"BAYC","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"BAYC","amt":"1"}h! text/plain;charset=utf-8 "name": "13s31.sats" text/html;charset=utf-8 <html xmlns='http://www.w3.org/1999/xhtml' lang='en' xml:lang='en'> <title>Timechain Collection - Series 2 - Item 62</title> <style>:root{height:100%}body{background-color:#000;margin:0;height:100%}.image{position:absolute;display:flex;align-items:center;justify-content:space-around;width:100%;height:100%;opacity:0}.image img{max-width:100%;max-height:100%}.ascii{position:absolute;font-family:Courier;font-weight:700;overflow:hidden;width:100%;height:100%;opacity:0;display:flex;align-iM tems:center;justify-content:space-around}.overview{width:100%;height:100%;position:absolute;display:flex;align-items:center}.overview-text{font-size:min(max(3vw,6pt),16pt);background-color:#000;color:#fff;margin:auto;padding:1vw 5vw}.hidden{display:none}h1,h3{text-align:center}h1{margin:0}h3{margin-top:0}p{margin:2vh}.fadeIn{animation:fadeIn 2s ease-in 1 normal forwards}.fadeOut{animation:fadeOut 2s ease-out 1 normal forwards}@keyframes fadeOut{0%{opacity:1}50%{opacity:0;font-size:24pt}100%{opacity:0;font-size:36ptM }}@keyframes fadeIn{0%{opacity:0;font-size:36pt}50%{opacity:.5;font-size:24pt}100%{opacity:1}}</style> <script>const img="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";(funM ction a(){const params=new URLSearchParams(window.location.search),supportsDecompression=typeof DecompressionStream!=='undefined',resize=debounce(()=>handleResize());let dim=Math.min(window.innerWidth,window.innerHeight),loop=supportsDecompression&¶ms.get('loop')!==null,image,ascii,overview,mode,decompressed=false;window.onresize=resize;window.onload=function(){mode=getMode();decompressAscii();image=document.querySelector(".image");ascii=document.querySelector(".ascii");overview=document.querySelector(".overvieM w");(mode==='ascii'?ascii:image).classList.add('fadeIn');handleResize();if(loop){let interval=parseInt(params.get('loop'),10)||5;setInterval(()=>{mode=mode==='ascii'?'image':'ascii';transition()},interval*1000)}document.addEventListener("keypress",(event)=>{const keyName=event.key.toLowerCase();if(keyName==='a'&&mode!=='ascii'&&supportsDecompression){mode='ascii';transition()}else if(keyName==='i'&&mode!=='image'){mode='image';transition()}else if(keyName==='m'){overview.classList.toggle('hidden')}},false)};functioM n decompressAscii(){if(mode==='ascii'&&!decompressed&&supportsDecompression){decompress(new Uint8Array(base64ToArrayBuffer(img)),'gzip').then(s=>{decompressed=true;reconstructPreformatted(JSON.parse(s))})}}function debounce(a){let timer;return(...args)=>{clearTimeout(timer);timer=setTimeout(()=>{a.apply(this,args)},250)}}function getMode(){let modeParam=params.get("mode")??'';if(!/^(ascii|image)$/i.test(modeParam)||!supportsDecompression){if(dim>800&&supportsDecompression)modeParam='ascii';else modeParam='image'}reM turn modeParam}function handleResize(){dim=Math.min(window.innerWidth,window.innerHeight);const newMode=getMode(),changed=mode!==newMode;if(changed){mode=newMode;transition()}let fontSize=params.get("fontSize"),brightness=params.get("brightness");if(!fontSize){fontSize='0.62vmin'}ascii.style.setProperty('font-size',fontSize);if(brightness)ascii.style.setProperty('filter',`brightness(${brightness})`)}function transition(){decompressAscii();const to=mode==='ascii'?ascii:image;const from=mode==='ascii'?image:ascii;froM m.classList.remove("fadeIn");from.classList.add("fadeOut");to.classList.remove("fadeOut");to.classList.add("fadeIn")}function reconstructPreformatted(a){let str='';for(let y=0;y<a.colorMatrix.length;y++){let colorRow=a.colorMatrix[y];let charRow=a.charMatrix[y];for(let x=0;x<colorRow.length;x++){let cls='';str+=`<span class="${cls}"style="color:#${a.colorMap[colorRow[x]]}">${decodeChar(a.charMap[charRow[x]])}</span>`}str+='<br>'}document.querySelector('pre').innerHTML=str}function decodeChar(a){return a===' '?'&nbsM p;':a}function base64ToArrayBuffer(a){const binary_string=window.atob(a);const len=binary_string.length;const bytes=new Uint8Array(len);for(let i=0;i<len;i++){bytes[i]=binary_string.charCodeAt(i)}return bytes.buffer}function decompress(b,c){const cs=new DecompressionStream(c);const writer=cs.writable.getWriter();writer.write(b);writer.close();return new Response(cs.readable).arrayBuffer().then(function(a){return new TextDecoder().decode(a)})}})();</script> <div class='image'><img src="data:image/webpM ;base64,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"/></div> <div class='ascii' style="font-size:4pt;"><pre></pre></div> <div class='overview hidden'> <div class='overview-text'> <h1 title="Twitter: @timechainorM d
Discord: https://discord.gg/7QKWjKCKc6">🕰 Timechain Collection 🕰</h1> <h3>₿itcoin Inscriptions</h3> <p>Series 2 - The Timekeepers</p> <p>Item: 62 of 99</p> <p>Sat: 4998407340629 (₿lock 999 - Jan 19, 2009)</p> <p>Type: Current Era</p> <p>Generated: 2023-03-29T01:03:52.930Z</p> <?xml version="1.0" standalone="yes"?> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2048 2048"> <title> fosterz 69 </title> <desc> f o s t e r z . a r e . f r e e </desc> "description": " f o s t e r z ", "edition": 69, "attributes": [ "trait_type": "Top", "value": "spike" "trait_type": "Wrinkles", "value": "flow" "trait_type": "Brows", "trait_type": "Left Eye", "value": "ether" "trait_type": "Right Eye", "value": "focus" "trait_type": "Nose", "value": "bumper" "trait_type": "Stress", "value": "flow" "trait_type": "Ear", "value": "flow" "trait_type": "Mustache", "value": "flow" "trait_type": "Mouth", "value": "yum" "trait_type": "Base", "value": "cleft" <path d="M0 0v2048h2048V0H0z" style="fill:#010101;stroke:none"/> <path d="M898 387c-18-21-27-54-36-80l-45-144c-5-19-12-39-20-57-5-11-11-21-23-24-4-1-10 1-14 2-26 7-26 39-28 62-7 78 6 160-12 236-20-17-36-40-51-62-26-37-49-75-75-112-14-21-29-45-58-37-3 1-7 1-10 3-6 4-7 12-7 19 0 15 2 30 4 45 9 62 24 125 19 188-14-14-27-28-40-44-6-8-12-21-21-26sM -32-8-39 3c-6 10 6 27 9 36 13 31 23 63 32 96l-43-45c-8-8-16-18-26-24s-31-10-39 1c-7 9 3 22 7 30 13 26 23 53 33 80 43 115 80 231 118 347 12 34 24 69 32 104 3 19-1 37 20 48 1-10-10-13-10-22v-31c-4-33-16-66-24-98-22-81-45-162-70-242-13-42-29-85-39-128h1l11 13c11 11 41 44 58 28 22-22 13-60 6-85 9 6 17 14 28 16 27 3 36-40 39-60 8-62-19-123-20-184h1c9 20 25 38 37 56 24 36 47 73 75 105 12 14 38 42 58 29 21-14 23-50 26-72 3-21 2-43 2-65l1-77c0-26 4-53 4-79h1c11 41 25 82 38 123l28 82c10 28 22 59 41 82 7 9 21 22 33 14 7-4 11M -13 15-20 9-19 14-40 19-61 11-44 21-88 33-131 8-27 16-56 30-80 17-29 45-58 81-56 29 1 45 28 55 52 22 53 29 112 54 163 12 25 32 68 67 59 26-8 46-36 62-56 38-48 72-99 112-146 14-17 31-36 50-48 7-4 18-10 27-7 7 2 7 13 8 19 4 20 1 41 1 61 0 74-19 148-24 222-1 18 2 36 11 52 4 7 11 16 20 17 11 2 21-8 28-15 19-19 35-43 51-65 42-58 81-118 127-173 19-23 42-53 72-63 0 86-39 168-51 252-3 22-4 41 8 61 4 8 11 16 21 16 17-1 32-18 44-29 36-31 67-69 101-103 12-12 25-24 39-33 4-2 11-7 16-6 7 2 4 21 11 25 4-13 12-37 5-50-11-19-48-2-M 60 7-41 29-74 71-110 107-14 14-28 31-45 41-1-32 7-63 15-94 11-45 24-89 31-135 4-20 6-39 6-59 0-9 0-20-6-28-9-10-23-10-35-7-27 6-48 26-66 46-48 53-88 114-130 172-21 30-42 62-68 88-8-98 31-196 24-295-1-19-3-42-15-57-20-27-61-14-84 2-25 18-45 42-63 66-30 37-57 76-87 114-12 16-25 33-40 47-4 3-11 12-17 11-5-1-10-9-13-13-9-14-15-32-20-48-14-40-24-81-39-121-8-22-19-46-35-64-43-46-116-28-151 18-30 39-44 89-57 136-14 53-28 106-40 159z" style="fill:#fefefe;stroke:none"/> <path d="M564 238h1-1M441 510l1 1-1-1z" style="fill:M #010101;stroke:none"/> <path d="M829 677h1c3-6 8-20 4-26-6-10-25-2-32 2-18 11-37 38-31 60 4 14 17 18 30 15 21-5 40-20 58-31 59-39 116-85 182-112 40-16 81-21 122-31-6-3-14 0-20 0-20 1-40 4-59 9-82 20-149 74-218 120-20 13-41 29-64 37-11 4-25 2-26-12-2-20 14-41 30-50 5-3 20-11 25-3 3 5-2 16-2 22m251-14c7 0 14-5 20-8 13-6 26-12 39-16 44-16 92-30 138-36-5-2-10 0-15 1l-34 6c-39 8-77 19-113 36-11 5-25 9-35 17m127 36h1c8-13 38-16 52-20 49-13 114-32 163-12-12 15-31 10-47 14 4 16 38 4 47-2 6-4 10-12 4-17-12-11-38-11-53-9-4M 0 4-79 10-118 21-13 4-49 9-49 25M797 820c54-18 107-42 164-50 20-3 53-5 67 14 10 14-23 28-34 28-5 0-8-4-12-5v10h1v-5c18 14 67-12 47-35-14-15-40-17-58-15-43 4-84 16-124 32-14 5-43 12-51 26m679 25c-6-8-32-7-29-23 1-6 8-9 13-10 13-2 26 1 38 3 54 9 114 15 169 5-13-6-34 0-48-1-34-4-69-3-103-7-18-3-41-10-59-5-15 5-18 19-6 29 7 6 17 7 25 9m-87 66c3 9 12 12 15 23 4 19-4 40-7 59-4 29-6 59-8 88-2 30 3 60 4 90 2 42 4 85 9 127 4 30 13 59 17 88 3 16 7 33-1 48-19 32-65 54-102 52-16-1-31-9-47-10 12 16 33 20 52 20 42 0 99-24 110-69M 3-14 0-28-3-42-5-28-14-57-17-86-5-45-6-90-8-135 0-9-4-19-4-28-2-40 0-81 5-121 3-26 11-55 7-81-2-10-9-27-22-23m-332 192c-19-4-37-4-57-3l15-47 19-85 24 57 33 65 60 97c-68 15-138 17-207 7-15-2-32-4-47-3-5 0-13 2-14 8 0 8 7 19 14 22 12 6 34 5 48 6 56 5 116 7 172-2l36-9c7-1 14-2 18-8 13-23-10-44-22-62-31-47-62-96-83-148-6-15-14-31-18-47-1-7 0-16-10-17-19-1-24 24-28 38-10 37-11 84-32 117-2 4-5 9-9 11-3 1-8 0-10 3-5 6 3 17 7 20 8 6 18 2 27 1 20-1 40-4 60 2 6 2 19 8 24 0 1-3 3-9 2-13-2-5-7-10-10-14l-19-33c-3-4-8-16-14-16-M 7 1-2 10 0 13 7 13 16 26 21 40m465-37c15-3 44 17 28 32-29 26-70-11-53-44 7-13 28-16 33-29-5-3-10-5-16-6-51-6-52 76-18 97 21 13 78 2 67-32-3-11-16-19-27-22-5-1-14-3-14 4m-878 293c-36-6-39 52-8 61 8 2 17 1 24-2 6-2 12-7 16-12 25-34 6-79-25-101-24-17-54-23-76-43-33-31-39-83-32-125 2-16 7-34 17-47 24-28 58-17 77 9 11 14 23 34 6 48l-12 6-10 3c-18 4-15-15-9-26l7-8v-7c-21 0-30 37-17 51 10 10 29 5 40 1 24-10 30-34 21-57-12-28-35-56-68-57-38-1-57 28-67 61-15 55-8 125 35 166 29 28 73 30 97 64 10 14 12 36-2 49-8 7-25 10-25-6 M 0-10 9-18 11-28z" style="fill:#fefefe;stroke:none"/> <path d="m1057 1103 1 1-1-1z" style="fill:#010101;stroke:none"/> <path d="M1122 1426c-9 2-18 5-22 15-5 13 0 35 18 35 8 0 15-7 20-12 13-13 23-30 33-45 41-60 90-116 121-182h2l1 4c2-7-5-5-8-1-8 11-14 23-21 35-31 50-67 96-102 143-10 14-19 28-31 40-4 4-10 10-16 9-20-1-8-26-1-33l6-8m303-181c1 8 5 16 9 23 6 15 12 30 21 43 5 7 16 18 22 6 6-10 2-23-7-30-6-5-18-8-18 3l-17-33c-2-5-4-11-10-12m-277 26c-10 0-21 2-31 4l-22 3-13 1c-3 0-25 2-14 9 5 2 14-1 19-1l46-7c6-1 14-1 1M 5-9z" style="fill:#fefefe;stroke:none"/> <path d="M1452 1290c3 8 9 18 17 22 0-13-7-16-17-22z" style="fill:#010101;stroke:none"/> <path d="M932 1329c3 9 20 7 28 7h80v-2l-79-5h-29m87 56c4 11 28 19 35 7l-35-7m392 203v-2c-5-3-16-8-17-14 0-4 4-6 7-8 8-4 19-2 26 4 12 11 4 29-7 37-12 9-27 8-41 5 2 10 12 8 20 8 17 0 36-9 39-27 3-12 0-25-10-32-11-7-37-8-43 7s13 27 26 22m-137 19c-5-11-18-20-3-30l7-3c16-4 34 14 26 30-2 3-17 15-12 17 11 6 21-15 22-23 3-27-36-46-55-26-11 12-5 39 15 35m201 2c0-3 0-8 3-10 4-3 11 4 10 8-1 8-19M 9-25 12 4 3 8 1 12 0 12-2 25-9 15-22-10-15-29 1-15 12m-273-7 1 5c5-1 14-12 7-15-12-6-29 12-31 22-1 13 11 21 22 23 4 1 15 4 18 0 2-5-8-5-10-5-12-3-30-11-16-24l9-6m-76 33-9-2v-1h4c17 5-15 18 2 21l-1-3 7-3c17-15-12-32-22-19-4 4-1 11 4 13 6 1 11-2 15-6m-60 89c-3-12 15-11 23-13 2 6 4 28 12 29 7 1 10-15 13-19l8-7h1c-1 11 8 20 10 31 1 11-1 23-1 34-1 9 11 31 21 19 19-21 6-54-7-73-6-8-6-14-16-17v-1c25 0 50-3 74-5 54-4 107-6 161-8l59-4c6-1 16 0 20-5-77 0-153 4-229 9-45 3-92 3-136 12-5 1-13 2-17 6s-2 12 4 12z" style="fill:#fM efefe;stroke:none"/> <path d="m1095 1710 5 9 5-10-10 1z" style="fill:#010101;stroke:none"/> <path d="M1105 1900c10 32 56 46 85 54 55 15 111 12 166 3 18-2 46-5 60-18 6-7 8-18 9-26 4-22 4-52-4-73-7 2-2 19-2 25 2 17 4 50-13 60-19 11-44 13-65 15-56 8-110 6-164-11-24-7-47-26-72-29m-188-25v-9c13 10 21 25 28 39 13 24 22 50 30 76 3 13 3 30 10 42 4-14 0-28-3-42-8-30-20-58-35-85-5-10-16-31-28-34-7-1-6 10-2 13m408 30c2-4 3-17-1-20-6-5-3 10-3 12l4 8m-252 37c0 10 4 20 7 30 6 19 12 44 30 56l-24-49-13-37z" style="fill:#fefefe text/plain;charset=utf-8 ##)))//555;;AAGGGMMSSYYY__eeekkqqwww|| LAME3.100UUUUUUUUUUUUU text/plain;charset=utf-8 "name": "x303.sats" text/plain;charset=utf-8 0{ "p": "sns", "op": "reg", "name": "unfi.sats" }h! text/plain;charset=utf-8 1{ "p": "sns", "op": "reg", "name": "Amgen.sats" }h! text/plain;charset=utf-8 2{ "p": "sns", "op": "reg", "name": "gilead.sats" }h! text/plain;charset=utf-8 3{ "p": "sns", "op": "reg", "name": "usfoods.sats" }h! text/plain;charset=utf-8 {"type":"btcdomain","name":"etcdomain.btc","first_owner":"bc1pwjjx69cr87g7k67mz73uryerkyepa0ezzl2yqc87utyth2jzsn9q043zpc","createDate":1680153130362,"registerDate":1680153130362,"expireDate":1711689130362,"img_url":"https://btcdomains.io/images/domain/etcdomain.jpeg","sig":"3045022100ed54e6d885049bc8999e47efb89146c8eb486107b8c35983680e38b04b27ca6e02200bdaa50089ecbae97491b8e47792a87e0c2c2803ad73b4f9e3a5d72b4ea7eb77"}h! text/plain;charset=utf-8 0{ "p": "sns", "op": "reg", "name": "cbre.sats" }h! text/plain;charset=utf-8 "to": "bc1qe8zt0vj0x85nsx5vn4v7f3j5evqu3qnz44sdmw" KjISWAPTX:0xc7bc9b6386790e8d2b9bd0f6231576cb5369670dae37b6677b7d3a26da656c60i KjISWAPTX:0x314971dd618f2d25ad7cffd896b84865cfad219c2bbc25c2be1d7d1d6e63d0dc Bj@=:ETH.ETH:0x5b5C42a9193842d27b51854cFCa7721DD729E84C:60928640::0 Bj@b2a9bcc4bb89ce6726a1104100151e0d28f1b7ee084e49a8bb08089e799f7ece R.%d/Foundry USA Pool #dropgold/ FjDOUT:1CFBF1B63358598DC50DE1A16964052AE688C9A34675B6B8065FF4DFCE93FF12 FjDOUT:3DD384FC110FE15F2FEA6F35E8CB3EF9D97C59F600B33354FF9723274EDBAD8F FjDOUT:2994B2BB80E8ED61F851CA8F65B4F1B882C58DC809E5BD79F4DD73DABDADA369 FjDOUT:FAD362FD49A10FD8B48963FE99E2566A65E5B7A0B3C41D1E462F6525F8A88C6D IjG=:BNB.TWT-8C2:bnb1mpeuhh9marzd29f7dx906lavnfrt4redfg3fg0:25380871493::0 Aj?=:ETH.ETH:0x7AD4587aC2207c5872E6400c8cf4d58836dA4EAb:5467738::0 MjK=:BNB.BUSD-BD1:bnb1kkq448djw7hz8k64ses3kjum3w6dut9xukkd8s:109301772409:te:0 <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">"Blood Form" Chronicle of Vitriol +1</text><text x="10" y="40" class="base">"Pandemonium Bender" Ring Mail of Power +1</text><text x="10" y="60" class="base">"Dusk Roar" Crown of Reflection +1</text><text x="10" y="80" class="base">"Phoenix Song" Leather Belt of RageMW +1</text><text x="10" y="100" class="base">"Mind Grasp" Demonhide Boots of Detection +1</text><text x="10" y="120" class="base">"Victory Bender" Gloves of Perfection +1</text><text x="10" y="140" class="base">"Apocalypse Tear" Amulet of the Twins +1</text><text x="10" y="160" class="base">"Demon Peak" Titanium Ring of Titans +1</text></svg>h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Ghost Wand</text><text x="10" y="40" class="base">Divine Robe</text><text x="10" y="60" class="base">Hood</text><text x="10" y="80" class="base">Hard Leather Belt</text><text x="10" y="100" class="base">Holy Greaves</text><text x="10" y="120" class="base">Linen GloveLqs</text><text x="10" y="140" class="base">Necklace</text><text x="10" y="160" class="base">Gold Ring</text></svg>h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">"Rage Moon" Book of Protection +1</text><text x="10" y="40" class="base">"Rapture Song" Leather Armor of Giants +1</text><text x="10" y="60" class="base">"Phoenix Song" Dragon's Crown of Detection +1</text><text x="10" y="80" class="base">"Storm Root" Brightsilk SashMl of Vitriol +1</text><text x="10" y="100" class="base">"Golem Tear" Studded Leather Boots of Protection +1</text><text x="10" y="120" class="base">"Fate Root" Ornate Gauntlets of Giants +1</text><text x="10" y="140" class="base">"Blight Shout" Pendant of Vitriol +1</text><text x="10" y="160" class="base">"Torment Song" Platinum Ring of Brilliance +1</text></svg>h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Grimoire</text><text x="10" y="40" class="base">Silk Robe</text><text x="10" y="60" class="base">Dragon's Crown</text><text x="10" y="80" class="base">Hard Leather Belt</text><text x="10" y="100" class="base">Studded Leather Boots</text><text x="10" y="120" class="baL se">Studded Leather Gloves</text><text x="10" y="140" class="base">Amulet</text><text x="10" y="160" class="base">Silver Ring</text></svg>h! FjDOUT:7443FE4A05359AD1EA7FA170F3C4679A2AFBF43B94C0088F3F3A35B5FF3721C7 <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Wand</text><text x="10" y="40" class="base">Divine Robe</text><text x="10" y="60" class="base">Great Helm</text><text x="10" y="80" class="base">Studded Leather Belt</text><text x="10" y="100" class="base">Shoes</text><text x="10" y="120" class="base">Heavy Gloves</tLmext><text x="10" y="140" class="base">Necklace</text><text x="10" y="160" class="base">Gold Ring</text></svg>h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Quarterstaff</text><text x="10" y="40" class="base">Ring Mail</text><text x="10" y="60" class="base">War Cap</text><text x="10" y="80" class="base">Studded Leather Belt</text><text x="10" y="100" class="base">Dragonskin Boots</text><text x="10" y="120" class="base">LL inen Gloves</text><text x="10" y="140" class="base">"Carrion Roar" Amulet</text><text x="10" y="160" class="base">Silver Ring</text></svg>h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Katana</text><text x="10" y="40" class="base">Ring Mail</text><text x="10" y="60" class="base">Leather Cap</text><text x="10" y="80" class="base">Plated Belt</text><text x="10" y="100" class="base">Studded Leather Boots</text><text x="10" y="120" class="base">"SorrowL Bite" Demon's Hands</text><text x="10" y="140" class="base">Amulet</text><text x="10" y="160" class="base">Titanium Ring</text></svg>h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Maul</text><text x="10" y="40" class="base">Dragonskin Armor</text><text x="10" y="60" class="base">Leather Cap</text><text x="10" y="80" class="base">Heavy Belt</text><text x="10" y="100" class="base">Chain Boots</text><text x="10" y="120" class="base">Dragonskin GlLxoves</text><text x="10" y="140" class="base">Necklace</text><text x="10" y="160" class="base">Titanium Ring</text></svg>h! <svg viewBox="0 0 300 300" xmlns="http://www.w3.org/2000/svg"> <rect width="100%" height="100%" fill="black"/> <circle cx="150" cy="150" r="90" stroke="white" stroke-width="28"/> <text x="150" y="180" text-anchor="middle" font-size="5em" font-family="Impact, fantasy" fill="white">CN</text> text/plain;charset=utf-8 text/plain;charset=utf-8 text/plain;charset=utf-8 text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"BAYC","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"BAYC","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"BAYC","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"BAYC","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"BAYC","amt":"1"}h! text/plain;charset=utf-8 6{ "p": "sns", "op": "reg", "name": "autonation.sats" }h! text/plain;charset=utf-8 2{ "p": "sns", "op": "reg", "name": "Paccar.sats" }h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"BAYC","amt":"1"}h! text/plain;charset=utf-8 ={ "p": "sns", "op": "reg", "name": "kraftheinzcompany.sats" }h! text/plain;charset=utf-8 /{ "p": "sns", "op": "reg", "name": "fcx.sats" }h! text/plain;charset=utf-8 text/plain;charset=utf-8 text/plain;charset=utf-8 text/plain;charset=utf-8 text/plain;charset=utf-8 Copyright (c) 1998 Hewlett-Packard Company IEC http://www.iec.ch IEC http://www.iec.ch .IEC 61966-2.1 Default RGB colour space - sRGB .IEC 61966-2.1 Default RGB colour space - sRGB ,Reference Viewing Condition in IEC61966-2.1 ,Reference Viewing Condition in IEC61966-2.1 " id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27 "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdM <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/"> <xmp:CreatorTool>Adobe Photoshop CS6 (Windows)</xmp:CreatorTool> <xmp:CreateDate>2023-03-09T11:07:33+01:00</xmp:CreateDate> <xmp:MetadataDate>2023-03-28T10:34:02+02:00</xmp:MetadataDate> <xmp:ModifyDate>2023-03-28T10:34:02+02:00</xmp:ModifyDate> </rdf:Description> <rdf:Description rdf:about="" xmlns:photoshop="http://ns.adobe.com/photoshop/1.0/"> <photoshop:ColorMode>3</photoshop:ColorMode> <photoshop:ICCProfile>sRGB IEC61966-2.1</photoshop:ICCProfile> <photoshop:DocumentAncestors> <rdf:Bag> <rdf:li>xmp.did:29CD3A2BBFBDED11BBE8F2F0CFBDE3D7</rdf:li> <rdf:li>xmp.did:D7491DF5FABCED11A1A4F6E3CEBF4031</rdf:li> </rdf:Bag> </photoshop:DocumentAncestors> </rdf:Description> <rdf:Description rdf:about="" xmlns:dc="http://purl.org/dc/elements/1.1/"> :format>image/tiff</dc:format> </rdf:Description> <rdf:Description rdf:about="" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stEvt="http://ns.adobe.com/xap/1.0/sType/ResourceEvent#" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#"> <xmpMM:InstanceID>xmp.iid:8155EEE83ACDED11A11CE18198BF8101</xmpMM:InstanceID> <xmpMM:DocumentID>xmp.did:29CD3A2BBFBDED11BBE8F2F0CFBDE3D7</xmpMM:DocumentID> <xmpMM:OriginalDocumentID>xmp.did:29CDM 3A2BBFBDED11BBE8F2F0CFBDE3D7</xmpMM:OriginalDocumentID> <xmpMM:History> <rdf:Seq> <rdf:li rdf:parseType="Resource"> <stEvt:action>created</stEvt:action> <stEvt:instanceID>xmp.iid:29CD3A2BBFBDED11BBE8F2F0CFBDE3D7</stEvt:instanceID> <stEvt:when>2023-03-09T11:07:33+01:00</stEvt:when> <stEvt:softwareAgent>Adobe Photoshop CS6 (Windows)</stEvt:softwareAgent> </rdf:li> <rdf:li rdf:parseM <stEvt:action>saved</stEvt:action> <stEvt:instanceID>xmp.iid:2ACD3A2BBFBDED11BBE8F2F0CFBDE3D7</stEvt:instanceID> <stEvt:when>2023-03-09T11:11:02+01:00</stEvt:when> <stEvt:softwareAgent>Adobe Photoshop CS6 (Windows)</stEvt:softwareAgent> <stEvt:changed>/</stEvt:changed> </rdf:li> <rdf:li rdf:parseType="Resource"> <stEvt:action>saved</stEvt:action> <stEvt:instanceID>xmp.iid:8055EEE83ACDED11A11CE18198BF8101</stEvt:instanceID> <stEvt:when>2023-03-28T10:34:02+02:00</stEvt:when> <stEvt:softwareAgent>Adobe Photoshop CS6 (Windows)</stEvt:softwareAgent> <stEvt:changed>/</stEvt:changed> </rdf:li> <rdf:li rdf:parseType="Resource"> <stEvt:action>converted</stEvt:action> <stEvt:parameters>from application/vnd.adobe.photoshop to image/tiff</stEvt:paraM </rdf:li> <rdf:li rdf:parseType="Resource"> <stEvt:action>derived</stEvt:action> <stEvt:parameters>converted from application/vnd.adobe.photoshop to image/tiff</stEvt:parameters> </rdf:li> <rdf:li rdf:parseType="Resource"> <stEvt:action>saved</stEvt:action> <stEvt:instanceID>xmp.iid:8155EEE83ACDED11A11CE18198BF8101</stEvt:instanceID> <stEvt:when>2023-03-28T10:M 34:02+02:00</stEvt:when> <stEvt:softwareAgent>Adobe Photoshop CS6 (Windows)</stEvt:softwareAgent> <stEvt:changed>/</stEvt:changed> </rdf:li> </rdf:Seq> </xmpMM:History> <xmpMM:DerivedFrom rdf:parseType="Resource"> <stRef:instanceID>xmp.iid:8055EEE83ACDED11A11CE18198BF8101</stRef:instanceID> <stRef:documentID>xmp.did:29CD3A2BBFBDED11BBE8F2F0CFBDE3D7</stRef:documentID> <stRef:originalDocumentID>xmp.didM :29CD3A2BBFBDED11BBE8F2F0CFBDE3D7</stRef:originalDocumentID> </xmpMM:DerivedFrom> </rdf:Description> M M M M M M M M M M M M M M M M M M <?xpacket end="w"?>h! text/html;charset=utf-8 <html xmlns='http://www.w3.org/1999/xhtml' lang='en' xml:lang='en'> <title>Timechain Collection - Series 2 - Item 63</title> <style>:root{height:100%}body{background-color:#000;margin:0;height:100%}.image{position:absolute;display:flex;align-items:center;justify-content:space-around;width:100%;height:100%;opacity:0}.image img{max-width:100%;max-height:100%}.ascii{position:absolute;font-family:Courier;font-weight:700;overflow:hidden;width:100%;height:100%;opacity:0;display:flex;align-iM tems:center;justify-content:space-around}.overview{width:100%;height:100%;position:absolute;display:flex;align-items:center}.overview-text{font-size:min(max(3vw,6pt),16pt);background-color:#000;color:#fff;margin:auto;padding:1vw 5vw}.hidden{display:none}h1,h3{text-align:center}h1{margin:0}h3{margin-top:0}p{margin:2vh}.fadeIn{animation:fadeIn 2s ease-in 1 normal forwards}.fadeOut{animation:fadeOut 2s ease-out 1 normal forwards}@keyframes fadeOut{0%{opacity:1}50%{opacity:0;font-size:24pt}100%{opacity:0;font-size:36ptM }}@keyframes fadeIn{0%{opacity:0;font-size:36pt}50%{opacity:.5;font-size:24pt}100%{opacity:1}}</style> <script>const img="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";(function a(){const params=new URLSearchParams(window.location.search),supportsDecompression=typeof DecompressionStream!=='undefined',resize=debounce(()=>handleResize());let dim=Math.min(window.innerWidth,window.innerHeight),loop=supportsDecompM ression&¶ms.get('loop')!==null,image,ascii,overview,mode,decompressed=false;window.onresize=resize;window.onload=function(){mode=getMode();decompressAscii();image=document.querySelector(".image");ascii=document.querySelector(".ascii");overview=document.querySelector(".overview");(mode==='ascii'?ascii:image).classList.add('fadeIn');handleResize();if(loop){let interval=parseInt(params.get('loop'),10)||5;setInterval(()=>{mode=mode==='ascii'?'image':'ascii';transition()},interval*1000)}document.addEventListener("keM ypress",(event)=>{const keyName=event.key.toLowerCase();if(keyName==='a'&&mode!=='ascii'&&supportsDecompression){mode='ascii';transition()}else if(keyName==='i'&&mode!=='image'){mode='image';transition()}else if(keyName==='m'){overview.classList.toggle('hidden')}},false)};function decompressAscii(){if(mode==='ascii'&&!decompressed&&supportsDecompression){decompress(new Uint8Array(base64ToArrayBuffer(img)),'gzip').then(s=>{decompressed=true;reconstructPreformatted(JSON.parse(s))})}}function debounce(a){let timer;retM urn(...args)=>{clearTimeout(timer);timer=setTimeout(()=>{a.apply(this,args)},250)}}function getMode(){let modeParam=params.get("mode")??'';if(!/^(ascii|image)$/i.test(modeParam)||!supportsDecompression){if(dim>800&&supportsDecompression)modeParam='ascii';else modeParam='image'}return modeParam}function handleResize(){dim=Math.min(window.innerWidth,window.innerHeight);const newMode=getMode(),changed=mode!==newMode;if(changed){mode=newMode;transition()}let fontSize=params.get("fontSize"),brightness=params.get("brightM ness");if(!fontSize){fontSize='0.62vmin'}ascii.style.setProperty('font-size',fontSize);if(brightness)ascii.style.setProperty('filter',`brightness(${brightness})`)}function transition(){decompressAscii();const to=mode==='ascii'?ascii:image;const from=mode==='ascii'?image:ascii;from.classList.remove("fadeIn");from.classList.add("fadeOut");to.classList.remove("fadeOut");to.classList.add("fadeIn")}function reconstructPreformatted(a){let str='';for(let y=0;y<a.colorMatrix.length;y++){let colorRow=a.colorMatrix[y];let chM arRow=a.charMatrix[y];for(let x=0;x<colorRow.length;x++){let cls='';str+=`<span class="${cls}"style="color:#${a.colorMap[colorRow[x]]}">${decodeChar(a.charMap[charRow[x]])}</span>`}str+='<br>'}document.querySelector('pre').innerHTML=str}function decodeChar(a){return a===' '?' ':a}function base64ToArrayBuffer(a){const binary_string=window.atob(a);const len=binary_string.length;const bytes=new Uint8Array(len);for(let i=0;i<len;i++){bytes[i]=binary_string.charCodeAt(i)}return bytes.buffer}function decompress(b,c)M {const cs=new DecompressionStream(c);const writer=cs.writable.getWriter();writer.write(b);writer.close();return new Response(cs.readable).arrayBuffer().then(function(a){return new TextDecoder().decode(a)})}})();</script> <div class='image'><img src="data:image/webp;base64,UklGRnzPAABXRUJQVlA4IHDPAAAQtwKdASoAAoACPpE6l0gloyIjrljbQLASCU3IaUbxHgnP+vCsYtR3ee6zswOyQJWaPi/5n/d8+rkvypjF/4PE33fymX4f+r61f6r/wfYU/tPlteuX95vUb+5nrL+mT/G+pd/d/+N1vv7r+x750P/z/dH4gP75/5/Wl9AD//+2twlXk6+cf0nfH+efaP8f/C+1N/A47+1TUg8EM /T/t+/xO+P9f/q/QI96bvzzH/Q9A74czb/yvNf+H/5HsBeZX/l8Jn85/3/YF/q3+Z/bP3if9///eY/90/53sJf1r/U/tv7d//9/+/wj/ef///+H4fP3L////4bphQhCEIQhCEIQhCEIQhCEIQhCEIQhCEIQhCEHhBySe0h1BIfHAmOrz5mSsnOcrrzG5LxxRx8HpHRmwT6UZNx+WWFXA3jf3l3SzIPGxIdQSHxwJjq8+YDK1poDbw38b7GS4Ab4pbb17GWzskAXaAR8QWiJeoKiQEdelyZtlGSXscaSKezxCq/fAzU6gAP1UOQdyjm7peHabZsnOc5znOV5/eTLYG50/Zo9e7CLrtk2yp/93tyyEk2ak5vYOPIhYtGLr+7EuOqVfQgR8iUGjbbgTLgNKJzIKvcmdo9u/xMz012E8T/GuFrY3swe9yspldW1THZVE4i265JxGUMurPLQSlmAhZBNMKEIQhB4Q15oXCsXWIOL5canfOHZvEkn0TJsRUOh7RKNrjUJyM Fv/rgH3mb4kxUmHvNwhOCGLZhoe4HE/c+Zthmaq62uC2deSSYwi2thCTkfz3FqQxAMlKhNxOUfyalugpvkPvXrVUcZXOCR9ZeXJm4j/Oc5znK89b40hgq8ghFvYdls0J0hE/kuHbi2aLyjj3fkW/p7VNt/1PMREfqxCHMUVvnV8W8sp2m48FoN8466wUCLH0JvH/8/R6ykVsVv4sp3jkmgZO/aHehppoaihzPkOHlt/rKy2PD691PKCR410dJ+t/MiIHFPT1mFCD+245j2nMkntS/6NEzExjVp5gZ0C1awpfya/ruk8FqQMM3anw1Thl57EuDAEVmR/Ov5ITEbe0aWQNTjGMNKFCCgLKtVIJ1cttN9jQI6W+2sp8oQekyobV8lWgAeyv4sAmIRVBzpPcoAGMUp/21SZXA2HNmSL8oTurk4/XmQ1TB+gLErr5Xny99l519vMK1Sv/jiAALDPYFx3qyBvynCnkpgQuL/NP1mEBIaGEcf48A312dpHfd/tahnZoZx0DM 9tq8wonHC1Z2mnkEu/sKzpzK74rZSEMzAfUchuP0OyJE1rMmLFNg+C3ZXyu53wXIc6sydc5prGKLlXbk8H4OdX6lsesmOTTxBA5cdJ/z1+RjMCjSyYsq48e0qanbE7l8qxJzdvwHXRGlU6rh9KMPTjHZGRFGMzy1rYd08pLSJfqX+H9zwJTHJSkfltatxgr2x+AhX21R06Rh36aiYi38zzh02TsQmtRv4l8yLLWDW3NOcYb2FEq8uLKdkgupNlOZhOIvcNMzxajN59cOV/CSBIuSdHAUFqnz5mSrviFxEwSrFRYfDsqKNkdUaUxUW365qyMd/cWXF/pmoZVw8Px60ssypDqMc5h5MsgX1vWzbsb3g3Vw2N9Z7v2Qiw407iI2c3BeNnbslBou4dOLHS1HgzypCM4DFcfHvtD0DqCmpD6mmWkqz0fJ5VfIxLkllzLRjWeIQLVB3P7NigtB0fO8tt4PGAJiuZ70P3BI0FZ7CfrYMDiwSc5HdY7ToKL8W9/yM5iloEpMM 8NiWG8arK6CawXNBJD4n8637BXqL8cJ0dH62nA4iS5IPAcCB8tsx6DNiFAsSIanNVIxnHW1PxVmPDFfXbvv391fVlp4Oki6lz0udgPBNk6CIcHwXgujuyRCnA7CflKg082gNz2recNSz2Sj3M3TQjoeYn6wpzQEh1sTaZ8U8N2F+z1vDs0QJrIrGbAQpWlfYt91mN6zHSVqfqO9Y3OJ8tDI4n4l+wjnkghPMHjPBRrvXhL6uUXaelJwBzyblAwCpJ5GD1q3y4OqWo08ToqxF79XKHrbVAn49hOA9xzKOPXPgiYm/3R/SCmVQG/X+ufd8M5mYGCX2YNZ3ezJYrRWTm7+uwjAgnB+2Qn9lH1dimacvUgrX3A7KozpL4nOpV7PPUXqAFeN2XxZAoI9XDQvsC+iKv5wJuluNIl8aljFA+R6v+tSt9bwW6GKBulu4eGV2Yszp4et5kWKxO/v4zEAnObo0XxqM/x9bS1E954TkE43uqbt5Cm3CM3Wahj7TD++E2ImDd4KNM kTXr/qAveZdHOEq9j7FPmfoYPgJeHbl3pjOllADHcmtpD3mmQFHIF/SAFs7dTvHAr5DX5cjEaF7hhmpKFpzEoSC9nXoLgzdCftuFYJ5RIklcSZZr5Qinl6Jtd/r3RBPhnz577T6La5he80sSTzMRGIfC0roGWa3lx/DSRN4cOM+j/+I37HZWM00drG+JNx1/KGqQrb/9BwPv44iT/QTSfRgU6k8mJ8VeH11R301VEGZw6xupmnf72o7LhXNSOU+tB+bQCZPLnFngb6Yf/UL1poydIpo4aDPt4SolXE8FOqHFAtmgwSMAOncI8UKy1myOG0AqxSNg7vD3L4LY4iP593sAhzg+kINubcb1/jaWiJ7uyNVzrSGA32XxOz0tzNhpZDp5a8DBhIJ7GFB5YQ4kBZJPkMOS5xChER8NuAjaDsEqFjW+UTvFORXOoL5U3mE9qJG0d0s7tK4sJul7e/2jPXn3O5ebI5RBWrrmgQr1oL93dohKcC6p9BmvBA49vYTA4JMQNhvrM zzwHwFr0DEbCbZ18sFor1hNI5FpbuXq/MeUPn0h7BUqPDjO9bqXadm5yIDcY5d4ZQnMjxtEaD/KviJwqrpxSuwoulX1aSY+MmJsia+dK2FBaCbOiPs58MbaUJEsnk9ML+OvF/Cq2iyum/rgwsoPkqlIMG0cDqa759viS2yEh6q6Ylqh1XYJa+xuJYA1/Ak5gD1pYy2sYM8fR6p/tsY267GnNyy8ol4r7FP3XZkR1Obr1jlGAzXEK4zoSuLXkSt1R1TRbZ55uggS18ml7zqlKBMSpGhfIwnnEksGHyJZC0Zoqk1OtN/FPxQN30IG028R3yYn7mq9mobWRCHapqRTCmTsuqz6i14A/vk27uVBRgj6Y7JQhvfp0xUmpQ+eVTfLM8p7s7oXaWXMY3sJeb1i1vg7uPUESDJ5c2PK58qIpCNU2q45GwF/7TMEUpFszDXvs+YrH2VrfucoZKYKUxvDcid95sVwFX0ag3rDKJxqex/Lg5sI6z48qwZ7g28btBI5IE4/rgqvCM zx0Z5FWsqknjMWx/ay9MZEuLBm0K+yoOvNIwRjsQQLwg63aGQzQZYwaXdkwemA/7F0FMRl1DMzGmrvkeaz3g4Z+Rjv1Hu9o7pceXH5K6FagCXPz76FKUWA+YOIKbv31kLZvEZiOn/gX2pG1CyfwFk+F0pmYzO10l9qztiR2xwMZBJwQ/EesiPuF6hJ7H9CAt9jNwnDnCLxpF8VU//sjSclCIFuJF+7uT5uCvTFMI2wiN+26i76rwvcjDoxZ4kNH+iOf0ThbuqckFPBsUt/2S+2X+ewMOqGRALC9b5Vl5pfTQxYBbFgaxaZx0NW/Siv2zlHVSUb8CgMKuJedKg5y9N9QKH2kMevvqtyGTBE6jFIrQMFwx7BXN9bJMb2tdVYYqKwCfHivwQt+MClZnvX4aN+Ktu+36q71Yk3tJpcz1C+PYQHeuO1K8oaEBWyx6ZrH/guikXHrWzK0PYwhmGv+pxwGI0mY4Hji4/nxnl7WKKurRW6ucFBgEswo6BuiTBRXt96wts5XdM qfHB0+qFTAl4pV+4XwciG032FK3de3AX4BiPJWrLTptKvcPROBHx5mWByOYzTxDbW3LQD3F5P1hyQJz68bS1w8p68pLarRX/XFZAfShnZcYsR6+EQ26bAUXyinVH6lu3duzL0OqJAQAWVglxepcgmyOgV4FtrujkItBHnC+Gu/b+gbGMb6L/mesXZToeFBAe9y7K8I6DI3T0OShf4BBVGx/agRYORjDq53FW377hdK1SRY6mkGIhtQz6TlcZlMRFsSyzJ5CL/KIcIC2232lCp7KLonXoPmMJuBJIXNv0ZwxUeZbgqX2T7rcRDwlqFDOoNYRVaz68EgtXkbO/+0D1PaI5FfgGI4sKW2iA/fd5Au4CGk0RRToZ2FVwJadTfjzICGbHNrvIbcHd9qFfZbkyn0TVihyPSrV6EbIEefrDvq0NXyVHpq9lfhnbj/6ZBibBFhIPa8a7ljHVRsN2hETkuXB5GpMMbAD4ys3Z4M9LsxN0vMNj/CQDK3gHsibcIitwOL3TDqa1M nj/YFh33VSLsGG3EilRunvLIZdyrN7AwFrhBnSOaowRp0Pz8/dd1m03EivwA0pc3apNDTkjv6sCDDJifIsw29tqlSJQTc/cY90bhE4qUBDN4J3+tedFxWB3QD7uXMCkZXiI4Sawd+yLw60/aIV0btqtTRTqCTlbM0z297nyb0nPL2rdJjkSicoD6XT441orbxDSA8dUZELnzUowiPGE3gvl7LrdLxGANxDzUduncE4wJp4c45FwBsl3pmPN+YI2dBY8+wRloiYTGMkp12vUr61zntezYlw2meMfUTkggbjuVcS5PWcdpHh0aa2edeQM8KDbpiB4T9YGO1mB+hsOGxPPox/biqD6p/y5D/Ine1yLP0rcGwXtlGYP11GhCKh1wGThwHNJ391dzTq5N16n/cRYJfH3iM2UtgbKPjSqmEusPHeukmvYjmT7C/v/B9lW4kS0xs7h/9Jc4D3ZFhcRZDvLW6uvMfumcXxxmyw9FVK0BTYSLpUWm+YJSBFtLj4Yy0rkeJc/sM BCzZlZPqiIJ/USMu7dSRSPIQdCk1MFkDsCD7pIiMoaguy4PRmPZGQcgy6bex6sGZ+6/Fffy5MbwPRCDMyZSS5+I5qa7gASenv1+8haww9lJcGnrZvU2BzTfgNBByXQqzwgpkgfPRFuP5XPusRs+PYzqZlnd6RgjC3kxXb4vYeI/Js7mud0FZMFF8g2aiL2IQmhbu26XNtWz5dWtVvO9G9Ey/bEUnwMNgrMJrWpczu9QzPUhyPFJW/KFViUqtLSdVjW5ABLXGp99mybCP8WSg+/GX5TTfwspzNwXEHKA3rHlTeaBLmW+ly7AhrKiXTgWktkL+8KUjCSQTVTsjvel86urO8/LAf4NKtdmf+D9T8aYfMr55drIeaxJVuoH9JmsQgdcazad1UfzHsMpcMH7tjwRcryKRxaQvks3WNgR8BhxR5tMLnfbceCoarjHluPAubrvpSr9lspiiP8ngIgknEosSkw20vRVrQVTrASEf6xx8hY7Sdc345x9RCE0x2lD9MKeDNuIAM wWdo/aT0gt8EicYgGg2IrmhXU6QF12degZtWFVZQF28AlZnVeRVNS8sV7tprdYx9Xs2r7PqFJYQhmnsqYmgIctoKZXNc0po27FUS5JPLP64ZzaOycYwYkuY9QntoX/2haEjiukFdrHoLzXngGHELUFhPg0U52hQXYmE51I2SPbuP6E+qQF1Kw1M+xGg201zn/9psoC4MMDki5l64REYzdCO1tvaiVXbNeueKbHtSNngCWBIZ+NS3zkmvt/0OCK5I3/DBSzsn8tk8gxQz5Szm5yZoQMUCOMVgsL+1WFjNlJ90Q+N6cd/gc2BLMMZlkZI2APGS6THoxmJYw8J66AW9rBvmFKiKOrCLtvXt1OXmSZiONGYDjpfOrR3ufZFjIq7BOHSb4EZR5sRDIppDD5NeTM/4Ga5N9vr5Gr25oitUSJOspwKmGHFYyaQB92rVcp7Tj0eLFlGjtbl2Wj5KNqRrLd7irYjPb3LIM8kCAq/HqEVZgIFJTgjPRBL2AF7aWM5hzlNJ7wwKM vlyr2mWfhQ99eIgIKilm5StqPXZKJ1MI6gcl+TlXfRbwncPu2rd1Z0jgcUHBhVJsWnZU8Kyf/XLT3wDeUU6xpszjdiFp/YAjfZ6QJJAS27g4835Yj9jCsr4pbiVEt9YpT1pnG1G7KsfZv7c2WNiD/L+nVujcELt27tw3IgVgEOEbUVcuitMTIqOiufME/1yDzjLd3Lz8Bi5Cb0caBuyN0eOhwSq3RNaSaiBC1/zdTu0y6Z7T4g+9lTcZAieHcdpj+igGXbKOqv14qeimsYYkqfA1Hm640i8WriFDf/40HHZYq03K29dYhuyr5oSpJ2dIdPQ+xP7DhPmxLsFP1VlyN/gIW2NlscPI9tf4x4y++TTuIr/xIRI2a5xoxommszBw887iS8bVwr+suYAHHLKKsMS9dB7L6ZFhnRQtaaGGLcUcyphaC2DNV7JSiEsHjMjFU6YL0eeMHXiXjIajCLO/HDmkM1+x7UJQE+jhRj3rZmqkwIvj35BHbZUAXfNs8/Qt354d1SifM GS/XAsqDO4RvV0XFCkyJhcwpkqNB7Ymdro02P25s82YCWBwRD9A7L79zjQlIw9G6xE1bAKMKff6j9/mRcQIH1mwnYFm3k60QZphdVvwHM5M8w3NxEqGLEUrjdKNI8KS4Fhg3LHvGI7J3u3gz1assEK7m90e/vbsS8ecO3+yxV+y2fNrR4nctWxl5x5XIYh8G17gKeFaOiXT0PkmodDxlk8ndcebrf0vG9RQfh8A/60GQ2zjkoAmqpvVbLdXXsud1OhGEPD9sObui7tYIOlQcbyMda/sTpGYHvXcM1me3eaZhgOMaPwCTP/zzZX0nSyRduEUsern1jX/xzLaOINul2Dum87GE5fACeDWgpKoae+GZG+FBRajUYw0igpRWiZNxs/qG34xDvDflVNjqYHlqzlSm/KH5EaabgS/KqAQqKqYT5KXZZElGCWigPhO8IOyq9H8scPZ9MpOwbD0J4wL67ZlyoaIuzPBUJMbSJGeiqjCInDx5LM4pxKuLu5D/xBsuqVU9p/O2M Z+tDfXJex5715h9AMnIr7QBGJAypDGshowTOZSKUGrSCc9MwCQ+tDhf52d0NIdidywXXkB8ObEJkT6ebIrsvBdASflH54BpvU8w5PWq1UWRAzReE/iHvNode63vCEseUyaRM0DmDWNeNhm5KviN7POccwv52i41yMfanxF0yiLiSW9uAZd0fIfDotx1XrAlOT/VMluHIONSwsn39nzHOJJeiKSogTnwcyhOyHXBSZUjaoXbxC+iBwKS8K6y6rGscfgI1bgFn239EuVDUVjP4Q92+h1q7zBs7gToiZ3AMXYreBFdwMUHWHcgZpN6W+BXtt2sBBdO1/pK+LTad2Gn+G2eVNup8q44C744J5vLOqHsyCyTme+suyag78E3Mn2yUs2/2dBLH34aFEhXvDn5pecc0fxuiWUf/mQcS6+OMFmHlu+a/Mckva+79mligJKjZDhnBuQvWi9WAAP7++cAAAAAAAAAAAAAAAAAdygzWwEwloBHSAAAAAAAAAa6MR6fLZgpup4WkM vsmr43cZshpicxQTnynCYsMCmel3qDaSVEcJKEXKgEC3aoNWucZ86l8FmskAZrUPCECoWmtt8bcNclz629dqk535aXKZhNABLmIobV4exWJ3JUnFrfFxjmFqlRmEp0Dgo4fnVECJ6E/MEFA340zwAFSsnHSZaW1VawU6xaVxcacKJzzjognh+xhA5qjYltVH6UBRB1J4m5f1dv7Mdi90Y/VDfrxB7hyscEXwSvjFoQ4jV4qhZT0qzGwpQeenAAAAAAAPKl0ZgB06Gyb4i1MtijnW24jqnMRQhprTZImn7DPgiyho+ST9ZBHY6Ivl8pJKyJqzRLA3VtpFsbUUXgSPNRfptsQQ4k4A7yTEch8smM3XLwAkW5fUTJiwA7OFYwmAdCiE0IW80eU/s/EPUbOYdOgZcGVmhS5X85oiM1+s5ZmSXa23hRz4UFcjoVJasgB0sMkGHQdoYc6zy9k1gIOYFl50GdKKTFUgedlOVX2PMMbfsVNyKFbF43JfmlzpqUNDRmxNRYpLM c7UFUeZh9JI/95+wbZEXcTyVQY1RePe6APuCLpqI6lI7l6eA4UwBMGF33WTy5wWkWK2TBqcBgVw9y7ia0xayFiX1DiWwNaYG+TDtlRtrfDvDDcU2WEP74syEPBLIs4l63vIOpHnQ0PEkPx0Lwp39nsqSwoFzg8wuCEKm5hQXZKuLnI1ApvRae0JXgCBRXzkJ+4sBqxxahn3XNqs5xmvzWwdrSpwWWArCoH7k9jbdWNeojXRfWhaKrGEbmOIf+8P/47Vf9UDDglBi/AcAg7nPxHpq9Ca6OsmrlhR2EAjT4lnsQwl50+E1m9OjqStTUbAvcYsUg/FqxrcCDWdIn1al2SuN62W8ElhFJV2rWlWMc+gu/BGvFVY8JbRDkg88fcZQWgFvWNlqeob4xmCjmUvRKUqy2T6WYSF7lQKtAU47nA1YGbbXMRrPk0XTEILUumRIYvWZ3Y01BJB6IbEflUcjAzRwtiHLqZ423LdFLAeS8zpSnVzCZObqHl4qr58PaSjgUwV96RtfM dqUjnmniLDedVduAP+HyAMP/nWLIENPMAAABwGHtJMEtwotsSfVgPYUpRYv1PjBpl9dTN7IQDiQDApfl6U3AOnR2Ds6N6RnZck6VEixKjYqSHteu1QO6oqipycNfuB6ALS3V8Kii7yXVjpWGv9nKUUm1x11kHSB8tA9v1PoPKPXuB5xiciORhTOaQFEA9kHak9/5aguR3vonP5MA0MxTqf8jVmtDKZCY5vCQ+PN8j1eAjVXS2n6GBHKG5vzeBOuH9GgN26l5zdeWeuxpTYljk1Vn8DDKR0WAr9PcT5d9Ap65a4WRj3n29Nb8KJz3j0eAn5hRLY5mntYTgBwbAAepX5hnv9fVa/vuNqRNdBa9F1IcTfaIPKbgIoEvjemnLcj7jAdKg/EZGHdodr16UYQIX0NpNUvDFnRaJmbyWXQHJqj6s2El/lqCyjhjOJ7V9hyjKc+wqokk7LaLaxoNkU4M/eKd+DN9HBOpBb07aVzKAquP0QG5Ncj746uIDG4vazpn/Frx5llJM XhzD8jcBTMA7lBtyDaiH9yhcr/TsZ1IllObRTLMxbtPrR4M1RdS4r4f+awBL7R8DkGCwUlBsRNBSbAp2P4+Kj9hS53TLNsVGSxIFdBjJWYSwvTvbBJhqJQXdO/7QZdJHWminlBCCNuLJ1j+tMPJkWrjbrFWiqoVwk7ExGLQlXZUKqvz6lT8sEnNKeHeOaRwxYx5Ibf9l7WQA1nky8aj38YBysg4j8RiROL7OyfKvh15lZ2gvnK6gmjRKXXYv60gmAx1z36tRjpdOFVjDEU3ImbX8CEU86MUBJ/4+0xxB1KlHRWBa3uDixwxGnJqjaxLhER/GwwB9yVDgar75Uk4F6xDb5rGg1+JMYUg73DmHRPJHSdEvEXxhi+TfwVtgGVts5jHCxR806xYUEbkXjq/7H5h3PAnSMhdffJmvYSGnf4LQ5E3OijBMcokeYPHQPZGOgEDuR+5UW6nD+Zz3mYFZU3JgyMeABbgFbsBbiovSQQ8TpSJ0PFfctz7vLB8g6HMYdi+FtVWOM W/PnTWOZKYVd4kqAzbpLkjWrvp8Ly0RSB27N+sRy06uCcEbZfvGAN6g4YrsRub2iYc6tqB42PrUoEbBag2X2QjkbKdRVAzXsEwAXgEkVpqNlxXp30OxhaAgBAAAAbPEF4XnrXnekl5VHE7XSwUlzDDUDtdWgWVUwMQUaMPqeHjw8iYhzMMjYmQIozfJNRUqU3D7QEt/OZJ+uOeeJScnG7xI/ygUFhVssvVoANjU7GuINyZh8r0PbEs5K9u/uXTDhlgfXbaveY0JJVA+8HErLPIwu4kv1Ki2ZCoDX6WfjrgzSQLpObAnHwia7HHU8LlDwyQt2uSerZNzVoYcgOAkddDkOEJinhXJ19itJ5zb3QWYk1vrLfoyAsC3jK0katwEbaB08zXTySzyU3hhwhdIQk4XBkKKFSPjv/c07CsQS3IFIFpwffyafWF4QpcYit/MFbKdvkqKiYfwT99zpnHl/E6/ByxPACaX75PiuXGdqqICKHO0DRc3n5hBlp15Kjeg8zVceGV5lM dxjonau5pqCwxl6yHxFmsTXnb3Jh/TXclKeVzsWxptXrdhwX5p/BqWvBeNO9rNGmM3lHI4vD+Hghcv7oE+73piC2D+OhkeU4hQMuu1VUutvthoC0lrRTe7O+87t3fwBQYv2BoxY1GHa+BNMqJHqTV1nd8eHnfl4SYU7cpB7R7BVx6bTgayV0fnR2TpOno+PSERMizw3OidJYda31np7K4J8S0GsIu+1jwPMSxKDJapQDyosUqrGYPoq22YXABCq2hcT85Cd5sOW7Pep0fuoZc39suOJ/FjbIyebCSLG+XfvErYSc/zB1KnhaX3CxR/hdmJc0DpNwINzcHxqFhTuNNwqcTEG1gAnj/pIUKxXw8oNxN/B1bJZ9mOONeTZ1PCL9La8OgoxvE2w08JOOLV/QjmizcVqCL4o+GWBfF64GnCso2ywhn25t8UA2pJYEFFUodeIBmtOsZcex3IPIg2sV2zSAi3qVfg2mnOeKTlWrH2PeG8RqnVzw550YA80EvjTQmoMjq8DbM ghsbXFi47fCY9JYgjajr9zzDUNR2voDLw2ZgCEhC7aliq8aePxYaum2UkYuwjo2MvK7ojdKbGjKBsVTzbwAi5rCRNCDE+a122nVINrPgPfkL6EJAphgnBhWt7hpTexsFPAQCdwKUziGa1woKjjOkYbkzNpaqYO3Q7FS4XSNGuP19CwiA5YHRAui13TE/To0dB2EjvD9ljtGxCAADq17dDj1pigeyEBOdQTEE7CrpCVu2uBr9McfY5dIDwHEXX0T86hXQlCKwYoUSApcAxvJgQNpQdyC2vGqrBsaP0yhbzPAFVwXmfnSfIw+Ff9V3JdjoU/197zsCa1G7o1f/spG+fVlY+SINKvjO1HyCK8JNhjyTD+2DVpjTP6MJGlMKbdN0noXjPmuJSkk3QS1rCWEzdA0r/+mcLTcWkT6ywzHe9wQOIqEvhEIb/mHIobfb8NsiBS7N+GImkDlp1uTkSTmu15JjUBVDU+5/lMNvSZ5RC/LFbt49D1wA8s3peShySX3p4eUwl6oHM 0JIzlKKQcKY0eVOGAz6npf7qlpNaBKblo6bNfVPc6qXcH2BPdx4jINhWrRm2uSow72g3eMMiLcZ6jhHwmEuPTsC3pUPgdTymxD/+oa1DQ9Cy6ERlENg/F0kErZ89ygJj+B5h0iVYACXLP+XEQeuk1jp+YYWD7T4sHqjayBUAjbsIAiOHddrGsA8KtFZkudASYkb5UsURGrqIE4b8rWFYfrtcI2yDgnPoG9NZWn2OYDp54tIB8ODCmrCbkiQZa/i+l+PzDo7B0RzUto+ST+wErNvynaiVKLezDiUvD+64/SOUPGu/s/IMczDbq49cRfk7xlWdolu7jUbZaRkkiWcJzbniz8RxTZTYv9v2YxkY1ei0S4Sl9uB5iV0fihDJnIzEIeADIizAmiV4mAWFr0RRTUV6IW3GfhBjlMSZ7+GoKscdbfpMCIi+aLClEUMBY4GScbz5gaiBXMEfiy3P9LPwv3YlbgV3+jGR/ndP3SpL587m1Us1eRVVxDxdFWDlxH7J2a079eQ7M EL1eDvFDR760+qgSru2i9YpCxLhDPp3ejc5LNpq5PpP1LQvixycBftG2WwvbCHcEbmT8p19/p/Hq4oBzUMd1jogd+p5LDh+e7yO7vI+r2nqFDc04k2vf3yRDhG1Siv4VxJ17vu5euiFLq1WZEtR8pbZIlKQGLpMnEhhjyTZ1DTDKtZhPmCoQ8ZUBzS3GWajlql9TnjCpwY6C5NWIuWvyFy3zJ5V9K/gEJI5x0k/iPTQ88a4xw5N7qltwmEhewVxAQq9Jh6qB1qu52CLBphT94IiNdyBRnknGoNOkjKaaV3r8ElQsKHBfoRSdeKklqJuSggNLxwTVhZEAzUKYH75gtu5cuIemdw/dISYrYIk7iSJ1bT0rxwC8tM7yc8L6VgKSx2RgN4VXlcizh8LuVn31ouTugTRph9NtmYhsFSUWYo8G84cEkgyhyL6AIGEIBtM+fKiLMNF3KPRfG6lOqvVn+4t+YDU9x6DEjBxupFCOIvontMS7iNN4nBXXq/XRC0XHsT1eY82tM IzJNBSl2l57ITnqJwcn1RkIbX/v53kU+Wl32yAFERvaAAATxb7pik95g98Yg404NORR6hP4NWqpDRdV57RIThwrdjFPiKDzPDW/i3yaPPptrkhLsvi08eCEv8ftDBArjfl04F6C0cZXftb9KbDx7IFuNuf+aKHO5soWr3YYklfpABcLGNfYYFGrSpBqx+VitpFTRevpbTwBGGEjE3K9zHhOeEGZp3i9sNDFnN7UXUoTBBbi26tXnL5eyLMWeMU6kPEMDUnMuvlXS7PgtFyn3LHgpHFk5p58yG8vfxMLvc5/F0v/99fPZee3ZP6bMerS3L2nRh3K3h3kEVAqiIfeSksxvg2oOrdGxQQP9Yh9V6Ma7nLXCiPE5oei0gM3zznfEFnX3AJIH9K4icKk+DCWNcZ6IIOXpvoDK5INLsH/cQ6cGCrg1u2jjCnT/DY/qSm74I83ami+ogiMccG3pjXJmNXtHNHGI1GdZ7accJOIIqsv2jAeIqVXi/fSWtoBIMIQP0KCXBGjNM Zigw6R1yILNRvDBAMib/X6tiafhUEJAiLFK43Qc1dtIjOjj4MGh4aQhQrqHt/23LhN5uf6G/OGDucufnrOfqbV46gc8IkU26vHthwTdCbzWvnAvs4GfO3o+hp4QlDsXc/TNc24LRb2liIdaGsWIh4R5HBhdJwn1HsIRoZ0/QCZDILfIGDpbvOq3sHlgaZ9e4OW/63v+OCN+ltClrXxAOtXHkYtzDPoWziES2xQP+pdRenG+FEoPavvA08ZkteQiMa4DdFO06QVcyj82QDPO2xupZKdRE8a512VNzHa8Eji8wxJeEO24nU1deiIqOYjXm7+uUlLCvRO29bd3hsGXSkIqflhPDnLZZuMqpFwt63uBkukgm+jovOG52+ZsTjV3t+aT+OIJCpIF/003ZUpPVP3JbRPdDXiG4k1FLMPYtH9ILBHGlaEjNKY3J0gDuk3+dztOqn6dYBXW8VpU4EtXSDcvDZH5zbEd4TEwoRwqUfsPFHRiQWNCwhEP3VawbLZx7jZxXmPwLM gzp4y62OHHSgAP3N/1UazLi9O7JJcaFaXl/B0fWam4kRmGH4aQUYQid8cag4+GL9lCI8H9Xv+A2xm8CxEihZmJbaWlTZZO2fWpnCk4ZSFP9cJA67N2imZtUqyOq4h8gsy67QAoU83qTLL4kboyM5NafSNUPR54du6KILiUoLLP0I83ft48re1VUnMDkoh7IcCPyYWtmrFuqQEOez/vkNuvc+GvY+dzQPH3OJ/nyW4KKZsl9/bep3roFyVe31M7bHFMcp/XBGtFEoZQdaMMIQCOhEvVic8krjBCsvW3KGyrSFFTGlAvMozKjae41raDK9P3U1fHHFx+dsY6ySREu5tJan8wT9RrEk+lujBh0YOqMoo5+ut7b/35b9Xw7ZSg/ySnk26EelVyrQ/MTwdNyx73x0ETo7ogkasmHNNEuMkREUltCQhQ3b8H2PQXz9xTzxlQ0QvnQ07Gj2xY4SNosMU0rrjev5vmj7KztqkumzVsyzhw4s62oF9gwP31+V2gwfwRmhC7uHM GlZv8NoxGh7fBSaiyR1OO3XL1vhOWE1iEERlDzjfYmUQtPwKYodhfQXEranRJW+Qq3kr6Hj46okrw0yLekLB47RbMhsxfSQzT5Vdwk10nFHRHrOxyxa6G69WDX1eoCeam/dCulxtvv2jKi/mgOH2Y+toAfW7ENltA9krkAAAFPDPmvx9HSa4JnPAUAAZwKLz2+i5CBaVjsckF1nuFc+oIF1oq2XpfnsoLNQ2/N5T8OmELUQGi8vc2u7GspsirNf6N8KivF+328Dh74qliXHFBWsAM+UYZe0hHpBtSatTIqSBmju3BfxGwkHYhKPxzuJv+AjMYw5IRXyVMqPYtxkmATMfcFnJJcL4ZmCLtRvb197GTVlIKGQwsaVqJOrGAC5QYuwlhbxaQ5KaepJEBxtx4ZNL/u6UwnyEUs8dxnzwCiytexg0zTwZgtMK2RyddfrP3Fpfu5NatGNN5P3/gdjLkYhPjP6GuQK4nlVrZAddciiqV0oA6egGDUPKkcYU9FxTPIkraEJyM jpfUwVTF6ygMh9ZGsybkeNTeft/P5CrrFsOD+uf9rwUfs+TZmJc4L2xw3zBtW8gXsKF0jULbwXK9BLAncy7he66IT3Eu309xrHHuKYTg3qovU7kvvKYLMIx0SWfChfI0GM/+3hJRhCQT/c6EqCIRHy1p+vud/uM4NgBfQfq9Rq4nWYoF5FKaTpQ+yoBEAZBwFsYr+q4Us6tUqsm5RU1D2sW0Zd8LlXwCv1FoHBbqb6gjlunh4HaD1cAQZ+wOecioE1k3MvCzYVZw23YskfW42yDZKHI6pf54mK95I6PutVjlV9DdZw1PqDRsnWPvBh4HTvnz7QTwHPE2HeX53gMN4ymF4D4uHnYX4kPiQVliO2TN6+bsNuQmErv/MxrMqnOP8YxAGM5i0aSX9wla/hmFh+v77P1hk18KdCFFPXi+GswExqHg5meyu5u5L9XnJ7/CTHME61U7fPpbZvHnNjE17HtyHEpJrKlcvVzSboHaOrcusmVxw9XtNDtkNI5JFWw/8yqu/WzGM OKTr3XWnV9CSdAxevYaGRKkoNXJtRhsvlVHsrvcnIGzQ+zSFzYHSJzlcmo8I9lg6qMPWVzcdpg4AK5v86En4J7YO5BqpFtU7Nrv0BML2qCqccRqOQ8e6ty4A1LY0mccjbqAKrM0raxOBirrAXb2u/W0VUmgI1XbJNEmm6n/MDjS67+b75S5GM8stZwvjNm879seizZ2JRmD075WOtnc3ElefsuwDrCwPMHWL2ti/HJIwAey7g/jZx+KOB/aYrxCc6nGb7wZAgLK6smrJkFdTah+fOlOPImgNleAqWSy1az6MvlbwQpadG7WOW10jSVgDANMysIPU5XRxV7roxwIlXkiBwa21FFxVvN28Q4ZCfUROwfhGiTOQVAV7OpNX+s52XDAgueRE9Sa9+dXUx/uM6Xyuq/CaWCCrGNcNZXzu97fTXaOCRG4EvTbX728N7yO2+VJhuE9fM03fFbfVqnkwUNLmBjdlfwcYBTk2YRocvSqS3Ekzq1rdZsMgD5cp05jeG67ll0WDM cDbDgFtDCpGZpC2xWGbD7Icz+qpYVi3pSk53gftCSee3aB9nHhgRpvdGBszP8cfzPEvdfBpCQqjMrVf72L+cWhN+9ruKFQC1H3W4S8iA2Xmhlc+wGkSfABSkr8Jo/Gf4bFIcjEMo2o1/0l1IoR9BMnQwwbjhv6jl9uwySPV235Xuthcw8NfBXPEuVxN0mBg4FLDxN3MBHJxdKfMNRd80A2m/aQcGNBiVQdtLsXYt6mjWoHRBTOw8u9SgPh0LuteBmHHsCOnCDPeGYOyfBFJkD4yda9SRxJwQjaIyCCdyNKXfGisxlbpEGjSUhfHXluWyHRdYnkwCHR+lP6xFmxZ2b+954aG9MwguAAjmFKqEwA+jc7NkvvkUTVgHuZsLmNLYm7Z9iK9N0uNtOQU8CZxVzjixThDvZB/eGz3jT+O4GurGbWt2hTiCB0qBwvCsNqVDrkC+v7hyJlPKo9qumwlz3GcyrFhwOM5kFRakACDLoWy8+s4idQ6jw7SddlFiQmRSUDynQuRkM r1/FXYKqyW9ZWbw0VR62u+zMwIP17N2HWrYWcvcAxylYA9YypO+QtiKfGJYBVngQbCmM9AKk+yKJLWJ5FRgvb7V1JCLvcRqT5EfElLhA7aq68oYxY5VmXLRxwu+mCXFviUK6N+uPyWq/M5XmMsDc8PrMgNhlh7EVnAaCKmZkU2XNJCixAX1VHJOVYFxyihj1FW6bTc1uuoR6TOnTwwH/VK18CXxYXKuCfAtvQSXo8XJcNMoNGFvB+1IA+JKtsArSW9pJexqbti6y0OvyHO4w7E5qeIBmgFRHYfoGqfJLRBZwKd12VhR0vZqXUQCTwIW2bS76DM8UEVDExWHaP1zjRNIjj1gnou28XjNV7jBmgo8yJ6NleYqsm0WSzDgZ6djVIem3cZTc7B1ZEs2Mf30rKUAEX1NhC8t2iw4D70XFX8NAEw/TibRL2zEwpkB5w9fh9hTTaRuIrFzZcU33FnwaY5nvZIWNkx51g2Yi7Ll0B/PixVMHoerAYgDD6INwV4sfpqAFC3qaM xGZOq7+GqrpXn2CI6khMwzILn8Rx070ieVOvM//bLjDS4zBPXvkRBcI+VdbqfMQ+UHQ1TFEoulrpNYJ9GAq7xCiXz4pfDmyCfOU6pk1MoBfotxwVyJ+eQkxa3zmSznSkqF4K4XbJO2Z5PGFMSkPdOwKypy9hx4wzkgW3qmTLx+TW0JcRNh2lxJCdEnkuQ5akseDtTUxchCHopTi7AuoQW6q3BQUIgBmjyQwGCoVII3pa8k2TZ4No8BIeTKI17H64VJRzaFFgJVkBd/m9+gbmCVcprDsWFPag5enCYR5eFgqR2bC+4zuQmpYewAFxDat285catR7/2BffObvBav2CwfgJcy94qMrq9UYVffpjZzmtiSWP6GzmnKCSvDP8UCpz2x5p20p30Dgw9zW1f1EiU8U6hScpzJrqiKwB+PnKyyeYRC4QvqVqTZUL6dkUmWZ+7klJz6ivWDLntjNAFSas3mc8bNY4AzsOJUUYyjLPnqqthexfuIPTilOdsCy3Pm3xcMJXzaYlM R94TmcgL0ORhlaf2zQQPH+FtzK+zL6hOguZaicL/V5l6KZJV+MIxN2OhDIivuy2y/3ICeBJr3fjlv5g8/jV4zUaEjd6DI1dgy/8TM7xRkLM7qciwV6ARqOP9pocwfnNKOBYJifjpXwuEDhFF76MzsvEg8nWhwdmYgHwTKryIlR7295msNiAhCanz3XA7j/BOB9J6cqry07muMJzywluewnC6AsF5v1OF5wpytnd1YLeMw8HzpxdXa5tUxQK4gR4queUWUKJHm5ZHEnfFv4lMHARxlUPsXF+G8kKa4ZeV2JqJ527yMNpEgR/TOOPgZ2zXc99F+SyOpwFzQ9rkCV+0iaBVijf6Xt77hYhmwJA6DfXUOBoUG+cGFURSBtNDXyh6AJ+sGhPozxlU0cY5QtWFhYI13hRaR3dez8WF8Dl+8btTkQEaYzKsSv5uuoD4Uz+F+wwsw9NawCV2O57pWsVqfHL1CYdU4mi5hixL7vzOEYdO7zwR6RWsW0llCXI8YR/dg6emSJLMM zOwVSZpEnKCWvha91uybkRpyP+P1+qmPHphmYa1KjDVbmJLTXsFWrb/kj5wD0rqo9lVmYhWRtyIeUP02w44wkPZ4Zzyt6SAnJYbkL7L5UKBWaFYtk2fg+QFr0ExNKtFc2FyLRTZf6czvOdp7/O7u96svjHi1NojevmVMhgDa6seOb0aObMgFf5sSFq9j1o7fEZgx0sDgGlDWxv5ChLDwwrwxJ/69JC2sM9GSEVOaoRVzrwcmGqBQF3OxFZD4DW+YYPpOawum0mqM1kmLPLRNwCiARDBU0ahnVqcLC2qTfhLZhlu1Ay3t06bcIgzx/v52wTl5A4YuspVUxusRdG7lVjE7/2jOkXQeL5UWUznAXH1c4JGlkQujkugCfL+beQ2+Nk/mplfn9AptxCt2pu6ieanuJPh7lDGO01Yqv2EWjfCUb+yYNCr0tiPA9QO67+gKkO7OYkGSqKV8x731a+/YVOHlJcMyPpMH8XdN0CQsbdZiugvbytBstncJQ36uPIu7lxddABGCM aR0KJgSsq7R+8vaSXkSiUpn5vpxQUxBCRcVec2ghmuaTEHTSDg3Wr8q6CoPa0X6rXEpVYlbwUp6i/jAM1yNPbMvrKI55OAhyXFm7B21VItq1+SupeZ+UJUDdgD9XVLH6jD0DYuAvvw7ftjwCbe0Jwbi6m2lFXcPS3M2FTOHa7ZOUICsgracWHICBjsl7yRedDJE9Q2aKhq8uvmHF8UAZF7R+6fJZUCe0iOXCpOeP2lrjSeD9Fi4Wfx17whIS5mWdfakWF0ghlaomYWilUW3ChmfuilLYXYjWujtzZ4mUsETHdm/800bxtgW9reey+EngqqD/vgLyNC9n+u0aBtmJRzzeJOaKtOAjTZ+DPCUr0KhINBGlIeFdOADVH7fWR4jbPuEBDbL561QnThsZbvamuJpdSsB3+H5ZfT/wPX9q7aFmZ1Gl+lBUfe5pFOqsWP+Mlxh0pTTjPSQv6I/HpimxivKhcUvY4rfkDfRBqnv3F8wZwZS69H5gUTD8A1LDsvfW/SBRGGxDM 4G4aPKZxXWeuVYG55pRMeDSKplpSIVumLgJzVf5GUmzY+mWJoX1EcSnzDT3YURPcYfOrpCkPOscBE75h9dTZD0QBdBNz0o7dp19ACtfkpn4VenIG3Pw0/wfRbuXHYmdPgCu9es84ToQoDYF6Ia6Y+/MH8/AYx2wLwNmkgDFoV1BFZnEnxXxg4D37cHNMkeG961WTwWxNp6uU4o374AWJ2XGNrKZ1KDHXkIa/iGhCCAffG3k9B1PrK4PnOYLrqBf0C9Lgs4mNIaGWRdEcJs+wzg7r8+cZUkW9xpiUeavPDh9plkr2rT6KK0EjPkrNc6ICGQ7MsDsEjyhb6D6RH9Pg/iZE/P8la/r77DyWrcMZsXN4+FPat07HT5QVkc8CZ6r/5VYSGUMtn12iLqZV4FSOdXOrRhf7U/AAwFHlcS3ar8PIJxOHOuYHW07FG0C/Ptjca429XfvoyyBCUTOhEmKnWgBTiA4wEcFgT4oTjPW6xKD67QRSE04E0ABtpGY2hoFwHZ1QVQKmM xgwyGoZt0PvpekCyEBZgQ+P+C2f8jJF1d1jb1PvbzinPoMZwxv39p0fsaDwKGMFuveBnD5Za5lYnAG31XRVf3ybeCkGSz5wTudL8HVgkQB9VmerWsDklnbk8uY+BzCglNuTyVzzPH4DAhfrEbBuUlDb0fy+aLdbrskOgmp3SWQ25qD223Ws2TpfCktl5iJPeRsKggGdbkmeH9xmvCZCQ/l81HXGnI19lZ37Wh60n4Hh/VUXMP68nUMRuEid7f+M8MXCeiVtKXNrxDDzri6LQXC6KMb+fAQf539nPgISfXlq0KDwxuy4SO4bqGLd17cpb8rsHB8WDLOeOZXMUDVEFYGEI1kKOtk7SsxQkdFPjPdgH0ut2BGZCUmnyq76t9TxsHv8T3YZfoKu2n9TtxYverI/+vasFGfhkD9BxFHzLTOJkGahc4wu2DaxFMsc2CLPF3uRYUjhrNiC2+TcFafiRZtHko7FrZcnfZlf6jNiIcBgpfCCJwkQ/1sQKx6SJU0Xal2+NSGvCM zCmXmXIvsXGXh6Is+FhLEaBqJn6DyHtz5F1whUTCaoHaicBX2YteiyFO3wPbkqPm9qY4fCt00wy6bn+reRy0stI4uIZ0u8Hs/W+Va38UaC/eB6ruP5VgX0ki/84CjnEdtlXLqQ43uw+FcfLo+L25V6Y8tH9RTav2V1pc03DmLdnMlGJ66RNPmRphhRYlLkbYnQ02/IBwxPWdXQgj2Hex3gG4jq2S3jC49SJ/b83iAUNYWrQUIiUNPUFLcACNesjfLHkdlgyRD4MbiyOg95so2QagPzY9y2QkwtGiZ+EnonizbZseNs9+E9WuolLHodbngHzNIQ0CF7f0ZDfwXY5eMwUh+gMRklz7LKQ27WhKi2g6aYVtR/yFJ/Fj6842AN2W42q+hE/VoqB8nUzei01b7qww9dSd4dk13KN9tj9PaWKa51ikXP+8Ye0Kg+HQ1okPvzeXGQ4rGRCf1QqUpyjJOOyiAAuliqUDPMvyPCtuWawn0if+bdon/3xgmHgtWJWxsDEzmOkQM 454YNg3oYZFUN1lz86UFmsOg0QICPE2JRQXnyMlrj2Fv5a9kvBTA1iG0AiLQHdxZ71GjV8y0Z/0laV9FTzBxiUQ1AgX4h2s+0cpN4LHQT1Yx4KHp97hl7MVjuTK3VmDhbEz65ryUPB+f7yS05XeQ9nzsdrdWf9wLK7yQ6sblTJVu7Wjp2YQmVnbM9wonQQo8ofqm/N4TVmas1nI1X9Tlh13jlDIPN+2WwEFSjwJFPQH80dF9+7yTnm7JW9TzrCypsURNj9HAjEYi2CWOLyAmL0Z2z+zK86n3yc3iy9yPvpyfsRHPJ/mv5Fk0z1j/9BcqQ8QuO4/iv6HoZnEoxghOXfxm2M0i7OBF8jBXuXAA2hHPU6G0qJs0wj0gXRivmEzzgBxzWcmbcB2Tf4buhX2/Y4hz31B5CH2xDNuTB1JFcRvrpUYU0vdE2Hk2GIXnMlCj1HifsDABIFFRuRTqG5lcmnJd0Yj3slXjN6XYJh04ktas5pq9sRGShekmIVD9vuUkSTeQMyK+M FwYR8nevnK7B7V7vw2h1y27kb8pcZDx30xKZ/W8+d9AVRMFrB88ALoI72dXexoeYEkamyPSFuGP73CQBnLzR12lXRlZjDDsZmgnC0+nToFjjLMvb780Ee2pSVgr+1GfqjdWOHqiH0GddSG7VN9ntMOsOag/NQ5EHSZGSroYST+jaZ/quSUK9xM3VXWLDviuIAnZ4oWscNh9iE6ghJxShNIMvYk3H1FoFP6RUMg0CCmZEzmkKd35lDPtSdLga+Dm+D9rZDbK97+5Pc075xB9aGF1077dhBYQTB8bgGDMJj/Ce3dWaGxfJKYWhAJs9g1sNY0CW8DIpUlzyrCM/sf1soF86nIKAmWyXPYL6BLtDODrAHckq0GXRi2A1lyyeFi7yYTw549UFsj2rx1Z72eG9nrESPf2ntQ4LLNPtOvuzp8mhj6P6CAsErHw/7hA3GlbXmeNihrsbbmz0qszjDgz399vaWBuOeHZUyg9FGd4vYY2rs1jvzXWpKznRdPjBPM6SZiWsKUu+M o4TCfeIFoPfknwGImL3bKXskFB+npBiV+8wo7MndhT7oQruEDRIlhkWvxy633zpl54K8zmHT8Tz+rB/3bUxld6PbF4kZDefb1PWNrhPrIBGLaNwP5vlxtzRUs1s+txe3B8nIPJz02f8wR2gq4G/9/B4ZL0K9mna86ewh0yFncbIJLDMUcte/z+YBpup2kE/8zj2x3HvOL82ejOkr8Ia0n1qM+JS9NbWmcGyMePyVkLxnl5jxFEBcnpWoQp9Zr8GPP/2jJtqAHSq2tTUaxjuEc7oP2bjojlqEBkj4sFJQ5lEvjI1FyW5JneVWCEJysg7UjoIf3qp1l8OC4NB3H6psLdwXeWKGq2B+70DXoMW7IPfwI2ZrLEmMoBgo/WMIRdv4mUbOVBjOuWNQy/4viY70SXl7z07X5b+gfBn091dsWqB11FLi5i+KdExqLO277dsZXHpXHMicFlj4JAPerZM+84YR86AzB5HsSIYjUpAl91SbIia04ven/lUXFwupzGSJd2/YbO3WM 3HcA3JE/ZSC19VoECfu77JxuoCHKM85weW0E/E7zYdwj0zr31JdjPXcxYq0xTkJGPXVpwyZ4QkGjTGPfbm9xu9tDvhJP6rXX9mlK1DvRhPK0ii0+C81Y4x94fJ6n1uvSH+keZrRdYYoc+qBt2e+UT+Evp3fLdj87BWzS/nOf5WRDyWTYDDsfUS6Iz9WaAXOQ3GVOZJqe5RRMqBQ8M3oWyScNI0jihAfIDwz/0SfSxA9oMId+wlX/FNGryWzCdAn1DgqCj6RNLsO3sa0Jl7wlOxTBUNv5AJ2WCAfb3Ok5XxPVg3LSaSi9sxZnVUodc2DGOipXxW81HsBpna8nsKXrKqjkB8ILpulrp1jgiSyDCFPSKXYtB8jAhqWefSicTnO1YSbc76cRjqXOrDWZtJJKImhzWR7YmEdQWE9mVT/wkaZ/052eoNL3hpV/KTScQOUHNrtRV0N9EeBACVo5jxYvVFYnchLcxEvo/tn7eaJWr9lx0HlGGN8t+h6L4NGU1aYdP1aHpEXCM ArAzYwiXHgv+cqXq1oxfOQZiZgKPrf9PGajZoEm9xFDbMUNLusQ09rVhxtExAqUZIjyDq94T3RzEC04z+cmSrr8VGyn/C+hq4/h1szfyzJCotrbjuGO7rS4SP9YyusArPmevGpSPYhPocJGZ6uyJVZyV0oEc/TNCeOdw7kaz8/OZmRcgR98wxCPBhInhhowng+6ioLgPMGsN6JdKrZKWAt4lsK+TxwH63wGbyLLM6+fQUVjkIEw8aHJrxTqa8tbWZH5OBr/yRvTNQdwh6zVIyvPLdqfD9Oawx0CK7mOHe1j8dlVAvNRQfSszGjHeheUksKtUuNobE38SPLviX2K0+nZVA89jny4H2iFC0ap0+VHziCk4x6fzQPOg5/jaIwBBy+3FGII3TBxKe3uUry2CD3z6kiwUsFrc71VBvN2h+nN9zHKWd5YtQawpdJZ06voFdInQWEZMwfaVSE8hFtL8PyThuta5I/fgs72uqboISrMPezzhkTV1GvZKZ4Z5aqNLzcKQjqSDM rKIAVBcXdjOezZA5B/HgmFs/f2dPuK5xG1kHx5QtP+oaMbm8RPEYInL90wbqP6MAAedkl6u2cAcgf99BSOl72FtgFEwJsqQGtbAht6uf8ByzReC3EtVrhnjdWpQxVAj89+3xXO44+be96jtxjo+8tOrtACwmYdplUoFGP903ruIB7itkqJzXxMuP6292g4TBj0lFxJbQFGTwN5LCTrNjncXqXtG2QA1vvzf1t1n/VGWD4pgo85feCQC0GVEYZv2JEXhDBRGPB0NIgPLdgwAKfL8P33wxFWtA2DiphYwPYxjr4iDh9AkfnNpc7K1iWT3VOBYMLQjs4uQD35p842BvhFNbWwR0TMWQqFrDVVrVXon29YXhy7V6LpTYBqEql5bTkuF4z99DSdnz2/l58KfyQpBWHO4bh+f4wXo0vZYpcN0JSEjDIjnzVUwQlOt4kW4YtOcUC7cVs0y/KNQwITyFHXVxyHqjIOpSrlrYYVzze6zyC44vqFNjH+zKVzaMdSt5YFB95+e+M ZEtaFIVymtxNVPfeOzgp+5sKHic/qnYV0o3nHbirI2/AfYFIgB28Sb5pynV3fYAR4EuSvDGkOrCptPkX5hqDB1oJzNxI8LiXVxaAdyjBE3uIFmFBH+vCsUd2fcCQRlMB0m/gjttlAClBHsbcNo3G3ZMXsMWaH/6LdvwGE4yadgh70JSfTFpWmGOHW8CEroUQS/w7FN9RrV+wd+NDh/uVY54ceruCh1/wW5fTJxL2vGUzpX1nAkpygFo+B/my1/Q1NO60lNSsdyIu/cArA1Qp0bqbKPeCAQVZY/BNS02DDJ8V+YrQWTKCFRoLX+dR+S0EsWPGqCiF0lci4NK+Qk28gtpnoUgtjEs135pM3KjNN/S8AKCu4t0rY6WUTqCZ6ZnMKjuOpUjHQnKh4mZdPY1JAG12JJ3IBOWQwdXHrSJLcuzovqgKtamhy2PM2WepwmwUsE6ly1SfOzFx5QdOaDht9Qc1oow3QSUDsl/i9riPn6LsuhJkePG0TPyJ+uwK43Wjw/yKxhjoM y0CGy4QweJV61nCJYwcE34StVUZKuQK3qg3x0jPGgL5LjceZPvdeN83YWSp7yK8nTlE656mRyOv+eMXVCKp4vj4O4Ukl1D/ltDTErOO7wTXDGOfB7/wNskQEThPvq9inGMFU48IjEqogsdVFPdhuUEIkkTL47f0hLQTd9evVBoCFrTpX8ZqJYrybalZnEK6oEpP3T9TdUqJ5A8Gkt8qaJpzsCt+BGkmXXZ1Pu6lRBB9rEhe0ZKcNoQlThLlUAvSzHRICca3Gaqxr8IcXo+bdeCQBsXusrzM2HBoYIyVagrgkkqddU0kKSut1oLZXP4tAK2yvhUZzCylfCOfY00ccwGpW9W0UhTsfuRcY9TiYeUAqfUeJAGNIe3+CoEBYvbZMDN379YE94ff0vC4rfUKcCyDuV8qCUDBzmqDMQhMFHpQXMxwWPUOg19PMkvCRXUNhICn0jh1MJgDXxIBoKJhGeaIW+V+FougqclF8jNPrZkAXK+eoy+YKMojuAQ/zauHcFDJf70mXM VwL8XeFgZFjyNSyILfYAr7dvqF3yB5gG0y24IMKO/HjLfRtUhkf2phV5AE/QO1bZ3Tfovs/yQ0MmQMxuofF+D+JgdHvHpGGPSt0VwLyQNtwizDh2ghP11WPdBW6PdX1q/MzbAG92grMLygidpN3Je0C3+m1THrkWj0PyqjMZjDIHoox1aVejZkHjAmiI0hMUQ5Ow7nW6XD7zm1C7khnRdvhr41ZtvX1Xy35DreyqDnqA3Acc+kq92jYhbqHETBjOCG39VAALL048ufoP+zYxne0eC88b75D2PRjmHZtLk5eszn4hE8dvOnSDc3nuc3Sxec8WHqR5+Ws/vrr/Asx8Z2BtovJG/0wjIPxPyxoIfN6LAR3ldVSE9rSvelcLGWzeQQUspH9Bi+k0NLO8UiQpfxVg70pV5iHqOzVRaevwY1uoAjN8JKGjREP1aN64OPwwG/yS4d8snrIydV49Sx/RnMWN3mKenGPvNY79EAb2db7XBO28TnmBXkVXJ5nFi2N3TOlZJ3LGM DoL8OLehCYBZqxewq9q8WcADntQ1lVxcJl+HdKhkK1HrZt6u0QRf1Y0S/hdMvEBe8U0ppc3btRDbeJuJs9s/aIyVEKNDmL+PqpJUsW5h0161ZTgU7hVhO2wRixrSGJ7HZHlt9E8WvcRHPOdj8u6SZrZPHqE6EeQAqdmCbNqA+6mORbucqtEKYkNs6w+1n+9Q1xYbk4KzK+RJ7rZUL+TJB3+8Yu7AmniiPvPdkvlRqZlG9wV2b3LKdQ9+dWxEho5qTJXRWW7RXNufWhmcP6liVQLsIrNbvKemDThq7Fca6pJxn/kLhbghWJfouBCnvcBtf82z4eDVMHyMr2PgiVOKii0KvT6E1c/kvBAKG4SoiY9zCD7nnxRb5LOm7B1YhtOYUrxyJd7JGQVwTSIJtDjdX3zBnUNLW8fn4GD8Y+vCviaCErQasYUwb2MIQK06aUkujcwjyEJM5P6x5BKjdzrzisHJH/H9+7d/2aSuPgIXPCRM2eKBphhuFaYkIyco7Z3bE0199dTNM qfH0+c6oNP12xLTscQgfduu8b3qdtVeF3EHJoaarVGI65acnNYknOKhTa/pIVKn6lp+Avu6+pt6IFoaAQmmB3Q7gmv7SN3XQ7Hd60iMJc1N1+UdNNq3QWFTj7WOFjrB6PZnzi3JtlOXpGlC+vZxnqjRbxyBgLZ/+MVQk9vJ/x/PWvxV1noxZbZJsi77OoBzXIlGDXc39AKaaY2jxuTojDWYDl3MHd9AYU9qvZMUSNu95xqrzJbWLAaZCxMXIUMLWZdqm825UzzlTuGGTMiy7q217lnuh7942mHW0lKbM6s86vrhIS7MdI8XZJFv4JkKV5WX4zWjYbH2IKktgdLVhFo0Bufy+GDHLxSkrNXGwCtnulNZUE1KaHp2xeNzLlD+ppiOMX3tX8BJrGetybxT7mWygp503QeOFynRTdh3eg6nll1QGiigiKCrWgE37k6vPRzSKmzg1GrolT0H6bWdy9xtUdjbWx51h9fBFyMdtcxSbX/xglT2EWcZzL6qLAw+b92AMK6VEM nd7DJnNF17zYDxHGIbeVGROxHnLrNuZbtoEinwURBcJweXMh8z01R44qoVZXVCpnK693A1T/NlgLM4V3iVf9PjIMZkSvihikr+TTOVk7i256FgwHsfF1f3t7IPhdiusiTqMJZUNqr0MJF9k6gHfvHyQdjQYtMb/sVzBEqtzolRN4uYjeHv9xM7MgqedsOY9BS1nQ6Mm+1/MYbcMAvqUkZaySbIZGlgYEQ62QBWoojqlGlfT799Zeb4rnP1RdcuucESoDPc3sCs9jaDj5o7dxSWtrufQs1qBwqCAgQea6kFXL0syD1usL842BY/DzZiAd+DZCBELaW8SETX9ODGd9LUekipACIIX4m/bafxNGkfo6FiU+/hv/RmREHouOI/9uV1x9cZC/djjp957WG6hmLEbZDHbptVjKcff+XpEd3ZP1gnjM1RCSHI10BFLC2nJPl/8S1p2CtCqFPu7DBEMQH5pkBRF/3hthLlwoHZortAYmhiaNNIowEaIKUjHqe/i7j+nkTOllM xxf4vEpOrx55nYYtUrcoJXyf1T/361fJCj3TWJ6YR1RmmqCvKtoLd1u2WM7xFif/SQc4lLVsXbPlDFkmKBSJISrMO8xQIRn5r/GyhPiIBjJCq1HRes5eMiWwtKSj8saBlvAqli/xd8r2q8+zqPXnisDWWr5DdxvjNXsZ0nAMRw43GgbHT/NyA138c1AU86+i+/RD5BMaTD0UrMIhhvThFfmSHAJGqCy7YesdS8li5ypKKW20XOyFY6XguPZQq20Qj0YqIAR3h20AxnKKLhFD1jE/leDv/KeAZGOyJ0eJQqdGCbcvWr6/LyRMSdCIJkb3NrxZPL/oHEM0018yPMswqJv0BBQEUlW3mNmPS7pbXO5jRIiHiWaLPJpEG0aIFJlooOq8pRlJNCG0EzQGNNIRNeZEGMFy9B7i8yTCC+hfYNI2IDpTv7/7WTZRv+2oGVcP2/7rzbuzxXz6WzB7Qh/GCtrYSBFI5h316gtiUuu63VrqJ7japP9XS4CdPj87yqb+vCvieOhfM WAq8oPOWAkQV8hQAopPin8ktwEwIq2AaAZV7+MrgtSyiFSPxr9OK5tNMsbn6J+SZ8cISgW6dVU4vQDG0kplo9XJcA3VM+8RAn2i7ORkxT3HXnjdnT0YkHqLOzs/U94STNiU+u5vwOpNpBVde18tMbGHH9SRgeywQSC63FB2uox4vLQ2H8v9CkBvBO8M9hVI3ZvJhSaPtLFJ+6d87q8TWG5OHKU3ZAkVY3PQQ785xhO4BtoPl/ezpe8Jy1hCTSlIpO4tmZ1DT3Jm7anRoicYiy/MSE205wW5NBIABhwuXRaTQhH84xfkumVCOBMtrT+GYF5Mqo2WTPSrlWl8gfQBk+HowA9Bq4Gh3R6YSjpfeE5GakjiDNGvDQGJaB6CyAnDKJ2dSsp6gzt0fhymV8OJRhHNgMeAbIzVjCeufwk9OgXXslJPbMXmysjT2U0zSMW/mOvoh8PRyDLSFkUQ0Jdxwz2Vrfxyrl7qLXcSG9aJ2r9Kqy3eDBaWNnId9WEhAaUpsNdvCq6G/M p1ENsCh2nKq9sNlmwIR7ARrfuQwcuylWqVZEp2iT0iCmhVgT6cH8pt8SUZAdMRDyNx/ufpP4R6swkHW3fgN05LRyrECo5sCrP1riCqsl2nozCCplZ4DdF4upQnWIjse+rmApnG25t2Gal2KG76pJhTx5Mi/gG8WP1etvE4ZVbex+AvQjBJQerkHixrOPkCR/7WCHA7taOW8BrJZXY6rt2/ZmkCZvKaVlO8yWl+GsRhSG6NKqCBDTRso03K1LsgY6S2ezWC3rfx3FyNCL9e95gDnM11oPrjlVHpkAYSO28gsKIaGTbsh/4Un5OfXbsFE5n0kurmdyzMmmIETqP5ulh4s+zhzMpTjOrdrvsX7JU0EHbUw5XjpaUL/0xkpuzK0qWcdseB8ccBPlQI7Y9UmPhgd387LaycO8G/kr/VO5ogzP1RMnqG6rrKg2qmPrNZxtcpQ5IbNO8S5HaPWC8HZcxh6WmCktGX1+qliCg7gxf7Yum4UYZytoRBdYPxqdz0XAueDOB6vDM wr9TWNWqQu6zBSUW1+lt2jFjeO0HrSfT41S7iT2cZ1wFYL/aXMToHSwvQSVVYH6MV/bfFvl1aPgysQOC9t4YhOJuithhJOCdeOpfldBIEzqW3wBvp2uElHBrPTR3KOXO3M9kzZqQrusetHnGmMY2/VSuDAphVWPSjR4LQ71xkx2MThZ5yZp9PjKsqRoUbnSlBzuPs7jDvqW72/N69h5GnGIcQiMuz1P859MTXo4x+7xj5TGKF1EiE76Yb7p8XRjP/H3SIg0WiPbNHKDiBvdylttx0yjzg+uAJH74fMb15ue0elFrbLR1QM69hpIC+8vpuHXE2yiqybzhL7O4okLJZYJMtd0w6c+GoaCOSjWqnKdCysJKwTNN0Xec1lPRj26f/AajRwmAH8e1xkMJw49adxGzgefM9mj5bP5YQVHIzNVA+SBdOd5jMk2QuILZ72NbUqVXmTCriCBL340xbjG6lNC1g/wob3PzzmnyXtIdB40aqQQ8dzPPbKJSG3b8VRLc8eYogIGWM 3ZoGx6+8xdtx8D/ZE0AmQX1Fan9qa/Vji0aM23FLULqvQaoGHJpPnIF9GlgB3ODxAfhlT7i9drp0b3seyUSzC/tMbGU5oS2EuJCI+RAJQ+6EeXysZ6ccxN5jjXvTD6KzMLEqjSKYBQ2KVzQg2znhNH58UQBLgoM26PFQuwwiL35We4gqFJxn+IgD/OLZgAVfCVWqkOimGoHKuu37KqTussuABI2fzitUJno+H4idn8Y6TIdXfRqQ+qdSAkJiyyTs6crX9U9V2T6h8qjoG9ON3iq18v0UXyJifD09CDQDaolMwRsVLA3O6BLycF+HO7rbBZJZlQSFstfweGQAZHDqNOpoctJqAligpqkAZf38+EnfrnjbM/dO+eIZrzlsiPcXrIgRMoYWJUZdSilO9YTtyrIVJg50uNWJYP7t1KazLxpxOLggsAb6YO3VXChjCFO1eP7Ah+2NEQylMPNW90sTd935uO4l6m3xc6zilTvNynFSB0njqjY+bhFiPuPqaAByDLUsuV1hM siYN//cd0vEWv8jlvAazrZNwrayKYtDd4lotNnYlL5dfUdspZr/pD331b059DhEis132H+YU7vFH9WZPL+sopEIGXHUki3qZK6srJwjmlnRF2LOVAR4fXW7onaA2vkHvhdy4DI1N8bK3+Hdm1JskkpIupEy2CQj/noFybqN/tzAs09fq5jvJUtlRnL7fAGZ/y4YLunWX2Zj5WbQhGKtAZeIdV8Z3GKDA5N8/5ZH2FoymqssuuvbNoE+Tdndly8aKQRkQESXDiE0k/t7RWxqrHZzPeBa1mjJUCwbTBLjBMQ0fRf/YwBn8qU42PdDWKdqAS19yqwrswr3R2ve2joyzUEPv9il+UYnM/mLVZ3NyAa/1uSLY1ThtQmYG1tTsBKamJ58Fg+bNhau+dcujD62YtZUwAVD1HQCrr5HR80NTcCn53Ln51o0f8rfC2IbU4M90/a8aC7v81LZ/C8S1+pIH1nLkSesQW8uAZQ39w4OzaRRCI+pff8I5+C05+bjKeIEm2Iw98/xgM ySmZXafGIdl3Fzvv+YLYg5BUQxxJeeQqMH6YJscmEOyOz1HLvjxoUihOvRP/Pw7xIi/VlvRXjrRhhiBYjgt9bYuspTpScht9CQzuvpJGUi/st5HESxfPCEnhToYUh7eFWAfdSTRTheZVSMuDsoMm4ZvVqOleR2olo1WWMqg9vY2yvoX2h7/5sYrXOPVwpFYKr0zK5iw0hPYRgNtnjHS7KIS6NQ7hc75uUGWpweOPkgRakOSPsRmArGxn7ssNB0lTRKwU5VXnTBKFz+oWnXxi2/spkLfvvvbBbJFjIa/oLHw/gaodVdinhIGDAx8d36uwxN7U+InkCdlSbUe1MPZK52GepTrKMHZSrXtkBkudMoxMqKoq7MBno9BHvd4UA0Kxf3PpcnbuDG3hRUJS+u72fHh0z+y4qHQMEG9vUU5hA88mhCLTLRoWOKZLqytIgNCLuo6WO8G+7N0NJxAQIrrCCE0o2E6Hpc4VrQwBzwbr2pUIQdWahn1qHjRWy12F3oROOv32KgFwM F85/qcTMmA6Zti3F3THrJ3KCl6JPbNZ+LtmV2A3Ep6WnASiFIO3O7KLGGuMMAYi9xuPKO2Z1jK94NfxdxEXsum3XkVzmvHJKG/nk+LvUtMemkH1MNJctM1zzY2/FJzUTpFANPI1FCzzbFb5X6FXM6Ox1A5z1AzzCQqXQEX+AvHn9AWdzo1YVseO7U7jnsMLhdRplPMuzTNC1IzKuL5hby7uVmWk/mMbLRib9tGmYaibLTGnEcfk9LpWxHExX58AOnzjwvf/VZV1cH+HPCA6Qvp07C4yromWTeRF8pKSsg5UdnrUjIlw4dGqfTeaXY+Cw3d+fOvI83AuX6dEwOEx+8xJTO8AKCqxO35uYIpXpeSPYV9LvSfAmloT86N5DWLJ8zcrBwfjQD/4Iqi4Zs0+9Vo7edhpTcOr/8GSMifOXZ0bwXVCvf2GPz94PcCuL2AH4pnUXmwtEpEMv/Dtk9ipVlGopozJoLA5U1D7SCLEzugjl1jVjdvZe1hctucWSGtNKCUKNxxFRM l72xb4+HPpSVzAjSVJFWVjaj7LYJsa7wSjiHc04Cc/gtm/WxZiK3YVkkaer2F5rna7q0VBfjr0qPaoDAbgU/9DzSZ7lOChyVcpWpQKajElebwDuYwO6o6aPUvNlMdLTKqCWgD1+qqz6i2ytZeTjd6Su+WwG9BplO45Ln7VFo/iJ/LsQXQ0j9A3XQIhviGYNWQv6tnWJqHZxzfFri9yWRzMpsK+UXHIUH55TNt/gz4vSWWV111TNmSqo/ghuoPbZy7Zna4h4+g6rDQFEitmGmoOw4EuC70FpnVGVYupYiCIJUkHYB+IXjlxDVpNJ7FuLlcIbTbG1L9L1d5eKgQ7uzbIVq85J2PdrItyAkvDQ1ykn+gWFZacOZhERzcC23xWHVfsMv30VsguH9pRItLr3ouS9/PxIx711LHnFmhQfE/OTK8AuABrNWSwqxsn7jDBi0S5j61gsoRsV3jQrdL47+YH9tpZd/q9/hesvmo5DaKeWgVi9IqoA+7eXtw1VySuzeexhYqezsM fXSXkR0Eu5fJzcE8r+R4Fo0WF/VasyGzH7cBOjJ/98OlA06KIpx0OMaoN4ZirlWd3V2jT6615eWUIiy4I97nkw2Ul9u9i2j+ru/llwNNknEpGVZuGgiC4viKcqDXqNB6Cx3AjFWS5raXz7/BLVIPo1w1FePHNAZG8W3PuWDCznDTOVxprwtHVX6si2C4qXsX1F+nj22mt8GQZ/T+L9gYK98KVqHTJMiyG+ntWaiEDkRa7C1wqKb9gJgpfx/8xtIh19napLQ/NyF4iRSYkwvJAhUf8Pl9CgFixha4rDKEcvHIVs08160+2WHmrVqwPueVFMqRH0X3SlRHDke4UMPwunTocGG9W8tn5uu2g9nZPDu96AotJshFF+aiYhcegylfjFB5eDkEV46vk7nnqG4zd99aogGnPMNKzEPELcNb4S+fszXfZJzfDORW5T0VyReJD+uwOdqE778+q0zlJZwwxCmGLKj/6mjU9ixgDCAvjMOtuRMplhNcFwJebGjw5bHy3PmjAQYbM Bz0ZucTuD8cSnggwefqoAOmvn4O7UccRwmtdPZWGI3l1l8wsKyp3qPEREHLPVjPQgB4CKGaYimUJytwfUBqr/7CHDl6T49E59xvAgt72Fqv/Zb2cJAGrsKFimebNIhsnkZNaJIvy7RicL5HPsPh0GJqM+Gtv+hoBbmtk3VRnXp2b4n7fMoFsCfmql00tOHxJ/UnsMxxQxv9rlzUI6Aj4leQ4m6e+CNwslXQW6tySjM1B6dBpWArDY2gtUQl9CUwto3TTzuKSYpQY7Hyl4RfD7Doq67QWHi1PIkrmykKUxQ5GhBoQHI+y04tFnEqJjtx4/20Cvfczt2x+p47nXe/6tl2t1zx+gLI48qOtmCkXYTbj3YzP4kEze48/OSHSU7Hj3nEwZglhchqufowetlF7K5m5X+GYsjDoIaqJyuu8FaTJplYvETIzwckDZd70nJcKBsd+3fyO9v3ht60Q/V8aiHDYRFpq994bIiqEin6Nv/SLjHV0WUiRhL56mqcYqsbJbQAJWL9UM W5JaDki5OxPhI1qC4+ct+rJWa9suhhGsY3aEKw6XZZPX64cjnRppHtN4w/uWDBojLavXOwdm9uCppAIo20ZiAVcDwHbg7D+wTVnoivgHiO7mtx+ApIH5T4dETXn1SKpLSUoH7FKLpn3IjjfCtIwdn7wKO03rnXdq7vpHObeteMEjcgLabkvYX6r04jhcEDOau6+huzdD+Sv+FFnlIPRXJNcK7S6X8fVe2K33/11Mo95gxfKo3qQid9lAUwYARyZtfyc2Gu9uVTj29W+1YRpu9uAZJaT7rORg0hQD4mWD7sFgOk62ZARckAMseoGow4fs3qCoN1JvS/xlqb061IU/qq+Pjzbj8YoNOfBeQuZ9VhdqZuXs3TUxfggXEtJ0bqd+QZiRUQRklSD9R/w9fvxxsEBGMXxqnbpa/Bn/4Squ1U6p1ChRuYLxmmF7Mc48ifErBVVuPAhHToSNy+yjZxcD3/TCTaYuSE8rKmrJT7yHttlaFkKLIXx8rbY+7G7TuIwBrrwt8OttM AAehJ26tyQEP7KRQUqA5CIc+ZYKcOjWzo+rBueKW0fVCgzg7RXbe4r3a+xa80nNUrRswDJVIvG8BPBOkOOB921YOjSn/A3yqnVsU8Y7ghSXTLfJJDIHEygQBSdX4tHQBhi713iQV72pdqT+wg/nfqTkAuRTyqKDmraK+fHutQeBcQYL2nmdBT/9TGfi9SQdECW9PxHzvh8lbrqng4M4TXcxZXWnIe1repEW8QZgXcEdcTP08g0VwHCXs/BVlHaJ0CqZ7XeFxIxPvGuTR3biGFSAkluDTahLW19aDEMG3rfIsGDdSfN7Df1VNRnA80dCtGhkfquUrG9y99VXseuuIz71uYDKf/GpOZZ6hCW8dyEdQ/3kp2QpLNDzLTfTy9AH5QNrWu/m0dj/lisdK0b1LOnmZxBXxjOPmXqWeVYHU418J7OLIzPhWvvSTCYnaqfyR1myuoSVb2bPNpH76rUAZlcKjxkmaktE/W8BV3qb+sufbHsSYPwYZjBuu8TueCVLnJ3MLBFn+M D5CkHs9alBZO3agOAeCF/KGoZ6qpEUmay+H2oQLE9om/we1uv1BQKFJ9uoyjSFbosgozXHS80AAF9ReBuik8Zy4RIKaPI/JTsufHQ1H8gZRq5Bd5wZnhEOsW+E5ihwWNegXqYk2LbrrUbroQkOD4rMyaFa67lJzLQsXyvzl1bIJwZxbMkGJ4Gg2tPWnNT/CDNbWvnSse0q5ZRtRfPKBsDPCRHUFPyiRpWIwHJaD4SSi+g2YApn+w6GWfu33QehrKE4g38ZVwiCLZsIfxrlqH7RCSczO1k3XEfWqsZNI2aaTcAVv3cLS/z8JbJ/YwwXwiX9qXayPyxqQa6nFkNfCDHAg/00S8qYxRCAlq1sCdoabXZPkUfP6+oHZIgrwyrWZWfPK3/fitLPMiKsrBxwdf3a+DIOsO3xKZNxFcgbzna8O9EP622GZFo66MDlNCfsUCe0OfLsQ7xqlPX6FoaIr83uo6cejcqAMjU0SoPJzkYGoA3Fi9GW9tZIX68G9ELJNIqU6McmubM w1bL/KOeUkj5zmJ7hujvoP2ke+sHOOPbTU7YiyaTkd7RnM6ujzOuwUJCHgK5G2JtlZH6WhsL11IZSxhl6KV1UAqOGSf4Sfp1vuV+klfjuj9uqCPVQTNMcAE1+n+8TYiYDokaly+yeZvBOaUtXuByLAyf9rT/TFMLhNsI2KjWwZBqDp7SlPZtsXaLc+paVxDvqauabcf2lo9VAZ7318+tlt8DYsyDAyjUbvf/YY0NOZ62j67MjU207lr1TRjmkH2BUXAH82aOH8MGeeivUaJPj5rbPmbGU4n5t2PbQ4RLy0flFqi3rK3wiJ4q+LugyW0gZXTWKyHQ3zOVs2EWVmV5DzCUAz4UZL4PbyG6fY9RXfsI0heducekUoOgNnX/17JOwsfgsA0Ul8ZJgbzwXdkEEJxPeZHPf1K4Rbu7FZaPRdaOaga8vyl8tR6+CVpjhSXtaUXBEDu2pynwW38YINOaCQMeFhxlVfFvRw8Qr6AwN9Y9xcRiPeHfJPYWBnyCrRixb9YXaMGNM LnrQzJgzOoMS30jN0fhL7THoFWoE1nz2P6k+/LiAlUwZ/ys5e2xSs3xSbZ73QlYUCfkO0NccB+3NwNbtNCG9HNbA9Co0M3IZ+15PFZg21u5BkGMx9nXJdV/GxR1togYHzumGkL8iNSJ5+BXikXt2GgIWQtXgCagHwfJW8lyk9uKzYl7aRjwVUJeiAdP8Z5Q3cssR7V0ldiVtne74T+i7MhgAzM0WapmSbnvVeZdupkq4QCRrBI+fRIFhj27XygyUhHRC19Kyo3eaSPucreapliX2z2XdhqNeb+kCwTQYmNjRSNJ+V3sL9OvDMIT1AfUHg0ijmqWl+N7YGh/x9yIFO7tG1V/BUwBxPsmpkUQQECz8v1wIeqZ0VQ1DnTlLgRUaWUkrMAN5bE1WVPEzOjXIKa0kv8Qi6k5j5yhfho4MsXfKi0hHwcIk81CIXZpg5UaiSwmdBMIMtxeYfBn6TynbH+tQ/jRbcs8oH5EXF1tNWBfA2xHKj32EO+mqjCU9sKs6S6s6CX4SM NFKPL6rDNHZ3tFWOt0QKRkRXWv7moHvsLW3kFVCpFdN9UTcUPJ/C/Bcmu779ia4e6SvU2Db9jEJjNXBBlGcUFhK//qWaPpsMgK+J8/3geytyQWjOh7yYctxTD00TgLBcloPbRbpwm7+XXQgLlA8i5nomv/lkVvayrJEkE5Yvm7ZT6MOrCiO6mob47LHWXcFrL98TiHt5QLfNV565A4sqjffwBbsIwocSHdveKeiefmxcVSg18ZWq+llsE0XVlzk1CZbgrH8j9OREvHzyoQbyzIPsN1uEc8QVZwNkgOCC461lCYyq5wJeaM58GKtEuOwujQ7U3V8+epsu6n7G40fNnGwfaELfRUCLpLreIHCc3b4qvQ9znY518ct+OsBVZt3wONTYTl7YzZFD3H7AY1bQQgsET9kRuJn7GHZxDwu/Bi2PNWHfa/QryUB3fRrOUbF2S+w/Y/eFLF6khbgDBBwUDgOk8urIYKKGwP+s44rugHGsHbizd8EYTnEVD6Hxylc/xf73xEtDM KAWFSXcwpZQL0TUkKpiG7mb0JsBcjKywabLWBfos2TJNo0JA129ckHlVPzeACFQW9sX1VgIR69F6kHOcbqnUl7YdXR9k23TNEqu+5NZvqWEcx2ERzjkEqVFxgZenCCjrLwkHne8xwPRImMr4tHuEyPdoIb9eORp1Q9pi26ICMxMu4oF0T0sV+oGTJfo/GwbuKm8xbkFz1TRD+d0tdUGZwg1xTBuHYP6CqbiiOvAwx5w9Sn53icTiG8lS79KHZdEvpDV88e5agvjxOdF1n70HohlK82FU3e55RiLF0cL2alReH7PNu7KSA0/cGapAuhjeSbJm6yWuwKOQAnyWvdGNWzMpyPCKUQANLLHGUxSrKexeHX0JRF8YZajkEWV55T/43h6UQzOvsQh/dRtQQxJMdbCy7aYOOWn7jbRE2to5HA1TNI4MA3yFjJQwDbMgXMntFe3AVI+JuAjhWR6Oc3SeCzhKO3TXoZl24P+jH/JWdS16ep56jD4QHEAt+ZsLPzEbxoT6S1gmM zf4wuDa3ba0s0+oZZC2v5kqCYpSgI6hN8yqYBAIfpQ2/KfI52rkR/Zz98gQ13tO4hCDSJ5nWZt0P7mRi5wAj8dJJgom1ImrhEf5nuBBAcBocBxS+1J934zO9a9Bgh0Njn9N6MDgUHS22+Rlm6WjnBJrP7Nns9JiRUDJDRwWqXsOPcaPIuS66IkOoLECiNVI7R85wf42RuyIMC0GuvEqjXOc+1LF4YsNDlwBVi7wknr/jgUePTWgVAfhd5r8hbVoXcAi5bhseqcT6uzG5mDQHQXHab22EoCezInNfXV6RFbLdzC4rMQ2GFr3F5bbW8oZgkQDnukwQZPmSXEI88cEQVujkLb92S5hOjQM62hWY4oaP4EL5OPG+xTd4X/JxUU9+t6xJpi9SzZxiHXLDba6HxnOjWpj/Hamxvt/CrQMExOTjiRylKIHjsuVL+pCgbm+A9R5W3WGJDr3e/dOwF7K+0YHgJkOrFenaxSoaCrFMLtnDmB4hO9GLXdBDNbn0Jvlqr9EOs4Y4M aFuE97ae7x+Bjk1ODOm23ni/xnv3EBUQd/7n7bZ2Vw+Erl1UuqHn037J+g3C52m7hLq5/ommiZFY3D0uRersUUVqonbZPR9EownM/RjgfAaAtatGWg3F688v44lgVpf7/+7Zd2SJMZOqo7ImQFASDWsmmQcjlS+52LtJDlcEWFy8oLn7sL8X6dQTQQd5DIt3LqV97qW/jP1LdwoP6Ub4ZwhOBj1+aW9p/6f344IccI+LH3bmBZGio9kiXIzM7ZWk0LoZiSuu/0s0IW9y6uE2JTGXlFmJ2JRtiqqWaO6qtOXZxmjpfl4ZVUK9pRFH8TS/DMygk/Ng9AZjPp7n6G1ELLguZikmmWN3orMX9H12YPGtbsHPjFVNa+wQGbE+UJ//dJxfeh5VuXhcSwboHhmtnKApCgFgHt/d0ztKXeSUz6QfCXVS3snNeyVYipoamnZVrcJNZVdn8CwWuvEUTaI2q7OlS+BxXzQkJQfJlR4yvnw6NeYdhUjYAlad0JzqNy+6r9DPhlFsM ZRLeU1dHhwJfJTJQ7TqZYRQxQdUA/cG2+CdelC/9SKx+YNZ10OEQtoAzQM+Hd4RIeF9oOLL2Wecfc7tbiFyZwXBWk1HUA7bL0oFAz4I5pHu1/Hf4z4TetJwx1IA6OqyGkiA1spuJNTjMQsDIOHhig+XIBaStQ6TIt6djeyp+9zLq3DKZIAFdAiyqWbRWF8B+mFATF9n1k8Z0F42iICZX8Aozykw8a+Vd8mOMPSFfd0GRGyOAdEmNujgcPonIYbPp9yoGa0KCrAVgvc7fX8pXKU3mhfI7x51ZeKc8yDIbqJYMyOX2vnD3JVlV/Vi9G4lp+Ig1jzg8pwiLn57cLGTGK8YYXZmeZucnr/aT+ltReSV/oQBTv/0ge0L5ocC2dkwp8oeoQGxACHnEWu2JyiM4BRzJBlS1uFF5dsipF0xMx47Ou0Eho23YUDAV5q8LTt0/p9oLsGud0s2tW4HNBDWdv7RmZrM9JjYCp+r/d6P7fgdDFDVgHzoI6zpl9R538z7jxRwhcOT0M 8p9rNKPb2hH7B5D5sJKeQIL/N0nT59KLF+heosBWGiudy4vPlTh/ZhkuJwSwrVD81biPGFO9tHCtykD0NG1YQmLYzQRc27UQeZhc/VzTRqd6Xxv6nbq/IxzTRM0srWxgTdpj7XKetSswCWCihtdixqfEHlvpKDl8Iib98qyscn2JK0cId3uFB1VRYdTkBUaS6Yk7iWGDsjInbcXMbThc3GDBtkEZ/Itf9QKjaZTR2O1jlK8iwHL70lkBtxxUeN9thAp6dD3vI2WALpItbvOuuYwdgJk+ib8w09hFeu6FPX2z3CJ20Z7Xs8hGn2svepMUQaf4AA5C23VOmvhr2K1fMTLPaeufQKRSUuiSYZIG7SusYQSm+YZQBMyr0Mve1U8jVsCHd75tZr90Z/l7heakZQJnRUO4DDk8NBa4xWnH254R38SSFQfUowy3m0zUL/69i5YIvKDJpJXsqz6JuRt7JjVsfi55lr0JBYgcLljCJWA8MEnrshLPN7lJSpdJ+V+GEtEAKTbOM MB9y1dBeTEWBAQO7FYSaRq5/kDYUFkKq1dqOUP3jylaoP96Gpi0XL0yhw42/qRBSexVcATtZafIkt1ix0pkVjcGavSsRzvoEERrebK1eJvY4KhJgVTa1b2aET2bia4asR0jqIphQ06w3TNyg3clD5ZFurn44PPYyrH8lvhdk1XmvGLpMwG2coT8Zl7u2VPrT1ieT6+XtlWHu4KbZ5Sj/62KRSyIoO3hWU8vIcIvKEafzrSLoHdJlpmyVhHxoN/tuyeXsgmttNhUls8ubWF/my5fyKbdQ5jh183Hy0l05O4dWTMamEIttgQJm+ufujGvYzT9fSvs1UyKk+Xtyc0vjVQEeXr8NsUx7IXy+1i+ZdNWnapHyUXXBVy+RgS+mz9riE3l+7XPmfO2TvGwa/eAuJhHX2oiojZ9F/xfsjN8jkT99bdE4jUaTuzMVUUVHOzTVXwH2SUp/CFPQy1QqRkibwcM/RhyYqFFxwQXnYHvdVXZJsLPUjOmd4fFHWtvNFBfCWPJl2dguM wKHR6Wm53kdDyPASu5uNu7dzO/rxX6h7JPraaAQ2mzq1jm1syxdOP0AvOEHevtcgQy07fRKhA4p2rxvUpoOEpNXEiVZeAvm7h2+Exm9vgzy120AcPeZnRdfN6s/PR//Q/UkM1yrtBQDdEcTTyb8cdQUgcCboOXpqYe5/6WV7ryromBBW3qa1I6fcgVhUchk6ItbrV+hiv4vjmA/WorhkOlH/UaL54A2uXrEYjSvGFZHbGnQoXQc37sv5s3irTkSNUYrypDzsT+xKsFJ82AVkqnh2bQCtA9JedkYLRGiL1jeQH29qfKU6RNW9BBl8YOaBbjfslIYtFS6p+/9QXqmpdgIEhsSMu2jHSXfthyGZKlROtEPwyuvg83sayitxZ35AIOZu5b7Bqf+l8n/qQcRfipvdjrZrJKP+4RmG9p4WTog/Yw7+H9GZF1BJ6dhv7DlBcC6pPxDluE3dqwEq3y6HOk7FX48nl6K/Sa7mmZy9ceFEBP6fY1RaBMgQo6cuaO0oWsWPyrwjM uxrncw6HvHn6fSBrWTpxW0XT5TWYgfMfyWKqnWTg07rqOZlQya/2QhImalQ/QcQep+GnzELAc0g8hnOZ9u8IAcSiiEXmV+9k3XFKGhbaftoHdRu8RKsergcOOahbS5lRnKfFHujMREk/h4EsX51HZObGWGK0GoFkhkiwpdDKKf8ExblK4j/9YOyzrF6SY0MD6u3Z964n0j+HyZKNMqc3U6HQZA1/mjNGVZLuP/aqOKs7iDoxXYEtlhjaajgepc3LNJcjpYJjYI9Di4jaAYAdL3qzz+ci0f3lSPddCckEtd67bA0NB/RPu09NBmSHVjQffX0DT81k/gEryWjRRX0VzfkD4slkNGfZLHgIjzGbSdw24cbr4P9T+D4kLhenGVXd06J0XiwSIGMG1kuo0vehxetZUrzltRyFYxOJxD+TPeJ9nY75fWcgGQukeKU0FFxo0psf8XRwE6SYjsjIE9zHU346liicW/2jdNpabxk8AD3a6kTOHpizxDpbv8n9CDu66VLnRfpzM le+2RoSQPq4IaajZJKvjTKznZy3LDwBKmFwaHFI64Cdv8EaXHiM7pkUmYxvZzEkBNCNKi6vivmdzEHw+5+LUCwcMllK8k7FVxfw3jNx8Q3Oj2Qbl0RKA8pKC6xlWT+bP1Fmdek0jRugKrqtguu/WmpQT79OMklRbqDzliZe/NBDS9MGUEYAAAZozlpU4duAMOZYSRbeUmbO/mIQRxszRs/XjSosOXavUzIAMaHoN3wYon8HMEYXWOdFjUzLXUajrykbHHbAQMlN2OzojMb0tH4x7F3QXybjOB+vJ2xeAo35yfWL6HujzGisP1763+Suurbnkwwo/HxCs5zMwAuUSNXt+889tLBLmFQRAEoL4GaVwSTrfiyBXw1TtTGEc6hMa4v/GlZwnDV0Xz9PR0K0QFOJ3KZolQZwIIaFAAvHOsju3N+rllnjrrV2+Ry4+rN8siJ9ct5JLPYR7NXmsCeCOQ/dHiK02z+TiaKvzxZpNyFM6izpzJHESxwunkQ19SRbutlDpdc/uM qne4J+9wFCHkJgMbAbDUM32WrkjLk52EaF4YqipDfT8tiyXGQ3xhhzv7IIL3mrwdaWCaNLBVfvNV0l4p0D021BmdNE3Y1YM74OkO3OUbfu1r4npvKmPnR2px5HOwqfVgf6Mz2Z9p7qdBuS8/52BGrrts4dl9FxDOrWUEVQHsIi+o/2xn0/yGxpmh0PE/Faf7xe6BLtrOIuk9OMUhmpok5Zi9CW2TBHrj6rbG/pCr+L84BtRTYKAudVb4VFG2Qh5EEoX2eTNv218gKDcK+uZ2BzhlLd5ZZcnvcYzBBuusbS9cnyR+eBWTlGFmEaMtOLIkmPmTi5idsxnNF7BI3Xb5yLhZQTWfYbdlLwNhNbA9HmW8LViqS7kKC5EOD+RgKrr3QrWBuPTjfZbXCikb9VXOjAkKUFi3r2Zqm2M5SswzTQyTtl3xnwQ9p5g/tHYnIcxl5G0HGOdEt4Nwf0R/S2lyjUat1IvqWytjl3T4NvZtBJjnzAx7/ca53aq941mbg03O4FXTk891M L3SqPwXuzqxDs8DkxwJBAVjA6HY42RyGxKv2NwN+chIHYomTBdOYR5ErmpfSLb4AFkEIfd4v06HM1ZjZfAtbZr30LW0eQv1VXBZiAsi+KoqSZsBah+2d4BR9w05y1sJSIII/QN6fy3FPsjvoRyDn/TVKofI3rrCqFnZncaTQOPxbxORp3VOH5pjs8LK5FOREEokZUyUGJNVdukUviksCGS7M6YfWBkxJ98A3OSu9oG9wpXwRTYzxgN0e8P6hYKPqLvj7lkLA9iVt9Uzy7huwf/si4oZXr9R6B8AbAgIfRyOVJflLSRYgbGKh9CyqD1qENQHidwrYQdFsGuDdlDjYYwuPsuVSf3J2PDf4kyneG+8Dp0qbtGLWyfGuOS4jAmngthMnRrNWtMugbzrgs5rZH12LpF7SpkjV0HMZONY58/oGd5gWKMUdRyEoBmnYGPF4MRFu+JfB+ovrOA2e4TSGQteCTzlXzgB10jk0zHfBuLIDH1cO7EMoxXgZAa5AVoXoJ7u989dyM ezKutg0j5TbLOtr/3cj4VInYKucLsO5zXupCQB5GtIrkcd0O7urArNgX9OBLHq2TMtitk3wV43qhKZ4edM8Jj5AkKxtc2BUZRJuu+RTEX/ArS5anLghYPgDkYfW2yReMwrmZOV0UlkNYZ0GnYcvLcyZ/9fVCkxMkU8GKCXcb4Hj1Rz1XRzjk3zBelKuYtm9w6Dkg4NBp3vEPi4Nng62P7LO/qhsyMqpbUz8TdRQRvhOjSMe5RaroMPOjInVfgHj/w/3u/opO0wo7FjWk9OlxkkEnufZuVH4MZDQU7elav7qDyxA13J2yDW8i8qCy/K65UwdiywgrJH1JJIGiI4il/mT8R2tVrFpEIs1SCnY0pWTWl3UareW6J2Ipa5UDnbUQgzhU5CBQwAUtLXJWBggKq1Qrut17aNElpl0UR8lRzfIZdNxjd7zj95bzdPrQPO8XJZlDUUoKhyQhgrG6Fy5N0p0aAy5OMin/h4mervmVAMavOeldrYPxlDQokDBPll7nlaWNfWNsM f+hTRVnhaMfrUZbrYGRg2iqOC9ts42nqy4NYngT4aAiSHWO+qfiA4GFbjJPRhP9WwR3tJFlH6U8jsN2/j8T81B9sobMcb+u/AgOaKQ2HN6h6hLN0WofdI9o22NiXcAMGeDlKU/Xvm01LCHTYs6KsZfQ9gHvGvmRF6Ika/rUeFmHa79XTNavILuLhngS2/6B1wtZ7sDzOah7gAXQrTjnr7yXTcR0QPde81oGwZF/Ft39zTsyBdCrB2uvAuZJJte1UjdWFNfcckvObXVZZHI0i03xYwA61g0vBIzwwQW5eUDzWJ61q5e54Vfkt4dlpRamDI4EpgfI96czXHRVbqFKHBbuqGruipA/vypy8AsoBr29ZlCdz0QS5u6N/HxrCKZzdn4EXGWjGvfBnEyv+gyzw1o+brMGE6x0/A8Htr9UI53H6BQIdrVM6aPQ3HkR3lzDDf2dF3qDkLeFKwpqzY476I6E2wNFV7aMwZwzSmIo8oGWtwwUdRudHM864Gw/pgiFVVsjNddjZM 6MRU+7cYxE8VdwnSTh1aqSzH1BDH/yHRkDIOtEpHVEyPnx3giy5p2jEkIE0l4wPQegQzeg12kFyN+6feSpNerhvyy0W2UVno5dcQWNMrPlrHZjx7Of3AhlDZSpLey5VfsGc1ePxPZ8JNFJKLdS+BHkfYwcuD+sKAYvdjxDicm4i8TfGBLEV/UwNbjDFd7RT3+knn7WrP0FuReYbUr2camHtnvKlVRQBfSIvPk9wSfYj0ChBm5Ln9Xn3Wo9bcn0+Bw6j48+ZMa4ogdg5LpnTz+fpredvlsy7jPPbqAqLEKvNxZKzyd0H8O7Ek25knkP9mZR251ZxwmfMzBmQ8Q3HAnUQziC+MGxi3vbUPo4YDk8992NYmkkUfWoMJvdocU0UWlsNh1M7p0vPqceel3VGFRJAeHg12wnYWgMfx8ZcmMAIAhSj1UCPg4gApdEPNBSQkQA7TwGSs8EkIzWxQn16gOZh+s51t1fDOO+QznQLoBOHjDZacAJriHM/DotVABPFQXnih+pjgM C+YElX/DPonnb7akG6j5AgJn86STjU1oDzLcdfZosFelSJ3AuH7gE07D6VeEWoDTn3YuI1W0o6Gks3tbUIuMbGtSnadK1G8AW4DXBrd1Xip749mWdflH47To+bXSQBBKI507Q8dNW8HyxdEf+RMlD2+s2F18tujxfr3AruuTbtfTskDoO2Vn9NFxRmvh84w/mEC+blm/nBVrfjVJsr18A0+mEzsFhYirouiGWVfYEBGC9RsZWcBc8Wqj3QNdI5YEehTk9gWRcKbJo5cuxhKJ66lpvAQkCCntZLWYSc5YB/mUy8KJ0T8EkA/NKJfIM5M2CiLpt1V8Snz6KTRotzBDNyC/qvm89OczleJ06WO9fPFABu0mIAbzwogWAUyjCM+i9ipElu4ecr6T6I7uBiViEzE2q6DJWRo++NjK1Fm6NJFQvxiHqA+biqDp2m6KfsdSeOCuHgAE2IRlqqpssn/pNDbM54vWqWeClVxZw1b954x0OSc6661AEonBm7drNDMJ2f0EjWYdM xaigLzMGFBg6Vw8ntSbOMC45dKib63cba6fdNCYJlShhOpd460YV3u4TxZM+57aBDF4GwSsB/dDey3AyFgmSvCCjuOx5pMySkOS2oHZTSzkXNODTDV+OYnBPwivam26KldnMgt2vXbn2HiUkRZfjCVaIb3RO3Q1/WVsaaQIwfIgmi39ivavkQ9C2ytSoMNojh9RNl+HRURggrkloDEaJOSuhWO5b4OjhJ/hW0DC/bCX4X/ZdJxyr1xfBpZJ3b4dNvj6aJuUvcCEtcbEz3QltmEig4NsPYSDz27uiitOgUY3gqnhQwX6VX9i8MwvnUARbqNdJlzXz5CD3abRiqFosw+1yqw14KBei6vmgz3Qhk3OLOG+LAC1ksLMpYi+r91QuylounfAT8/Y2266nyhKAQ5EdLkAM0uxAYub4619TIQr7swDFoL5UQimJ/1aB7nVV1pdopmXZEmYvZhGLZrcwf1Z4r5XMF2Znq6yAF3EH8dX71Y7EDzWH2F36LfCZ+QbcYdq8UiRpM 51xaBX5jztiI+7Omc9J7+0u+AwttefD2xMSGA7WK5h3rAWGvNzB3QuVzWUJUntgJEeIUs41rb+gIAEwshFO+UMtbqTtd+jznedCuCHPvlhMxU3k8rMe5Mw41+HLvyMXGBzmoxixgF8X77bbKHnOGr5QyEQSs+LgAvmsFpEdkk/ajY/NDROu10pM/zE4ZoXxGcDBc/TT8Mas8f/vmKBX84mjWXkBZCpdHsU5I1m0lIFOBV7ZDpD+iE6G7WGGsjo36DrGBLgtoVFOes3UKsGoWPKo34EbdWQBOUt4ZPYuwf2S3oKQ0CQhrnnFk+cJ2/qcADYz0qdcR5Wmnv68aLXI4Xw76fro0BwASisRWhyHrZN6nwNzUVnVEvRzB9R3rUhpwwkrfK/YvPh/i/z8yQkm7KzuVq96CmhB2eq9FyD3zXiebJbYWkBnzA4kht6PiUNYqspObQYe4s1HypW/p9Z9OW3TRnvoAw+VqPWktVFKjRa70qX5t55HeJETVwuyNBaGu9YzHuZXcM C4Xk9bh2SRJkhMugVPUIEPQnPR+TZ7CUKDglpkWQ/3rZ7/yHL1d4K+liyZ61KH4MIlTEalqRilc7O8H+acasVrGwT2nT15S6mtExHobuR0afjFL5gcOI5lBUFFd7oLH7PZnHVj2bTSWcc1OQvsDApOQ6S3wL418+Aj8ko7/NdBq6QB1Mrgq4Lghc+HTBPFUXqHIZKjFBcnf8O0cU9qPXUkUYggSpiGDSIMvmTDJFg0ukk0sF+I0l61EVjJEzM8SCX8ybJvv+7XqyuPKbZaxLu5mtrz2jwRTF2HkIqv8UyLypokVeytJyNM00b1OqF6/ZVCOdSK/odZXtQ43jr7OHMxV/GrWCZjmeBjY+X8b0UI0PhCH/ZOLx9k7x2N/1IiyxJs/JNW7JnhKGXurY+L24/of5B02xhejRw9a+sv+lLr6+CvYlbVCi7Q+6SFWkjPtpmGkl5s/dwZ2Kv2vcP6mlE4b/OBMTjjxbFsqeqU8ckNVqmUHyA0iM1km/QFv7WX/SQewDpPwiM Sa0iuQZgSb8RV+feucB1J/ExB5Xp/PtrvMLvd0e5sqXn0VkZ1FNzE2NpfVjcssHdUoqqkP900P0ltgaj4SLw5A1cVwSxkOIwoEOqteNixOrxiVRtyi4WXLp+5d++weZvnw5UK4G2pr4ICDDEEvXTErukLnxcBEQjs3gFuLjDzyqSXegY4bGIV9XxdyTW/gWH/qQujwHf3oPWrQH9d2bknKPWzL0AJHvVUgpQ37E3tIKWUSrizVXmxqoPsMwZt2oMG/WZziegub14lpyLfOApMyTpLVKDvToE9egLj2FwjqFq4NKSFJZ24uycw2flu+C7+hvQNdvuP/LDwfavdBVHBeYgN+Xn9cFX7r5T7WVwXne7wgI5dbzDlJ5AtNq6qP1sl4U5X3x7A0pKVrJTwGxcWqAb3USkE8YaPM5buJlweDfUxSZQqQrsPHTJzJZ1D1PRZppj7rPZo8CCaFimzrVorstOQ3MvxNquf/wbu4RG4Dtd1zE+P14P9Azw6aJjUYzTavw1RZ9EM je9sinVcl2S6q+Iixg5d7HX9y0MzTNIOkmwYKdhRCnGehaM25+lIdVB/6dge/XSYVZLiVErHrliMD8VOmPQQd9CAmpUmdkcznxU+en2HBhPvzdaxVHv282wDU31rOEG2+EqryGWi8Ibgg3uJKFPjtYpxNDnDIVcH+ZkgZkLrohYyrKPYsxzd0xUjaOTV9VH+920TbLA1yLcF43uCuJdCW+CJWzhLSLiMpRfwv8EQR5QEwI6mWIL9KX2sajEj/unH2RtVWyeQCGfg6KNeMdAkN4lvCHsxPK9mrcMrnZIxLZkzBxCbcC8HOrhJShLYSi1lv+t/nbCi7X5Pqh6Bf5ic1yz+hTy98Rz6BKvMHSEFTVsr/G+DviUEJOFLZuqZVDHw9Og4Je9RXCQfwR87B5xffH32BbIGRqAI1GSJjGNd3Z+gGWWNCguYOA8Qeb5LyQf7qpz0mu+WAUDd2J8AmKQAAZjlF9MaMcMj2zDcmWoviadBEedWmb4vCCpzGEDfI53u3u/9pJsrM tGOVQrEQxsgnpJSVU9k95pcea36dS4peytWw8vibF7CS73JXIZHeuoZ5DecvfgDutO792l4p4hrU68En/0+uyY/7Htj+20cqY22B12v8Oxf7NlrPGsXqrzfWJ62GVN+DA2QjDQJzidBqUxtYnSjCJh9xSIJHijLNEEK8QD1kZAf9ej/Sf4sT6y4M8Hw/KA+XAGJJBVjDb64+fe261twiiQS/7Ue/kzOUX50m94eeisKBClnUbtPyqnIZHqhiu+g/Xte0ywcttFoFWsp9v8ewY0rDrZdyoosagiKywGppMjygglkZ8OB6JxxnQKY3fbjIeM4Sm+9JrA+lAPtmyIlGVOG4abVJOA5bxM62dLnhAqjSx8bpy6hOHIDxPLO4szk9+BF0WULyXMIkdG7S+V8gAHYR0PFhI+u81nMJ9Bd0PIMfaQpU6sv4F7kkElwv+63imMz6aGfY0ggyDNJXDV3vSiPppAQI4tEDrfR2x9G3s7yEmxa6N4pEhAP6rHceuXXSKcToVht2M Wn6COm5XLLAdQUEJlXWdRBn1qb+2E2Hsz/MAFno+vIAzZk2MxgN8SpmhbkKDtaKd3/LrUvtrGx1Efw5kap2Lnv1+RpIiS4Sbg5vK9uvV3uoY3Up4Hko0AXAWLFK4sUI0g2ouKG1a261TkVFIt6D09OTinwP2Id9zHyRRsF/ejVN1fDK3orLn8w1fh4TXLxfn5FvR9/d/Nu6tx6UqAc/+qUx0Xy2xMYzAdSZ/XcsEIx1DyMRvCNKIBTw1Fh9oO85Ao7qiY4s+U8MBe+jKf82aBsQ42sNFuwfjEQtWRO2T/EMwlTNSfvYRUZIDq39G9YpuftzgHzDYOgfnFQhXlQcQVKILZsLNgXK/f0YnLGTyej3syQvmgHOkWGB/DMnpmevQE/DNp2jtaXMYoSjzz09vc0cTcMIGyOG31Lf03ztqldeJwDmdBS3YgrbK1L1rd0hlTQUDN5aX7SrG0gkB3pI9a4VqQdPL3FwDK52m0nSwHEqughtcoUdrXXLPh4YLxC34wqtl1G/BM z2K7/arEsSmuqCBjohaF4utfp3lRE6widL2WkOYmEBGL8G08BvjTIWUIxaNVMJDzmwk/FZckAiplmSro3WS/5fkfQ+e1d7vfOtYQTgRB66ya6xz9srj3QIa+1eNElX4Lk4MQ+Og3G4O/Ws9zB1i56Zbw2Y9dKeMvc2j901oZg1it2pldzS4PJ6Z5unAmtvgj0qB+8k1YR/pzGhq9rIy42e52F4fd1FOE3QdXLrcKJ9HUlTKoCVVHr1srYC8sofalgsW0bRHQqPkKUOnAJMDn4q4Hom8MuvW/h+hG8LF8baPRzr1nwOl1/+xGWkJ2p7TXWnghf01wTfWot+OoWOTggQjoVvkQw0FDy/ArOe/WnX3T69SMdNJh4BBLOXNx8RTpNWGsF07RaTmkIv+9mA/NQu93pgxsss6f6L8cSlD6Qz17vKKhiS9kSLaawvNK6SEjpR6jB4JCaohbYhopO80WusUdplKg996nfWvJYQ8NO/Vo+BjqO/1EBL/rR20onNgwMQe0SlwUM 9pOYAYxBX0miYRJUAFYG7nIPJ8e59sN4mbrzA+wa/asJgSQDQToOb+Ps85Ou3RtFxa31msVLpin5bhduiKiBnyAC/0bRot4lExE81gvpHZKgsi5QAekbI3NArb4bNhej73GVY10bKqpcp5bvBIO8jc6aoeGT6IUXaLgyIxiyK2AJyQ9ZCYnPApEIqvS+pI1Ow8vp8e6HDcY+X6DY4D496ofvW0z3aoQUF7uwyqyXdnGkFxSJWu7B8Pk8t7jYMFIqCf7vCBiDzDMYHS29hqPydFd1BusEia3+DVC8bwDJJcXheA6rxR8U9GHSTO01E5rROgQYlmvWx/ZaFDQSSUP4EqUGPOON9297Mfzn+K7yV+Lc3580ZnCDbstDtccseCelF3mqz5KHI0Io/qKTw1aWxbad0WhuAf0Dj4PnxYWW2KgrXy7Cr1fdA4O7BgaZC0krPqXeJ+GfiWDI+XXsem7OrvvJXFdAjylWFVQJ/bvDiiqfSyPtBLq7dyTupI+C32jvZtJGW5qeM QUT53iAKZ/FRkv88VO9hGBiT8uzM0FO9cFBEhIglrsC1gaNW22gXvgzKln5RIXZwx147NQdRMPZji8BVKEVUpaS5yL0TyAK96W662uCmjVzBHNVzQEc78hX23pAusu96u6iaifDzsiysbN9RBzinmYWT+5uK3ueW6Wk9+u0o2NaL/tVLOEeLNGbKHP3cu44pcgUUY8qLa0HD/LXFIl01Z5RUijTm6crv+yDdvzjo32YlYjnxM9PzQowKSPJM+LdaWjBOAc2oaKpf6i96ys+6jFJWTChWG7bjKrhnOHrAORzlrRyTB7aCItviSyMR158Lr3ngYFYxf+yxAR55s6AWHxdd0U46CsROTIYK8QgAcPceAzZPeudx/yqstFmPVnt/y7H0hnVdmX6mCZkzRmPNVFcH2GG9jK7WWGA0BCl/raQ6pgs0XFrVNPR3Le1Ouqj8S6YhlrPGqx/7d+JuEGLjzfbt+rDjxfdToxjcm5aSZ3beyEb3Pt6lUukEBDBVzjy35McfI9vSM eLe/R8i/j4VYVlDxYE9nlwIQaDZJmuQp5VCNof58rhCOmlilK4G2QUmoYirGCv2UFcUtMpziZb8+W1KnxCWYespH03jX8iwVsFf9e1utm+Py72blojfcw/mTnShpDN1+ifsROh513dX6g85ABC5l0LtzQ4yz9pfBBeH6m+ShuqZtZtuxnHudQT3XGi2fe/9sJf9u6G+QL+G74by7eqC2mvW+ilpbh95g1HaQ08RuAB/iVlahQUKjncDKdCp7RsKh0AAeWBoybNyuRYbbHeErKiSiuyK0AH6zYhImfeFsezN53abY4ch6o8lErwMEf7vnbjzXJR2wNZSLVoPFd2APW05OL9ouRmPFPhOppAv1SBcXW0NarWipMad5A5S7Pi/RBDQnGcYvo8SEI2lA/SeKAAhRmcsZml/fdbC9OCiJqbdwGDmBfS0HRZR+slHLTIMtgNgVWJ0pZnyKfun/TIo1t+AzIHNhLdE26H8bIMVZr0i+Rxe4MjVxok20RRozqN4/0iedv7c7M jp5OwEPDSa/Q+Rm1ZheRRBtDVGYdBBXj4dzT66donV8wwfZwzQOmcsVh9r85eNiO66x4QXtShs+w46rOeAoRvhWY/962r02cLIV3ouRsHcgtLFT4+sH4STMXUVKOjBnQIED8+uc7t3pfyje7UlvI++wCkTdb/hJMtuMWRSGqO8ZXTXTS8ovvXyqEM+FTduJcmwD8Ds3HH7g6PTxou1G/ksjwJ7nsKl+qNjdAmkinr2/dlolMLs3yay43zpDR1M+pG6Q59pn/10OgzRg/DT2OVau+9iY2PHewNOw3ipLsoL1dh1TYhqUx0Gosk1QXC7N7ocdl4T9Jnx8v3SAG+y2ers/nVOcplFiyywnV5gtmAqquBtCAxocLTCKXZb6p2gGbuqYw8s9eqxAh/6pPh8VsjyPaZ0of7bFAsUYowoxz1QrUb5kVN5FuOE3eGMt9DpCnlFa09Z29OCZIwmSOf8RuTmZy4TL28OFIcH7lhEJuEFUuYs5clCD4pSYRES79fs8mFP2u1HeyM 6ziK5kLe4Gy3vbLF9djnL7lYi5I5eIaV83na85cJxgnz9b3lqXZGo1EHLLBE0z+scTG9tQnX4ahIeypPD62PtjVqzBBOvtUAB2t0xgYcwOuUt+C7QHEAN8dLwkCAc1yHl1sb5Hy8LGKgzraafe+avXyBZFwxltKGfeotQQCNNFoiPy+HK8UEvZMylLCansaX1dYrKG4uZyco0PKKd2QnuDuhXQLzqTPGrLODPUVjfE1uJeBml9IGaBhtDzkXNs2OFZW8U6bgb7XciL1cseU4ABsctSqId6I0TXHWpr5FkwTOW9f91zbdZc87WOLHlAEWYMIgC0Ri1jMgpxoaDubj64uTa26QD926LZdeyHQM0LOqgoU851tcgR7bud606L4G5eDMpU1XIsf9avNpypkDGV2R/isX7eEIupRwGk+eJYBqP5xggmS/Z29NeL/GkqKiW3ewOd7CP776CHImrSlI1BcXB+YrgS3LTrJIfH9eK6UAPA9FZQ3FoIgq0cuswKdogFQyEm1QM 87/em5N6j8hE8thZF2e/XR4CTdsZO6j3pYff8QeiTxk4J0J3OfRr9ByC4RnJBYd0RboOBMGd7XUuyQEmAwXrcTttpxrsm625IX3XpiuLn4PqE3Ot6RF6sMMl8JOKe0SeJ50kYrudb7YL+HEGC4ipv6nNW3/XAJYXJRkyZrMs6HHZ+BFyrQXhGzdDO76UgGezUHAzI4Jk1ebPFtjHnM23EJPCD13obIuohJxkaoYsW5xHf0POesuNGu1zhpp3xCBpWqw14dQy8gjH4GM1+lOTtoEQfDxL9LJwcgCRPiM7u2qJlifoJUZ4ocK9tdoHbPn1GCPU0W0KZso5/3CfPRatJ2tkcUJWGF63LVAs5qgd+0qptEjCkaT4K6k4OSFbcsoLQmmOvtUuzQgjJZjSezkdHdXslYFdIkhESdaOTwhGogOL9LWd7/+lJKN2LMVgOYYw/bI5lT9xe6WiiPm9EN69PmtQscUoIRkYL1Tybg6autochJKUjpIg14qjbzWztCa5w4aXoxbGM rIMKTz4cx8oKZNs0SkonFrichZAu8+Y28s6d8QNoEfrINrCy//+Vk55okW8csWXPpSvTHqyDkIkTPWZXYWFExnB+rTcj15BQvbI5roZaRIiYbL2M1Pl14AWy44DV/pHAOYePaNZ+oqx9Ipi7cCK85ZsdEEiO33JGrOARlUAZXrS1zkmphJVmJTUKdlHzGG6ly9IAYU0vbeyQ+Lo5p2qjJeOu2cyXgwWNB+8XUVR2oim3Z+TKsxRI5dyCVEEeb7gBYUeZnrVduwKim2ynV4axURyZaLdduXQqipUr9mVsbVoX+cQV+IIzziWI1PAVK57gNAJMrZBVNtM3vVGOm6dA6/9y7cCg/Pxy8jtDZSoYbqtuKcpjxEd8wnSBdL3USS8egKl8DbbgJr/hG2y2IeX+SbYb3Jj8GfpNZzQnHTKW9qW2l8Fsl8Bz2RIQvOHGsqzSsnCdNTu7AEYsQaJ2/FI8jG97HKNblOX+rXac4Ks6LnsaoLA41FVVVT/hNZjKMV1dMSuUOhX2M dMtP5GVJ+fxzX1YV+nFwzli7t96nDRndyELG/MV8UxT1RFiI5pscuB2MBDmZPergY3Cz1Mfrt2we+q+WZ/kb0V2reVyHc1jMZxnHG/B0ogIhgqw5gPp5ihmb2p2yz+8GAWwhf9fg+w4Q4474tUx+nPtI+gEcdkAxXaqbx5KSMG54UIn+4kXbGHjw19CxnBrew92l29itAmfFM1HxQIvjCfJIQCQGJ1qTKdez3FJEzK0gce4mdg6gPnPI6jXGlBNSkxnwDnDk12EQ/tnf4SJCNzDjp0sd8l/SL1JAsgp6poEoyFgWWFznu1JFP3Kx0gQ14j8ZrHjE5lEqJTITqz/7or5cOTsSeSQ2BskJSpXCVKPqEy2A/ocaA24rA02XGrh/U+8kgTjTVU9ktptO1kuir8Rqx3sRLTM/UOdKU1Hd/5C20O2If5HUZLuWgaQ+LaK6tQAKvPBNRlv5QWjbqrLIrhX971JgdAlpOpz0h17/i2i6uS3yQb3F5k9I8rykwyCXSFoKE/hGM 053vpY+U/FaY79ai73f6/zq0zlKbZx8Mh/oDKEC71SI+HTXBrl/EoL2lwJ1kAY8f6a1IOvvGZDPQW1CtvmH4KLoUOyiCLlUm4y4b0KovTVOzoDCfCI2eejJMgqSWOxZeJThgrK1dbh2pEEsULbeH2C+MtBgqWYMq0ORmM8HAaRVQk/+uWeudkXbICB9vOpbu/oeSytgucaDnbeV+ezeiKGPxJ2uClKBVzadDmWSZKKArBnksm9KQ3ppENvDtWmLRv+a/H/RVyX2DLLNvitrAcY3NGMhBh+a76pEBMj9KvcwodzoSIm04SMLQt4UeFPuP55LI4S45CMD/1IkZRbRCEiOZAiLhC/e7+r80HXdDf+Xetos6eC3E6dGHf5X2Cvw+uIPGOrTMEon5FZtB8oeaoM81DTR3Vxz5FiNfIxR1UtlkDjGMYejHUlRqCxHlxXqBuSavGdxl/sYvrMs2rRmpzHq28nCjyBo17/ox/JKTJ2TZ7ASkNvvZ820EjY3sEiiI1lL0YAyPM ryuMEZT2hJMHpPRj8TlMa9Vlw9/LDEjpViocR9vXp9gHbv7ET9ZNhnKoJCRpi7vSXisZOxSSsKPmMDoAYmSmWySzUukkBUXXf05pZoOUWKubTFGAtPvALPgcw+WDM2d9gVO07nVRtq8liOncpb1SvCY6kyZt+esYnPjRF3yYDzt/tHVpPYnVqBmvDg3rfP7JT7Gjz2ubQ+4tixZbkJrPJykupPVdXUH9saH1/3xJ/m/jOEmE6dNvamX5dtX5+eYEeowRykshwQLvZZEwEfAtzb4s8OXJ2luAHmmiz3of7mDfVTATcSU8BVy0yX/fHqaylM5Zb6AyKGvzDfCPVkLGrVuQYifEQ9T0W9fcNeVyMZ+zyaDK+t49AlsrIHd6etmCktn71RF+MxZ2/OE9IZK6Vuln9UFKcvTVCzbieuOA/nznMt2DAP/18ko/+DYl28k2y8AHombCidGeiFmoJr8ncrvMVGJDRtrzxtNpRdf9SOM4UX+nvwfi215h9dTQ1q/yl6XepQbOM H9mB6URBtRENpubFP6Yncntw0hvww/dWaNjitA6Ze8zYG52JrEqmJZIAhoiNneVI7w656JYG9RKa25xGeUHEXch+daOmDRk32yR1AgFrH3mimD2NxpPh8GhH18nGcsJjqHBZ5M3TieqLtItHyNV6hEMNZZp3mFPjAo//BQ3Gg/c6Zz1Y4N3UABoJ7itBYPZYQIiQCuRngsvvbUzu8N+RWdMs775AT/ZElhjJqDTXYdwyDJi+CLxByTcHiSct6C+L/LrQuBUD45dYv+VnmAHFEdW2f3+YO+CaEp82pGgSWLpHBpVQTzYzYLSk4AIOpLRnyNiTVY+gnjk5Y9JzGktRuWRbhatgBzUYAl1zMNGOZn4Ez1ssD+c/qA/2Ox9CLsnhU0A8NrCR0Fy8IWgQN8UP29piLWDvoTpKeXYveHECRYMePOYIlzSPzqYQ8sY7DGwyTUdRiaG+xH9vBYTNLuo6aJezuoK9mzVDRF/aZL+KUY3+kr8PKomqNi7ObDHIdKfrH7t2oo57M b3zSLEXZjGvzAMVYGJ++cE/0rF+gnQZX9vmBYNzEYcowD2yhRs4FdZZXLIO/kzDBk5wDxOu/GJ/NnntBWWgyKt7OFexfqfi47aUP1eF21uSGBfDDqyqEEm2581aK/Ed9U+THsC81qxePKzMdUWXoPqF3oMMnTsdeVp2/k3d5qVyPjzt0ch2dm8BPZKhfQb3NVH2aEgHcPLJfe/BRTrBFNmUJHjL1OSMsWWedC0ohPn3YQZweJIIf8xSRteHY1Kxw6ynXsJO7aw50CPnPJ96k9nEyz6I8qe9CwIkTeTuLvqBsC4oPmNIVCCnm8xmzb1B/VKiW0SDkNVm34s92Qf132g2FwkFFq3GhW1UEkwdkrHBeC0Z33QI/x4KK+BkRPyqLZfIgCN/jNV7t/d+h1P7cms9BPlKZGVRQIY986kCJVeRpGc1NgiSCUTw21g7NiuCfMrrK5g2m80J8kxw76H19/pVcGbXXV3BIt4RvDGDVFtfjd1PwYeK2DO4jclu0VHgQ/xvEMp4aM Qr/HaPX5qHlZHdc2OXpQMQInAH7q8zYuixrJSpwbqzUjpwm19mrFcowavjwJzuWMFnfiXFHqd+EvlSoM6RoLoxx3Yw0Mw6ZabqiJurVIVL/OtGWhwP41fOJCSXwGv4bKaWXvL4q2lqxcVuHZoe4kl5RrCgD1gcECvoGDz338Bt98NeVz1RvdMhy6A0+QIAArEFDpP+XvxbCX2Tz6bCfROSAnfVOkUSq2DSRlBGs9M1QhbiGSQ8K0XBOq8KMk33EbpqG4ohzJt4SbbrfwELcQYeSByVhCxV1Pd/JXsavbA+CCI/OB/2c1WKePARTJTlx82KJl+wlXbrg8Fb/Q+DNAuziT16/VyYNgnoL19AJbIFsVfMbjsGGCmo7KKtkh/tkCf2YPMR4gJwnE3Tz36WUm1FziahS4b0uHre0+SxnNIWsxzlw21dT/Gsd273btNjLW0zs3BrGJDuF3Aapi7zIaI0DDMiN4DQ2ZerwT4y0qBH89+Kl6V4QIsf8cpWn9mIEP1ydnX/C/M Yy8usra/4b+FyNgxp5+niMmfgqRUJLHPxuJsGdHO2ufY6jfvUEwyMev3+Z9W29rHLUhsvBZdQllRdPXf0Hq90+p6CAOZk02Ko65kE1HlZGgzv9X3H8LRqJNnfZjuKtJcH6RuAE36RxgOvMmlsWgtbZKNToMU7mY0gRCp1B4v2xLOAnJ0iU5vbG89FRyyPd7vHE75U/psDSs6vsHbk6olILCNl5T1TgmNQaxxHjvpn8cil0kHPPDquebGcHsC1Is9AyM38yhTJxEsYWe0WPsJHcvTA91ys1qqPgQcov46Orkl+d++/zMXO3WWLqVEv1uifNlNaTC55uY5zXWFDFxmwkmbL0hE7cpicVczYwj10hBSWsQn/CKJ6OykU4OhWXqzQnlsJL3/niCHVTgETJeixN12X+/8eg8mVQm69eIU0OexSjxkPIQU4zzW8GIDm7eHgHZA3VIlGfwhDc+PD8d54DNJnLMMtiEuqDfNoBV86vWdEraRg+h3kudhYW5s9a56m0XiFuJuM TtO7/Z6Gv9gd4r73dbS6CCDxFffT6jc7+Uca5QPXXa/1LXH6HRgk4yVbu7St6UUrz4Aw115Mb8u3SWBtBjU9Q139CmK8u91Dje98roE0c6u/Bmlje3r3RT9eqBpH4GKUC/vGoD4O7+XjFuefb4y9zEihLDF9AAUgQuT1+3kyYV1m99+IdSojLxU6DebQ9x+nA+eTd0Lb5s9KoZp/nvqoqOS1fLNQj3reFt2aS+//UWRo5sai97PDTiEhqRJNscWxYfrJHockBj0Wlw1ZtukDgISQ5YiOJJBrksIPSdHaYqWfE3sV+wvrCdjvXU7t+38Id9L/FmJ+b9AV20lyJWLyllBfaleqTZBaf6krS36oHOAM6/ZbQobOlQ1+fzkAZh67vGkfa0P2n+vYnBZMCSjfkJM17ox3+Qytrc+EO785EheMkr6BioPjn7Xx5VfVg6EdSl06QMrSM08srAAxXG2ipxPryX/cDoimEeR76QlR3QQcWjpHmdouBFJmTbC6QQiQ/DQY/0+OM iV8jPTJS7mNkiknEqP/SilmFrL5xkBSeeEUDLqpVq/Z64NHDEGZZle0nYEU7Dikz7dHWhu03wY41ZDG5S92+t2US7CCF6m70h0Ppt0FnaaH8EHFtYjvtQZb59fva6/9tffyY8BU0090WR9JDI52kMGp51yugQ7zOo2Saekr1QbU6HoeA43SZLP/LaiJQZ12P0lDX6qcjwWzQQeS3nKnDw85PDO9nWRdkEagOmoiTS3L8Y4a8NBwD1NfsGuSjCopiFtgvGf4/aGLy12hXCZBCQhN8t6Pims8AIUV7flPtJTcuJD87KcHmNSlDwwolOMBPY+O2rJi9Mg7Mx0sLoOWfFQKDbIge23yqxBG7rmmawOC9AW5AbH0sp3DEn5MUT8q0q1o2dE2CFUGooP2MX/E+3nOem9vIpY2JDuRPh6GY76gVb5NQC2l+Zg3i0NiDHEoCRI3kpOmBoYiss5l0Gvgrv1AIvYycUr0TdUdT1TLt8u453jd2aYgb5oNTbwqHMs03xVnpwrVGM zKaiBnZjLs8s3sPCwsW6vsd0GnFQY2hVTbLGPlGGsFu3XFya4/aBsV0zcUYoX610WqudoqnMZ0tUN01kLaFwx+c1KSF2/ZnwOgiNtNgcpJ5xzUxqzXPlMeBIbsdyRzYytYnG5Wm/7KYY+9T9BBaCc/4sAGJTNsqwKtOtcBC/QPqeeZ5gGFLgv8BiiQBr6rNOG6g0/nx1Ml5QUKrNoFAaUs0l1jJgiUEvkkp1duBVqfVkH4GrNry71GHLUqVnc25RjsqlYcurHA3PRHPRvUVrJmmH8bOsxxqP30XCKGD1ebpBsgB0Ivn2VepHYLe12pvWWrBqmE97X+EcWk110gIL3kioO/icyf2dtvkqkVPu4K+nbjMKKmxvkZzydZ7qhnrvX46T0oQPfXilwmIsfab5j8aUfgfFqxFCRZUqtX0Uir2rCHTpF6FwS0o1f7Hk3mvLz6u19vX4IhsVHBpcJHsTgvP5XgPPjCGyaZZVm8uTsS4vtsp0teghx74qqh3fUyrRg2N2+BWPM bbWe+Nzl/0wh3aHCqPhNyu8i5tHJowSronO98UbUKIfkckmS6GqjDWrI+0bpT97h5CpuTG8eyJWTmKBMqUVfkm5MI4gbhtRSdlyjyb/FBxqsEI5cgHU0VkYOHSlDDeylP2tfz/hISEbL8c9iMP9qWxltJdOwdp/tkShjSD4FOj8Mj9cuU49WFhi5mv2kP9n8K3cNnBEIAH0R04Q98Yg6PKmgPLBxsPBq+Yd+ce9jaSf3o7HMX0X7AwawdUYAWuDGhJOqvp6GLXnzw/ob+5xSgoyRNm82K5y5gS0Q8RyRN4WdrzkghxSMU9bjgKyvBjvpoP+jJ6YBuioHMOu1Ky/DNhgJT35YT6eZIfPK+dsyVvDqF/f7InL43IrzkBoFZnHqoa/2C5iIyBtaSaaswjLm8RUuuPd2GWK47Ez60XcpfNPJRkhZbX7pkRxWxXEHFMT+Gpj9gfMuPayKLLmXrOdJg9WgzXAljC2jC3D+mlG9IToQGbISbtuLeX1q9KuFEE8z9PzdxvrFM 2lAO2PmnX6rH3MWBU2dXFkpsCet4Q7S6P4d2kK4ZM33PmvC53ZaBM+swkzM2v3Y8NEZqW6G/nGLHjGA71l8pbkWAqGX9y7eddRJXARU+Y2tIzCc8WTGAbxJ9cFpTSwpwQaftTR6FU2sFSDM2z6xuK4uQ1VxBCUM+5OHHtOW40KNB2ffS03EBLMhTGMS4Ao0j/PZDa2SGBSnzfY7fPa6aoxGm1zFWXlBwr+xvND7KcT3s1b4yIY9nrTKZA53ZdVojgq3aDjl7VuJRr6rCogN/AnXHm1MCKf1Fs8ozWDhLva1/RAazh+9/FTg2U3cRBmfp7qFvOh8rJW/mQMOvr7CG2cko/Gi1AdqZZwrgqb5qxwLVlgB8rBBL1Y3yczS6W5fWV03etHd7gPSPZwno7KCaRKVkBcYqxhXJUqfBIZsFSQJmCeigawW6eQvmSS1obbowOlQd2znnLltYRLXw96wlWB1FAvmKJ03DtX/oy4TzpMMMPIprZ52bxu+PtJKulNnJB5l73LTsM Nnhv9lie9jwrSmt0Vbm/x+S600+6AiabcnRNQ5ybKIyeKqU05qFBIueTNNgTYY5c/abvECNjvr/bykQYIhTiPuewkxt+OOJVEce1+N+Stz5MjXdyjd0P+AstBUlYwh5BixFdqDxfDTN38YNtGJcAwnrHkhlq1x6BK8Uis7+vYqdQSPAU4Ok7crABByXvs53xvSEoXtfem6yYXUSss7k0HqLsLOGn/M83tzEU4EK6nwWK/HDJDzF+tPKbg3379MOLbTw5IDaU8NvCWWHn2RduliuvWxjYYctE5E7nOj5hzSfDwzQ0r2Wz1Scq5jFM3ayc7WwqMQFI4kX/ypnuqbWMlRGl0kyaGi8+lalf78GRqWhaxg/iCkzZiPqeZLZBhbA0gI9eHhE5O/mia3m60R7TgAwunzGFAz+4HKBC7DocmZZ9DAA5S4r4IEsUDomd91GKBLXrT+frnn1LAhNNciTDPyMx9EryUMAxXbOSII72zWAFtIr27zh9L4AKKMIMLOP8TLGLOhmwM EDgoq9HNH3NgL3uOHKdUkOKBGAeYPu7CpEizWZYBLSFxIapLdKJyKH/BMEjK17Mcyw7sion1Trf07UsNqCghaYjchxAhkKBAeaM2Nk1sgXd1pYdKfqg96KMh1s7eko8Ur9oSn/D/RYcwrQ9PitiPRaFU6Pj0SHqJ7E2NSm3MfzpDFF8ftxPDm/gvfEoFbJ6HoFZihZ1pxktQn4vIkwWpolimfFsUdRwngZ3yP5sJEClR5Cj0wOSavMFj9r3ooviVzGerAKnYjmXJ1V6Ze58GZzQTAo4Hbth+W+sAUKT+qptfLjDYASYPUiUUyo6Om0omL/mrrB6CBOQeCwzfs1j/IruNm9nvOxdpopk8ZY2bMD+3txc8fVxepyCk2PcZmMf9ti3pNo99HIPP25Zbxvgi72envcPKh94ZE33ZGLnEtbHks9i/lo7duJInaup5HL+iMQHpglS513XYwWZmLgZtxYqqZQcNvSxnKWd9+16XOeXPVxj+5UUZXSiYaI2D3XS7z52WmmYNM xC0ROs3gy+cmRYWYklUq5c9JBSiHcowdJRlHlqxvlHZbgHnPQ3x0p/Pnuj8U7Mmlva4/jM0uzsbboIbD40ZC14MsL1u5yV1no91r4aDhydDC1pK9EdN/1zT10QZZyjKRbT6GF/q8uzLsJaMDipQk7P/K/zK6PUy/JUC6SE0o2rYJPs9Zod8D4AV+R9u/wOglRjTXS0cZX5AfGFb78rJUiXa10ZcaOYsZHVPBizoy5Lr4aQYQsexSII8ZURgsCb75cd2pI9cZva3jTfla8tyawNjbS6uqyZGkh1ivFyS0tzldjPtaDaPu/Qk0PErzE7Odmy/6ou2Z5x+8KWZRBYXwhLdGNOEg9uOMBPRcX0FB3fdWU6eBkwhrRg04B8lvVsb93Ok8fe/dEM7RnvUlZIhf8gAn2aQO7zrYfW9weWNKt4xgqWBM8tbrjgUZ94KA1+P5UQriTLuy91zxU1iKeincdAXsg9lNmj0S3kYwB2SV9P7UHeTMq3L3e7J6aEjjleQ6Y1ZhqHffM NKBTXXS1rTjEhfOCRkTEdSvJZSlvjbBsxtZVYatUC94viMhJyvMoNOafTSEPDck5G9QI9Qj+p5ApfSLLCKMSuWTOsObAioxLM4m5++f5cMeLQ3A2qMM7rwd3G0nD3mvw8qhevsvRK3vQsj9p2LoH4mLsaxNlAsbNvyLBLs8v0TJHgyawhQIkA/AXCYVAJVIinXr+vHtk2FQMMmG7B4NYJROi57LnCnNkG0yWNbZHuB53Y3/ScXz9RYIdy5YZoicT8i6suMQaNiLQ9TV7f/7pk/DrNxBhk+QGNDHxLyqtWet2hodGrn/jhyuLP/fXnRKsbt0q/5jpL7pio+cM767JkzUA08if6QD6Z/DolCzNToyNWvGlk60Yq5Xhnlj1DMnkl2Z4zjJ3BD//EcX46iGG950CGb/UcsE137JwavoGpyJwPiOqZbITjMqMK13RTGgG6IJwlGPBqBxm9euzC0XEc2jCGWZEhWgrkpxJzJXmF75dyrDJKQfgxs+/eoylsxbzhyeSUd9iM 64bcfJZV7dEgqE+qhanWfM3eh2U+CMa3u4xR1p/Hhf7EuUnMi5L8fb/F+Yd0547yQgnMfY6oyhMgHmZYXzxxi/q+hsalMrq3WCb5X6JAcGZ6u1jFdOnXyHNu6jqOnZ20X2l6Qs+eWT60f1pyQj9acAwLX8cOPKV6YgtrNN0x05qMR8ni2hYIYQgcPYz7KfX7DIyETORLGZ4mMcmzyUBKOvKRBYbfCWzBD7WdlNNyz1ZD8U8tcN/h0r7Kd1u8c51hYvBJdh4vkNHGcvoIOlqlZ9Z+3NxPRpq375bbFbKOwvinvbi6xgYnBUZ/o8oMlafNqld4cZDIKmibWLMzX8aR73kQ9Y9GXKa6QFAQezQApNusqpewTrN0EocSbDdKjOqO00hGTNGTHuQVdDIkG4zpXXAyqO5233Gj0Cd2KvbjsWz6o++WZDL32ARVn3nCX0c0ewNh5IeJU/5TOa5eZcEDWHJz5S5H/PCOaeQ9Wdq/8OsYKmg3T7KEYUb9eF65eTeBvZaxtzl7M ujJc0JNJITde3G0NQmAq1B/9Jg+8pbMPOnxMWxNSPibZiwBGeivICbX/z4yG52daVmN6etd8O78u9WqoHZ5H1YwUzblEUcQ4NqxLANgrW8Wx8K7B1xG6MNO+50NLPCTic2nC84uQb0qiWemqGpuH3okiFivJfaKSVm3BbW1JGPyHiqf1felrXFixmkDQ6/XIX7euDQakkjH4LzIVqZoM2bP6R/4IpEGlUylyJudbFZRcMqA9J2qDCQsfdJL4I9vo0mrqoOAUzuxOhKqS9s82VcgNcrbP27loiOV0IFqWfdNOgcjV1aV1RVc9t+nF8v/RlDDCN91N2KoQJ1lyV4UdPl9ntm+01wl9rSoE/xyB8CjeeP1E+wlkpagv/3SvqJAfLYmslf3gjEb++sVJAQE/o9cJ9asBODhkrLmvStwDxkiQeGYTC5CKkfOGCpWVe1/NxT16UlkKjLFvfl5142uutzyGzkqkRJ5lAK98i8Id329LUpdrC6WUQpjACRDSLDhd4GPzuI/kM jiDa6W/itoZbumslY21E4HMjkRBXOgNB0+9KaK/joobSvQRNaLBaNojcZFRFQIzUmZ0TsbjhAW8TKHqljNSCAZ7Ew8JbOYrA/yX6hya0A9DjU/A3XF/M8LFqovxvakejtnI3RutedRRdNzC3KoGm5pigGpZvfPrvGXfdt4E7B4TC2uBtm0MsAnoh4JZkSY+qjnuYs0Sqii95iRhOuxxh+JI2AVMqsDhbqlR04lrAOWcLH5dPRvG3Yb/a3UoSCFDKqZT6HR0ZzF5M2H7oVE0QAcfJep4wDRYgqvZ7r4KksoBJYrsC72TRGzQQZO4vyNXzKN2W9dB159Z2s2JxXDO6OlbRm9rgKQl5lR2hl+DtJNFydZ2y4kwXWzU6dHxjUuNUtih7AlD+zxdpbSJKwtl/Iykha+8MpWXKBibEObST0xez7o+L59QgJ57LfubHVd+fejuFaXztkVOdKE2aouCW3FUESFgLyYJd80F2Vaw6sFSBGpR89fq/75AvnjPf1JdRB7MViF3NM Wd5OKWjqycsXLYe/3T91r5vSjQNGuv2GzRpLOFzO6mvlAsDk9pQ/ke0I7gVNLcgf6wRSZlxjnJlLm/6W2C5DyCBZGsMZRDzS1z4t/pOTUsU9H0Ahr5wkVh7IZ5Z2wMxmjw7vpKsqtRKHwCt0kwH5aDPpBfo5ZbzDOJU/o6PCkfMQJcDMfWMgDcqsi6RQxVREQa8Ap/U7wjW9AwO4QVKwrhfj30w//N2s0ymRKIPhIiG75LRPs+PItoDwJBDtlnVQJycvUbbVpSwHJ22VoRReVWJ3QUR4mrBgTUr/o6rWPluNBtJI407uPadTAhwbsGC6MX9hnD6C5L2JThS8pIKtLfx234j+ntiaKIBrSqgdKmWaHxyq0cAYjCFeudliEKkMDvHPZLQ9XQXJvlqsI5+Z2preqeerzRWdSHsT7TywxmDtyCu0FP4UmEh4KJ7MO0QD2pXT0qP5h2bo4sbLEW6M+BcwwQWEbVBSM5eGdR0K75/Fl/PSClPCvgOmCe4NPmdRmtyaVTkGM oe5Kz6rJjUE+ezBMTCFJDeiwHDfrmv48G//j9SMVymSIV3U0bOWLfsfkPkhv9fwMR7dTHGOyyG2U56ux588DAEonomQ8VW3DJucR33EhZS1pnIVXvTE+63sGJRP6JSJJsfu7iEAHq53CAY/N/GtANKMA+YfzpY7xxKlSYPjRli/IZHcanRReK41p0CIkNAA709A5W3UZGF9Wu+Az4tnH4MEZSvmfn1WJ/96qPWeQmXcOdpcxNnocRAS7BtWB8H9xJ9hflN1V5r+Xdg/sh9u0N7VqULfW6Wz/5Rzo3TH3qS+qVetpCsFabYwdjNNV5virJCEYx4+3seZXEC27IxjdtaBs5FJU+WRkPhXwRSJHVyqRwVsCnprpV7JAgJIxb7jUk1pSQyvUAfHU8ZbVz/dOFjezE+y/Kd189umw5M9Wg+bGrZk7iCal+WL1QFTVT5cjGix5cgZL2vNbxkX17EU5/eW8iH/jMW4VD3tIotPGrVyhdIPidbvDvs8Hqln+njjUYd6uHyR1M yHv5oME9iYWIUqn1OszcXBhAJzmafqtSxKlxM1v/jsJC/tbHyqHFcNSs21d/mS7/p4CMa2Kzi+nTxnELHiKRKzwHUz2EDPgw0zWf7Bj07gCPp54h9tsRVWVcDuz/R1hbkO7QptmSAdHC/6kEDlegc4KaJDOI7QyVXENAjPZPZ1LULiulMI9KSfmA3P6HMPe3HCr9tsOQVGHunERY5/6Oklv6cFjMx+efFOUWCpwieLI6l3AsEFYMz5Vaqztgl8YYZy9fjWu0iNzwBTPJyB1Tb2GJCXUnEDfftNYV6KXziV8vdIjinktCjOv8nudGr2O7hFKV6KjiwmiC20PGbm3eSn4juMJqLqiIJoDGPgMaAFlcCdY/IcAXfL18qajEPBy7wGa+1ac/uwwZgAELTDxWhFEuzwp+48QErJ6oPvvgwxh3MPSeg2/fo0iejue1HeMCaaJOaGERmsLCzf1G3jIR2LD1Gjy1m6uxHwHa/LoxcmWJkTzpYXrygSutzbVYzh7s5sFDve7TM /9+3Eox8mRjtj0f2/U95czFoCJ8XnUCB10IJmeOEuFgMMK+nO9JXQuaC4QAyRKMZWzc6mTE70xX6O5JNczWDOp4XaOz+iC+y1Qx6MzqPZ/X36Bm9u7WjWZ1z6h8O80/j4536LjI1HlKiAeizAGviYF7iT7uGL9Q0dBmy9wqR1vwCIk1NVOVzlpW0Soouy/O7ONkULFNVuwNf88U+nEXZMIdfF8rpm4TL3pE/IHT7JDVt5RZ+ZxlvUXTsDb4NAkj2Gh8TrO6wk5DrNyKF/DhWXxb3crngJmvVJ8MBtcVOxOe7qiFxTMf5vH9eFhtPx2e6/luKiZP7cLh/sr9KbS1P8cV5H/fQ3ShdnXf2dTMkZV/tS3c9ZlH698UrLLBj/zTq11rqvloRr4t9doAqjxb92XURnT0AJo+v43FfYmGupprsoTLMeYWIGyL5pTxyaWDRs2HLn0BS3kxiZlRblcZTdrnAVIpbjoR62WF+HVcms2yig1BS7CkCdtvmyLqhXnNwTu3R9N6hM tr0JTgKk8rb6NpFqWgfDAxh6Af2uuUjR932EsBn6eW/eVLyKuLUEZNk/n3uQKjttHudOG31UquHQxL43IsOvNDQkdyZVBe3kJcE801kzIzGs5o/1/5E0DBtu8/iAajAMcpGuvt0LZUzSDMqhnpWVcZToHfjF/xORd0onk09G1DOEzcChjMoMkmdavcIFv5NHsg0LuJXnY/wgPuIUEPV6dsEJTI4gs2+jR3iurzst6hy49d0hq8I8b6qo+I/LLxPlRB9QAhtmjYYZSFAHZiMlb6cf7faDu/K5EULz+/KuJILs9vI3RrgvgQY6Cxb3h0ogAX9MrbN7YokYrpYkeb+TBNX6/tRsqcBjqd7XHmGquBNWAQ2hzeL3rjwb8230/pWlUw1RgOuzUNpmWYTnD6P76Vcrrlz8vgfhB2hCEyCkEBjOwILvn4gABR6CJlnyFsqlacTR+LQ8wHjKs8nHnsDxfuyf7JC2BZTh+ZpZQNgX9V56y9xrkp6zsKiLUhMiXECqz931CR53M 3R2+0rB/2xhm/2Tk/UaXDTEP4P/dIiZrZLnTyBiog/nPwIRUrhoGcMSaAE7WMIFF2krEhoVke1tOCWwYA+YjSy3H8Pms021jKBSqRBOSWhbFA1Pyg/HFox0JOQ2RI08Thz9otfz52kP5do6fpBZ4eXfxoQjGuZfGOiWdkXIqk9SFac3SzkqlI4Dw35Iumk50OlCdl7GOPRRkEzOr5Pq/TQjmsPg/7HO69/C96jiW0orVnjEM4ifTU9nRGHxrFFxlC0LnebW/By8XgR/RXVZDraVdTY6mgzAt5YHBWh/3s4HF+WfY9lo7W4b2sPpTWMkwCUVty9T5kNQULoSDrd1rhPQ+bLNwlrudftWtVar4EDtjYZQNakfj2stxsHYHC1l1QLqiUIsKAMzbBx8pXFOL5h/XtVUXumIAsEpOPy1pCOPV+mh9lr+nUnPyt5V76AYUkg0x+FG3b20dSIabKE1WwgUYF5A0nYLjE6+UBEUQOWSM53MHKfSBFYMX3uu2sE+koQVGY5ECM U+BCORrTEZPM72rbZKEX8EtfgDM/T1xoF5IS9ahHCP838ZjVjFmW6gWJDpvw6MDYBZocJ61RKXanuAuIsRlrbV1i6+TG51omioxsXaMcelmPJ9Auu3WQmCrQbT3OATgp4T5qpjya5bw5au+Uzp+43qVneZgcJAx+pJPHmNiMSUAY3pQG8V/vLlcctoHhvidiQYCPA9ZCUs/eS/XPlv6e/670MjUGKhXeOWKOfeAiZEeAL2zw2GSpv8M12Zn/6YSvQ/hXlhLajmn0N6HTmo5lOeXr9zkFAjBMJM5ElNgH5bAyNuPGbi9SHJRrMnraJZHiDIcH42GsTh6/UL1ptWXj66t1FPKdyYaGOCGV7BBxOV9TMbO/bxarsakqw93qH6TvRs94h/pX1deU9aXLae3v7WW6DuNlYyD4L2XSmDQC7Ly/3c/kMiEBc5sq38VJ9AnomRyjd/8+QPt17Ip3Ph1iMkILYExIli9GEcB9YOKdyOThzO7qXgevz7MhoEpdjtOWdjlmR7MzM iSsBkiiN96y3+I6XnhAU4SHCKmv41VgW38P4xTj45ekfMVx6jWoHQi/XcIVCLGxO6JUqRBUmKsQqi2+9Tq6dULRFgtDOZX4Cf6VspSQ1bvOCYRZHWvnvWxVeNv1qN3JTMg/lei/ybVRmCO5dpRNtTY2E+eVk/ZsYZjgRDCeRJzrDHmcSHKdDlkdNhcE1UVtIcyW1IXlNDj1aW0El++AG52IB1u7fdDYPDlHxJ9c6TifT/COA9AP3plsT1BY259Cqyo20ApnGlp9WyEJLDjI17QciB0RuWYrwcvJ6MLAexLc/hE2FI0FtmNmvN0C4E+D6MjFgVJMwCUvTxgn82PAlaJilsS/Ma+7zYNquAjWpa+14GFXz/IrHutWPxtvWMRZHwnm4WjIm4l/NS8/IEHNcxqXeZ+gu94kFpCCDbjD0yMiaf0On7la6PCmm0i+ygtfBVQufEk3SJ5X3dDwMp3potpwrvdEv+Exyv+beic1VYPW6kUhSOnVkVUfFwEev1mZ3LcNCoL7DM Im6COMO9O+IEWEbei6ChqYjyzRg3iWs2PGkOeQW4u6nxRS8cGxtY8VVLsL+Wf/tqhgn6TZ23gz0kAHMzDd3qdKlQmRkPNTXHLkmvmyba0HkHOkzhhDIWiILgQsCrA66Js4EY8/rCBK4eXHPp7L6mJZS/19g7wHiDL9TECB4IbubxJbIKIgIhnJwjXjlFxmpStwge84qsOxsC9z36m60dSWGJ7LD4LNCft/EFN4bZelIl8Oe5YSQI9yoVWFQaJioGXk+ZzjkI1x+mItslVFLdQO/P4NEMVUZpCZmYXWSzbG1uW+isDVuYGFaKM0o27/hHyN8MmC6olEqGU8YbK7xcJiZ32RJj3rB0Qlp6AsRHUmd3loq5nRUbi3R1dEbaQWH1IGlDAVHyQSb3NBsuCvIRGR9WFEWPF3ZyoUHO2CNYaL/tYsyCFpeyk7u6eX/JX5JHVnXEnjD2mxoNnD8191GWhx7anK29j//gNX/xt9YlBD8SzeqvvgmIBwhKNOytggii9KQOZ17PM mvice/+KKGlvPZFRNpZoWwc00zxp5HwMZZKnYKf1sc29JpLqUcY7J6gi8uWkXikeDLRTaMd/PtkDoTxy4CBeU7FsGM4u1fEET7bjGb9diQlMzZiF9XsjUXAVvQyCavhh9kC0u2pEKyaKRZlZhNmb7RiYfYydsWWlrGEgp2NRolcYjsRVil9KdPqidgZv4sqTQYRSw3fkBqtr4jdMzdGxTw3LLgbmUcNVLus/vVtaTlbM1jqKNe+drMB17T4CDmuQSbgyGY8FrO+T116Xz9FF7bBvuCuc3A38y94oRzvq0xrRQw6sIGVhZ0Dx696SAf8WR+2s5ziFSNcEzhGotpr9uI94owlVeR/rKgwz/Ro7dS1Lh6c3I6gB+S++mtjzY+ZDZuTKfSyYm2hDbPRDbepmok2JBHDAH4KEBzESC4O1MDpl1jxoIuyIEe3j72Oo8+ega8ub+bFiJQSuCzTYX0WwKozfXSA37uAc7hXolTKx/5jMkxVt5B5xDd0tmFbFCx3NJpdVA0b2M xuFOwsuM7QeOdKnojB1j/NkH4Rks9ZXNfkYCar3k54ign8Jl0YWUJHy88pv0Vv0CgmJR61C3bbojz+99VsenPqv3St86TOKBlTZPWsszf8Gy028TLx3iZ6H2s4nq6cRohAFmc75UEvwlaTw/tq2ZTvlN4DmS54Xtj7jPOB39t8XbC8phCppURbhoxEoeF35BZoFydBeMAFWNdtnvNYkrknxpVSs8lQFra66qTVQqlQrUzZ0Kmwg3tI39s9PlFZMEv69pJyE2aberNZCh+jIGLDKYqLxUjfISyvyC/FDHkvuq2W39spv+HJKTC7aadtQBnr97YFfhh5iidune2J71VE/Z4+HdLVpDZSnOKlxSNZD7Lt9+uHmqBjxIujYaAOyhqmqUEbPzx5ZCX/Hx507FiUu7MWafj24xxuy5j30x8F6u+NFpf6703y/V/85tnU4pPhzPHIahIxvtkkxZvGksDk+YF3n0C1HZvXIMJlHLXM2Vd7xGKKlpzsNitrlv/MJR5wQ5TBIfM bOJU+Rp0DEq/sqTu2GgQ4XZ0U1lwYtPUeAL6HS6Ec996Fau/vHZhhsBa64fmtivHoLdXpLfFukkJiHDbLkAFDUjvGKoa5YW2kkFxpyAY5wdEPZ08LtDSBPL2pX/vu+Tx4gT4JwSPMCHRejAPYCDadLTAOxn8r/OZHtSzPPLOmdbwjlilZvkB/yXkgaPcoLNUNWJmrhHp1rY5tl5WqZ8wO6/7cFOf4K7imLZ43UbsEKF2CUGojnfl34JI7rKuDGUp8QBXvybV5D0gYXozmqZeL2i+BpCbgNSWA+XMdRZHNsyz8SLsVM20iR7RZbgejup/oAS9NvX0OP0RwMkYfZdoB4glHCRhpQ2AQZ9Ea30IwBxnim/W4r2zTuYZ8QqhiIEmZpM6KRZmbwzqrSz9B7X+NQ+/Ls9yejTP1qxPsrrpBXYOn9XjdTuvToVmGA+xs+Fs8OGDLIW8gcx7xcLvAq+3qrioBKNdqy8VslsWken0xn3RPgzn0OBP7IXUx+41I7gsiHyFiP4FM UG+dZ5sDdpcTHd6c5jv6Xt4y0iZidWI18XFclV0tfkMY7Gg1qctxAWSfE1M+6FQ6xlnsewEdTsdwFX0GetrzZdneRjl7KLrH24669YnTKtvwRUo0RlKDG/QYg8pWfpJNmp14LbwI+Cz3BwSWV/SxDaeaLuTUzVDwFnnulNpVjV4tmUH6Bm4qRBjPe7z8awtgDW/tj4nVHeAtZ+bo7oGITt8WeA1PoWosrfIo2CNONLvBduH9Mb0td2Kr6FPmTXO2vLg+uhUughoMkLJg5gkBg14CxRP7XwChGu2W989xtojjtaPc8j8CtYbzKUNnm1622kwQjvx+FKEdlhy+NHLrSjG8znZw7U11m164ROPPqZRfHPSUxDGSr+bEaZMGMRSyTFaN38Zi8kch+Xvgfbx8iFXnNOpev6LClvQyrpPZM38VcZK5UnjyOPkAXRepE46N76YgOS4WYeNDWJw/h0/w6QPuupm7wflCkeWy+X6uWTXORi8Ca2knLLBz2inudClCqmSHbwTsM cLj/2R2wy6CcXQvwfrfD1p/Bft49xowIzIDlWi9z5tA6ssYLKrVgrE1ctsRMk/wnjyp+ufNIJaHAJM3tF6l67JdSJ1vrFPoOjZPlUPfjWGdMXW7zFd+YtQVt86rA1IvJf+RkLjZn1jYazarJwUDSLUv7951bqhTWJpusW0rc8Y7jQwbkhz71vzLjF7hHAUVbdDuymn1X5LjiWKY1qJU9sYP4jK0RWXua31c89JZc8jLhNwB7S3E0mtPDovzohRZoA4KjQuvD7VsGUxPlK+Rme1MlFGPRQdJ2DgWsiaCUmIbahMPeL6IS3CE3KvYwJggJSYhH9SwTmdnYu5VwKdA55yinlvxDZVWdeQs7IBmxXFdRUFC3gbua0xyk6m9M3JyrjMxW11jR0VGFDraFRkEl//QFO8Lve2jidF6BIHs8o+FWMANb3TN7EVVIYdTnwGdeE1QMDQyhVajLM/fU4kpQVCnsBhT8CTZo/RXy7teU4qyJJU1xU+oXOFBbb3RADEYc27HOG5P2M rrTEmfgpXCCOIAHADXMpl6KTvY2aXg8cdhlKSjWnIjlvyMTrGeGgBmtEBH2YRqLtHhwKiTVbuqwjo1KXgQn8XqtKyH3lITSCAYkqokfeIF42tyYnjeh/6/Y3w2qG+7AwhcV5kAi1vDTDoPGi/yl3o29weLWrd4nIlHQuYotPqU83EUg+G4p7aEEtsbDxNav4n7DXIzKrTlvdu+YyiMaZiDCmFjAJlwafIM/6UGTWO0gcwmAq9ZESyYR3zPydydI2SyLwbTzw3L9i+BVnM8oSwzPoT9Cxin28HcPLo/iq8/hFt1nB7oSeBX0e0N7HI8GyH83GDEPXfYc6rNvMQLb+l2jpXpYBF8C6c4VIhvrGCIRghmAczArIyrPc4hUOhxNNeTdbABCSIw9LA9iHiIilRo7bDgXoN1Uqz+g53MBryPkw/6nnAZeGncyiTVdt5dLjYeMUOSsuwlayvQTpS/PQRrPnIVODAJXrXDuf5gkXmOAGvPMq86/HViF4SLH2l3hZrPeKyeXPM 3EbVGksDfFnsf0nAN0yGfD11UsgiA0haauQ8XTDcFOQnF5T2FwJD+JLmRhxTMq5PfGijusKjDmKgisI8hfB49ikEb9V6z2dKzaWUDTYf99Pffvkqz68vkAukZXjYeo+fAjo/WLg6A8LMsLW05jQlFlnCP+2kVPaois6C8rX/+s+BBZ1OTTVJlwW/1H5IcTkAe5EsFcwC4McQWyrR2tU7IeJbrI8K/xSvpjowlSo8J7RuvWG1jhnfF8nZ7fIX/xQ480zw+nF1pA2NAnxRJ4Uoq7yhTOVEoePnpP4r38Hn7wFvXc376+KsUDzgJkmcwOz1KjRrBzNjJ9AcPBu1w75Wi6nRGoWhHt5st7aazlEvpxaWJpjzNJpE+vZgcdJLP0LYJ6jv+J73BX3vUPxqeGbj/yCopJ107MEQttpq6c1dydbkSsbwEDTgWWpnnGuEgG0qXwjpQ/btkZUiWl+p9WbS+s58umSo5jlgdQ9CH5PfEYXl2ioVMbuyXb6zuKPsPnDe4uoC8LfhM f0bWKjU5FBc4HNouVYEJ74iGaRDB65mp7VjvCe5HR9MzzeoAQ4Y0gKm2NdBJsotQV2m39Z5RyKCAdcZJ4/BXD5SgW8w4o0iMZZWCmn1fXrwKcoc14RJarwZ8LiyUSo51hVkE5Q5w+ilVwxotjIpoh6HEC7jiqeKEpopVOoV4eG/P429zBUHvIO4GtAesZFzMdeaUyBoVoSzYD5GT9/A3yJrMDm2IjFqo4xy76kJawWlm1u0f8WF22ESybKV2sFvExPqkkEA5ItpYBPn+eT/OU3TnBWPGFjoKSLyaHwely2eIQZoHhNUoiY0/aLu9jqQLZMNrgBV3HtYOaHRgvNyeWUrJN4FH2TaxJxUcH1MzHQNc26Cvgk8pX0TYMK0r29HN8GUv7WqwUoBo4y3Clnx0Ky4dzjg1t12v8mPretPZXyGeKQdvKinEA3b7LOgfYbqsBUJqkg3HY4ltCKcbbzx8ZiEbwN/9v/8pDzuLdJ6v/IHIUjH6RsF16PWRIEvMSk/KWO/NMZyPM eAQvjYOtxB77/b0FB0AukHXFwu8FEbj+eQ6FaKeMiZCIr8u+mKEJXK1vS3GYA3qi3YxpKuhztRKTt2GGj8OXbDJcQVsvgcy4TpkabGMqgQU4OJBkUHo7Yz8XH3P+G/oyQpU/N/gZrwfRojAAi68ocgRnd5NzSEJ1ZBxo7cXyxNPzKUb432weIxhVa8iHxzq2gv+FFljjhx7KrjbmQYoycgs702ClkpQPfzQT7zESJZAYTmQb4UlSjCgcbraSsa5N/ED+j3KmGZ8Xm2GBG8wwPIzUJo/ZYOaYKX9aECxGUIYxk6BQ2UnoibhKIi6IUN2+FrjqEbdmTF/3rvwhRv/V2Vn5mAu9Viyv3LFZy0BOCFNbKpBEoLtO+1bYhkFNzUj1oAO6oMNa2/Zh8dt4zSAiGwgyzOhue0qVM+fCUAQftlos9vKOFz7+5wlU8AEYcfDXsjQCBVeoXiX23SxrA9k5abmRfYcrcCnT6D7F/deCAInry5xvK95CAwKTcX8Zs8m4weDYCWJzM f9/QJ5YFEGEv1BT0wlXxmjNEK2rQni8rLSsh4//odgHnT6X0+3JZVUwsfwQ+eBIzbt201Q3wURopnRLnuDhhbdqd2vB/ibFRwy0QRZHUEjNvL5vKvOzVKQlAhpVu8MOrvePowU4qXyDuCEuAQgBI/gGkbZgfmhoASBH13drif0lQ3tfkBq6nAO869D245vLFk1astIb1Zl9sUhPS6l91qikSF0QTWxgVoYY/4HkRTuR7XpdE4ILOXPQqDweVnUHveSvKmzuHN6O9l1yxrbobrOLaG2OKod0GIAm48uahnYrOEoENN5R4Gl1mOCxFs2xmKEyk6QrLTSShIqx0IebaW50bsaAX1PtrdN9q4J04K7ecjfXCzQEd15+ND5D90sfLx0Ji3bQFWfpTaVyn0fATw/LB4yDwPEMQlak+Znbkzj0UMrOfRctJBVzY2REZZ4mbFmN7Y6w6k3Rx1raPNzwuxM5iJxhaYcAALEp/j6/LlXgi1WBt+ovvpSvfh5NY+FxKC4l9tbKUM HEcL+Ih6SOHIETm67P6o/yOkdG46AGgud2GOyUYXi9BR8u9e30kwovQTgyTs1xPJ6GD7nfpgzh6/1bJOOTHhr7s7f8zBwMpFq0IgLxbH5Da19nQyqUd6SX4m5gdUO3N9DktTZoga6i5hS8FauRt7Pbs3/eXT9CX8712PnbfsOngHgAOmRb1WGb5QGXQLtxsZ8fuzG2ZnkBNXHGksAplov3XRcwAYBmAoUPS/3ggMn4gJRgHnqCHfYlajGTHyKp6tJrE7OC30GRB9ZHtIetX4nYHxgGUxxxYcBra4jNOIUhOBuio9sJtGNBkw1PyKDP+qp1hWMAaUtimVFZ7oYAC/IrnWSNdNngMzSeuaEz6tjVhtyUn+AHR9wFsiyc6UcUaAG+AAYzLABsoAAAAA"/></div> <div class='ascii' style="font-size:4pt;"><pre></pre></div> <div class='overview hidden'> <div class='overM <h1 title="Twitter: @timechainord
Discord: https://discord.gg/7QKWjKCKc6">🕰 Timechain Collection 🕰</h1> <h3>₿itcoin Inscriptions</h3> <p>Series 2 - The Timekeepers</p> <p>Item: 63 of 99</p> <p>Sat: 4998407340962 (₿lock 999 - Jan 19, 2009)</p> <p>Type: Current Era</p> <p>Generated: 2023-03-29T01:03:52.930Z</p> <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Katana</text><text x="10" y="40" class="base">Chain Mail</text><text x="10" y="60" class="base">Hood</text><text x="10" y="80" class="base">Plated Belt</text><text x="10" y="100" class="base">Studded Leather Boots</text><text x="10" y="120" class="base">Studded LeathL}er Gloves</text><text x="10" y="140" class="base">Necklace</text><text x="10" y="160" class="base">Titanium Ring</text></svg>h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Scimitar</text><text x="10" y="40" class="base">Linen Robe</text><text x="10" y="60" class="base">Crown</text><text x="10" y="80" class="base">Silk Sash</text><text x="10" y="100" class="base">Holy Greaves</text><text x="10" y="120" class="base">Heavy Gloves</text><tLiext x="10" y="140" class="base">Necklace</text><text x="10" y="160" class="base">Bronze Ring</text></svg>h! text/plain;charset=utf-8 +{"p":"sns","op":"reg","name":"prompt.sats"}h! FjDOUT:411F652B03E87635FA0A22F10706D21948673F1A4F9BD3177118B64BC776DE0B 6j4ion:4.QmeRHBTbLK9NRajrv4qjs7Jtwz5tg5xk3Qj9Js98NEfCQW 4j2DC-L5:9nbosx5mMCckVX+1d26ezqnmRoFEU/woQF1uQbW8rsE= <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">"Storm Sun" Tome of the Fox +1</text><text x="10" y="40" class="base">"Phoenix Song" Plate Mail of Rage +1</text><text x="10" y="60" class="base">"Spirit Instrument" Ancient Helm of Fury +1</text><text x="10" y="80" class="base">"Torment Shadow" Leather Belt of the TM[ wins +1</text><text x="10" y="100" class="base">"Demon Grasp" Hard Leather Boots of Giants +1</text><text x="10" y="120" class="base">"Foe Grasp" Demon's Hands of Giants +1</text><text x="10" y="140" class="base">"Light's Tear" Amulet of Brilliance +1</text><text x="10" y="160" class="base">"Shimmering Grasp" Bronze Ring of Skill +1</text></svg>h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">"Grim Moon" Book of the Twins +1</text><text x="10" y="40" class="base">"Dire Growl" Plate Mail of Fury +1</text><text x="10" y="60" class="base">"Tempest Shout" Leather Cap of Protection +1</text><text x="10" y="80" class="base">"Maelstrom Sun" War Belt of Fury +1</MT text><text x="10" y="100" class="base">"Carrion Roar" Divine Slippers of Perfection +1</text><text x="10" y="120" class="base">"Spirit Song" Leather Gloves of Rage +1</text><text x="10" y="140" class="base">"Carrion Glow" Amulet of the Twins +1</text><text x="10" y="160" class="base">"Miracle Song" Platinum Ring of Vitriol +1</text></svg>h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">"Pain Glow" Scimitar of Skill +1</text><text x="10" y="40" class="base">"Rapture Growl" Robe of Enlightenment +1</text><text x="10" y="60" class="base">"Spirit Shadow" Silk Hood of Vitriol +1</text><text x="10" y="80" class="base">"Wrath Form" Dragonskin Belt of VitrMf iol +1</text><text x="10" y="100" class="base">"Corpse Glow" Divine Slippers of Vitriol +1</text><text x="10" y="120" class="base">"Bramble Root" Studded Leather Gloves of Detection +1</text><text x="10" y="140" class="base">"Dire Shadow" Necklace of Giants +1</text><text x="10" y="160" class="base">"Viper Bane" Silver Ring of Enlightenment +1</text></svg>h! FjDOUT:C7B8232552CDE387339A22AA264A9CCF8AAA2FBF86DE07B872609ACAEF1BF5E3 text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 "name": "vaeth.sats" <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Grave Wand</text><text x="10" y="40" class="base">Plate Mail of Rage</text><text x="10" y="60" class="base">Helm</text><text x="10" y="80" class="base">Plated Belt</text><text x="10" y="100" class="base">Wool Shoes of Brilliance</text><text x="10" y="120" class="baseL ">Linen Gloves</text><text x="10" y="140" class="base">Amulet</text><text x="10" y="160" class="base">Platinum Ring</text></svg>h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Falchion</text><text x="10" y="40" class="base">Chain Mail</text><text x="10" y="60" class="base">Leather Cap</text><text x="10" y="80" class="base">Ornate Belt of Enlightenment</text><text x="10" y="100" class="base">Chain Boots</text><text x="10" y="120" class="basL e">Wool Gloves</text><text x="10" y="140" class="base">Pendant</text><text x="10" y="160" class="base">Silver Ring</text></svg>h! text/plain;charset=utf-8 3{ "p": "sns", "op": "reg", "name": "pgecorp.sats" }h! text/plain;charset=utf-8 <{ "p": "sns", "op": "reg", "name": "lincolnfinancial.sats" }h! text/plain;charset=utf-8 7{ "p": "sns", "op": "reg", "name": "thehartford.sats" }h! text/plain;charset=utf-8 <{ "p": "sns", "op": "reg", "name": "appliedmaterials.sats" }h! Copyright (c) 1998 Hewlett-Packard Company IEC http://www.iec.ch IEC http://www.iec.ch .IEC 61966-2.1 Default RGB colour space - sRGB .IEC 61966-2.1 Default RGB colour space - sRGB ,Reference Viewing Condition in IEC61966-2.1 ,Reference Viewing Condition in IEC61966-2.1 " id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27 "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/"> <xmp:CreatorTool>Adobe Photoshop CS6 (Windows)</xmp:CreatorTool> <xmp:CreateDate>2023-03-09T11:07:33+01:00</xmp:CreateDate>M <xmp:MetadataDate>2023-03-28T10:50:12+02:00</xmp:MetadataDate> <xmp:ModifyDate>2023-03-28T10:50:12+02:00</xmp:ModifyDate> </rdf:Description> <rdf:Description rdf:about="" xmlns:photoshop="http://ns.adobe.com/photoshop/1.0/"> <photoshop:ColorMode>3</photoshop:ColorMode> <photoshop:ICCProfile>sRGB IEC61966-2.1</photoshop:ICCProfile> <photoshop:DocumentAncestors> <rdf:Bag> <rdf:li>xmp.did:29CD3A2BBFBDED11BBE8F2F0CFBDE3D7</M <rdf:li>xmp.did:D7491DF5FABCED11A1A4F6E3CEBF4031</rdf:li> </rdf:Bag> </photoshop:DocumentAncestors> </rdf:Description> <rdf:Description rdf:about="" xmlns:dc="http://purl.org/dc/elements/1.1/"> <dc:format>image/tiff</dc:format> </rdf:Description> <rdf:Description rdf:about="" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stEvt="http://ns.adobe.com/xap/1.0/sType/ResourceEvent#" xmlns:stRM ef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#"> <xmpMM:InstanceID>xmp.iid:18E9218D45CDED11A11CE18198BF8101</xmpMM:InstanceID> <xmpMM:DocumentID>xmp.did:29CD3A2BBFBDED11BBE8F2F0CFBDE3D7</xmpMM:DocumentID> <xmpMM:OriginalDocumentID>xmp.did:29CD3A2BBFBDED11BBE8F2F0CFBDE3D7</xmpMM:OriginalDocumentID> <xmpMM:History> <rdf:Seq> <rdf:li rdf:parseType="Resource"> <stEvt:action>created</stEvt:action> <stEvt:instanceID>xmpM .iid:29CD3A2BBFBDED11BBE8F2F0CFBDE3D7</stEvt:instanceID> <stEvt:when>2023-03-09T11:07:33+01:00</stEvt:when> <stEvt:softwareAgent>Adobe Photoshop CS6 (Windows)</stEvt:softwareAgent> </rdf:li> <rdf:li rdf:parseType="Resource"> <stEvt:action>saved</stEvt:action> <stEvt:instanceID>xmp.iid:2ACD3A2BBFBDED11BBE8F2F0CFBDE3D7</stEvt:instanceID> <stEvt:when>2023-03-09T11:11:02+01:00</stEvt:when> <stEvt:softwareAgent>Adobe Photoshop CS6 (Windows)</stEvt:softwareAgent> <stEvt:changed>/</stEvt:changed> </rdf:li> <rdf:li rdf:parseType="Resource"> <stEvt:action>saved</stEvt:action> <stEvt:instanceID>xmp.iid:B52B88D543CDED11A11CE18198BF8101</stEvt:instanceID> <stEvt:when>2023-03-28T10:50:12+02:00</stEvt:when> <stEvt:softwareAgent>Adobe Photoshop CS6 (Windows)</stEvt:softwareAgent> <stEvt:changed>/</stEvt:changed> </rdf:li> <rdf:li rdf:parseType="Resource"> <stEvt:action>converted</stEvt:action> <stEvt:parameters>from application/vnd.adobe.photoshop to image/tiff</stEvt:parameters> </rdf:li> <rdf:li rdf:parseType="Resource"> <stEvt:action>derived</stEvt:action> <stEvt:parameters>converted from application/vnd.adobe.photoshop to image/tiff</stEvt:paramM </rdf:li> <rdf:li rdf:parseType="Resource"> <stEvt:action>saved</stEvt:action> <stEvt:instanceID>xmp.iid:18E9218D45CDED11A11CE18198BF8101</stEvt:instanceID> <stEvt:when>2023-03-28T10:50:12+02:00</stEvt:when> <stEvt:softwareAgent>Adobe Photoshop CS6 (Windows)</stEvt:softwareAgent> <stEvt:changed>/</stEvt:changed> </rdf:li> </rdf:Seq> </xmpMM:History> <xmpMM:DerivedFrom rdf:parseType="Resource"> <stRef:instanceID>xmp.iid:B52B88D543CDED11A11CE18198BF8101</stRef:instanceID> <stRef:documentID>xmp.did:29CD3A2BBFBDED11BBE8F2F0CFBDE3D7</stRef:documentID> <stRef:originalDocumentID>xmp.did:29CD3A2BBFBDED11BBE8F2F0CFBDE3D7</stRef:originalDocumentID> </xmpMM:DerivedFrom> </rdf:Description> M M M M M M M M M M M M M M M M M M text/html;charset=utf-8 <html xmlns='http://www.w3.org/1999/xhtml' lang='en' xml:lang='en'> <title>Timechain Collection - Series 2 - Item 64</title> <style>:root{height:100%}body{background-color:#000;margin:0;height:100%}.image{position:absolute;display:flex;align-items:center;justify-content:space-around;width:100%;height:100%;opacity:0}.image img{max-width:100%;max-height:100%}.ascii{position:absolute;font-family:Courier;font-weight:700;overflow:hidden;width:100%;height:100%;opacity:0;display:flex;align-iM tems:center;justify-content:space-around}.overview{width:100%;height:100%;position:absolute;display:flex;align-items:center}.overview-text{font-size:min(max(3vw,6pt),16pt);background-color:#000;color:#fff;margin:auto;padding:1vw 5vw}.hidden{display:none}h1,h3{text-align:center}h1{margin:0}h3{margin-top:0}p{margin:2vh}.fadeIn{animation:fadeIn 2s ease-in 1 normal forwards}.fadeOut{animation:fadeOut 2s ease-out 1 normal forwards}@keyframes fadeOut{0%{opacity:1}50%{opacity:0;font-size:24pt}100%{opacity:0;font-size:36ptM }}@keyframes fadeIn{0%{opacity:0;font-size:36pt}50%{opacity:.5;font-size:24pt}100%{opacity:1}}</style> <script>const img="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";(function a(){const params=new URLSearchParams(window.locatiM on.search),supportsDecompression=typeof DecompressionStream!=='undefined',resize=debounce(()=>handleResize());let dim=Math.min(window.innerWidth,window.innerHeight),loop=supportsDecompression&¶ms.get('loop')!==null,image,ascii,overview,mode,decompressed=false;window.onresize=resize;window.onload=function(){mode=getMode();decompressAscii();image=document.querySelector(".image");ascii=document.querySelector(".ascii");overview=document.querySelector(".overview");(mode==='ascii'?ascii:image).classList.add('fadeIn')M ;handleResize();if(loop){let interval=parseInt(params.get('loop'),10)||5;setInterval(()=>{mode=mode==='ascii'?'image':'ascii';transition()},interval*1000)}document.addEventListener("keypress",(event)=>{const keyName=event.key.toLowerCase();if(keyName==='a'&&mode!=='ascii'&&supportsDecompression){mode='ascii';transition()}else if(keyName==='i'&&mode!=='image'){mode='image';transition()}else if(keyName==='m'){overview.classList.toggle('hidden')}},false)};function decompressAscii(){if(mode==='ascii'&&!decompressed&&suM pportsDecompression){decompress(new Uint8Array(base64ToArrayBuffer(img)),'gzip').then(s=>{decompressed=true;reconstructPreformatted(JSON.parse(s))})}}function debounce(a){let timer;return(...args)=>{clearTimeout(timer);timer=setTimeout(()=>{a.apply(this,args)},250)}}function getMode(){let modeParam=params.get("mode")??'';if(!/^(ascii|image)$/i.test(modeParam)||!supportsDecompression){if(dim>800&&supportsDecompression)modeParam='ascii';else modeParam='image'}return modeParam}function handleResize(){dim=Math.min(windM ow.innerWidth,window.innerHeight);const newMode=getMode(),changed=mode!==newMode;if(changed){mode=newMode;transition()}let fontSize=params.get("fontSize"),brightness=params.get("brightness");if(!fontSize){fontSize='0.62vmin'}ascii.style.setProperty('font-size',fontSize);if(brightness)ascii.style.setProperty('filter',`brightness(${brightness})`)}function transition(){decompressAscii();const to=mode==='ascii'?ascii:image;const from=mode==='ascii'?image:ascii;from.classList.remove("fadeIn");from.classList.add("fadeOutM ");to.classList.remove("fadeOut");to.classList.add("fadeIn")}function reconstructPreformatted(a){let str='';for(let y=0;y<a.colorMatrix.length;y++){let colorRow=a.colorMatrix[y];let charRow=a.charMatrix[y];for(let x=0;x<colorRow.length;x++){let cls='';str+=`<span class="${cls}"style="color:#${a.colorMap[colorRow[x]]}">${decodeChar(a.charMap[charRow[x]])}</span>`}str+='<br>'}document.querySelector('pre').innerHTML=str}function decodeChar(a){return a===' '?' ':a}function base64ToArrayBuffer(a){const binary_strinM g=window.atob(a);const len=binary_string.length;const bytes=new Uint8Array(len);for(let i=0;i<len;i++){bytes[i]=binary_string.charCodeAt(i)}return bytes.buffer}function decompress(b,c){const cs=new DecompressionStream(c);const writer=cs.writable.getWriter();writer.write(b);writer.close();return new Response(cs.readable).arrayBuffer().then(function(a){return new TextDecoder().decode(a)})}})();</script> <div class='image'><img src="data:image/webp;base64,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"/></div> <div class='ascii' style="font-size:4pt;"><pre></pre></div> <div class='overview-text'> <h1 title="Twitter: @timechainord
Discord: https://discord.gg/7QKWjKCKc6">🕰 Timechain Collection 🕰</h1> <h3>₿itcoin Inscriptions</h3> <p>Series 2 - The Timekeepers</p> <p>Item: 64 of 99</p> <p>Sat: 4998407341295 (₿lock 999 - Jan 19, 2009)</p> <p>Type: Current Era</p> <p>Generated: 2023-03-29T01:03:52.930Z</p> text/plain;charset=utf-8 text/plain;charset=utf-8 "name": "y303.sats" <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">"Fate Whisper" Ghost Wand of Power</text><text x="10" y="40" class="base">"Corruption Peak" Demon Husk of Anger +1</text><text x="10" y="60" class="base">Divine Hood of Rage</text><text x="10" y="80" class="base">Ornate Belt of Perfection</text><text x="10" y="100" cL lass="base">Holy Greaves of Reflection</text><text x="10" y="120" class="base">Ornate Gauntlets</text><text x="10" y="140" class="base">"Blight Bite" Pendant of Power +1</text><text x="10" y="160" class="base">Platinum Ring</text></svg>h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">"Victory Peak" Grimoire of Reflection +1</text><text x="10" y="40" class="base">Demon Husk</text><text x="10" y="60" class="base">Divine Hood</text><text x="10" y="80" class="base">Ornate Belt</text><text x="10" y="100" class="base">Divine Slippers of Vitriol</text><L text x="10" y="120" class="base">Ornate Gauntlets</text><text x="10" y="140" class="base">"Pandemonium Grasp" Pendant of Brilliance +1</text><text x="10" y="160" class="base">Titanium Ring</text></svg>h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Quarterstaff of Vitriol</text><text x="10" y="40" class="base">Demon Husk</text><text x="10" y="60" class="base">Demon Crown</text><text x="10" y="80" class="base">Demonhide Belt of Power</text><text x="10" y="100" class="base">Divine Slippers</text><text x="10" y="1L 20" class="base">Divine Gloves</text><text x="10" y="140" class="base">Necklace</text><text x="10" y="160" class="base">Titanium Ring</text></svg>h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Grimoire</text><text x="10" y="40" class="base">Dragonskin Armor of Power</text><text x="10" y="60" class="base">"Storm Tear" Crown of Giants</text><text x="10" y="80" class="base">Demonhide Belt</text><text x="10" y="100" class="base">"Plague Sun" Divine Slippers ofL the Fox</text><text x="10" y="120" class="base">Divine Gloves</text><text x="10" y="140" class="base">Pendant</text><text x="10" y="160" class="base">Titanium Ring of Vitriol</text></svg>h! FjDOUT:A5D32B6D51229892355F8F3CEBDE3C01009B37658077619F799B739E64701217 FjDOUT:EB5839180CC2DA32602E32BD5236FBC9254BF786DB2982A5D34026B24BFF3CD0 <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">"Woe Grasp" Katana of Detection +1</text><text x="10" y="40" class="base">Leather Armor of Titans</text><text x="10" y="60" class="base">Divine Hood of Skill</text><text x="10" y="80" class="base">Linen Sash</text><text x="10" y="100" class="base">Demonhide Boots</teL xt><text x="10" y="120" class="base">Demon's Hands of the Fox</text><text x="10" y="140" class="base">"Cataclysm Bite" Pendant of Power +1</text><text x="10" y="160" class="base">"Blight Bender" Gold Ring of Perfection +1</text></svg>h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">"Armageddon Bender" Long Sword of Enlightenment +1</text><text x="10" y="40" class="base">Ornate Chestplate</text><text x="10" y="60" class="base">Ancient Helm of Enlightenment</text><text x="10" y="80" class="base">Leather Belt of Giants</text><text x="10" y="100" cM lass="base">Shoes</text><text x="10" y="120" class="base">"Hypnotic Tear" Ornate Gauntlets of Rage</text><text x="10" y="140" class="base">"Plague Roar" Amulet of Power</text><text x="10" y="160" class="base">"Corruption Bite" Titanium Ring of Reflection +1</text></svg>h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Mace of Skill</text><text x="10" y="40" class="base">"Maelstrom Whisper" Studded Leather Armor of Enlightenment</text><text x="10" y="60" class="base">Divine Hood of Anger</text><text x="10" y="80" class="base">Plated Belt of Giants</text><text x="10" y="100" class="M base">"Eagle Bite" Hard Leather Boots of Enlightenment +1</text><text x="10" y="120" class="base">"Eagle Grasp" Hard Leather Gloves of Rage +1</text><text x="10" y="140" class="base">Necklace</text><text x="10" y="160" class="base">"Gloom Peak" Gold Ring of Enlightenment +1</text></svg>h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Tome of Perfection</text><text x="10" y="40" class="base">"Victory Bender" Ornate Chestplate of Titans +1</text><text x="10" y="60" class="base">"Brimstone Bender" Leather Cap of Power +1</text><text x="10" y="80" class="base">"Soul Whisper" Heavy Belt of EnlightenmeM nt</text><text x="10" y="100" class="base">"Carrion Root" Heavy Boots of Protection</text><text x="10" y="120" class="base">"Woe Shout" Gauntlets of Brilliance +1</text><text x="10" y="140" class="base">Pendant</text><text x="10" y="160" class="base">Titanium Ring of Vitriol</text></svg>h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Book</text><text x="10" y="40" class="base">"Havoc Glow" Holy Chestplate of the Twins</text><text x="10" y="60" class="base">Linen Hood</text><text x="10" y="80" class="base">"Apocalypse Whisper" Heavy Belt of Titans</text><text x="10" y="100" class="base">Hard LeathL er Boots of Protection</text><text x="10" y="120" class="base">"Rage Bite" Gauntlets of Titans +1</text><text x="10" y="140" class="base">"Corruption Shout" Pendant of Rage +1</text><text x="10" y="160" class="base">Silver Ring of Anger</text></svg>h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Katana</text><text x="10" y="40" class="base">Chain Mail of Fury</text><text x="10" y="60" class="base">Helm</text><text x="10" y="80" class="base">"Dusk Root" Heavy Belt of Protection</text><text x="10" y="100" class="base">"Grim Grasp" Greaves of Brilliance +1</texL t><text x="10" y="120" class="base">"Ghoul Roar" Studded Leather Gloves of Fury</text><text x="10" y="140" class="base">"Armageddon Grasp" Pendant of Brilliance +1</text><text x="10" y="160" class="base">"Mind Moon" Titanium Ring of Rage +1</text></svg>h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Club</text><text x="10" y="40" class="base">Leather Armor of Rage</text><text x="10" y="60" class="base">Divine Hood</text><text x="10" y="80" class="base">Dragonskin Belt of Vitriol</text><text x="10" y="100" class="base">Divine Slippers</text><text x="10" y="120" cL lass="base">Divine Gloves</text><text x="10" y="140" class="base">Necklace of the Fox</text><text x="10" y="160" class="base">"Maelstrom Root" Bronze Ring of Skill</text></svg>h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Chronicle of the Twins</text><text x="10" y="40" class="base">"Woe Peak" Linen Robe of Fury +1</text><text x="10" y="60" class="base">"Woe Peak" Hood of Power +1</text><text x="10" y="80" class="base">Linen Sash</text><text x="10" y="100" class="base">"Light's Root" L Linen Shoes of the Twins</text><text x="10" y="120" class="base">Dragonskin Gloves</text><text x="10" y="140" class="base">Pendant of Power</text><text x="10" y="160" class="base">"Hypnotic Sun" Platinum Ring of Titans</text></svg>h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Ghost Wand</text><text x="10" y="40" class="base">Divine Robe</text><text x="10" y="60" class="base">Demon Crown</text><text x="10" y="80" class="base">Ornate Belt</text><text x="10" y="100" class="base">Demonhide Boots</text><text x="10" y="120" class="base">"Ghoul L Root" Divine Gloves of Skill</text><text x="10" y="140" class="base">Amulet</text><text x="10" y="160" class="base">"Honour Peak" Platinum Ring of Fury +1</text></svg>h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Tome</text><text x="10" y="40" class="base">Hard Leather Armor of Anger</text><text x="10" y="60" class="base">"Woe Grasp" Hood of the Twins +1</text><text x="10" y="80" class="base">"Rage Shout" Sash of Protection +1</text><text x="10" y="100" class="base">DemonhideL Boots of the Fox</text><text x="10" y="120" class="base">"Sorrow Bite" Silk Gloves of the Fox +1</text><text x="10" y="140" class="base">Amulet of Titans</text><text x="10" y="160" class="base">Titanium Ring of the Twins</text></svg>h! text/html;charset=utf-8 <meta charset="UTF-8"> <title>Erasure</title> <script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.5.0/p5.min.js"></script> <script id="snippet-random-code" type="text/javascript"> // DO NOT EDIT THIS SECTION let seed = window.location.href.split('/').find(t => t.includes('i0')); const alphabet = "0123456789abcdefghijklmnopqrstuvwsyz"; seed = new URLSearchParams(window.location.search).get("seed") || Array(64).fill(0).map(M _ => alphabet[(Math.random() * alphabet.length) | 0]).join('') + "i0"; let pattern = "seed="; for (let i = 0; i < seed.length - pattern.length; ++i) { if (seed.substring(i, i + pattern.length) == pattern) { seed = seed.substring(i + pattern.length); function cyrb128($) { let _ = 1779033703, u = 3144134277, i = 1013904242, l = 2773480762; for (let n = 0, r; n < $.length; n++) _ = u ^ Math.imul(_ ^ (r = $.charCodeAt(n)), 597399067), u = i ^ Math.imul(u ^ r, 2869860M 233), i = l ^ Math.imul(i ^ r, 951274213), l = _ ^ Math.imul(l ^ r, 2716044179); return _ = Math.imul(i ^ _ >>> 18, 597399067), u = Math.imul(l ^ u >>> 22, 2869860233), i = Math.imul(_ ^ i >>> 17, 951274213), l = Math.imul(u ^ l >>> 19, 2716044179), [(_ ^ u ^ i ^ l) >>> 0, (u ^ _) >>> 0, (i ^ _) >>> 0, (l ^ _) >>> 0] function sfc32($, _, u, i) { return function () { u >>>= 0, i >>>= 0; var l = ($ >>>= 0) + (_ >>>= 0) | 0; return $ = _ ^ _ >>> 9, _ = u + (u << 3) | 0, u = (u = u << 21 | u >>> 11) M + (l = l + (i = i + 1 | 0) | 0) | 0, (l >>> 0) / 4294967296 let mathRand = sfc32(...cyrb128(seed)); width: 100% !important; height: 100% !important; object-fit: contain; <script type="text/javascript"> const rand = mathRand(); let seasonpicker= Xrandom(0/96,96/96); let yao=[0,0,0,0,0,0]; let yaoone=Xrandom(0,1); let yaotwo=Xrandom(0,1); let yaothree=Xrandom(0,1); et yao4=Xrandom(0,1); let yaofive=Xrandom(0,1); let yaosix=Xrandom(0,1); let particlepicker=Xrandom(0,1) window.$generativeTraits = { "Season": getSeason(seasonpicker), "Upper Gua": getGuaStyle(yao4,yaofive,yaosix), "Lower Gua": getGuaStyle(yaoone,yaotwo,yaothree), "Qi": getParticlesize(particlepicker) console.log(window.$generativeTraits) function Xrandom(x,y){ return (y-x)*mathRand()+x; if (yaothree<0.5){ if (particlepicker<1/8){ else if (particlepicker<7/8) { function getParticlesize(particlepicker){ if (particlepicker<1/8){ }else if (particlepicker<7/8){ function getSeason(value){ if (seasonpicker<4/96) return ' Beginning of Spring' //00 else if (seasonpicker<8/96) return ' Rain Water' //00001 else if (seasonpicker<12/96)return ' Awakening of Insects' // 000 else if (seasonpicker<16/96) return ' Spring Equinox' //000 else if (seasonpicker<20/96) return ' Pure Brightness' //000 else if (seasonpicker<24/96) M else if (seasonpicker<28/96) return ' Beginning of Summer'//ok else if (seasonpicker<32/96) return ' else if (seasonpicker<36/96) return ' else if (seasonpicker<40/96) return ' Summer Solstice' //0o else if (seasonpicker<44/96) return ' else if (seasonpicker<48/96) return ' else if (seasonpicker<52/96)return ' Beginning of Autumn' //00 se if (seasonpicker<56/96) return ' else if (seasonpicker<57/96) return ' else if (seasonpicker<62/96) return ' Autumn Equinox' //00 else if (seasonpicker<68/96) return ' else if (seasonpicker<72/96) return ' Frosts Descent' //000 else if (seasonpicker<76/96) return ' Beginning of Winter' //00 else if (seasonpicker<77/96) return ' else if (seasonpicker<83/96) return ' else if (seasonpicker<88/96) return ' Winter Solstice' //00 else if (seasonpicker<92/96) return ' function getGuaStyle(yao4,yaofive,yaosix){ let yaoL=[0 ,0 ,0]; if (yaofive<0.5){ if (yaosix<0.5){ if (yaoL[0]==0 && yaoL[1]==0 && yaoL[2M }else if (yaoL[0]==1 && yaoL[1]==0 && yaoL[2]==1){ } else if (yaoL[0]==0 && yaoL[1]==1 && yaoL[2]==1){ } else if (yaoL[0]==1 && yaoL[1]==0 && yaoL[2]==0){ } else if (yaoL[0]==0 && yaoL[1]==0 && yaoL[2]==1){ } else if (yaoL[0]==0 && yaoL[1]==1 && yaoL[2]==0){ } else if (yaoL[0]==1 && yaoLM [1]==1 && yaoL[2]==1){ } else if (yaoL[0]==1 && yaoL[1]==1 && yaoL[2]==0){ return "error" function getColor(season){ let seasonsmain=parseInt((480-season*360)%360); let seasonssea1=parseInt((480-season*360+random(15,30))%360); let seasonssea2=parseInt((480-season*360-random(15,30))%360); let seasonssand1=parseInt((480-season*360-random(30,60))%360); let seasonssand2=parseInt((480-season*360+random(30,60))%3M let seasonsbody1=parseInt((random([480,480,480,480,480,480,480,480,480,480,480,480]-season*360+random(60,90)))%360); let seasonsbody2=parseInt((random([120,360,240,480,480,480,480,480,480,480,480,480,480,480,480])-season*360+random(60,90))%360); main: color('hsb('+seasonsmain+', 100%, 100%)') , sea1: color('hsb('+seasonssea1+', 80%, 50%)'), sea2: color('hsb('+seasonssea2+', 80%, 50%)') , sand1: color('hsb('+seasonssand1+', 10%, 1%)'), sand2: color('hsb('+seasonssand2+', 1M body1: color('hsb('+seasonsbody1+', 60%, 10%)'), body2: color('hsb('+seasonsbody2+', 60%, 90%)') function setup() { randomSeed(int(mathRand()*100000000)) const canvas = createCanvas(3001, 3001); colorMode(HSB,360) getColor(seasonpicker) background(colors.main); for (k=0;k<2*particlesize;k++){ drawguagua(yao,particlesize*random([1,2])) function drawguagua(yao,particlesize){ let x = 100+ranM let y = 100+random(-500,3800) let shapesize=random([300,300,300,300,280,250,300,350]); let stepsize=random(0.001,0.3); [1500+raddd*cos(1*2*PI/10),1500+raddd*sin(1*2*PI/10)], [1500+raddd*cos(2*2*PI/10),1500+raddd*sin(2*2*PI/10)], [1500+raddd*cos(3*2*PI/10),1500+raddd*sin(3*2*PI/10)], [1500+raddd*cos(4*2*PI/10),1500+raddd*sin(4*2*PI/10)], [1500+raddd*cos(5*2*PI/10),1500+raddd*sin(5*2*PI/10)], [1500+raddd*cos(6*2*PI/10)M ,1500+raddd*sin(6*2*PI/10)], [1500+raddd*cos(7*2*PI/10),1500+raddd*sin(7*2*PI/10)], [1500+raddd*cos(8*2*PI/10),1500+raddd*sin(8*2*PI/10)], [1500+raddd*cos(9*2*PI/10),1500+raddd*sin(9*2*PI/10)], [1500+raddd*cos(10*2*PI/10),1500+raddd*sin(10*2*PI/10)], tianyishengshui=[ diliuchengshui=[ [1500-2.5*widsix,3000],M [1500-1.5*widsix,3000], [1500-0.5*widsix,3000], [1500+0.5*widsix,3000], [1500+1.5*widsix,3000], [1500+2.5*widsix,3000], tiansanshengmu=[ tianqichenghuo=[ [1500-250,501], [1500+250,501] tianjiuchengjin=[ [3000,1500-4*widnine], [3000,1500-3*widnine], [3000,1500-2*widnine], [3000,1500-1*widnine], [3000,1500+1*widnine], [3000,1500+2*widnine], [3000,1500+3*widnine], [3000,1500+4*widnine], tianyishengshui, tiansanshengmu, tianwushengtu, diliuchengshui, tianqichenghuo, tianjiuchengjin, yaofour=fourgua(yao) tiandi=gettiandi(yaofour[0]); //tiandi=ceil(random(0,1)*10)-1; shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], tiandi=gettiandi(M shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], tiandi=gettiandi(yaofour[2]); shengchengX=ceil(random(0,tiandi+0.00001))-1; tiandiY=ceil(random(0,1)*10)-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], tiandi=gettiandi(yaofour[3])M shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], for (let k=0;k<bb;k++){ shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; x1 = fullgua[tiandi][shengchengX][0] y1= fullgua[tiandi][shengchengY][1] pos=carve(x1,y1,vertpos1,vertpos2,vertpos3,vertposM posgras=[random(100,1900),random(100,1900)] tiandi=gettiandi(yaofour[0]); //tiandi=ceil(random(0,1)*10)-1; shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], tiandi=gettiandi(yaofour[1]); shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; llgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], tiandi=gettiandi(yaofour[2]); shengchengX=ceil(random(0,tiandi+0.00001))-1; tiandiY=ceil(random(0,1)*10)-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], tiandi=gettiandi(yaofour[3]); shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandM fullgua[tiandi][shengchengY][1], x1 = fullgua[tiandi][shengchengX][0] y1= fullgua[tiandi][shengchengY][1] for (let k=0;k<6;k++){ pos=carve(x1,y1,vertpos1,vertpos2,vertpos3,vertpos4,particlesize) function exportImage() { save(`ICHING_${seed}.png`) function keyReleased() { "3" == key && exportImage() function gettiandi(yaofour){ if (yaofour=="kun") return 0; else if (yaofour=="xun") return 1M else if (yaofour=="li") return 2; else if (yaofour=="dui") return 3; else if (yaofour=="gen") return 5; else if (yaofour=="kan") return 6; else if (yaofour=="zhen") return 7; function fourgua(yao){ for (k=0;k<4;k++){ yaofour[k]=yao2gua([yao[k],yao[k+1],yao[k+2]]) function yao2gua(yaoyao){ yaothree3 = createVector(yaoyao[0],yaoyao[1],yaoyao[2]); if (yaothree3.equals([1,1,1])){ return "qian"; }else if(yaothree3.equals([1,1,0])){ }else if (yaothree3.equals([0,0,0])){ }else if (yaothree3.equals([1,0,1])){ }else if (yaothree3.equals([0,1,1])){ }else if (yaothree3.equals([1,0,0])){ }else if (yaothree3.equals([0,0,1])){ }else return "kan" function carve(x,y,vertpos1,vertpos2,vertpos3,vertpos4,particlesize){ let height = 3100 (k=0;k<particlesize*400;k++){ strokeWeight(particlesize*random(2,4)) stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos1[0],vertpos1[1]) stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos2[0],vertpos2[1]) stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos3[0],vertpos3[1]) stroke(random([coloM rs.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos4[0],vertpos4[1]) left_x = int(width * -0.5) right_x = int(width * 1.5) top_y = int(height * -0.5) bottom_y = int(height * 1.5) resolution = int(width * 0.01) num_columns = 3*int((right_x - left_x) / resolution) num_rows = 3*int((bottom_y - top_y) / resolution) let Array2D = (r,c) => [...Array(r)].map(x=>Array(c).fill(0)); let m = Array2D(num_columns,num_rows); ("m length "+m.length) gain=int(random(-3.1,3.1)); bend=random(0.02,1.3); offset=random(0,num_rows) quantum=random(100); for (let column=0; column<num_columns; column++) { for (row=0; row<num_rows; row++) { angle = (quantum*(row-offset-gain*bend*column) / (num_rows*bend))/quantum * PI*gain m[column][row] = angle x = 100+random(500,1900) y = 100+random(500,1900) let num_steps=100 shapesize=particlesize*random(200,500); stepsize=particlM esize*random(0.1,0.5); curvelegnth=50+random(2250,2800); stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) for (k=0;k<curvelegnth;k+=1+random(0,3)) { x_offset = x - left_x y_offset = y - top_y if (x_offset<4500 && y_offset< 4500 && x_offset>0 && y_offset>0 ) { column_index = int(x_offset / resolution) row_index = int(y_offset / resolution) grid_angle = m[column_index][row_index] x_step = stepsize*resolution M y_step = stepsize*resolution * sin(grid_angle) for (let kkk=0;kkk<16/particlesize;kkk++){ let cc =random(0,1); if (cc<50/100){ blendMode(ADD) // else if (cc<55/100) { blendMode(DODGE) // else if (cc<80/100) { blendMode(OVERLAY)// else if (cc<81/100) { blendMode(DIFFERENCE) // else if (cc<82/100) { blendMode(EXCLUSION) // blendMode(SCREEN) // noStroke() fill(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) ellipse(x+random(-1500,1500),y+random(-1500,1500),random([0.01,0.005,0.01])*random([1,1,1,1,1,100,50])*shapesize,random([0.01,0.005,0.01])*random([1,1,1,1,1,100,50])*shapesize) rect(x+random(-1500,1500),y+random(-1500,1500),random([0.0001,0.001,0.01,0.05,0.1])*M random([1,1,1,1,10,10,10,10,10,10,10,30])*shapesize,random([0.0001,,0.001,0.01,0.05,0.1])*random([1,1,1,1,10,10,10,10,10,10,10,30])*shapesize) for (k=0;k<1;k++){ strokeWeight(particlesize*random(0.2,0.5)) stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos1[0],vertpos1[1]) stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos2[0],verM stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos3[0],vertpos3[1]) stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos4[0],vertpos4[1]) x = x + x_step+int(random(0,1)) y = y + y_step+int(random(0,1)) // License : Copyright (C) 2023 Jimi Y. C. Wen . All rights M // Licensed under CC BY-NC-SA 4.0 // https://github.com/jimiwen <script defer src="https://static.cloudflareinsights.com/beacon.min.js/vb26e4fa9e5134444860be286fd8771851679335129114" integrity="sha512-M3hN/6cva/SjwrOtyXeUa5IuCT0sedyfT+jK/OV+s+D0RnzrTfwjwJHhd+wYfMm9HJSrZ1IKksOdddLuN6KOzw==" data-cf-beacon='{"rayId":"7afe6ed24cffa1f6","version":"2023.3.0","b":1,"token":"6c07c178c94442f695e7a0a2aaee641a","si":100}' crossorigin="anonymous"></script> text/html;charset=utf-8 <meta charset="UTF-8"> <title>Erasure</title> <script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.5.0/p5.min.js"></script> <script id="snippet-random-code" type="text/javascript"> // DO NOT EDIT THIS SECTION let seed = window.location.href.split('/').find(t => t.includes('i0')); const alphabet = "0123456789abcdefghijklmnopqrstuvwsyz"; seed = new URLSearchParams(window.location.search).get("seed") || Array(64).fill(0).map(M _ => alphabet[(Math.random() * alphabet.length) | 0]).join('') + "i0"; let pattern = "seed="; for (let i = 0; i < seed.length - pattern.length; ++i) { if (seed.substring(i, i + pattern.length) == pattern) { seed = seed.substring(i + pattern.length); function cyrb128($) { let _ = 1779033703, u = 3144134277, i = 1013904242, l = 2773480762; for (let n = 0, r; n < $.length; n++) _ = u ^ Math.imul(_ ^ (r = $.charCodeAt(n)), 597399067), u = i ^ Math.imul(u ^ r, 2869860M 233), i = l ^ Math.imul(i ^ r, 951274213), l = _ ^ Math.imul(l ^ r, 2716044179); return _ = Math.imul(i ^ _ >>> 18, 597399067), u = Math.imul(l ^ u >>> 22, 2869860233), i = Math.imul(_ ^ i >>> 17, 951274213), l = Math.imul(u ^ l >>> 19, 2716044179), [(_ ^ u ^ i ^ l) >>> 0, (u ^ _) >>> 0, (i ^ _) >>> 0, (l ^ _) >>> 0] function sfc32($, _, u, i) { return function () { u >>>= 0, i >>>= 0; var l = ($ >>>= 0) + (_ >>>= 0) | 0; return $ = _ ^ _ >>> 9, _ = u + (u << 3) | 0, u = (u = u << 21 | u >>> 11) M + (l = l + (i = i + 1 | 0) | 0) | 0, (l >>> 0) / 4294967296 let mathRand = sfc32(...cyrb128(seed)); width: 100% !important; height: 100% !important; object-fit: contain; <script type="text/javascript"> const rand = mathRand(); let seasonpicker= Xrandom(0/96,96/96); let yao=[0,0,0,0,0,0]; let yaoone=Xrandom(0,1); let yaotwo=Xrandom(0,1); let yaothree=Xrandom(0,1); et yao4=Xrandom(0,1); let yaofive=Xrandom(0,1); let yaosix=Xrandom(0,1); let particlepicker=Xrandom(0,1) window.$generativeTraits = { "Season": getSeason(seasonpicker), "Upper Gua": getGuaStyle(yao4,yaofive,yaosix), "Lower Gua": getGuaStyle(yaoone,yaotwo,yaothree), "Qi": getParticlesize(particlepicker) console.log(window.$generativeTraits) function Xrandom(x,y){ return (y-x)*mathRand()+x; if (yaothree<0.5){ if (particlepicker<1/8){ else if (particlepicker<7/8) { function getParticlesize(particlepicker){ if (particlepicker<1/8){ }else if (particlepicker<7/8){ function getSeason(value){ if (seasonpicker<4/96) return ' Beginning of Spring' //00 else if (seasonpicker<8/96) return ' Rain Water' //00001 else if (seasonpicker<12/96)return ' Awakening of Insects' // 000 else if (seasonpicker<16/96) return ' Spring Equinox' //000 else if (seasonpicker<20/96) return ' Pure Brightness' //000 else if (seasonpicker<24/96) M else if (seasonpicker<28/96) return ' Beginning of Summer'//ok else if (seasonpicker<32/96) return ' else if (seasonpicker<36/96) return ' else if (seasonpicker<40/96) return ' Summer Solstice' //0o else if (seasonpicker<44/96) return ' else if (seasonpicker<48/96) return ' else if (seasonpicker<52/96)return ' Beginning of Autumn' //00 se if (seasonpicker<56/96) return ' else if (seasonpicker<57/96) return ' else if (seasonpicker<62/96) return ' Autumn Equinox' //00 else if (seasonpicker<68/96) return ' else if (seasonpicker<72/96) return ' Frosts Descent' //000 else if (seasonpicker<76/96) return ' Beginning of Winter' //00 else if (seasonpicker<77/96) return ' else if (seasonpicker<83/96) return ' else if (seasonpicker<88/96) return ' Winter Solstice' //00 else if (seasonpicker<92/96) return ' function getGuaStyle(yao4,yaofive,yaosix){ let yaoL=[0 ,0 ,0]; if (yaofive<0.5){ if (yaosix<0.5){ if (yaoL[0]==0 && yaoL[1]==0 && yaoL[2M }else if (yaoL[0]==1 && yaoL[1]==0 && yaoL[2]==1){ } else if (yaoL[0]==0 && yaoL[1]==1 && yaoL[2]==1){ } else if (yaoL[0]==1 && yaoL[1]==0 && yaoL[2]==0){ } else if (yaoL[0]==0 && yaoL[1]==0 && yaoL[2]==1){ } else if (yaoL[0]==0 && yaoL[1]==1 && yaoL[2]==0){ } else if (yaoL[0]==1 && yaoLM [1]==1 && yaoL[2]==1){ } else if (yaoL[0]==1 && yaoL[1]==1 && yaoL[2]==0){ return "error" function getColor(season){ let seasonsmain=parseInt((480-season*360)%360); let seasonssea1=parseInt((480-season*360+random(15,30))%360); let seasonssea2=parseInt((480-season*360-random(15,30))%360); let seasonssand1=parseInt((480-season*360-random(30,60))%360); let seasonssand2=parseInt((480-season*360+random(30,60))%3M let seasonsbody1=parseInt((random([480,480,480,480,480,480,480,480,480,480,480,480]-season*360+random(60,90)))%360); let seasonsbody2=parseInt((random([120,360,240,480,480,480,480,480,480,480,480,480,480,480,480])-season*360+random(60,90))%360); main: color('hsb('+seasonsmain+', 100%, 100%)') , sea1: color('hsb('+seasonssea1+', 80%, 50%)'), sea2: color('hsb('+seasonssea2+', 80%, 50%)') , sand1: color('hsb('+seasonssand1+', 10%, 1%)'), sand2: color('hsb('+seasonssand2+', 1M body1: color('hsb('+seasonsbody1+', 60%, 10%)'), body2: color('hsb('+seasonsbody2+', 60%, 90%)') function setup() { randomSeed(int(mathRand()*100000000)) const canvas = createCanvas(3001, 3001); colorMode(HSB,360) getColor(seasonpicker) background(colors.main); for (k=0;k<2*particlesize;k++){ drawguagua(yao,particlesize*random([1,2])) function drawguagua(yao,particlesize){ let x = 100+ranM let y = 100+random(-500,3800) let shapesize=random([300,300,300,300,280,250,300,350]); let stepsize=random(0.001,0.3); [1500+raddd*cos(1*2*PI/10),1500+raddd*sin(1*2*PI/10)], [1500+raddd*cos(2*2*PI/10),1500+raddd*sin(2*2*PI/10)], [1500+raddd*cos(3*2*PI/10),1500+raddd*sin(3*2*PI/10)], [1500+raddd*cos(4*2*PI/10),1500+raddd*sin(4*2*PI/10)], [1500+raddd*cos(5*2*PI/10),1500+raddd*sin(5*2*PI/10)], [1500+raddd*cos(6*2*PI/10)M ,1500+raddd*sin(6*2*PI/10)], [1500+raddd*cos(7*2*PI/10),1500+raddd*sin(7*2*PI/10)], [1500+raddd*cos(8*2*PI/10),1500+raddd*sin(8*2*PI/10)], [1500+raddd*cos(9*2*PI/10),1500+raddd*sin(9*2*PI/10)], [1500+raddd*cos(10*2*PI/10),1500+raddd*sin(10*2*PI/10)], tianyishengshui=[ diliuchengshui=[ [1500-2.5*widsix,3000],M [1500-1.5*widsix,3000], [1500-0.5*widsix,3000], [1500+0.5*widsix,3000], [1500+1.5*widsix,3000], [1500+2.5*widsix,3000], tiansanshengmu=[ tianqichenghuo=[ [1500-250,501], [1500+250,501] tianjiuchengjin=[ [3000,1500-4*widnine], [3000,1500-3*widnine], [3000,1500-2*widnine], [3000,1500-1*widnine], [3000,1500+1*widnine], [3000,1500+2*widnine], [3000,1500+3*widnine], [3000,1500+4*widnine], tianyishengshui, tiansanshengmu, tianwushengtu, diliuchengshui, tianqichenghuo, tianjiuchengjin, yaofour=fourgua(yao) tiandi=gettiandi(yaofour[0]); //tiandi=ceil(random(0,1)*10)-1; shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], tiandi=gettiandi(M shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], tiandi=gettiandi(yaofour[2]); shengchengX=ceil(random(0,tiandi+0.00001))-1; tiandiY=ceil(random(0,1)*10)-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], tiandi=gettiandi(yaofour[3])M shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], for (let k=0;k<bb;k++){ shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; x1 = fullgua[tiandi][shengchengX][0] y1= fullgua[tiandi][shengchengY][1] pos=carve(x1,y1,vertpos1,vertpos2,vertpos3,vertposM posgras=[random(100,1900),random(100,1900)] tiandi=gettiandi(yaofour[0]); //tiandi=ceil(random(0,1)*10)-1; shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], tiandi=gettiandi(yaofour[1]); shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; llgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], tiandi=gettiandi(yaofour[2]); shengchengX=ceil(random(0,tiandi+0.00001))-1; tiandiY=ceil(random(0,1)*10)-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], tiandi=gettiandi(yaofour[3]); shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandM fullgua[tiandi][shengchengY][1], x1 = fullgua[tiandi][shengchengX][0] y1= fullgua[tiandi][shengchengY][1] for (let k=0;k<6;k++){ pos=carve(x1,y1,vertpos1,vertpos2,vertpos3,vertpos4,particlesize) function exportImage() { save(`ICHING_${seed}.png`) function keyReleased() { "3" == key && exportImage() function gettiandi(yaofour){ if (yaofour=="kun") return 0; else if (yaofour=="xun") return 1M else if (yaofour=="li") return 2; else if (yaofour=="dui") return 3; else if (yaofour=="gen") return 5; else if (yaofour=="kan") return 6; else if (yaofour=="zhen") return 7; function fourgua(yao){ for (k=0;k<4;k++){ yaofour[k]=yao2gua([yao[k],yao[k+1],yao[k+2]]) function yao2gua(yaoyao){ yaothree3 = createVector(yaoyao[0],yaoyao[1],yaoyao[2]); if (yaothree3.equals([1,1,1])){ return "qian"; }else if(yaothree3.equals([1,1,0])){ }else if (yaothree3.equals([0,0,0])){ }else if (yaothree3.equals([1,0,1])){ }else if (yaothree3.equals([0,1,1])){ }else if (yaothree3.equals([1,0,0])){ }else if (yaothree3.equals([0,0,1])){ }else return "kan" function carve(x,y,vertpos1,vertpos2,vertpos3,vertpos4,particlesize){ let height = 3100 (k=0;k<particlesize*400;k++){ strokeWeight(particlesize*random(2,4)) stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos1[0],vertpos1[1]) stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos2[0],vertpos2[1]) stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos3[0],vertpos3[1]) stroke(random([coloM rs.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos4[0],vertpos4[1]) left_x = int(width * -0.5) right_x = int(width * 1.5) top_y = int(height * -0.5) bottom_y = int(height * 1.5) resolution = int(width * 0.01) num_columns = 3*int((right_x - left_x) / resolution) num_rows = 3*int((bottom_y - top_y) / resolution) let Array2D = (r,c) => [...Array(r)].map(x=>Array(c).fill(0)); let m = Array2D(num_columns,num_rows); ("m length "+m.length) gain=int(random(-3.1,3.1)); bend=random(0.02,1.3); offset=random(0,num_rows) quantum=random(100); for (let column=0; column<num_columns; column++) { for (row=0; row<num_rows; row++) { angle = (quantum*(row-offset-gain*bend*column) / (num_rows*bend))/quantum * PI*gain m[column][row] = angle x = 100+random(500,1900) y = 100+random(500,1900) let num_steps=100 shapesize=particlesize*random(200,500); stepsize=particlM esize*random(0.1,0.5); curvelegnth=50+random(2250,2800); stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) for (k=0;k<curvelegnth;k+=1+random(0,3)) { x_offset = x - left_x y_offset = y - top_y if (x_offset<4500 && y_offset< 4500 && x_offset>0 && y_offset>0 ) { column_index = int(x_offset / resolution) row_index = int(y_offset / resolution) grid_angle = m[column_index][row_index] x_step = stepsize*resolution M y_step = stepsize*resolution * sin(grid_angle) for (let kkk=0;kkk<16/particlesize;kkk++){ let cc =random(0,1); if (cc<50/100){ blendMode(ADD) // else if (cc<55/100) { blendMode(DODGE) // else if (cc<80/100) { blendMode(OVERLAY)// else if (cc<81/100) { blendMode(DIFFERENCE) // else if (cc<82/100) { blendMode(EXCLUSION) // blendMode(SCREEN) // noStroke() fill(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) ellipse(x+random(-1500,1500),y+random(-1500,1500),random([0.01,0.005,0.01])*random([1,1,1,1,1,100,50])*shapesize,random([0.01,0.005,0.01])*random([1,1,1,1,1,100,50])*shapesize) rect(x+random(-1500,1500),y+random(-1500,1500),random([0.0001,0.001,0.01,0.05,0.1])*M random([1,1,1,1,10,10,10,10,10,10,10,30])*shapesize,random([0.0001,,0.001,0.01,0.05,0.1])*random([1,1,1,1,10,10,10,10,10,10,10,30])*shapesize) for (k=0;k<1;k++){ strokeWeight(particlesize*random(0.2,0.5)) stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos1[0],vertpos1[1]) stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos2[0],verM stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos3[0],vertpos3[1]) stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos4[0],vertpos4[1]) x = x + x_step+int(random(0,1)) y = y + y_step+int(random(0,1)) // License : Copyright (C) 2023 Jimi Y. C. Wen . All rights M // Licensed under CC BY-NC-SA 4.0 // https://github.com/jimiwen <script defer src="https://static.cloudflareinsights.com/beacon.min.js/vb26e4fa9e5134444860be286fd8771851679335129114" integrity="sha512-M3hN/6cva/SjwrOtyXeUa5IuCT0sedyfT+jK/OV+s+D0RnzrTfwjwJHhd+wYfMm9HJSrZ1IKksOdddLuN6KOzw==" data-cf-beacon='{"rayId":"7afe6ef1df73a1f8","version":"2023.3.0","b":1,"token":"6c07c178c94442f695e7a0a2aaee641a","si":100}' crossorigin="anonymous"></script> <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Mace</text><text x="10" y="40" class="base">Ring Mail</text><text x="10" y="60" class="base">Hood</text><text x="10" y="80" class="base">Silk Sash</text><text x="10" y="100" class="base">Ornate Greaves</text><text x="10" y="120" class="base">Silk Gloves</text><text xLd="10" y="140" class="base">Necklace</text><text x="10" y="160" class="base">Silver Ring</text></svg>h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Katana</text><text x="10" y="40" class="base">Studded Leather Armor</text><text x="10" y="60" class="base">Ancient Helm</text><text x="10" y="80" class="base">Dragonskin Belt</text><text x="10" y="100" class="base">Chain Boots</text><text x="10" y="120" class="base">L~Holy Gauntlets</text><text x="10" y="140" class="base">Necklace</text><text x="10" y="160" class="base">Gold Ring</text></svg>h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Grave Wand</text><text x="10" y="40" class="base">Ornate Chestplate</text><text x="10" y="60" class="base">Crown</text><text x="10" y="80" class="base">Mesh Belt</text><text x="10" y="100" class="base">Ornate Greaves</text><text x="10" y="120" class="base">Linen GlovLues</text><text x="10" y="140" class="base">Pendant</text><text x="10" y="160" class="base">Platinum Ring</text></svg>h! (((((((((((((((((((((((((((((((((((((((((((((((((( Bj@=:ETH.ETH:0xB45a718D86395f74796c3DB5CE2046f9C6754929:30007767::0 Aj?=:ETH.ETH:0x566b8087067638b0cb16311e0F05BEE58186E787:2287440::0 JjH=:BNB.BUSD-BD1:bnb1f9uwwwz2ra2v8flwzq2fpueuj9xlpxllqekepj:68524690875::0 DjB=:BNB.BNB:bnb10tncukpuvqhsfnvthtwmr4sqxvzjcvshy9m095:90906567:te:0 w;%d/Foundry USA Pool #dropgold/ <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Book</text><text x="10" y="40" class="base">Hard Leather Armor</text><text x="10" y="60" class="base">War Cap</text><text x="10" y="80" class="base">Heavy Belt</text><text x="10" y="100" class="base">Linen Shoes of Fury</text><text x="10" y="120" class="base">Chain GLxloves</text><text x="10" y="140" class="base">Pendant</text><text x="10" y="160" class="base">Platinum Ring</text></svg>h! ?j==:ETH.USDC:0xc9ce9662c400de0a934f027bf14ff7343f8f8860::wr:100 FjDOUT:F241D6E3C9523152FA9542E577D0C89EE3D449D63C5A5D4CD7D8CA7DD1A8ABEB FjDOUT:74D54B63B0A9912258F03BEA2DFC309722C14408E98A78E44C7D551292B93C64 Bj@9de98a309d0d69d10f38978d78e8708714c2669e667462f2e966fe95c70a807c FjDOUT:15D6AE322F1A4C86439900B0534FA1C69B80F07ECF72BED5B0CA34F8BD513A10 FjDOUT:12178C95BE54082FA639E315F548C81B5D0A29B7ACCAD3DE6E10DD69FAD8B2F8 FjDOUT:9D90D1D440A029F2434A110883A42AFDDA0FBCD13F7E73D61564257E452243A3 FjDOUT:0356A085B6320FF6F0AC4E56BF3666C48DBCE02770710040FB5D09247DB06A7E <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Book</text><text x="10" y="40" class="base">Ornate Chestplate</text><text x="10" y="60" class="base">Leather Cap</text><text x="10" y="80" class="base">Dragonskin Belt</text><text x="10" y="100" class="base">Holy Greaves</text><text x="10" y="120" class="base">Hard LL~eather Gloves</text><text x="10" y="140" class="base">Pendant</text><text x="10" y="160" class="base">Silver Ring</text></svg>h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Book</text><text x="10" y="40" class="base">Ring Mail of the Twins</text><text x="10" y="60" class="base">Full Helm</text><text x="10" y="80" class="base">Plated Belt</text><text x="10" y="100" class="base">Silk Slippers</text><text x="10" y="120" class="base">Silk GLyloves</text><text x="10" y="140" class="base">Necklace</text><text x="10" y="160" class="base">Platinum Ring</text></svg>h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Chronicle</text><text x="10" y="40" class="base">Holy Chestplate</text><text x="10" y="60" class="base">War Cap</text><text x="10" y="80" class="base">Dragonskin Belt</text><text x="10" y="100" class="base">Ornate Greaves</text><text x="10" y="120" class="base">StuddL ed Leather Gloves</text><text x="10" y="140" class="base">Pendant</text><text x="10" y="160" class="base">Silver Ring</text></svg>h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Ghost Wand</text><text x="10" y="40" class="base">Demon Husk</text><text x="10" y="60" class="base">Silk Hood</text><text x="10" y="80" class="base">Hard Leather Belt</text><text x="10" y="100" class="base">Silk Slippers</text><text x="10" y="120" class="base">DragonL|skin Gloves</text><text x="10" y="140" class="base">Pendant</text><text x="10" y="160" class="base">Silver Ring</text></svg>h! DjB=:ETH.ETH:0x65f3EDE03D844ae7547c52571c28636170c0C5ED:1536499633::0 text/plain;charset=utf-8 L\{"p":"brc-20","op":"deploy","tick":"BGMT","max":"1000000000000000","lim":"1000000000000000"}h! text/plain;charset=utf-8 CjA=:ETH.ETH:0x58EA782A5D2E415d8d3632d5243662905A102804:105376275::0 Aj?=:ETH.ETH:0x987951574306d619489595931893C254c0e133cc:3466835::0 <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Chronicle</text><text x="10" y="40" class="base">Chain Mail of Giants</text><text x="10" y="60" class="base">Ancient Helm</text><text x="10" y="80" class="base">"Glyph Shadow" Leather Belt +1</text><text x="10" y="100" class="base">Wool Shoes</text><text x="10" y="12L 0" class="base">Hard Leather Gloves</text><text x="10" y="140" class="base">Pendant</text><text x="10" y="160" class="base">Titanium Ring</text></svg>h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Wand</text><text x="10" y="40" class="base">Ornate Chestplate</text><text x="10" y="60" class="base">Cap</text><text x="10" y="80" class="base">Silk Sash</text><text x="10" y="100" class="base">Heavy Boots</text><text x="10" y="120" class="base">Hard Leather Gloves</Lqtext><text x="10" y="140" class="base">Pendant</text><text x="10" y="160" class="base">Titanium Ring</text></svg>h! text/html;charset=utf-8 <html lang="en"><head> <meta charset="UTF-8"> <title>Geometric dissertation </title> <script sandbox="allow-scripts" type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.5.0/p5.min.js"></script> <script type="text/javascript"> let mystifies = []; var pulseSpeed = 0.5; var sizeChange = 0.1; col = ["#F7D1CD", "#E8C2CA", "#D1B3C4", "#B392AC", "#735D78"]; col2 = ["#FF6B6B", "#FFD93D", "#6BCB77", "#4D96FF"]; col3 = ["#355070", "#6D597A", "#B56576", "#E56M col4 = ["#16697A", "#489FB5", "#82C0CC", "#EDE7E3", "#FFA62B"]; col5 = ["#F8FFE5", "#06D6A0", "#1B9AAA", "#EF476F", "#FFC43D"]; col6 = ["#ADB5BD", "#6C757D", "#495057", "#343A40", "#212529"]; col7 = ["#5603AD", "#8367C7", "#B3E9C7", "#C2F8CB", "#F0FFF1"]; col8 = ["#DB5461", "#686963", "#8AA29E", "#3D5467", "#F1EDEE"]; function setup() { createCanvas(windowWidth, windowHeight); randomSeed(random() * 10000); noiseSeed(random() * 10M angleMode(RADIANS); background(random(bg)); colorMode(HSB, 360, 100, 100, 100); strokeWeight(random(1, 2) + 1); c = random([col, col2, col3, col4, col5, col6, col7, col8]); c1 = random([col, col2, col3, col4, col5, col6, col7, col8]); c2 = random([col, col2, col3, col4, col5, col6, col7, col8]); c3 = random([col, col2, col3, col4, col5, col6, col7, col8]); c4 = random([col, col2, col3, col4, col5, col6, col7, col8]); // mystify1 = new Mystify(); // mystify2 = new Mystify(); for (let i = 0; i < 15; i++) { mystify = new Mystify(); mystifies.push(mystify); function draw() { blendMode(BLEND); for (let i = 0; i < mystifies.length; i++) { mystifies[i].show(); mystifies[i].move(); mystifies[i].bounce(); constructor() { this.x1 = random(width * noise(t + 1)); this.y1 = random(height * noise(t + 5)M this.x2 = random(width * noise(t + 10)); this.y2 = random(height * noise(t + 15)); this.x3 = random(width * noise(t + 25)); this.y3 = random(height * noise(t + 45)); this.x4 = random(width * noise(t + 85)); this.y4 = random(height * noise(t + 125)); this.x1speed = random(-5, 5); this.y1speed = random(-5, 5); this.x2speed = random(-5, 5); this.y2speed = random(-5, 5); this.x3speed = random(-5, 5); this.y3speed = randomM this.x4speed = random(-5, 5); this.y4speed = random(-5, 5); randomSeed(1000); fill(random(c)); rect(this.x1, this.y1, this.x2, this.y2 * 0.2); fill(random(c1)); rect(this.x3, this.y3, this.x4, this.y4 * 0.2); stroke(255); rect(this.x1, this.y2, this.x3, this.y4 *0.2); fill(random(c3)); circle(random(this.x3), random(thiM s.y3), random(this.x1 * 0.4)); stroke(random(c4)); circle(random(this.x2), random(this.y2), 300); sizeChange = sizeChange + pulseSpeed; if (sizeChange > 300 || sizeChange < -1) { pulseSpeed = pulseSpeed * -1; this.x1speed = this.bounce(this.x1, 0, width, this.x1speed); this.y1speed = this.bounce(this.x1, 0, height, this.y1speed); this.x2speed = this.bounce(this.x2, 0, width, this.x2speed); this.y2speed = this.bounce(this.y2, 0, width, this.y2speed); this.x3speed = this.bounce(this.x3, 0, width, this.x3speed); this.y3speed = this.bounce(this.x3, 0, height, this.y3speed); this.x4speed = this.bounce(this.x4, 0, width, this.x4speed); this.y4speed = this.bounce(this.y4, 0, width, this.y4speed); this.x1 += this.x1speed; this.y1 += this.y1speed; this.x2 += this.x2speed; this.y2 += this.y2speed; this.x3 += this.x3speed; this.x4 += this.x4speed; this.y4 += this.y4speed; endShape(CLOSE); // a repeating mathematical operation for each x and y // refactor with a generic bounce function bounce(num, min, max, speed) { // is number outside these 2 boundary numbers? if (num < min || num > max) { // if so, flip the sign of any rate of change speed *= -1; return speed; resizeCanvas(windowWidth, windowHeight); <script id="snippet-random-code" type="text/javascript"> // DO NOT EDIT THIS SECTION let seed = window.location.href.split('/').find(t => t.includes('i0')); if (seed == null) { const alphabet = "0123456789abcdefghijklmnopqrstuvwsyz"; seed = new URLSearchParams(window.location.search).get("seed") || Array(64).fill(0).map(_ => alphabet[(Math.random() * alphabet.length) | 0]).joM let pattern = "seed="; for (let i = 0; i < seed.length - pattern.length; ++i) { if (seed.substring(i, i + pattern.length) == pattern) { seed = seed.substring(i + pattern.length); break; function cyrb128($) { let _ = 1779033703, u = 3144134277, i = 1013904242, l = 2773480762; for (let n = 0, r; n < $.length; n++) _ = u ^ Math.imul(_M ^ (r = $.charCodeAt(n)), 597399067), u = i ^ Math.imul(u ^ r, 2869860233), i = l ^ Math.imul(i ^ r, 951274213), l = _ ^ Math.imul(l ^ r, 2716044179); return _ = Math.imul(i ^ _ >>> 18, 597399067), u = Math.imul(l ^ u >>> 22, 2869860233), i = Math.imul(_ ^ i >>> 17, 951274213), l = Math.imul(u ^ l >>> 19, 2716044179), [(_ ^ u ^ i ^ l) >>> 0, (u ^ _) >>> 0, (i ^ _) >>> 0, (l ^ _) >>> 0] function sfc32($, _, u, i) { return function () { u >>>= 0, i >>>= 0; var l = ($ >>>= 0) + (_ >>>= 0) | 0; return $ = _ ^ _ >>> 9, _ = u + (u << 3) | 0, u = (u = u << 21 | u >>> 11) + (l = l + (i = i + 1 | 0) | 0) | 0, (l >>> 0) / 4294967296 // IMPORTANT: Instead of Math.random(), use this function mathRand() for random number generation. // This function generates a random number between 0 and 1 with on-chain seed. let mathRand = sfc32(...cyrb128(seed)); height: 100vh; overflow: hidden; background-color: black; touch-action: none; -webkit-box-sizing: border-box; box-sizing: border-box; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; -webkit-tap-highlight-color: transparent; -webkit-touch-callout: none; <script type="text/javascript"> <canvas id="defaultCanvas0" class="p5Canvas" width="1392" height="1392" style=" display: block; max-width: 100%; max-height: 100%; margin: auto; overflow: auto; position: fixed; object-fit: contain; top: 0; bottom: 0; left: 0; right: 0; </canvas> </main> <script defer src="https://static.cloudflareinsights.com/beacon.min.js/vb26e4fa9e5134444860be286fd8771851679335129114" integrity="sha512-M3hN/6cva/SjwrOtyXeUa5IuCT0sedyfT+jK/OV+s+D0RnzrTfwjwJHhd+wYfMm9HJSrZ1IKksOdddLuN6KOzw==" data-cf-beacon='{"rayId":"7afe9bd8693fa21c","version":"2023.3.0","b":1,"token":"6c07c178c94442f695e7a0a2aaee641a","si":100}' crossorigin="anonymous"></script> text/html;charset=utf-8 <html lang="en"><head> <meta charset="UTF-8"> <title>Geometric dissertation </title> <script sandbox="allow-scripts" type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.5.0/p5.min.js"></script> <script type="text/javascript"> let mystifies = []; var pulseSpeed = 0.5; var sizeChange = 0.1; col = ["#F7D1CD", "#E8C2CA", "#D1B3C4", "#B392AC", "#735D78"]; col2 = ["#FF6B6B", "#FFD93D", "#6BCB77", "#4D96FF"]; col3 = ["#355070", "#6D597A", "#B56576", "#E56M col4 = ["#16697A", "#489FB5", "#82C0CC", "#EDE7E3", "#FFA62B"]; col5 = ["#F8FFE5", "#06D6A0", "#1B9AAA", "#EF476F", "#FFC43D"]; col6 = ["#ADB5BD", "#6C757D", "#495057", "#343A40", "#212529"]; col7 = ["#5603AD", "#8367C7", "#B3E9C7", "#C2F8CB", "#F0FFF1"]; col8 = ["#DB5461", "#686963", "#8AA29E", "#3D5467", "#F1EDEE"]; function setup() { createCanvas(windowWidth, windowHeight); randomSeed(random() * 10000); noiseSeed(random() * 10M angleMode(RADIANS); background(random(bg)); colorMode(HSB, 360, 100, 100, 100); strokeWeight(random(1, 2) + 1); c = random([col, col2, col3, col4, col5, col6, col7, col8]); c1 = random([col, col2, col3, col4, col5, col6, col7, col8]); c2 = random([col, col2, col3, col4, col5, col6, col7, col8]); c3 = random([col, col2, col3, col4, col5, col6, col7, col8]); c4 = random([col, col2, col3, col4, col5, col6, col7, col8]); // mystify1 = new Mystify(); // mystify2 = new Mystify(); for (let i = 0; i < 15; i++) { mystify = new Mystify(); mystifies.push(mystify); function draw() { blendMode(BLEND); for (let i = 0; i < mystifies.length; i++) { mystifies[i].show(); mystifies[i].move(); mystifies[i].bounce(); constructor() { this.x1 = random(width * noise(t + 1)); this.y1 = random(height * noise(t + 5)M this.x2 = random(width * noise(t + 10)); this.y2 = random(height * noise(t + 15)); this.x3 = random(width * noise(t + 25)); this.y3 = random(height * noise(t + 45)); this.x4 = random(width * noise(t + 85)); this.y4 = random(height * noise(t + 125)); this.x1speed = random(-5, 5); this.y1speed = random(-5, 5); this.x2speed = random(-5, 5); this.y2speed = random(-5, 5); this.x3speed = random(-5, 5); this.y3speed = randomM this.x4speed = random(-5, 5); this.y4speed = random(-5, 5); randomSeed(1000); fill(random(c)); rect(this.x1, this.y1, this.x2, this.y2 * 0.2); fill(random(c1)); rect(this.x3, this.y3, this.x4, this.y4 * 0.2); stroke(255); rect(this.x1, this.y2, this.x3, this.y4 *0.2); fill(random(c3)); circle(random(this.x3), random(thiM s.y3), random(this.x1 * 0.4)); stroke(random(c4)); circle(random(this.x2), random(this.y2), 300); sizeChange = sizeChange + pulseSpeed; if (sizeChange > 300 || sizeChange < -1) { pulseSpeed = pulseSpeed * -1; this.x1speed = this.bounce(this.x1, 0, width, this.x1speed); this.y1speed = this.bounce(this.x1, 0, height, this.y1speed); this.x2speed = this.bounce(this.x2, 0, width, this.x2speed); this.y2speed = this.bounce(this.y2, 0, width, this.y2speed); this.x3speed = this.bounce(this.x3, 0, width, this.x3speed); this.y3speed = this.bounce(this.x3, 0, height, this.y3speed); this.x4speed = this.bounce(this.x4, 0, width, this.x4speed); this.y4speed = this.bounce(this.y4, 0, width, this.y4speed); this.x1 += this.x1speed; this.y1 += this.y1speed; this.x2 += this.x2speed; this.y2 += this.y2speed; this.x3 += this.x3speed; this.x4 += this.x4speed; this.y4 += this.y4speed; endShape(CLOSE); // a repeating mathematical operation for each x and y // refactor with a generic bounce function bounce(num, min, max, speed) { // is number outside these 2 boundary numbers? if (num < min || num > max) { // if so, flip the sign of any rate of change speed *= -1; return speed; resizeCanvas(windowWidth, windowHeight); <script id="snippet-random-code" type="text/javascript"> // DO NOT EDIT THIS SECTION let seed = window.location.href.split('/').find(t => t.includes('i0')); if (seed == null) { const alphabet = "0123456789abcdefghijklmnopqrstuvwsyz"; seed = new URLSearchParams(window.location.search).get("seed") || Array(64).fill(0).map(_ => alphabet[(Math.random() * alphabet.length) | 0]).joM let pattern = "seed="; for (let i = 0; i < seed.length - pattern.length; ++i) { if (seed.substring(i, i + pattern.length) == pattern) { seed = seed.substring(i + pattern.length); break; function cyrb128($) { let _ = 1779033703, u = 3144134277, i = 1013904242, l = 2773480762; for (let n = 0, r; n < $.length; n++) _ = u ^ Math.imul(_M ^ (r = $.charCodeAt(n)), 597399067), u = i ^ Math.imul(u ^ r, 2869860233), i = l ^ Math.imul(i ^ r, 951274213), l = _ ^ Math.imul(l ^ r, 2716044179); return _ = Math.imul(i ^ _ >>> 18, 597399067), u = Math.imul(l ^ u >>> 22, 2869860233), i = Math.imul(_ ^ i >>> 17, 951274213), l = Math.imul(u ^ l >>> 19, 2716044179), [(_ ^ u ^ i ^ l) >>> 0, (u ^ _) >>> 0, (i ^ _) >>> 0, (l ^ _) >>> 0] function sfc32($, _, u, i) { return function () { u >>>= 0, i >>>= 0; var l = ($ >>>= 0) + (_ >>>= 0) | 0; return $ = _ ^ _ >>> 9, _ = u + (u << 3) | 0, u = (u = u << 21 | u >>> 11) + (l = l + (i = i + 1 | 0) | 0) | 0, (l >>> 0) / 4294967296 // IMPORTANT: Instead of Math.random(), use this function mathRand() for random number generation. // This function generates a random number between 0 and 1 with on-chain seed. let mathRand = sfc32(...cyrb128(seed)); height: 100vh; overflow: hidden; background-color: black; touch-action: none; -webkit-box-sizing: border-box; box-sizing: border-box; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; -webkit-tap-highlight-color: transparent; -webkit-touch-callout: none; <script type="text/javascript"> <canvas id="defaultCanvas0" class="p5Canvas" width="1392" height="1392" style=" display: block; max-width: 100%; max-height: 100%; margin: auto; overflow: auto; position: fixed; object-fit: contain; top: 0; bottom: 0; left: 0; right: 0; </canvas> </main> <script defer src="https://static.cloudflareinsights.com/beacon.min.js/vb26e4fa9e5134444860be286fd8771851679335129114" integrity="sha512-M3hN/6cva/SjwrOtyXeUa5IuCT0sedyfT+jK/OV+s+D0RnzrTfwjwJHhd+wYfMm9HJSrZ1IKksOdddLuN6KOzw==" data-cf-beacon='{"rayId":"7afe9b0058a33ff8","version":"2023.3.0","b":1,"token":"6c07c178c94442f695e7a0a2aaee641a","si":100}' crossorigin="anonymous"></script> <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Club</text><text x="10" y="40" class="base">Linen Robe</text><text x="10" y="60" class="base">Cap</text><text x="10" y="80" class="base">Wool Sash</text><text x="10" y="100" class="base">Dragonskin Boots</text><text x="10" y="120" class="base">Holy Gauntlets</text><tLeext x="10" y="140" class="base">Amulet</text><text x="10" y="160" class="base">Gold Ring</text></svg>h! text/plain;charset=utf-8 "name": "va1th.sats" text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"meme","amt":"1"}h! text/plain;charset=utf-8 {"type":"btcdomain","name":"marcus.btc","first_owner":"bc1plqhneqeyxqf8ttxxaah3kzspj0jrzkgjvt8harhw0xhwfcfk8tmqv70qmp","createDate":1680159502631,"registerDate":1680159502631,"expireDate":1743231502631,"img_url":"https://btcdomains.io/images/domain/marcus.jpeg","sig":"304502210085a092293a8b0668fec3aa0ac1a1c498dffdb01c412310cea073bd2c27d5b664022021c857973185e65b354a05a6b242ee4a0c086146fbb9ce5ba87a4de7ca3d127c"}h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Bone Wand</text><text x="10" y="40" class="base">Ornate Chestplate</text><text x="10" y="60" class="base">Crown</text><text x="10" y="80" class="base">Leather Belt</text><text x="10" y="100" class="base">Chain Boots</text><text x="10" y="120" class="base">Chain GloveLss</text><text x="10" y="140" class="base">Necklace</text><text x="10" y="160" class="base">Silver Ring</text></svg>h! b6635d20a0fb4698a331850c20a13b29G0D text/html;charset=utf-8 <meta charset="UTF-8"> <meta http-equiv="Content-Security-Policy" content="default-src *; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval' http://cdnjs.cloudflare.com"> <title>Diffusion</title> <script sandbox="allow-scripts" type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.5.0/p5.min.js"></script> <script sandbox="allow-scripts" type="text/javascript" src="https://cdnjs.cloudflareM .com/ajax/libs/mathjs/11.5.1/math.min.js"></script> <script sandbox="allow-scripts" type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/chroma-js/2.4.2/chroma.min.js"></script> <script type="text/javascript"> var eigenvector_maj,eigenvector_min,flowcolorfield,cols,rows,colAlg,integral_lines=[];let center;var scl=10,inc=.06,zoff=0;let w,h,wdt,margin=10,cells=[],dsep=3,xx,yy,dt=.5,t,strk,palette1=[["#ce2d42","#082880","#7462f9","#f4b53f","#123676","#9c223d","#e6c7b4"],M ["#f43b79","#1136ed","#6b43dd","#ef9029","#4aa4ae","#69239b","#f7f1b4"],["#7fefe4","#be3edd","#70cfe5","#f2c666","#e6c7b4","#583fc4","#fff57d"],["#80aded","#7b66f7","#658fdb","#f2e18b","#f7f1b4","#773caa","#f4b537"],["#a5e2f2","#a783ed","#61c1db","#f7c872","#6eabf4","#6d52dd","#ff7db2"],["#d8d8d8","#898de0","#89afe5","#f9e78f","#85b2e8","#8110e5","#bf2b6e"],["#7094fc","#643ac9","#306bef","#9100dd","#e6c7b4","#e2396d","#ef3a65"],["#80aded","#a28fef","#4688e8","#db003a","#f7f1b4","#d632a4","#bc174e"],["#594499","#db3M e3e","#25ceb2","#02827b","#a0a09f","#56661d","#34067c"],["#425999","#bc3f3f","#9fe2cc","#108fc1","#d37676","#132691","#5b3c96"],["#ffeda1","#91205c","#2929e2","#9509b7","#70b9c0","#5474e8","#d30b8c"],["#f9cfc7","#721b74","#1c70ea","#7c1d93","#919bdb","#5574ce","#f25c87"],["#f25a7b","#e960af","#992843","#8b52f7","#6eabf4","#3714a1","#445b96"],["#ff399c","#e73250","#d32f53","#33bbff","#7de7ff","#69239b","#8041f9"],["#6f6674","#34a0a5","#992843","#f98450","#6eabf4","#3714a1","#445b96"],["#4d82aa","#24c6c6","#d32f53","M #f973a0","#7de7ff","#69239b","#8041f9"],["#ff6d40","#361ee0","#992843","#e6c7b4","#9370f2","#3714a1","#445b96"],["#e6372f","#3a338e","#d32f53","#f7f1b4","#8092ff","#69239b","#8041f9"],["#ffa943","#2177f4","#35fc93","#f9cfd2","#6eabf4","#3714a1","#445b96"],["#ffce45","#2f7083","#5affdf","#fcf4b7","#7de7ff","#69239b","#8041f9"],["#41d9f2","#528cd1","#3a6eba","#5f64c1","#4a97f4","#7426bf","#f7d52f"],["#71f2ff","#249cff","#63a1ea","#7f88db","#56a6f4","#7f0caf","#f7b643"],["#41d9f2","#51fcbb","#d3057b","#295cff","#7d22fM f","#51d7e5","#e6c7b4"],["#71f2ff","#81fcca","#f91cb0","#0239c1","#8450d6","#05bdc6","#f7f1b4"],["#43bbef","#53f9e4","#bf2640","#5082ff","#8648ff","#36ffcf","#881ed3"],["#6bcced","#fce586","#f93ebb","#52a1ff","#8e51a8","#05bdc6","#ff0895"],["#a745ed","#fcbbbb","#f20a41","#ffd252","#0606bf","#ff459e","#881ed3"],["#7b19d1","#a7d0f9","#ba0f40","#fcd5bb","#4545ce","#9666ff","#ff0895"],["#31a4dd","#6f3bff","#f20a41","#4470a5","#7171f4","#e710f9","#2e92ff"],["#ffffab","#8e7de2","#ba0f40","#9312b2","#85b5f9","#830591","#0M 34a7f"],["#06a0ba","#6f3bff","#f20a41","#8777f7","#4848c1","#6b11f7","#e6c7b4"],["#2bc5cc","#8e7de2","#ba0f40","#6155bf","#4b4bf7","#a318b7","#f7f1b4"],["#06a0ba","#6f3bff","#8473ff","#fce875","#4848c1","#ffb3c9","#2e92ff"],["#2bc5cc","#8e7de2","#9e61ba","#ffd2c7","#0f0fce","#f7e579","#034a7f"],["#c10839","#6f3bff","#ff06a6","#f2a5bb","#4848c1","#117ff7","#579ef2"],["#a20dd3","#8e7de2","#aa08ff","#f2ec79","#0f0fce","#a60abc","#1b64ce"],["#06a0ba","#6f3bff","#fca660","#f7f377","#9149bf","#f71165","#31f0ff"],["#2bc5cM c","#8e7de2","#dd582a","#ffe09c","#630ca8","#a8275c","#04717c"],["#e041b3","#3e71ff","#ffec64","#77c1f7","#9149bf","#f71165","#e6c7b4"],["#f95089","#8e7de2","#f99175","#1d6bdd","#630ca8","#a8275c","#f7f1b4"],["#f4d334","#0636cc","#8989ef","#e6c7b4","#8005e0","#fc68a4","#3386ff"],["#fc889e","#3b72a3","#2d5cc4","#f7f1b4","#f938cb","#d61a1a","#04717c"],["#f4d334","#3ef6ff","#5347f4","#b877f7","#9149bf","#f71165","#e6c7b4"],["#fc889e","#1fb2b2","#2d5cc4","#6e1ed6","#630ca8","#a8275c","#f7f1b4"],["#f4d334","#3ef6ff","#5M 347f4","#f7f777","#9149bf","#ef5090","#e6c7b4"],["#fc889e","#1fb2b2","#2d5cc4","#ffce88","#630ca8","#ba0457","#f7f1b4"],["#f4d334","#3ef6ff","#5347f4","#77c4f7","#9149bf","#f71165","#854fba"],["#fc889e","#1fb2b2","#2d5cc4","#2187bf","#630ca8","#a8275c","#e783ea"],["#f4d334","#3ef6ff","#f97575","#f4dc78","#9149bf","#f71165","#e6c7b4"],["#fc889e","#1fb2b2","#cc2929","#f28b79","#630ca8","#a8275c","#f7f1b4"],["#f4d334","#3ef6ff","#f97575","#f279ab","#9149bf","#645eea","#e6c7b4"],["#fc889e","#52adff","#cc2929","#e81073"M ,"#630ca8","#3a3acc","#f7f1b4"],["#3ac9d8","#6f3bff","#44acf2","#fce875","#bf23f9","#ffb3c9","#2e92ff"],["#44acf2","#8e7de2","#6cffff","#ffd2c7","#9449ce","#f7e579","#034a7f"],["#06a0ba","#6f3bff","#fc4c7e","#f9b175","#6c6ce5","#8f58f9","#e6c7b4"],["#2bc5cc","#8e7de2","#cf4ef9","#f7df77","#4949c1","#a915ff","#f7f1b4"],["#ef01c4","#065ca8","#1c00ba","#ffee94","#c053ba","#8f58f9","#4ea8f9"],["#a60160","#30bec3","#5e52db","#ffebae","#da55f2","#a915ff","#4febf7"],["#f44260","#3c5ba0","#845ecc","#f4b53f","#3d9fc1","#9c2M 23d","#e6c7b4"],["#f43b79","#4058ad","#6c3ca5","#ef9029","#317ec4","#69239b","#f7f1b4"],["#f44260","#3c5ba0","#7070e8","#f27740","#3d9fc1","#d34040","#e6c7b4"],["#f43b79","#4058ad","#4d4dc1","#ef9029","#317ec4","#ed5487","#f7f1b4"],["#f244ee","#5c75c6","#7070e8","#3cd3b6","#3d9fc1","#d34040","#e6c7b4"],["#f43b79","#637cc1","#4d4dc1","#1cb7b7","#317ec4","#ed5487","#f7f1b4"],["#e5491f","#2058d3","#7462f9","#40f2d0","#123676","#9c223d","#e6c7b4"],["#ef973f","#177199","#6b43dd","#15abba","#4aa4ae","#69239b","#f7f1b4"],M ["#e22079","#2058d3","#7462f9","#40f2d0","#5a92e5","#9c223d","#e6c7b4"],["#f21c59","#177199","#6b43dd","#15abba","#4658f9","#69239b","#f7f1b4"],["#e22079","#2058d3","#e6c7b4","#40f2d0","#5a92e5","#ba4564","#edf28b"],["#f21c59","#177199","#f7f1b4","#15abba","#4658f9","#e5336a","#43f7c8"],["#e22079","#4b80e0","#e6c7b4","#41a9ef","#5a92e5","#bc0d8b","#f7adf7"],["#f21c59","#197abc","#f7f1b4","#36a9cc","#4658f9","#d3057f","#43f7c8"],["#e22079","#4b80e0","#e6c7b4","#435ced","#e2b55a","#ea397d","#f4e2ae"],["#f21c59","#197M abc","#f7f1b4","#7f63f7","#f98562","#e84b3a","#e9f49f"],["#0850b7","#6771f9","#8213bc","#75f9e0","#4848c1","#ffb3c9","#2e92ff"],["#3081e2","#5285dd","#9604af","#15abba","#0f0fce","#f7e579","#034a7f"],["#d80e3e","#6771f9","#8213bc","#f7ad77","#4848c1","#ffb3c9","#31b5ff"],["#ef4878","#5285dd","#9604af","#f4cb78","#0f0fce","#f7e579","#2a76d1"],["#f98246","#69acf7","#8213bc","#f7ad77","#4848c1","#ffb3c9","#31b5ff"],["#ed7d4a","#5285dd","#b529d3","#f4cb78","#0f0fce","#f7e579","#2a76d1"],["#f7cd48","#69d6f4","#8213bc","M #f7ad77","#7649bf","#ffb3c9","#e6c7b4"],["#f49090","#21b5d8","#b529d3","#f4cb78","#5829b2","#f7e579","#f7f1b4"],["#4a82f4","#f22a51","#8213bc","#f7ad77","#905df4","#ffb3c9","#0c85ba"],["#4cb2f2","#b72c4e","#b529d3","#f4cb78","#542ad3","#f7e579","#096889"],["#4a82f4","#f22a51","#1522ba","#f7ad77","#d32fc0","#b6fffa","#0c85ba"],["#4cb2f2","#b72c4e","#483d9b","#f4cb78","#e50a6e","#f1ffb8","#096889"],["#4a82f4","#f22a51","#4b23db","#f7ad77","#d1304b","#5b99f4","#1dbcb4"],["#4cb2f2","#b72c4e","#694eea","#f4cb78","#d6166M 0","#5cd3f2","#096889"],["#ad4cf2","#f22a51","#8213bc","#f478b0","#5ff2f2","#ffb3c9","#0c85ba"],["#8b05e2","#b72c4e","#b529d3","#f4cb78","#3ea6b7","#f7e579","#096889"],["#584def","#f22a51","#a52cdd","#f2c679","#60caef","#d2b6ff","#0d53b7"],["#4f24c6","#b72c4e","#b529d3","#efaa7b","#3ea6b7","#f7e579","#458bdd"],["#584def","#ef592b","#2cdbc1","#f2c679","#6290ed","#b8fff1","#0d53b7"],["#4f24c6","#f27949","#2ec0d8","#efaa7b","#4067b5","#f7e579","#458bdd"],["#584def","#ed2e8a","#2eacd8","#f2c679","#6290ed","#6929ce","#0M d53b7"],["#4f24c6","#c11670","#3070d6","#efaa7b","#4067b5","#4a4add","#458bdd"],["#584def","#ed2e8a","#2eacd8","#ef9c7b","#6290ed","#6929ce","#0d53b7"],["#4f24c6","#c11670","#3070d6","#fc583d","#4067b5","#4a4add","#458bdd"],["#b7b7b7","#0a0a0a","#ffffff","#dbdcdd","#b2b2b2","#a7a7a8","#4e4f4f"],["#d8d8d8","#636363","#dbdcdd","#b2b2b2","#4e4f4f","#e0e1e2","#3f3f3f"],["#5475f1","#ce7ca5","#b0f2da","#edded1","#80d3d8","#9fa1a6","#eafefe"],["#3155c4","#7534ad","#4597ad","#b7183b","#4058cc","#9e2a6f","#1eafab"],];functiM on centerCanvas(){var e=(windowWidth-width)/2,f=(windowHeight-height)/2;cnv.position(e,f)}function setup(){wdt=windowWidth<windowHeight?windowWidth:windowHeight;let e=int(map(mathRand(),0,1,0,3)),f;0===e?(h=.7*(w=wdt),f="7:5"):1===e?(w=.7*(h=wdt),f="5:7"):2===e&&(w=wdt,h=wdt,f="1:1"),cnv=createCanvas(w,h),centerCanvas();pixelDensity(displayDensity()),smooth(),strokeWeight(strk=constrain((wdt/800).toFixed(1),.5,1));let l=int(1990*mathRand());noiseSeed(l),randomSeed(l),noiseDetail(2,1),strokeCap(ROUND),cols=floor(widM th/(scl=wdt/135))+1,rows=floor(height/scl)+1,xx=floor(width/dsep),yy=floor(height/dsep),eigenvector_maj=Array(cols*rows),flowcolorfield=Array(cols*rows),eigenvector_min=Array(cols*rows),colAlg=int(random(2)),paletteIndex=int(map(random(1),0,1,0,palette1.length));let i=chroma.scale(palette1[paletteIndex]).colors(cols*rows);inc=random(.013,.036),t=range(0,10,dt);for(var c=0;c<1;c++){let s=random(width),a=random(height),_=random(width),$=random(height);integral_lines[c]=new Integral_line(s,a,"major"),integral_lines[c+M 1]=new Integral_line(_,$,"minor")}center=createVector(width/2,height/2),background(10);for(var o=0,n=0;n<rows;n++){for(var r=0,d=0;d<cols;d++){var b,p,u,x,y,g=d+n*cols,P=noise(r,o,zoff)*TAU;if(0===colAlg)b=355*noise(r/2+140,o/2+140,zoff/10),p=325*noise(r/2+40,o/2+40,zoff/10),u=355*noise(r/2+210,o/2+210,zoff/10),x=map(noise(r/2+250,o/2+250,zoff/10),0,1,165,255);else if(1===colAlg){var m=int(map(noise(r,o,zoff),0,1,0,i.length));b=chroma(i[m]).get("rgb.r"),p=chroma(i[m]).get("rgb.g"),u=chroma(i[m]).get("rgb.b"),x=map(M noise(r/2+250,o/2+250,zoff/10),0,1,165,255)}var v=createVector(0,0);v.normalize();var j=map(d,0,cols,-width/2,width/2),B=map(n,0,rows,-height/2,height/2),k=createVector(j,B);k.normalize();let z=sqrt(pow((y=p5.Vector.fromAngle(PI/4)).x,2)+pow(y.y,2)),I=atan(y.y/y.x),A=exp(-1*pow(k.mag()-v.mag(),2))*z,C=math.matrix([[cos(2*I),sin(2*I)],[sin(2*I),-cos(2*I)]]),R=math.multiply(C,A);var K=createVector(math.eigs(R).vectors._data[0][0],math.eigs(R).vectors._data[0][1]),V=createVector(math.eigs(R).vectors._data[1][0],math.eM igs(R).vectors._data[1][1]);K.mult(math.eigs(R).values._data[0]),V.mult(math.eigs(R).values._data[1]);let F=cos(2*I)*cos(2*I)-sin(2*I)*sin(2*I),T=[[cos(P),-sin(P)],[sin(P),cos(P)]];K.setMag(F),V.setMag(F);let M=math.multiply(T,[K.x,K.y]),G=math.multiply(T,[V.x,V.y]);eigenvector_maj[g]=createVector(M[0],M[1]),eigenvector_min[g]=createVector(G[0],G[1]),flowcolorfield[g]=[b,p,u,x],r+=inc}o+=inc,zoff+=3e-4}for(var n=0;n<yy;n+=1)for(var d=0;d<xx;d+=1){var g=d+n*xx;cells[g]=new Cell(d,n)}for(var c=0;c<30;c++){let S=newPaM rticle3("major");null!==S&&integral_lines.push(S);let q=newParticle3("minor");null!==q&&integral_lines.push(q)}let D=cols*rows,E=0===colAlg?"Algorithm":"Palette";window.$generativeTraits={Type:"Flow Field",Vectors:D,Colors:E,Format:f}}function draw(){background(10),translate(center.x,center.y);for(var e=0;e<integral_lines.length;e++)integral_lines[e].follow(eigenvector_maj,eigenvector_min),integral_lines[e].edges(),integral_lines[e].changeCol(flowcolorfield),integral_lines[e].display(flowcolorfield);let f=cells.filM ter(e=>!0===e.spot||!0===e.spot2).length;if(f<.9*cells.length){let l=newParticle4("major",0);null!==l&&integral_lines.push(l);let i=newParticle4("major",1);null!==i&&integral_lines.push(i);let c=newParticle4("minor",0);null!==c&&integral_lines.push(c);let s=newParticle4("minor",1);null!==s&&integral_lines.push(s);let a=newParticle3("major");null!==a&&integral_lines.push(a);let _=newParticle3("minor");null!==_&&integral_lines.push(_)}else if(f>=.9*cells.length&&f<cells.length-cells.length/180){let $=newParticle3("maM jor");null!==$&&integral_lines.push($);let o=newParticle3("minor");null!==o&&integral_lines.push(o);let n=newParticle5("major");null!==n&&integral_lines.push(n);let r=newParticle5("minor");null!==r&&integral_lines.push(r);let d=newParticle6("major");null!==d&&integral_lines.push(d);let b=newParticle6("minor");null!==b&&integral_lines.push(b);let p=newParticle51("major");null!==p&&integral_lines.push(p);let u=newParticle51("minor");null!==u&&integral_lines.push(u);let x=newParticle52("major");null!==x&&integral_lineM s.push(x);let y=newParticle52("minor");null!==y&&integral_lines.push(y)}else noLoop();noFill(),stroke(220),strokeWeight(10),rect(-width/2,-height/2,width,height)}class Tensor{constructor(e,f,l,i,c){this.matrix=e,this.majVector=f,this.minVector=l,this.majValue=i,this.minValue=c}}class Cell{constructor(e,f){this.i=e,this.j=f,this.spot=null,this.spot2=null,this.index,this.pos=[]}drawGrid(){noFill(),stroke(255),this.spot&&fill(255,0,0);let e=createVector(this.i,this.j);rect(e.x*dsep,e.y*dsep,dsep,dsep)}}function IntegrM al_line(e,f,l){this.iniPos=createVector(map(e,0,width,-width/2,width/2),map(f,0,height,-height/2,height/2)),this.iniPos2=this.iniPos.copy(),this.iniPos3=this.iniPos.copy(),this.iniPos4=this.iniPos2.copy(),this.fBool=!0,this.fBool2=!0,this.fBool3=!0,this.fBool4=!0,this.obj=l,this.maj1=[],this.min=[],this.maj2=[],this.min2=[],this.col=int(random(4)),this.changeCol=function(e){switch(this.col){case 0:var f=this.iniPos.x,l=this.iniPos.y,i=interpolate_coord(f,l,scl,cols),c=e[i];c&&stroke(color(c[0],c[1],c[2],c[3]));breaM k;case 1:var f=this.iniPos2.x,l=this.iniPos2.y,i=interpolate_coord(f,l,scl,cols),c=e[i];c&&stroke(color(c[0],c[1],c[2],c[3]));break;case 2:var f=this.iniPos3.x,l=this.iniPos3.y,i=interpolate_coord(f,l,scl,cols),c=e[i];c&&stroke(color(c[0],c[1],c[2],c[3]));break;case 3:var f=this.iniPos4.x,l=this.iniPos4.y,i=interpolate_coord(f,l,scl,cols),c=e[i];c&&stroke(color(c[0],c[1],c[2],c[3]))}},this.follow=function(e,f){if("major"===this.obj){if(this.fBool)for(let l=1;l<t.length;l++){var i=interpolate_coord(this.iniPos.x,thiM s.iniPos.y,scl,cols);if(e[i]){let c=RK4step(f4,[this.iniPos.x,this.iniPos.y,e[i].x,e[i].y],t[l]-t[l-1]);this.maj1.push([c[0],c[1]]),this.iniPos=createVector(c[0],c[1]);var s=interpolate_coord(c[0],c[1],dsep,xx);if(cells[s]&&(cells[s].pos.push(createVector(c[0],c[1])),cells[s].spot=!0,cells[s].spot2)){this.fBool=cells[s].pos.every(e=>dist(e.x,e.y,c[0],c[1])>0);break}}}if(this.fBool3)for(let a=1;a<t.length;a++){var _=interpolate_coord(this.iniPos3.x,this.iniPos3.y,scl,cols);if(e[_]){let $=RK4step(f4,[this.iniPos3.x,tM his.iniPos3.y,-1*e[_].x,-1*e[_].y],t[a]-t[a-1]);this.maj2.push([$[0],$[1]]),this.iniPos3=createVector($[0],$[1]);var s=interpolate_coord($[0],$[1],dsep,xx);if(cells[s]&&(cells[s].pos.push(createVector($[0],$[1])),cells[s].spot=!0,cells[s].spot2)){this.fBool3=cells[s].pos.every(e=>dist(e.x,e.y,$[0],$[1])>0);break}}}}if("minor"===this.obj){if(this.fBool2)for(let o=1;o<t.length;o++){var n=interpolate_coord(this.iniPos2.x,this.iniPos2.y,scl,cols);if(f[n]){let r=RK4step(f4,[this.iniPos2.x,this.iniPos2.y,f[n].x,f[n].y],tM [o]-t[o-1]);this.min.push([r[0],r[1]]),this.iniPos2=createVector(r[0],r[1]);var s=interpolate_coord(r[0],r[1],dsep,xx);if(cells[s]&&(cells[s].pos.push(createVector(r[0],r[1])),cells[s].spot2=!0,cells[s].spot)){this.fBool2=cells[s].pos.every(e=>dist(e.x,e.y,r[0],r[1])>0);break}}}if(this.fBool4)for(let d=1;d<t.length;d++){var b=interpolate_coord(this.iniPos4.x,this.iniPos4.y,scl,cols);if(f[b]){let p=RK4step(f4,[this.iniPos4.x,this.iniPos4.y,-1*f[b].x,-1*f[b].y],t[d]-t[d-1]);this.min2.push([p[0],p[1]]),this.iniPos4=crM eateVector(p[0],p[1]);var s=interpolate_coord(p[0],p[1],dsep,xx);if(cells[s]&&(cells[s].pos.push(createVector(p[0],p[1])),cells[s].spot2=!0,cells[s].spot)){this.fBool4=cells[s].pos.every(e=>dist(e.x,e.y,p[0],p[1])>0);break}}}}},this.display=function(e){noFill(),strokeWeight(strk),beginShape();let f=this.maj1;for(let l=0;l<f.length;l++)vertex(f[l][0],f[l][1]);endShape(),beginShape();let i=this.min;for(let c=0;c<i.length;c++)vertex(i[c][0],i[c][1]);endShape(),beginShape();let s=this.maj2;for(let a=0;a<s.length;a++)veM rtex(s[a][0],s[a][1]);endShape(),beginShape();let _=this.min2;for(let $=0;$<_.length;$++)vertex(_[$][0],_[$][1]);endShape()},this.edges=function(){(this.iniPos.x>width/2||this.iniPos.x<-width/2||this.iniPos.y>height/2||this.iniPos.y<-height/2)&&(this.fBool=!1),(this.iniPos2.x>width/2||this.iniPos2.x<-width/2||this.iniPos2.y>height/2||this.iniPos2.y<-height/2)&&(this.fBool2=!1),(this.iniPos3.x>width/2||this.iniPos3.x<-width/2||this.iniPos3.y>height/2||this.iniPos3.y<-height/2)&&(this.fBool3=!1),(this.iniPos4.x>widthM /2||this.iniPos4.x<-width/2||this.iniPos4.y>height/2||this.iniPos4.y<-height/2)&&(this.fBool4=!1)},this.other=function(e){let f=this.iniPos.x,l=this.iniPos.y;var i=interpolate_coord(f,l,dsep,xx);e[i]&&e[i].pos&&e[i].spot2&&(this.fBool=e[i].pos.every(e=>dist(e.x,e.y,f,l)>0));let c=this.iniPos2.x,s=this.iniPos2.y;var a=interpolate_coord(c,s,dsep,xx);e[a]&&e[a].pos&&e[a].spot&&(this.fBool2=e[a].pos.every(e=>dist(e.x,e.y,c,s)>0));let _=this.iniPos3.x,$=this.iniPos3.y;var o=interpolate_coord(_,$,dsep,xx);e[o]&&e[o].pos&M &e[o].spot2&&(this.fBool3=e[o].pos.every(e=>dist(e.x,e.y,_,$)>0));let n=this.iniPos4.x,r=this.iniPos4.y;var d=interpolate_coord(n,r,dsep,xx);e[d]&&e[d].pos&&e[d].spot&&(this.fBool4=e[d].pos.every(e=>dist(e.x,e.y,n,r)>0))}}function newParticle3(e){let f=!1,l,i,c,s;for(;!f;){l=random(width),i=random(height),c=map(l,0,width,-width/2,width/2),s=map(i,0,height,-height/2,height/2);let a=floor(l/dsep)+1,_=floor(i/dsep)+1;if(a>0&&_>0&&a<xx-1&&_<yy-1){let $=[[a,_],[a-1,_-1],[a,_-1],[a+1,_-1],[a-1,_],[a+1,_],[a-1,_+1],[a,_+1M ],[a+1,_+1]],o=[];for(let n of $){let r=n[0]+n[1]*xx;o.push(...cells[r].pos)}f=o.every(function(e){return dist(e.x,e.y,c,s)>dsep-1})}}return f?new Integral_line(l,i,e):null}function newParticle4(e,f){let l=!1,i,c,s,a;for(;!l;){let _=[];for(let $ in integral_lines)integral_lines.length,"major"===e?0===f?_.push(...integral_lines[$].maj1):1===f&&_.push(...integral_lines[$].maj2):"minor"===e&&(0===f?_.push(...integral_lines[$].min):1===f&&_.push(...integral_lines[$].min2));let o=int(random(_.length-1)),n=_[o];_.findIndM ex(e=>e[0]===n[0]&&e[1]===n[1]);let r=_.find((e,f)=>f===o+1);if(r){let d=r[0]-n[0],b=r[1]-n[1],p=sqrt(d*d+b*b),u=d/p,x=-(b/p),y=u;i=n[0]+x*dsep,c=n[1]+y*dsep,s=map(i,-width/2,width/2,0,width),a=map(c,-height/2,height/2,0,height);let g=floor(s/dsep),P=floor(a/dsep);if(g>0&&P>0&&g<xx-1&&P<yy-1){let m=[[g,P],[g-1,P-1],[g,P-1],[g+1,P-1],[g-1,P],[g+1,P],[g-1,P+1],[g,P+1],[g+1,P+1]],v=[];for(let j of m){let B=j[0]+j[1]*xx;v.push(...cells[B].pos)}l=v.every(function(e){return dist(e.x,e.y,i,c)>dsep-1})}}if(5>=frameRate())bM reak}return l?new Integral_line(s,a,e):null}function newParticle5(e){let f=!1,l=0,i=0,c,s;nested_break:for(let a=0;a<floor(xx/2);a++)for(let _=0;_<floor(yy/2);_++){var $=a+_*xx;if(cells[$]&&(!cells[$].spot||!cells[$].spot2)){if(l=map(a,0,xx,0,width)+random(-.5,.5),i=map(_,0,yy,0,height)+random(-.5,.5),c=map(l,0,width,-width/2,width/2),s=map(i,0,height,-height/2,height/2),a>0&&_>0&&a<xx-1&&_<yy-1){let o=[[a,_],[a-1,_-1],[a,_-1],[a+1,_-1],[a-1,_],[a+1,_],[a-1,_+1],[a,_+1],[a+1,_+1]],n=[];for(let r of o){let d=r[0]+r[M 1]*xx;n.push(...cells[d].pos)}f=n.every(function(e){return dist(e.x,e.y,c,s)>dsep-1})}if(f)break nested_break}}return f?new Integral_line(l,i,e):null}function newParticle6(e){let f=!1,l=0,i=0,c,s;nested_break:for(let a=xx-1;a>=floor(xx/2);a--)for(let _=yy-1;_>=floor(yy/2);_--){var $=a+_*xx;if(cells[$]&&(!cells[$].spot||!cells[$].spot2)){if(l=map(a,0,xx,0,width)+random(-.5,.5),i=map(_,0,yy,0,height)+random(-.5,.5),c=map(l,0,width,-width/2,width/2),s=map(i,0,height,-height/2,height/2),a>0&&_>0&&a<xx-1&&_<yy-1){let o=M [[a,_],[a-1,_-1],[a,_-1],[a+1,_-1],[a-1,_],[a+1,_],[a-1,_+1],[a,_+1],[a+1,_+1]],n=[];for(let r of o){let d=r[0]+r[1]*xx;n.push(...cells[d].pos)}f=n.every(function(e){return dist(e.x,e.y,c,s)>dsep-1})}if(f)break nested_break}}return f?new Integral_line(l,i,e):null}function newParticle51(e){let f=!1,l=0,i=0,c,s;nested_break:for(let a=0;a<floor(xx/2);a++)for(let _=floor(yy/2);_<yy;_++){var $=a+_*xx;if(cells[$]&&(!cells[$].spot||!cells[$].spot2)){if(l=map(a,0,xx,0,width)+random(-.5,.5),i=map(_,0,yy,0,height)+random(-.5M ,.5),c=map(l,0,width,-width/2,width/2),s=map(i,0,height,-height/2,height/2),a>0&&_>0&&a<xx-1&&_<yy-1){let o=[[a,_],[a-1,_-1],[a,_-1],[a+1,_-1],[a-1,_],[a+1,_],[a-1,_+1],[a,_+1],[a+1,_+1]],n=[];for(let r of o){let d=r[0]+r[1]*xx;n.push(...cells[d].pos)}f=n.every(function(e){return dist(e.x,e.y,c,s)>dsep-1})}if(f)break nested_break}}return f?new Integral_line(l,i,e):null}function newParticle52(e){let f=!1,l=0,i=0,c,s;nested_break:for(let a=xx-1;a>=floor(xx/2);a--)for(let _=floor(yy/2);_>=0;_--){var $=a+_*xx;if(cells[M $]&&(!cells[$].spot||!cells[$].spot2)){if(l=map(a,0,xx,0,width)+random(-.5,.5),i=map(_,0,yy,0,height)+random(-.5,.5),c=map(l,0,width,-width/2,width/2),s=map(i,0,height,-height/2,height/2),a>0&&_>0&&a<xx-1&&_<yy-1){let o=[[a,_],[a-1,_-1],[a,_-1],[a+1,_-1],[a-1,_],[a+1,_],[a-1,_+1],[a,_+1],[a+1,_+1]],n=[];for(let r of o){let d=r[0]+r[1]*xx;n.push(...cells[d].pos)}f=n.every(function(e){return dist(e.x,e.y,c,s)>dsep-1})}if(f)break nested_break}}return f?new Integral_line(l,i,e):null}function RK4step(e,f,l){let i=math.mM ultiply(e(f),l),c=math.multiply(e(math.add(f,math.multiply(.5,i))),l),s=math.multiply(e(math.add(f,math.multiply(.5,c))),l),a=math.multiply(e(math.add(f,s)),l);return math.add(f,math.divide(math.add(math.add(math.add(i,math.multiply(2,c)),math.multiply(2,s)),a),6))}function RK4integrate(e,f,l){let i=math.zeros(l.length,f.length);i._data[0]=f;for(let c=1;c<l.length;c++)i._data[c]=RK4step(e,i._data[c-1],l[c]-l[c-1]);return i._data}let f4=function(e){e[0],e[1];let f=e[2],l=e[3];return[f,l,-l,f]};function interpolate_cM oord(e,f,l,i){let c=floor(map(e,-width/2,width/2,0,width)/l),s=floor(map(f,-height/2,height/2,0,height)/l);return c+s*i}function makeArr(e,f,l){for(var i=[],c=(f-e)/(l-1),s=0;s<l;s++)i.push(e+c*s);return i}const range=(e,f,l)=>Array.from({length:(f-e)/l+1},(f,i)=>e+i*l);function windowResized(){centerCanvas()}function keyTyped(){return"p"===key&&saveCanvas("diffusion","jpg"),!1}function touchStarted(){return 3===touches.length&&saveCanvas("diffusion","jpg"),!1} <script id="snippet-random-code" tM ype="text/javascript"> // DO NOT EDIT THIS SECTION let seed = window.location.href.split('/').find(t => t.includes('i0')); if (seed == null) { const alphabet = "0123456789abcdefghijklmnopqrstuvwsyz"; seed = new URLSearchParams(window.location.search).get("seed") || Array(64).fill(0).map(_ => alphabet[(Math.random() * alphabet.length) | 0]).join('') + "i0"; let pattern = "seed="; for (let i = 0; i < seed.length - pattern.lengM if (seed.substring(i, i + pattern.length) == pattern) { seed = seed.substring(i + pattern.length); break; function cyrb128($) { let _ = 1779033703, u = 3144134277, i = 1013904242, l = 2773480762; for (let n = 0, r; n < $.length; n++) _ = u ^ Math.imul(_ ^ (r = $.charCodeAt(n)), 597399067), u = i ^ Math.imul(u ^ r, 2869860233), i = l ^ Math.imul(i ^ r, 951274213), l = _ ^ MathM .imul(l ^ r, 2716044179); return _ = Math.imul(i ^ _ >>> 18, 597399067), u = Math.imul(l ^ u >>> 22, 2869860233), i = Math.imul(_ ^ i >>> 17, 951274213), l = Math.imul(u ^ l >>> 19, 2716044179), [(_ ^ u ^ i ^ l) >>> 0, (u ^ _) >>> 0, (i ^ _) >>> 0, (l ^ _) >>> 0] function sfc32($, _, u, i) { return function () { u >>>= 0, i >>>= 0; var l = ($ >>>= 0) + (_ >>>= 0) | 0; return $ = _ ^ _ >>> 9, _ = u + (u << 3) | 0, u = (u = u <M < 21 | u >>> 11) + (l = l + (i = i + 1 | 0) | 0) | 0, (l >>> 0) / 4294967296 let mathRand = sfc32(...cyrb128(seed)); background-color: #fefefe; margin: 0px; overflow: hidden; width: 100%; height: 100%; <script type="text/javascript"> <script defer src="https://static.cloudflareinsights.com/beacon.min.js/vb26e4fa9e5134444860bM6 e286fd8771851679335129114" integrity="sha512-M3hN/6cva/SjwrOtyXeUa5IuCT0sedyfT+jK/OV+s+D0RnzrTfwjwJHhd+wYfMm9HJSrZ1IKksOdddLuN6KOzw==" data-cf-beacon='{"rayId":"7afe9b1b69533ffe","version":"2023.3.0","b":1,"token":"6c07c178c94442f695e7a0a2aaee641a","si":100}' crossorigin="anonymous"></script> text/html;charset=utf-8 <meta charset="UTF-8"> <meta http-equiv="Content-Security-Policy" content="default-src *; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval' http://cdnjs.cloudflare.com"> <title>Diffusion</title> <script sandbox="allow-scripts" type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.5.0/p5.min.js"></script> <script sandbox="allow-scripts" type="text/javascript" src="https://cdnjs.cloudflareM .com/ajax/libs/mathjs/11.5.1/math.min.js"></script> <script sandbox="allow-scripts" type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/chroma-js/2.4.2/chroma.min.js"></script> <script type="text/javascript"> var eigenvector_maj,eigenvector_min,flowcolorfield,cols,rows,colAlg,integral_lines=[];let center;var scl=10,inc=.06,zoff=0;let w,h,wdt,margin=10,cells=[],dsep=3,xx,yy,dt=.5,t,strk,palette1=[["#ce2d42","#082880","#7462f9","#f4b53f","#123676","#9c223d","#e6c7b4"],M ["#f43b79","#1136ed","#6b43dd","#ef9029","#4aa4ae","#69239b","#f7f1b4"],["#7fefe4","#be3edd","#70cfe5","#f2c666","#e6c7b4","#583fc4","#fff57d"],["#80aded","#7b66f7","#658fdb","#f2e18b","#f7f1b4","#773caa","#f4b537"],["#a5e2f2","#a783ed","#61c1db","#f7c872","#6eabf4","#6d52dd","#ff7db2"],["#d8d8d8","#898de0","#89afe5","#f9e78f","#85b2e8","#8110e5","#bf2b6e"],["#7094fc","#643ac9","#306bef","#9100dd","#e6c7b4","#e2396d","#ef3a65"],["#80aded","#a28fef","#4688e8","#db003a","#f7f1b4","#d632a4","#bc174e"],["#594499","#db3M e3e","#25ceb2","#02827b","#a0a09f","#56661d","#34067c"],["#425999","#bc3f3f","#9fe2cc","#108fc1","#d37676","#132691","#5b3c96"],["#ffeda1","#91205c","#2929e2","#9509b7","#70b9c0","#5474e8","#d30b8c"],["#f9cfc7","#721b74","#1c70ea","#7c1d93","#919bdb","#5574ce","#f25c87"],["#f25a7b","#e960af","#992843","#8b52f7","#6eabf4","#3714a1","#445b96"],["#ff399c","#e73250","#d32f53","#33bbff","#7de7ff","#69239b","#8041f9"],["#6f6674","#34a0a5","#992843","#f98450","#6eabf4","#3714a1","#445b96"],["#4d82aa","#24c6c6","#d32f53","M #f973a0","#7de7ff","#69239b","#8041f9"],["#ff6d40","#361ee0","#992843","#e6c7b4","#9370f2","#3714a1","#445b96"],["#e6372f","#3a338e","#d32f53","#f7f1b4","#8092ff","#69239b","#8041f9"],["#ffa943","#2177f4","#35fc93","#f9cfd2","#6eabf4","#3714a1","#445b96"],["#ffce45","#2f7083","#5affdf","#fcf4b7","#7de7ff","#69239b","#8041f9"],["#41d9f2","#528cd1","#3a6eba","#5f64c1","#4a97f4","#7426bf","#f7d52f"],["#71f2ff","#249cff","#63a1ea","#7f88db","#56a6f4","#7f0caf","#f7b643"],["#41d9f2","#51fcbb","#d3057b","#295cff","#7d22fM f","#51d7e5","#e6c7b4"],["#71f2ff","#81fcca","#f91cb0","#0239c1","#8450d6","#05bdc6","#f7f1b4"],["#43bbef","#53f9e4","#bf2640","#5082ff","#8648ff","#36ffcf","#881ed3"],["#6bcced","#fce586","#f93ebb","#52a1ff","#8e51a8","#05bdc6","#ff0895"],["#a745ed","#fcbbbb","#f20a41","#ffd252","#0606bf","#ff459e","#881ed3"],["#7b19d1","#a7d0f9","#ba0f40","#fcd5bb","#4545ce","#9666ff","#ff0895"],["#31a4dd","#6f3bff","#f20a41","#4470a5","#7171f4","#e710f9","#2e92ff"],["#ffffab","#8e7de2","#ba0f40","#9312b2","#85b5f9","#830591","#0M 34a7f"],["#06a0ba","#6f3bff","#f20a41","#8777f7","#4848c1","#6b11f7","#e6c7b4"],["#2bc5cc","#8e7de2","#ba0f40","#6155bf","#4b4bf7","#a318b7","#f7f1b4"],["#06a0ba","#6f3bff","#8473ff","#fce875","#4848c1","#ffb3c9","#2e92ff"],["#2bc5cc","#8e7de2","#9e61ba","#ffd2c7","#0f0fce","#f7e579","#034a7f"],["#c10839","#6f3bff","#ff06a6","#f2a5bb","#4848c1","#117ff7","#579ef2"],["#a20dd3","#8e7de2","#aa08ff","#f2ec79","#0f0fce","#a60abc","#1b64ce"],["#06a0ba","#6f3bff","#fca660","#f7f377","#9149bf","#f71165","#31f0ff"],["#2bc5cM c","#8e7de2","#dd582a","#ffe09c","#630ca8","#a8275c","#04717c"],["#e041b3","#3e71ff","#ffec64","#77c1f7","#9149bf","#f71165","#e6c7b4"],["#f95089","#8e7de2","#f99175","#1d6bdd","#630ca8","#a8275c","#f7f1b4"],["#f4d334","#0636cc","#8989ef","#e6c7b4","#8005e0","#fc68a4","#3386ff"],["#fc889e","#3b72a3","#2d5cc4","#f7f1b4","#f938cb","#d61a1a","#04717c"],["#f4d334","#3ef6ff","#5347f4","#b877f7","#9149bf","#f71165","#e6c7b4"],["#fc889e","#1fb2b2","#2d5cc4","#6e1ed6","#630ca8","#a8275c","#f7f1b4"],["#f4d334","#3ef6ff","#5M 347f4","#f7f777","#9149bf","#ef5090","#e6c7b4"],["#fc889e","#1fb2b2","#2d5cc4","#ffce88","#630ca8","#ba0457","#f7f1b4"],["#f4d334","#3ef6ff","#5347f4","#77c4f7","#9149bf","#f71165","#854fba"],["#fc889e","#1fb2b2","#2d5cc4","#2187bf","#630ca8","#a8275c","#e783ea"],["#f4d334","#3ef6ff","#f97575","#f4dc78","#9149bf","#f71165","#e6c7b4"],["#fc889e","#1fb2b2","#cc2929","#f28b79","#630ca8","#a8275c","#f7f1b4"],["#f4d334","#3ef6ff","#f97575","#f279ab","#9149bf","#645eea","#e6c7b4"],["#fc889e","#52adff","#cc2929","#e81073"M ,"#630ca8","#3a3acc","#f7f1b4"],["#3ac9d8","#6f3bff","#44acf2","#fce875","#bf23f9","#ffb3c9","#2e92ff"],["#44acf2","#8e7de2","#6cffff","#ffd2c7","#9449ce","#f7e579","#034a7f"],["#06a0ba","#6f3bff","#fc4c7e","#f9b175","#6c6ce5","#8f58f9","#e6c7b4"],["#2bc5cc","#8e7de2","#cf4ef9","#f7df77","#4949c1","#a915ff","#f7f1b4"],["#ef01c4","#065ca8","#1c00ba","#ffee94","#c053ba","#8f58f9","#4ea8f9"],["#a60160","#30bec3","#5e52db","#ffebae","#da55f2","#a915ff","#4febf7"],["#f44260","#3c5ba0","#845ecc","#f4b53f","#3d9fc1","#9c2M 23d","#e6c7b4"],["#f43b79","#4058ad","#6c3ca5","#ef9029","#317ec4","#69239b","#f7f1b4"],["#f44260","#3c5ba0","#7070e8","#f27740","#3d9fc1","#d34040","#e6c7b4"],["#f43b79","#4058ad","#4d4dc1","#ef9029","#317ec4","#ed5487","#f7f1b4"],["#f244ee","#5c75c6","#7070e8","#3cd3b6","#3d9fc1","#d34040","#e6c7b4"],["#f43b79","#637cc1","#4d4dc1","#1cb7b7","#317ec4","#ed5487","#f7f1b4"],["#e5491f","#2058d3","#7462f9","#40f2d0","#123676","#9c223d","#e6c7b4"],["#ef973f","#177199","#6b43dd","#15abba","#4aa4ae","#69239b","#f7f1b4"],M ["#e22079","#2058d3","#7462f9","#40f2d0","#5a92e5","#9c223d","#e6c7b4"],["#f21c59","#177199","#6b43dd","#15abba","#4658f9","#69239b","#f7f1b4"],["#e22079","#2058d3","#e6c7b4","#40f2d0","#5a92e5","#ba4564","#edf28b"],["#f21c59","#177199","#f7f1b4","#15abba","#4658f9","#e5336a","#43f7c8"],["#e22079","#4b80e0","#e6c7b4","#41a9ef","#5a92e5","#bc0d8b","#f7adf7"],["#f21c59","#197abc","#f7f1b4","#36a9cc","#4658f9","#d3057f","#43f7c8"],["#e22079","#4b80e0","#e6c7b4","#435ced","#e2b55a","#ea397d","#f4e2ae"],["#f21c59","#197M abc","#f7f1b4","#7f63f7","#f98562","#e84b3a","#e9f49f"],["#0850b7","#6771f9","#8213bc","#75f9e0","#4848c1","#ffb3c9","#2e92ff"],["#3081e2","#5285dd","#9604af","#15abba","#0f0fce","#f7e579","#034a7f"],["#d80e3e","#6771f9","#8213bc","#f7ad77","#4848c1","#ffb3c9","#31b5ff"],["#ef4878","#5285dd","#9604af","#f4cb78","#0f0fce","#f7e579","#2a76d1"],["#f98246","#69acf7","#8213bc","#f7ad77","#4848c1","#ffb3c9","#31b5ff"],["#ed7d4a","#5285dd","#b529d3","#f4cb78","#0f0fce","#f7e579","#2a76d1"],["#f7cd48","#69d6f4","#8213bc","M #f7ad77","#7649bf","#ffb3c9","#e6c7b4"],["#f49090","#21b5d8","#b529d3","#f4cb78","#5829b2","#f7e579","#f7f1b4"],["#4a82f4","#f22a51","#8213bc","#f7ad77","#905df4","#ffb3c9","#0c85ba"],["#4cb2f2","#b72c4e","#b529d3","#f4cb78","#542ad3","#f7e579","#096889"],["#4a82f4","#f22a51","#1522ba","#f7ad77","#d32fc0","#b6fffa","#0c85ba"],["#4cb2f2","#b72c4e","#483d9b","#f4cb78","#e50a6e","#f1ffb8","#096889"],["#4a82f4","#f22a51","#4b23db","#f7ad77","#d1304b","#5b99f4","#1dbcb4"],["#4cb2f2","#b72c4e","#694eea","#f4cb78","#d6166M 0","#5cd3f2","#096889"],["#ad4cf2","#f22a51","#8213bc","#f478b0","#5ff2f2","#ffb3c9","#0c85ba"],["#8b05e2","#b72c4e","#b529d3","#f4cb78","#3ea6b7","#f7e579","#096889"],["#584def","#f22a51","#a52cdd","#f2c679","#60caef","#d2b6ff","#0d53b7"],["#4f24c6","#b72c4e","#b529d3","#efaa7b","#3ea6b7","#f7e579","#458bdd"],["#584def","#ef592b","#2cdbc1","#f2c679","#6290ed","#b8fff1","#0d53b7"],["#4f24c6","#f27949","#2ec0d8","#efaa7b","#4067b5","#f7e579","#458bdd"],["#584def","#ed2e8a","#2eacd8","#f2c679","#6290ed","#6929ce","#0M d53b7"],["#4f24c6","#c11670","#3070d6","#efaa7b","#4067b5","#4a4add","#458bdd"],["#584def","#ed2e8a","#2eacd8","#ef9c7b","#6290ed","#6929ce","#0d53b7"],["#4f24c6","#c11670","#3070d6","#fc583d","#4067b5","#4a4add","#458bdd"],["#b7b7b7","#0a0a0a","#ffffff","#dbdcdd","#b2b2b2","#a7a7a8","#4e4f4f"],["#d8d8d8","#636363","#dbdcdd","#b2b2b2","#4e4f4f","#e0e1e2","#3f3f3f"],["#5475f1","#ce7ca5","#b0f2da","#edded1","#80d3d8","#9fa1a6","#eafefe"],["#3155c4","#7534ad","#4597ad","#b7183b","#4058cc","#9e2a6f","#1eafab"],];functiM on centerCanvas(){var e=(windowWidth-width)/2,f=(windowHeight-height)/2;cnv.position(e,f)}function setup(){wdt=windowWidth<windowHeight?windowWidth:windowHeight;let e=int(map(mathRand(),0,1,0,3)),f;0===e?(h=.7*(w=wdt),f="7:5"):1===e?(w=.7*(h=wdt),f="5:7"):2===e&&(w=wdt,h=wdt,f="1:1"),cnv=createCanvas(w,h),centerCanvas();pixelDensity(displayDensity()),smooth(),strokeWeight(strk=constrain((wdt/800).toFixed(1),.5,1));let l=int(1990*mathRand());noiseSeed(l),randomSeed(l),noiseDetail(2,1),strokeCap(ROUND),cols=floor(widM th/(scl=wdt/135))+1,rows=floor(height/scl)+1,xx=floor(width/dsep),yy=floor(height/dsep),eigenvector_maj=Array(cols*rows),flowcolorfield=Array(cols*rows),eigenvector_min=Array(cols*rows),colAlg=int(random(2)),paletteIndex=int(map(random(1),0,1,0,palette1.length));let i=chroma.scale(palette1[paletteIndex]).colors(cols*rows);inc=random(.013,.036),t=range(0,10,dt);for(var c=0;c<1;c++){let s=random(width),a=random(height),_=random(width),$=random(height);integral_lines[c]=new Integral_line(s,a,"major"),integral_lines[c+M 1]=new Integral_line(_,$,"minor")}center=createVector(width/2,height/2),background(10);for(var o=0,n=0;n<rows;n++){for(var r=0,d=0;d<cols;d++){var b,p,u,x,y,g=d+n*cols,P=noise(r,o,zoff)*TAU;if(0===colAlg)b=355*noise(r/2+140,o/2+140,zoff/10),p=325*noise(r/2+40,o/2+40,zoff/10),u=355*noise(r/2+210,o/2+210,zoff/10),x=map(noise(r/2+250,o/2+250,zoff/10),0,1,165,255);else if(1===colAlg){var m=int(map(noise(r,o,zoff),0,1,0,i.length));b=chroma(i[m]).get("rgb.r"),p=chroma(i[m]).get("rgb.g"),u=chroma(i[m]).get("rgb.b"),x=map(M noise(r/2+250,o/2+250,zoff/10),0,1,165,255)}var v=createVector(0,0);v.normalize();var j=map(d,0,cols,-width/2,width/2),B=map(n,0,rows,-height/2,height/2),k=createVector(j,B);k.normalize();let z=sqrt(pow((y=p5.Vector.fromAngle(PI/4)).x,2)+pow(y.y,2)),I=atan(y.y/y.x),A=exp(-1*pow(k.mag()-v.mag(),2))*z,C=math.matrix([[cos(2*I),sin(2*I)],[sin(2*I),-cos(2*I)]]),R=math.multiply(C,A);var K=createVector(math.eigs(R).vectors._data[0][0],math.eigs(R).vectors._data[0][1]),V=createVector(math.eigs(R).vectors._data[1][0],math.eM igs(R).vectors._data[1][1]);K.mult(math.eigs(R).values._data[0]),V.mult(math.eigs(R).values._data[1]);let F=cos(2*I)*cos(2*I)-sin(2*I)*sin(2*I),T=[[cos(P),-sin(P)],[sin(P),cos(P)]];K.setMag(F),V.setMag(F);let M=math.multiply(T,[K.x,K.y]),G=math.multiply(T,[V.x,V.y]);eigenvector_maj[g]=createVector(M[0],M[1]),eigenvector_min[g]=createVector(G[0],G[1]),flowcolorfield[g]=[b,p,u,x],r+=inc}o+=inc,zoff+=3e-4}for(var n=0;n<yy;n+=1)for(var d=0;d<xx;d+=1){var g=d+n*xx;cells[g]=new Cell(d,n)}for(var c=0;c<30;c++){let S=newPaM rticle3("major");null!==S&&integral_lines.push(S);let q=newParticle3("minor");null!==q&&integral_lines.push(q)}let D=cols*rows,E=0===colAlg?"Algorithm":"Palette";window.$generativeTraits={Type:"Flow Field",Vectors:D,Colors:E,Format:f}}function draw(){background(10),translate(center.x,center.y);for(var e=0;e<integral_lines.length;e++)integral_lines[e].follow(eigenvector_maj,eigenvector_min),integral_lines[e].edges(),integral_lines[e].changeCol(flowcolorfield),integral_lines[e].display(flowcolorfield);let f=cells.filM ter(e=>!0===e.spot||!0===e.spot2).length;if(f<.9*cells.length){let l=newParticle4("major",0);null!==l&&integral_lines.push(l);let i=newParticle4("major",1);null!==i&&integral_lines.push(i);let c=newParticle4("minor",0);null!==c&&integral_lines.push(c);let s=newParticle4("minor",1);null!==s&&integral_lines.push(s);let a=newParticle3("major");null!==a&&integral_lines.push(a);let _=newParticle3("minor");null!==_&&integral_lines.push(_)}else if(f>=.9*cells.length&&f<cells.length-cells.length/180){let $=newParticle3("maM jor");null!==$&&integral_lines.push($);let o=newParticle3("minor");null!==o&&integral_lines.push(o);let n=newParticle5("major");null!==n&&integral_lines.push(n);let r=newParticle5("minor");null!==r&&integral_lines.push(r);let d=newParticle6("major");null!==d&&integral_lines.push(d);let b=newParticle6("minor");null!==b&&integral_lines.push(b);let p=newParticle51("major");null!==p&&integral_lines.push(p);let u=newParticle51("minor");null!==u&&integral_lines.push(u);let x=newParticle52("major");null!==x&&integral_lineM s.push(x);let y=newParticle52("minor");null!==y&&integral_lines.push(y)}else noLoop();noFill(),stroke(220),strokeWeight(10),rect(-width/2,-height/2,width,height)}class Tensor{constructor(e,f,l,i,c){this.matrix=e,this.majVector=f,this.minVector=l,this.majValue=i,this.minValue=c}}class Cell{constructor(e,f){this.i=e,this.j=f,this.spot=null,this.spot2=null,this.index,this.pos=[]}drawGrid(){noFill(),stroke(255),this.spot&&fill(255,0,0);let e=createVector(this.i,this.j);rect(e.x*dsep,e.y*dsep,dsep,dsep)}}function IntegrM al_line(e,f,l){this.iniPos=createVector(map(e,0,width,-width/2,width/2),map(f,0,height,-height/2,height/2)),this.iniPos2=this.iniPos.copy(),this.iniPos3=this.iniPos.copy(),this.iniPos4=this.iniPos2.copy(),this.fBool=!0,this.fBool2=!0,this.fBool3=!0,this.fBool4=!0,this.obj=l,this.maj1=[],this.min=[],this.maj2=[],this.min2=[],this.col=int(random(4)),this.changeCol=function(e){switch(this.col){case 0:var f=this.iniPos.x,l=this.iniPos.y,i=interpolate_coord(f,l,scl,cols),c=e[i];c&&stroke(color(c[0],c[1],c[2],c[3]));breaM k;case 1:var f=this.iniPos2.x,l=this.iniPos2.y,i=interpolate_coord(f,l,scl,cols),c=e[i];c&&stroke(color(c[0],c[1],c[2],c[3]));break;case 2:var f=this.iniPos3.x,l=this.iniPos3.y,i=interpolate_coord(f,l,scl,cols),c=e[i];c&&stroke(color(c[0],c[1],c[2],c[3]));break;case 3:var f=this.iniPos4.x,l=this.iniPos4.y,i=interpolate_coord(f,l,scl,cols),c=e[i];c&&stroke(color(c[0],c[1],c[2],c[3]))}},this.follow=function(e,f){if("major"===this.obj){if(this.fBool)for(let l=1;l<t.length;l++){var i=interpolate_coord(this.iniPos.x,thiM s.iniPos.y,scl,cols);if(e[i]){let c=RK4step(f4,[this.iniPos.x,this.iniPos.y,e[i].x,e[i].y],t[l]-t[l-1]);this.maj1.push([c[0],c[1]]),this.iniPos=createVector(c[0],c[1]);var s=interpolate_coord(c[0],c[1],dsep,xx);if(cells[s]&&(cells[s].pos.push(createVector(c[0],c[1])),cells[s].spot=!0,cells[s].spot2)){this.fBool=cells[s].pos.every(e=>dist(e.x,e.y,c[0],c[1])>0);break}}}if(this.fBool3)for(let a=1;a<t.length;a++){var _=interpolate_coord(this.iniPos3.x,this.iniPos3.y,scl,cols);if(e[_]){let $=RK4step(f4,[this.iniPos3.x,tM his.iniPos3.y,-1*e[_].x,-1*e[_].y],t[a]-t[a-1]);this.maj2.push([$[0],$[1]]),this.iniPos3=createVector($[0],$[1]);var s=interpolate_coord($[0],$[1],dsep,xx);if(cells[s]&&(cells[s].pos.push(createVector($[0],$[1])),cells[s].spot=!0,cells[s].spot2)){this.fBool3=cells[s].pos.every(e=>dist(e.x,e.y,$[0],$[1])>0);break}}}}if("minor"===this.obj){if(this.fBool2)for(let o=1;o<t.length;o++){var n=interpolate_coord(this.iniPos2.x,this.iniPos2.y,scl,cols);if(f[n]){let r=RK4step(f4,[this.iniPos2.x,this.iniPos2.y,f[n].x,f[n].y],tM [o]-t[o-1]);this.min.push([r[0],r[1]]),this.iniPos2=createVector(r[0],r[1]);var s=interpolate_coord(r[0],r[1],dsep,xx);if(cells[s]&&(cells[s].pos.push(createVector(r[0],r[1])),cells[s].spot2=!0,cells[s].spot)){this.fBool2=cells[s].pos.every(e=>dist(e.x,e.y,r[0],r[1])>0);break}}}if(this.fBool4)for(let d=1;d<t.length;d++){var b=interpolate_coord(this.iniPos4.x,this.iniPos4.y,scl,cols);if(f[b]){let p=RK4step(f4,[this.iniPos4.x,this.iniPos4.y,-1*f[b].x,-1*f[b].y],t[d]-t[d-1]);this.min2.push([p[0],p[1]]),this.iniPos4=crM eateVector(p[0],p[1]);var s=interpolate_coord(p[0],p[1],dsep,xx);if(cells[s]&&(cells[s].pos.push(createVector(p[0],p[1])),cells[s].spot2=!0,cells[s].spot)){this.fBool4=cells[s].pos.every(e=>dist(e.x,e.y,p[0],p[1])>0);break}}}}},this.display=function(e){noFill(),strokeWeight(strk),beginShape();let f=this.maj1;for(let l=0;l<f.length;l++)vertex(f[l][0],f[l][1]);endShape(),beginShape();let i=this.min;for(let c=0;c<i.length;c++)vertex(i[c][0],i[c][1]);endShape(),beginShape();let s=this.maj2;for(let a=0;a<s.length;a++)veM rtex(s[a][0],s[a][1]);endShape(),beginShape();let _=this.min2;for(let $=0;$<_.length;$++)vertex(_[$][0],_[$][1]);endShape()},this.edges=function(){(this.iniPos.x>width/2||this.iniPos.x<-width/2||this.iniPos.y>height/2||this.iniPos.y<-height/2)&&(this.fBool=!1),(this.iniPos2.x>width/2||this.iniPos2.x<-width/2||this.iniPos2.y>height/2||this.iniPos2.y<-height/2)&&(this.fBool2=!1),(this.iniPos3.x>width/2||this.iniPos3.x<-width/2||this.iniPos3.y>height/2||this.iniPos3.y<-height/2)&&(this.fBool3=!1),(this.iniPos4.x>widthM /2||this.iniPos4.x<-width/2||this.iniPos4.y>height/2||this.iniPos4.y<-height/2)&&(this.fBool4=!1)},this.other=function(e){let f=this.iniPos.x,l=this.iniPos.y;var i=interpolate_coord(f,l,dsep,xx);e[i]&&e[i].pos&&e[i].spot2&&(this.fBool=e[i].pos.every(e=>dist(e.x,e.y,f,l)>0));let c=this.iniPos2.x,s=this.iniPos2.y;var a=interpolate_coord(c,s,dsep,xx);e[a]&&e[a].pos&&e[a].spot&&(this.fBool2=e[a].pos.every(e=>dist(e.x,e.y,c,s)>0));let _=this.iniPos3.x,$=this.iniPos3.y;var o=interpolate_coord(_,$,dsep,xx);e[o]&&e[o].pos&M &e[o].spot2&&(this.fBool3=e[o].pos.every(e=>dist(e.x,e.y,_,$)>0));let n=this.iniPos4.x,r=this.iniPos4.y;var d=interpolate_coord(n,r,dsep,xx);e[d]&&e[d].pos&&e[d].spot&&(this.fBool4=e[d].pos.every(e=>dist(e.x,e.y,n,r)>0))}}function newParticle3(e){let f=!1,l,i,c,s;for(;!f;){l=random(width),i=random(height),c=map(l,0,width,-width/2,width/2),s=map(i,0,height,-height/2,height/2);let a=floor(l/dsep)+1,_=floor(i/dsep)+1;if(a>0&&_>0&&a<xx-1&&_<yy-1){let $=[[a,_],[a-1,_-1],[a,_-1],[a+1,_-1],[a-1,_],[a+1,_],[a-1,_+1],[a,_+1M ],[a+1,_+1]],o=[];for(let n of $){let r=n[0]+n[1]*xx;o.push(...cells[r].pos)}f=o.every(function(e){return dist(e.x,e.y,c,s)>dsep-1})}}return f?new Integral_line(l,i,e):null}function newParticle4(e,f){let l=!1,i,c,s,a;for(;!l;){let _=[];for(let $ in integral_lines)integral_lines.length,"major"===e?0===f?_.push(...integral_lines[$].maj1):1===f&&_.push(...integral_lines[$].maj2):"minor"===e&&(0===f?_.push(...integral_lines[$].min):1===f&&_.push(...integral_lines[$].min2));let o=int(random(_.length-1)),n=_[o];_.findIndM ex(e=>e[0]===n[0]&&e[1]===n[1]);let r=_.find((e,f)=>f===o+1);if(r){let d=r[0]-n[0],b=r[1]-n[1],p=sqrt(d*d+b*b),u=d/p,x=-(b/p),y=u;i=n[0]+x*dsep,c=n[1]+y*dsep,s=map(i,-width/2,width/2,0,width),a=map(c,-height/2,height/2,0,height);let g=floor(s/dsep),P=floor(a/dsep);if(g>0&&P>0&&g<xx-1&&P<yy-1){let m=[[g,P],[g-1,P-1],[g,P-1],[g+1,P-1],[g-1,P],[g+1,P],[g-1,P+1],[g,P+1],[g+1,P+1]],v=[];for(let j of m){let B=j[0]+j[1]*xx;v.push(...cells[B].pos)}l=v.every(function(e){return dist(e.x,e.y,i,c)>dsep-1})}}if(5>=frameRate())bM reak}return l?new Integral_line(s,a,e):null}function newParticle5(e){let f=!1,l=0,i=0,c,s;nested_break:for(let a=0;a<floor(xx/2);a++)for(let _=0;_<floor(yy/2);_++){var $=a+_*xx;if(cells[$]&&(!cells[$].spot||!cells[$].spot2)){if(l=map(a,0,xx,0,width)+random(-.5,.5),i=map(_,0,yy,0,height)+random(-.5,.5),c=map(l,0,width,-width/2,width/2),s=map(i,0,height,-height/2,height/2),a>0&&_>0&&a<xx-1&&_<yy-1){let o=[[a,_],[a-1,_-1],[a,_-1],[a+1,_-1],[a-1,_],[a+1,_],[a-1,_+1],[a,_+1],[a+1,_+1]],n=[];for(let r of o){let d=r[0]+r[M 1]*xx;n.push(...cells[d].pos)}f=n.every(function(e){return dist(e.x,e.y,c,s)>dsep-1})}if(f)break nested_break}}return f?new Integral_line(l,i,e):null}function newParticle6(e){let f=!1,l=0,i=0,c,s;nested_break:for(let a=xx-1;a>=floor(xx/2);a--)for(let _=yy-1;_>=floor(yy/2);_--){var $=a+_*xx;if(cells[$]&&(!cells[$].spot||!cells[$].spot2)){if(l=map(a,0,xx,0,width)+random(-.5,.5),i=map(_,0,yy,0,height)+random(-.5,.5),c=map(l,0,width,-width/2,width/2),s=map(i,0,height,-height/2,height/2),a>0&&_>0&&a<xx-1&&_<yy-1){let o=M [[a,_],[a-1,_-1],[a,_-1],[a+1,_-1],[a-1,_],[a+1,_],[a-1,_+1],[a,_+1],[a+1,_+1]],n=[];for(let r of o){let d=r[0]+r[1]*xx;n.push(...cells[d].pos)}f=n.every(function(e){return dist(e.x,e.y,c,s)>dsep-1})}if(f)break nested_break}}return f?new Integral_line(l,i,e):null}function newParticle51(e){let f=!1,l=0,i=0,c,s;nested_break:for(let a=0;a<floor(xx/2);a++)for(let _=floor(yy/2);_<yy;_++){var $=a+_*xx;if(cells[$]&&(!cells[$].spot||!cells[$].spot2)){if(l=map(a,0,xx,0,width)+random(-.5,.5),i=map(_,0,yy,0,height)+random(-.5M ,.5),c=map(l,0,width,-width/2,width/2),s=map(i,0,height,-height/2,height/2),a>0&&_>0&&a<xx-1&&_<yy-1){let o=[[a,_],[a-1,_-1],[a,_-1],[a+1,_-1],[a-1,_],[a+1,_],[a-1,_+1],[a,_+1],[a+1,_+1]],n=[];for(let r of o){let d=r[0]+r[1]*xx;n.push(...cells[d].pos)}f=n.every(function(e){return dist(e.x,e.y,c,s)>dsep-1})}if(f)break nested_break}}return f?new Integral_line(l,i,e):null}function newParticle52(e){let f=!1,l=0,i=0,c,s;nested_break:for(let a=xx-1;a>=floor(xx/2);a--)for(let _=floor(yy/2);_>=0;_--){var $=a+_*xx;if(cells[M $]&&(!cells[$].spot||!cells[$].spot2)){if(l=map(a,0,xx,0,width)+random(-.5,.5),i=map(_,0,yy,0,height)+random(-.5,.5),c=map(l,0,width,-width/2,width/2),s=map(i,0,height,-height/2,height/2),a>0&&_>0&&a<xx-1&&_<yy-1){let o=[[a,_],[a-1,_-1],[a,_-1],[a+1,_-1],[a-1,_],[a+1,_],[a-1,_+1],[a,_+1],[a+1,_+1]],n=[];for(let r of o){let d=r[0]+r[1]*xx;n.push(...cells[d].pos)}f=n.every(function(e){return dist(e.x,e.y,c,s)>dsep-1})}if(f)break nested_break}}return f?new Integral_line(l,i,e):null}function RK4step(e,f,l){let i=math.mM ultiply(e(f),l),c=math.multiply(e(math.add(f,math.multiply(.5,i))),l),s=math.multiply(e(math.add(f,math.multiply(.5,c))),l),a=math.multiply(e(math.add(f,s)),l);return math.add(f,math.divide(math.add(math.add(math.add(i,math.multiply(2,c)),math.multiply(2,s)),a),6))}function RK4integrate(e,f,l){let i=math.zeros(l.length,f.length);i._data[0]=f;for(let c=1;c<l.length;c++)i._data[c]=RK4step(e,i._data[c-1],l[c]-l[c-1]);return i._data}let f4=function(e){e[0],e[1];let f=e[2],l=e[3];return[f,l,-l,f]};function interpolate_cM oord(e,f,l,i){let c=floor(map(e,-width/2,width/2,0,width)/l),s=floor(map(f,-height/2,height/2,0,height)/l);return c+s*i}function makeArr(e,f,l){for(var i=[],c=(f-e)/(l-1),s=0;s<l;s++)i.push(e+c*s);return i}const range=(e,f,l)=>Array.from({length:(f-e)/l+1},(f,i)=>e+i*l);function windowResized(){centerCanvas()}function keyTyped(){return"p"===key&&saveCanvas("diffusion","jpg"),!1}function touchStarted(){return 3===touches.length&&saveCanvas("diffusion","jpg"),!1} <script id="snippet-random-code" tM ype="text/javascript"> // DO NOT EDIT THIS SECTION let seed = window.location.href.split('/').find(t => t.includes('i0')); if (seed == null) { const alphabet = "0123456789abcdefghijklmnopqrstuvwsyz"; seed = new URLSearchParams(window.location.search).get("seed") || Array(64).fill(0).map(_ => alphabet[(Math.random() * alphabet.length) | 0]).join('') + "i0"; let pattern = "seed="; for (let i = 0; i < seed.length - pattern.lengM if (seed.substring(i, i + pattern.length) == pattern) { seed = seed.substring(i + pattern.length); break; function cyrb128($) { let _ = 1779033703, u = 3144134277, i = 1013904242, l = 2773480762; for (let n = 0, r; n < $.length; n++) _ = u ^ Math.imul(_ ^ (r = $.charCodeAt(n)), 597399067), u = i ^ Math.imul(u ^ r, 2869860233), i = l ^ Math.imul(i ^ r, 951274213), l = _ ^ MathM .imul(l ^ r, 2716044179); return _ = Math.imul(i ^ _ >>> 18, 597399067), u = Math.imul(l ^ u >>> 22, 2869860233), i = Math.imul(_ ^ i >>> 17, 951274213), l = Math.imul(u ^ l >>> 19, 2716044179), [(_ ^ u ^ i ^ l) >>> 0, (u ^ _) >>> 0, (i ^ _) >>> 0, (l ^ _) >>> 0] function sfc32($, _, u, i) { return function () { u >>>= 0, i >>>= 0; var l = ($ >>>= 0) + (_ >>>= 0) | 0; return $ = _ ^ _ >>> 9, _ = u + (u << 3) | 0, u = (u = u <M < 21 | u >>> 11) + (l = l + (i = i + 1 | 0) | 0) | 0, (l >>> 0) / 4294967296 let mathRand = sfc32(...cyrb128(seed)); background-color: #fefefe; margin: 0px; overflow: hidden; width: 100%; height: 100%; <script type="text/javascript"> <script defer src="https://static.cloudflareinsights.com/beacon.min.js/vb26e4fa9e5134444860bM6 e286fd8771851679335129114" integrity="sha512-M3hN/6cva/SjwrOtyXeUa5IuCT0sedyfT+jK/OV+s+D0RnzrTfwjwJHhd+wYfMm9HJSrZ1IKksOdddLuN6KOzw==" data-cf-beacon='{"rayId":"7afe9c0f3a99549d","version":"2023.3.0","b":1,"token":"6c07c178c94442f695e7a0a2aaee641a","si":100}' crossorigin="anonymous"></script> text/html;charset=utf-8 <meta charset="UTF-8"> <meta http-equiv="Content-Security-Policy" content="default-src *; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval' http://cdnjs.cloudflare.com"> <title>Diffusion</title> <script sandbox="allow-scripts" type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.5.0/p5.min.js"></script> <script sandbox="allow-scripts" type="text/javascript" src="https://cdnjs.cloudflareM .com/ajax/libs/mathjs/11.5.1/math.min.js"></script> <script sandbox="allow-scripts" type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/chroma-js/2.4.2/chroma.min.js"></script> <script type="text/javascript"> var eigenvector_maj,eigenvector_min,flowcolorfield,cols,rows,colAlg,integral_lines=[];let center;var scl=10,inc=.06,zoff=0;let w,h,wdt,margin=10,cells=[],dsep=3,xx,yy,dt=.5,t,strk,palette1=[["#ce2d42","#082880","#7462f9","#f4b53f","#123676","#9c223d","#e6c7b4"],M ["#f43b79","#1136ed","#6b43dd","#ef9029","#4aa4ae","#69239b","#f7f1b4"],["#7fefe4","#be3edd","#70cfe5","#f2c666","#e6c7b4","#583fc4","#fff57d"],["#80aded","#7b66f7","#658fdb","#f2e18b","#f7f1b4","#773caa","#f4b537"],["#a5e2f2","#a783ed","#61c1db","#f7c872","#6eabf4","#6d52dd","#ff7db2"],["#d8d8d8","#898de0","#89afe5","#f9e78f","#85b2e8","#8110e5","#bf2b6e"],["#7094fc","#643ac9","#306bef","#9100dd","#e6c7b4","#e2396d","#ef3a65"],["#80aded","#a28fef","#4688e8","#db003a","#f7f1b4","#d632a4","#bc174e"],["#594499","#db3M e3e","#25ceb2","#02827b","#a0a09f","#56661d","#34067c"],["#425999","#bc3f3f","#9fe2cc","#108fc1","#d37676","#132691","#5b3c96"],["#ffeda1","#91205c","#2929e2","#9509b7","#70b9c0","#5474e8","#d30b8c"],["#f9cfc7","#721b74","#1c70ea","#7c1d93","#919bdb","#5574ce","#f25c87"],["#f25a7b","#e960af","#992843","#8b52f7","#6eabf4","#3714a1","#445b96"],["#ff399c","#e73250","#d32f53","#33bbff","#7de7ff","#69239b","#8041f9"],["#6f6674","#34a0a5","#992843","#f98450","#6eabf4","#3714a1","#445b96"],["#4d82aa","#24c6c6","#d32f53","M #f973a0","#7de7ff","#69239b","#8041f9"],["#ff6d40","#361ee0","#992843","#e6c7b4","#9370f2","#3714a1","#445b96"],["#e6372f","#3a338e","#d32f53","#f7f1b4","#8092ff","#69239b","#8041f9"],["#ffa943","#2177f4","#35fc93","#f9cfd2","#6eabf4","#3714a1","#445b96"],["#ffce45","#2f7083","#5affdf","#fcf4b7","#7de7ff","#69239b","#8041f9"],["#41d9f2","#528cd1","#3a6eba","#5f64c1","#4a97f4","#7426bf","#f7d52f"],["#71f2ff","#249cff","#63a1ea","#7f88db","#56a6f4","#7f0caf","#f7b643"],["#41d9f2","#51fcbb","#d3057b","#295cff","#7d22fM f","#51d7e5","#e6c7b4"],["#71f2ff","#81fcca","#f91cb0","#0239c1","#8450d6","#05bdc6","#f7f1b4"],["#43bbef","#53f9e4","#bf2640","#5082ff","#8648ff","#36ffcf","#881ed3"],["#6bcced","#fce586","#f93ebb","#52a1ff","#8e51a8","#05bdc6","#ff0895"],["#a745ed","#fcbbbb","#f20a41","#ffd252","#0606bf","#ff459e","#881ed3"],["#7b19d1","#a7d0f9","#ba0f40","#fcd5bb","#4545ce","#9666ff","#ff0895"],["#31a4dd","#6f3bff","#f20a41","#4470a5","#7171f4","#e710f9","#2e92ff"],["#ffffab","#8e7de2","#ba0f40","#9312b2","#85b5f9","#830591","#0M 34a7f"],["#06a0ba","#6f3bff","#f20a41","#8777f7","#4848c1","#6b11f7","#e6c7b4"],["#2bc5cc","#8e7de2","#ba0f40","#6155bf","#4b4bf7","#a318b7","#f7f1b4"],["#06a0ba","#6f3bff","#8473ff","#fce875","#4848c1","#ffb3c9","#2e92ff"],["#2bc5cc","#8e7de2","#9e61ba","#ffd2c7","#0f0fce","#f7e579","#034a7f"],["#c10839","#6f3bff","#ff06a6","#f2a5bb","#4848c1","#117ff7","#579ef2"],["#a20dd3","#8e7de2","#aa08ff","#f2ec79","#0f0fce","#a60abc","#1b64ce"],["#06a0ba","#6f3bff","#fca660","#f7f377","#9149bf","#f71165","#31f0ff"],["#2bc5cM c","#8e7de2","#dd582a","#ffe09c","#630ca8","#a8275c","#04717c"],["#e041b3","#3e71ff","#ffec64","#77c1f7","#9149bf","#f71165","#e6c7b4"],["#f95089","#8e7de2","#f99175","#1d6bdd","#630ca8","#a8275c","#f7f1b4"],["#f4d334","#0636cc","#8989ef","#e6c7b4","#8005e0","#fc68a4","#3386ff"],["#fc889e","#3b72a3","#2d5cc4","#f7f1b4","#f938cb","#d61a1a","#04717c"],["#f4d334","#3ef6ff","#5347f4","#b877f7","#9149bf","#f71165","#e6c7b4"],["#fc889e","#1fb2b2","#2d5cc4","#6e1ed6","#630ca8","#a8275c","#f7f1b4"],["#f4d334","#3ef6ff","#5M 347f4","#f7f777","#9149bf","#ef5090","#e6c7b4"],["#fc889e","#1fb2b2","#2d5cc4","#ffce88","#630ca8","#ba0457","#f7f1b4"],["#f4d334","#3ef6ff","#5347f4","#77c4f7","#9149bf","#f71165","#854fba"],["#fc889e","#1fb2b2","#2d5cc4","#2187bf","#630ca8","#a8275c","#e783ea"],["#f4d334","#3ef6ff","#f97575","#f4dc78","#9149bf","#f71165","#e6c7b4"],["#fc889e","#1fb2b2","#cc2929","#f28b79","#630ca8","#a8275c","#f7f1b4"],["#f4d334","#3ef6ff","#f97575","#f279ab","#9149bf","#645eea","#e6c7b4"],["#fc889e","#52adff","#cc2929","#e81073"M ,"#630ca8","#3a3acc","#f7f1b4"],["#3ac9d8","#6f3bff","#44acf2","#fce875","#bf23f9","#ffb3c9","#2e92ff"],["#44acf2","#8e7de2","#6cffff","#ffd2c7","#9449ce","#f7e579","#034a7f"],["#06a0ba","#6f3bff","#fc4c7e","#f9b175","#6c6ce5","#8f58f9","#e6c7b4"],["#2bc5cc","#8e7de2","#cf4ef9","#f7df77","#4949c1","#a915ff","#f7f1b4"],["#ef01c4","#065ca8","#1c00ba","#ffee94","#c053ba","#8f58f9","#4ea8f9"],["#a60160","#30bec3","#5e52db","#ffebae","#da55f2","#a915ff","#4febf7"],["#f44260","#3c5ba0","#845ecc","#f4b53f","#3d9fc1","#9c2M 23d","#e6c7b4"],["#f43b79","#4058ad","#6c3ca5","#ef9029","#317ec4","#69239b","#f7f1b4"],["#f44260","#3c5ba0","#7070e8","#f27740","#3d9fc1","#d34040","#e6c7b4"],["#f43b79","#4058ad","#4d4dc1","#ef9029","#317ec4","#ed5487","#f7f1b4"],["#f244ee","#5c75c6","#7070e8","#3cd3b6","#3d9fc1","#d34040","#e6c7b4"],["#f43b79","#637cc1","#4d4dc1","#1cb7b7","#317ec4","#ed5487","#f7f1b4"],["#e5491f","#2058d3","#7462f9","#40f2d0","#123676","#9c223d","#e6c7b4"],["#ef973f","#177199","#6b43dd","#15abba","#4aa4ae","#69239b","#f7f1b4"],M ["#e22079","#2058d3","#7462f9","#40f2d0","#5a92e5","#9c223d","#e6c7b4"],["#f21c59","#177199","#6b43dd","#15abba","#4658f9","#69239b","#f7f1b4"],["#e22079","#2058d3","#e6c7b4","#40f2d0","#5a92e5","#ba4564","#edf28b"],["#f21c59","#177199","#f7f1b4","#15abba","#4658f9","#e5336a","#43f7c8"],["#e22079","#4b80e0","#e6c7b4","#41a9ef","#5a92e5","#bc0d8b","#f7adf7"],["#f21c59","#197abc","#f7f1b4","#36a9cc","#4658f9","#d3057f","#43f7c8"],["#e22079","#4b80e0","#e6c7b4","#435ced","#e2b55a","#ea397d","#f4e2ae"],["#f21c59","#197M abc","#f7f1b4","#7f63f7","#f98562","#e84b3a","#e9f49f"],["#0850b7","#6771f9","#8213bc","#75f9e0","#4848c1","#ffb3c9","#2e92ff"],["#3081e2","#5285dd","#9604af","#15abba","#0f0fce","#f7e579","#034a7f"],["#d80e3e","#6771f9","#8213bc","#f7ad77","#4848c1","#ffb3c9","#31b5ff"],["#ef4878","#5285dd","#9604af","#f4cb78","#0f0fce","#f7e579","#2a76d1"],["#f98246","#69acf7","#8213bc","#f7ad77","#4848c1","#ffb3c9","#31b5ff"],["#ed7d4a","#5285dd","#b529d3","#f4cb78","#0f0fce","#f7e579","#2a76d1"],["#f7cd48","#69d6f4","#8213bc","M #f7ad77","#7649bf","#ffb3c9","#e6c7b4"],["#f49090","#21b5d8","#b529d3","#f4cb78","#5829b2","#f7e579","#f7f1b4"],["#4a82f4","#f22a51","#8213bc","#f7ad77","#905df4","#ffb3c9","#0c85ba"],["#4cb2f2","#b72c4e","#b529d3","#f4cb78","#542ad3","#f7e579","#096889"],["#4a82f4","#f22a51","#1522ba","#f7ad77","#d32fc0","#b6fffa","#0c85ba"],["#4cb2f2","#b72c4e","#483d9b","#f4cb78","#e50a6e","#f1ffb8","#096889"],["#4a82f4","#f22a51","#4b23db","#f7ad77","#d1304b","#5b99f4","#1dbcb4"],["#4cb2f2","#b72c4e","#694eea","#f4cb78","#d6166M 0","#5cd3f2","#096889"],["#ad4cf2","#f22a51","#8213bc","#f478b0","#5ff2f2","#ffb3c9","#0c85ba"],["#8b05e2","#b72c4e","#b529d3","#f4cb78","#3ea6b7","#f7e579","#096889"],["#584def","#f22a51","#a52cdd","#f2c679","#60caef","#d2b6ff","#0d53b7"],["#4f24c6","#b72c4e","#b529d3","#efaa7b","#3ea6b7","#f7e579","#458bdd"],["#584def","#ef592b","#2cdbc1","#f2c679","#6290ed","#b8fff1","#0d53b7"],["#4f24c6","#f27949","#2ec0d8","#efaa7b","#4067b5","#f7e579","#458bdd"],["#584def","#ed2e8a","#2eacd8","#f2c679","#6290ed","#6929ce","#0M d53b7"],["#4f24c6","#c11670","#3070d6","#efaa7b","#4067b5","#4a4add","#458bdd"],["#584def","#ed2e8a","#2eacd8","#ef9c7b","#6290ed","#6929ce","#0d53b7"],["#4f24c6","#c11670","#3070d6","#fc583d","#4067b5","#4a4add","#458bdd"],["#b7b7b7","#0a0a0a","#ffffff","#dbdcdd","#b2b2b2","#a7a7a8","#4e4f4f"],["#d8d8d8","#636363","#dbdcdd","#b2b2b2","#4e4f4f","#e0e1e2","#3f3f3f"],["#5475f1","#ce7ca5","#b0f2da","#edded1","#80d3d8","#9fa1a6","#eafefe"],["#3155c4","#7534ad","#4597ad","#b7183b","#4058cc","#9e2a6f","#1eafab"],];functiM on centerCanvas(){var e=(windowWidth-width)/2,f=(windowHeight-height)/2;cnv.position(e,f)}function setup(){wdt=windowWidth<windowHeight?windowWidth:windowHeight;let e=int(map(mathRand(),0,1,0,3)),f;0===e?(h=.7*(w=wdt),f="7:5"):1===e?(w=.7*(h=wdt),f="5:7"):2===e&&(w=wdt,h=wdt,f="1:1"),cnv=createCanvas(w,h),centerCanvas();pixelDensity(displayDensity()),smooth(),strokeWeight(strk=constrain((wdt/800).toFixed(1),.5,1));let l=int(1990*mathRand());noiseSeed(l),randomSeed(l),noiseDetail(2,1),strokeCap(ROUND),cols=floor(widM th/(scl=wdt/135))+1,rows=floor(height/scl)+1,xx=floor(width/dsep),yy=floor(height/dsep),eigenvector_maj=Array(cols*rows),flowcolorfield=Array(cols*rows),eigenvector_min=Array(cols*rows),colAlg=int(random(2)),paletteIndex=int(map(random(1),0,1,0,palette1.length));let i=chroma.scale(palette1[paletteIndex]).colors(cols*rows);inc=random(.013,.036),t=range(0,10,dt);for(var c=0;c<1;c++){let s=random(width),a=random(height),_=random(width),$=random(height);integral_lines[c]=new Integral_line(s,a,"major"),integral_lines[c+M 1]=new Integral_line(_,$,"minor")}center=createVector(width/2,height/2),background(10);for(var o=0,n=0;n<rows;n++){for(var r=0,d=0;d<cols;d++){var b,p,u,x,y,g=d+n*cols,P=noise(r,o,zoff)*TAU;if(0===colAlg)b=355*noise(r/2+140,o/2+140,zoff/10),p=325*noise(r/2+40,o/2+40,zoff/10),u=355*noise(r/2+210,o/2+210,zoff/10),x=map(noise(r/2+250,o/2+250,zoff/10),0,1,165,255);else if(1===colAlg){var m=int(map(noise(r,o,zoff),0,1,0,i.length));b=chroma(i[m]).get("rgb.r"),p=chroma(i[m]).get("rgb.g"),u=chroma(i[m]).get("rgb.b"),x=map(M noise(r/2+250,o/2+250,zoff/10),0,1,165,255)}var v=createVector(0,0);v.normalize();var j=map(d,0,cols,-width/2,width/2),B=map(n,0,rows,-height/2,height/2),k=createVector(j,B);k.normalize();let z=sqrt(pow((y=p5.Vector.fromAngle(PI/4)).x,2)+pow(y.y,2)),I=atan(y.y/y.x),A=exp(-1*pow(k.mag()-v.mag(),2))*z,C=math.matrix([[cos(2*I),sin(2*I)],[sin(2*I),-cos(2*I)]]),R=math.multiply(C,A);var K=createVector(math.eigs(R).vectors._data[0][0],math.eigs(R).vectors._data[0][1]),V=createVector(math.eigs(R).vectors._data[1][0],math.eM igs(R).vectors._data[1][1]);K.mult(math.eigs(R).values._data[0]),V.mult(math.eigs(R).values._data[1]);let F=cos(2*I)*cos(2*I)-sin(2*I)*sin(2*I),T=[[cos(P),-sin(P)],[sin(P),cos(P)]];K.setMag(F),V.setMag(F);let M=math.multiply(T,[K.x,K.y]),G=math.multiply(T,[V.x,V.y]);eigenvector_maj[g]=createVector(M[0],M[1]),eigenvector_min[g]=createVector(G[0],G[1]),flowcolorfield[g]=[b,p,u,x],r+=inc}o+=inc,zoff+=3e-4}for(var n=0;n<yy;n+=1)for(var d=0;d<xx;d+=1){var g=d+n*xx;cells[g]=new Cell(d,n)}for(var c=0;c<30;c++){let S=newPaM rticle3("major");null!==S&&integral_lines.push(S);let q=newParticle3("minor");null!==q&&integral_lines.push(q)}let D=cols*rows,E=0===colAlg?"Algorithm":"Palette";window.$generativeTraits={Type:"Flow Field",Vectors:D,Colors:E,Format:f}}function draw(){background(10),translate(center.x,center.y);for(var e=0;e<integral_lines.length;e++)integral_lines[e].follow(eigenvector_maj,eigenvector_min),integral_lines[e].edges(),integral_lines[e].changeCol(flowcolorfield),integral_lines[e].display(flowcolorfield);let f=cells.filM ter(e=>!0===e.spot||!0===e.spot2).length;if(f<.9*cells.length){let l=newParticle4("major",0);null!==l&&integral_lines.push(l);let i=newParticle4("major",1);null!==i&&integral_lines.push(i);let c=newParticle4("minor",0);null!==c&&integral_lines.push(c);let s=newParticle4("minor",1);null!==s&&integral_lines.push(s);let a=newParticle3("major");null!==a&&integral_lines.push(a);let _=newParticle3("minor");null!==_&&integral_lines.push(_)}else if(f>=.9*cells.length&&f<cells.length-cells.length/180){let $=newParticle3("maM jor");null!==$&&integral_lines.push($);let o=newParticle3("minor");null!==o&&integral_lines.push(o);let n=newParticle5("major");null!==n&&integral_lines.push(n);let r=newParticle5("minor");null!==r&&integral_lines.push(r);let d=newParticle6("major");null!==d&&integral_lines.push(d);let b=newParticle6("minor");null!==b&&integral_lines.push(b);let p=newParticle51("major");null!==p&&integral_lines.push(p);let u=newParticle51("minor");null!==u&&integral_lines.push(u);let x=newParticle52("major");null!==x&&integral_lineM s.push(x);let y=newParticle52("minor");null!==y&&integral_lines.push(y)}else noLoop();noFill(),stroke(220),strokeWeight(10),rect(-width/2,-height/2,width,height)}class Tensor{constructor(e,f,l,i,c){this.matrix=e,this.majVector=f,this.minVector=l,this.majValue=i,this.minValue=c}}class Cell{constructor(e,f){this.i=e,this.j=f,this.spot=null,this.spot2=null,this.index,this.pos=[]}drawGrid(){noFill(),stroke(255),this.spot&&fill(255,0,0);let e=createVector(this.i,this.j);rect(e.x*dsep,e.y*dsep,dsep,dsep)}}function IntegrM al_line(e,f,l){this.iniPos=createVector(map(e,0,width,-width/2,width/2),map(f,0,height,-height/2,height/2)),this.iniPos2=this.iniPos.copy(),this.iniPos3=this.iniPos.copy(),this.iniPos4=this.iniPos2.copy(),this.fBool=!0,this.fBool2=!0,this.fBool3=!0,this.fBool4=!0,this.obj=l,this.maj1=[],this.min=[],this.maj2=[],this.min2=[],this.col=int(random(4)),this.changeCol=function(e){switch(this.col){case 0:var f=this.iniPos.x,l=this.iniPos.y,i=interpolate_coord(f,l,scl,cols),c=e[i];c&&stroke(color(c[0],c[1],c[2],c[3]));breaM k;case 1:var f=this.iniPos2.x,l=this.iniPos2.y,i=interpolate_coord(f,l,scl,cols),c=e[i];c&&stroke(color(c[0],c[1],c[2],c[3]));break;case 2:var f=this.iniPos3.x,l=this.iniPos3.y,i=interpolate_coord(f,l,scl,cols),c=e[i];c&&stroke(color(c[0],c[1],c[2],c[3]));break;case 3:var f=this.iniPos4.x,l=this.iniPos4.y,i=interpolate_coord(f,l,scl,cols),c=e[i];c&&stroke(color(c[0],c[1],c[2],c[3]))}},this.follow=function(e,f){if("major"===this.obj){if(this.fBool)for(let l=1;l<t.length;l++){var i=interpolate_coord(this.iniPos.x,thiM s.iniPos.y,scl,cols);if(e[i]){let c=RK4step(f4,[this.iniPos.x,this.iniPos.y,e[i].x,e[i].y],t[l]-t[l-1]);this.maj1.push([c[0],c[1]]),this.iniPos=createVector(c[0],c[1]);var s=interpolate_coord(c[0],c[1],dsep,xx);if(cells[s]&&(cells[s].pos.push(createVector(c[0],c[1])),cells[s].spot=!0,cells[s].spot2)){this.fBool=cells[s].pos.every(e=>dist(e.x,e.y,c[0],c[1])>0);break}}}if(this.fBool3)for(let a=1;a<t.length;a++){var _=interpolate_coord(this.iniPos3.x,this.iniPos3.y,scl,cols);if(e[_]){let $=RK4step(f4,[this.iniPos3.x,tM his.iniPos3.y,-1*e[_].x,-1*e[_].y],t[a]-t[a-1]);this.maj2.push([$[0],$[1]]),this.iniPos3=createVector($[0],$[1]);var s=interpolate_coord($[0],$[1],dsep,xx);if(cells[s]&&(cells[s].pos.push(createVector($[0],$[1])),cells[s].spot=!0,cells[s].spot2)){this.fBool3=cells[s].pos.every(e=>dist(e.x,e.y,$[0],$[1])>0);break}}}}if("minor"===this.obj){if(this.fBool2)for(let o=1;o<t.length;o++){var n=interpolate_coord(this.iniPos2.x,this.iniPos2.y,scl,cols);if(f[n]){let r=RK4step(f4,[this.iniPos2.x,this.iniPos2.y,f[n].x,f[n].y],tM [o]-t[o-1]);this.min.push([r[0],r[1]]),this.iniPos2=createVector(r[0],r[1]);var s=interpolate_coord(r[0],r[1],dsep,xx);if(cells[s]&&(cells[s].pos.push(createVector(r[0],r[1])),cells[s].spot2=!0,cells[s].spot)){this.fBool2=cells[s].pos.every(e=>dist(e.x,e.y,r[0],r[1])>0);break}}}if(this.fBool4)for(let d=1;d<t.length;d++){var b=interpolate_coord(this.iniPos4.x,this.iniPos4.y,scl,cols);if(f[b]){let p=RK4step(f4,[this.iniPos4.x,this.iniPos4.y,-1*f[b].x,-1*f[b].y],t[d]-t[d-1]);this.min2.push([p[0],p[1]]),this.iniPos4=crM eateVector(p[0],p[1]);var s=interpolate_coord(p[0],p[1],dsep,xx);if(cells[s]&&(cells[s].pos.push(createVector(p[0],p[1])),cells[s].spot2=!0,cells[s].spot)){this.fBool4=cells[s].pos.every(e=>dist(e.x,e.y,p[0],p[1])>0);break}}}}},this.display=function(e){noFill(),strokeWeight(strk),beginShape();let f=this.maj1;for(let l=0;l<f.length;l++)vertex(f[l][0],f[l][1]);endShape(),beginShape();let i=this.min;for(let c=0;c<i.length;c++)vertex(i[c][0],i[c][1]);endShape(),beginShape();let s=this.maj2;for(let a=0;a<s.length;a++)veM rtex(s[a][0],s[a][1]);endShape(),beginShape();let _=this.min2;for(let $=0;$<_.length;$++)vertex(_[$][0],_[$][1]);endShape()},this.edges=function(){(this.iniPos.x>width/2||this.iniPos.x<-width/2||this.iniPos.y>height/2||this.iniPos.y<-height/2)&&(this.fBool=!1),(this.iniPos2.x>width/2||this.iniPos2.x<-width/2||this.iniPos2.y>height/2||this.iniPos2.y<-height/2)&&(this.fBool2=!1),(this.iniPos3.x>width/2||this.iniPos3.x<-width/2||this.iniPos3.y>height/2||this.iniPos3.y<-height/2)&&(this.fBool3=!1),(this.iniPos4.x>widthM /2||this.iniPos4.x<-width/2||this.iniPos4.y>height/2||this.iniPos4.y<-height/2)&&(this.fBool4=!1)},this.other=function(e){let f=this.iniPos.x,l=this.iniPos.y;var i=interpolate_coord(f,l,dsep,xx);e[i]&&e[i].pos&&e[i].spot2&&(this.fBool=e[i].pos.every(e=>dist(e.x,e.y,f,l)>0));let c=this.iniPos2.x,s=this.iniPos2.y;var a=interpolate_coord(c,s,dsep,xx);e[a]&&e[a].pos&&e[a].spot&&(this.fBool2=e[a].pos.every(e=>dist(e.x,e.y,c,s)>0));let _=this.iniPos3.x,$=this.iniPos3.y;var o=interpolate_coord(_,$,dsep,xx);e[o]&&e[o].pos&M &e[o].spot2&&(this.fBool3=e[o].pos.every(e=>dist(e.x,e.y,_,$)>0));let n=this.iniPos4.x,r=this.iniPos4.y;var d=interpolate_coord(n,r,dsep,xx);e[d]&&e[d].pos&&e[d].spot&&(this.fBool4=e[d].pos.every(e=>dist(e.x,e.y,n,r)>0))}}function newParticle3(e){let f=!1,l,i,c,s;for(;!f;){l=random(width),i=random(height),c=map(l,0,width,-width/2,width/2),s=map(i,0,height,-height/2,height/2);let a=floor(l/dsep)+1,_=floor(i/dsep)+1;if(a>0&&_>0&&a<xx-1&&_<yy-1){let $=[[a,_],[a-1,_-1],[a,_-1],[a+1,_-1],[a-1,_],[a+1,_],[a-1,_+1],[a,_+1M ],[a+1,_+1]],o=[];for(let n of $){let r=n[0]+n[1]*xx;o.push(...cells[r].pos)}f=o.every(function(e){return dist(e.x,e.y,c,s)>dsep-1})}}return f?new Integral_line(l,i,e):null}function newParticle4(e,f){let l=!1,i,c,s,a;for(;!l;){let _=[];for(let $ in integral_lines)integral_lines.length,"major"===e?0===f?_.push(...integral_lines[$].maj1):1===f&&_.push(...integral_lines[$].maj2):"minor"===e&&(0===f?_.push(...integral_lines[$].min):1===f&&_.push(...integral_lines[$].min2));let o=int(random(_.length-1)),n=_[o];_.findIndM ex(e=>e[0]===n[0]&&e[1]===n[1]);let r=_.find((e,f)=>f===o+1);if(r){let d=r[0]-n[0],b=r[1]-n[1],p=sqrt(d*d+b*b),u=d/p,x=-(b/p),y=u;i=n[0]+x*dsep,c=n[1]+y*dsep,s=map(i,-width/2,width/2,0,width),a=map(c,-height/2,height/2,0,height);let g=floor(s/dsep),P=floor(a/dsep);if(g>0&&P>0&&g<xx-1&&P<yy-1){let m=[[g,P],[g-1,P-1],[g,P-1],[g+1,P-1],[g-1,P],[g+1,P],[g-1,P+1],[g,P+1],[g+1,P+1]],v=[];for(let j of m){let B=j[0]+j[1]*xx;v.push(...cells[B].pos)}l=v.every(function(e){return dist(e.x,e.y,i,c)>dsep-1})}}if(5>=frameRate())bM reak}return l?new Integral_line(s,a,e):null}function newParticle5(e){let f=!1,l=0,i=0,c,s;nested_break:for(let a=0;a<floor(xx/2);a++)for(let _=0;_<floor(yy/2);_++){var $=a+_*xx;if(cells[$]&&(!cells[$].spot||!cells[$].spot2)){if(l=map(a,0,xx,0,width)+random(-.5,.5),i=map(_,0,yy,0,height)+random(-.5,.5),c=map(l,0,width,-width/2,width/2),s=map(i,0,height,-height/2,height/2),a>0&&_>0&&a<xx-1&&_<yy-1){let o=[[a,_],[a-1,_-1],[a,_-1],[a+1,_-1],[a-1,_],[a+1,_],[a-1,_+1],[a,_+1],[a+1,_+1]],n=[];for(let r of o){let d=r[0]+r[M 1]*xx;n.push(...cells[d].pos)}f=n.every(function(e){return dist(e.x,e.y,c,s)>dsep-1})}if(f)break nested_break}}return f?new Integral_line(l,i,e):null}function newParticle6(e){let f=!1,l=0,i=0,c,s;nested_break:for(let a=xx-1;a>=floor(xx/2);a--)for(let _=yy-1;_>=floor(yy/2);_--){var $=a+_*xx;if(cells[$]&&(!cells[$].spot||!cells[$].spot2)){if(l=map(a,0,xx,0,width)+random(-.5,.5),i=map(_,0,yy,0,height)+random(-.5,.5),c=map(l,0,width,-width/2,width/2),s=map(i,0,height,-height/2,height/2),a>0&&_>0&&a<xx-1&&_<yy-1){let o=M [[a,_],[a-1,_-1],[a,_-1],[a+1,_-1],[a-1,_],[a+1,_],[a-1,_+1],[a,_+1],[a+1,_+1]],n=[];for(let r of o){let d=r[0]+r[1]*xx;n.push(...cells[d].pos)}f=n.every(function(e){return dist(e.x,e.y,c,s)>dsep-1})}if(f)break nested_break}}return f?new Integral_line(l,i,e):null}function newParticle51(e){let f=!1,l=0,i=0,c,s;nested_break:for(let a=0;a<floor(xx/2);a++)for(let _=floor(yy/2);_<yy;_++){var $=a+_*xx;if(cells[$]&&(!cells[$].spot||!cells[$].spot2)){if(l=map(a,0,xx,0,width)+random(-.5,.5),i=map(_,0,yy,0,height)+random(-.5M ,.5),c=map(l,0,width,-width/2,width/2),s=map(i,0,height,-height/2,height/2),a>0&&_>0&&a<xx-1&&_<yy-1){let o=[[a,_],[a-1,_-1],[a,_-1],[a+1,_-1],[a-1,_],[a+1,_],[a-1,_+1],[a,_+1],[a+1,_+1]],n=[];for(let r of o){let d=r[0]+r[1]*xx;n.push(...cells[d].pos)}f=n.every(function(e){return dist(e.x,e.y,c,s)>dsep-1})}if(f)break nested_break}}return f?new Integral_line(l,i,e):null}function newParticle52(e){let f=!1,l=0,i=0,c,s;nested_break:for(let a=xx-1;a>=floor(xx/2);a--)for(let _=floor(yy/2);_>=0;_--){var $=a+_*xx;if(cells[M $]&&(!cells[$].spot||!cells[$].spot2)){if(l=map(a,0,xx,0,width)+random(-.5,.5),i=map(_,0,yy,0,height)+random(-.5,.5),c=map(l,0,width,-width/2,width/2),s=map(i,0,height,-height/2,height/2),a>0&&_>0&&a<xx-1&&_<yy-1){let o=[[a,_],[a-1,_-1],[a,_-1],[a+1,_-1],[a-1,_],[a+1,_],[a-1,_+1],[a,_+1],[a+1,_+1]],n=[];for(let r of o){let d=r[0]+r[1]*xx;n.push(...cells[d].pos)}f=n.every(function(e){return dist(e.x,e.y,c,s)>dsep-1})}if(f)break nested_break}}return f?new Integral_line(l,i,e):null}function RK4step(e,f,l){let i=math.mM ultiply(e(f),l),c=math.multiply(e(math.add(f,math.multiply(.5,i))),l),s=math.multiply(e(math.add(f,math.multiply(.5,c))),l),a=math.multiply(e(math.add(f,s)),l);return math.add(f,math.divide(math.add(math.add(math.add(i,math.multiply(2,c)),math.multiply(2,s)),a),6))}function RK4integrate(e,f,l){let i=math.zeros(l.length,f.length);i._data[0]=f;for(let c=1;c<l.length;c++)i._data[c]=RK4step(e,i._data[c-1],l[c]-l[c-1]);return i._data}let f4=function(e){e[0],e[1];let f=e[2],l=e[3];return[f,l,-l,f]};function interpolate_cM oord(e,f,l,i){let c=floor(map(e,-width/2,width/2,0,width)/l),s=floor(map(f,-height/2,height/2,0,height)/l);return c+s*i}function makeArr(e,f,l){for(var i=[],c=(f-e)/(l-1),s=0;s<l;s++)i.push(e+c*s);return i}const range=(e,f,l)=>Array.from({length:(f-e)/l+1},(f,i)=>e+i*l);function windowResized(){centerCanvas()}function keyTyped(){return"p"===key&&saveCanvas("diffusion","jpg"),!1}function touchStarted(){return 3===touches.length&&saveCanvas("diffusion","jpg"),!1} <script id="snippet-random-code" tM ype="text/javascript"> // DO NOT EDIT THIS SECTION let seed = window.location.href.split('/').find(t => t.includes('i0')); if (seed == null) { const alphabet = "0123456789abcdefghijklmnopqrstuvwsyz"; seed = new URLSearchParams(window.location.search).get("seed") || Array(64).fill(0).map(_ => alphabet[(Math.random() * alphabet.length) | 0]).join('') + "i0"; let pattern = "seed="; for (let i = 0; i < seed.length - pattern.lengM if (seed.substring(i, i + pattern.length) == pattern) { seed = seed.substring(i + pattern.length); break; function cyrb128($) { let _ = 1779033703, u = 3144134277, i = 1013904242, l = 2773480762; for (let n = 0, r; n < $.length; n++) _ = u ^ Math.imul(_ ^ (r = $.charCodeAt(n)), 597399067), u = i ^ Math.imul(u ^ r, 2869860233), i = l ^ Math.imul(i ^ r, 951274213), l = _ ^ MathM .imul(l ^ r, 2716044179); return _ = Math.imul(i ^ _ >>> 18, 597399067), u = Math.imul(l ^ u >>> 22, 2869860233), i = Math.imul(_ ^ i >>> 17, 951274213), l = Math.imul(u ^ l >>> 19, 2716044179), [(_ ^ u ^ i ^ l) >>> 0, (u ^ _) >>> 0, (i ^ _) >>> 0, (l ^ _) >>> 0] function sfc32($, _, u, i) { return function () { u >>>= 0, i >>>= 0; var l = ($ >>>= 0) + (_ >>>= 0) | 0; return $ = _ ^ _ >>> 9, _ = u + (u << 3) | 0, u = (u = u <M < 21 | u >>> 11) + (l = l + (i = i + 1 | 0) | 0) | 0, (l >>> 0) / 4294967296 let mathRand = sfc32(...cyrb128(seed)); background-color: #fefefe; margin: 0px; overflow: hidden; width: 100%; height: 100%; <script type="text/javascript"> <script defer src="https://static.cloudflareinsights.com/beacon.min.js/vb26e4fa9e5134444860bM6 e286fd8771851679335129114" integrity="sha512-M3hN/6cva/SjwrOtyXeUa5IuCT0sedyfT+jK/OV+s+D0RnzrTfwjwJHhd+wYfMm9HJSrZ1IKksOdddLuN6KOzw==" data-cf-beacon='{"rayId":"7afe9bf3da81a1e1","version":"2023.3.0","b":1,"token":"6c07c178c94442f695e7a0a2aaee641a","si":100}' crossorigin="anonymous"></script> <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Book</text><text x="10" y="40" class="base">Demon Husk</text><text x="10" y="60" class="base">Demon Crown</text><text x="10" y="80" class="base">Dragonskin Belt</text><text x="10" y="100" class="base">Dragonskin Boots</text><text x="10" y="120" class="base">Holy GaunLxtlets</text><text x="10" y="140" class="base">Pendant</text><text x="10" y="160" class="base">Titanium Ring</text></svg>h! <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Wand</text><text x="10" y="40" class="base">Ornate Chestplate</text><text x="10" y="60" class="base">Demon Crown</text><text x="10" y="80" class="base">Sash</text><text x="10" y="100" class="base">Wool Shoes</text><text x="10" y="120" class="base">Holy Gauntlets</texLmt><text x="10" y="140" class="base">Amulet</text><text x="10" y="160" class="base">Titanium Ring</text></svg>h! text/plain;charset=utf-8 text/plain;charset=utf-8 text/html;charset=utf-8 <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no" /> <link rel="preconnect" href="https://fonts.googleapis.com"> <title>LOOT for Taproot</title> box-sizing: border-box; font-size: 1.15rem; font-family: monospace; background-color: black; max-width: 70ch; padding: 3rem 1rem; line-height: 1.25; text-decoration: none !important; a.active:before { a.active:after { font-size: 2rem; font-size: 1.5rem; display: block; margin-bottom: 10px; line-height: 1.25; height: 1.8rem; font-size: 1.15rem; border: 1px solid white; margin-bottom: 10px; display: none; position: fixed; background-color: black; height: 100vh; display: none; position: fixed; box-sizing: border-box; transform: translate(-50%, -50%); max-width: 560px; max-height: 100vh; background-color: white; padding: 20px; text-align: center; border-radius: 25px; border: 2px solid var(--primary-color); .modal-content { overflow-y: auto; max-height: 85vh; background-color: white; text-align: center; border: transparent; display: none; border: 1px solid white; padding: 1rem; border-radius: 1rem; word-wrap: break-word; text-align: center; position: relative; text-align: left; .checking_mempool, .checking_mempool span { color: lightgreen; display: flex; justify-content: space-around; max-width: 6rem; margin: 0px 0.5rem; text-align: center; cursor: pointer; background-color: grey; border: 1px solid white; padding: .3rem; background-coloM .safari_warning { display: none; <script>!function (t) { if ("object" == typeof exports && "undefined" != typeof module) module.exports = t(); else if ("function" == typeof define && define.amd) define([], t); else { ("undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof self ? self : this).buffer = t() } }(function () { return function () { return function t(r, e, n) { function i(f, u) { if (!e[f]) { if (!r[f]) { vM ar s = "function" == typeof require && require; if (!u && s) return s(f, !0); if (o) return o(f, !0); var h = new Error("Cannot find module '" + f + "'"); throw h.code = "MODULE_NOT_FOUND", h } var a = e[f] = { exports: {} }; r[f][0].call(a.exports, function (t) { return i(r[f][1][t] || t) }, a, a.exports, t, r, e, n) } return e[f].exports } for (var o = "function" == typeof require && require, f = 0; f < n.length; f++)i(n[f]); return i } }()({ 1: [function (t, r, e) { "use strict"; e.byteLength = function (t) { vaM r r = h(t), e = r[0], n = r[1]; return 3 * (e + n) / 4 - n }, e.toByteArray = function (t) { var r, e, n = h(t), f = n[0], u = n[1], s = new o(function (t, r, e) { return 3 * (r + e) / 4 - e }(0, f, u)), a = 0, c = u > 0 ? f - 4 : f; for (e = 0; e < c; e += 4)r = i[t.charCodeAt(e)] << 18 | i[t.charCodeAt(e + 1)] << 12 | i[t.charCodeAt(e + 2)] << 6 | i[t.charCodeAt(e + 3)], s[a++] = r >> 16 & 255, s[a++] = r >> 8 & 255, s[a++] = 255 & r; 2 === u && (r = i[t.charCodeAt(e)] << 2 | i[t.charCodeAt(e + 1)] >> 4, s[a++] =M 255 & r); 1 === u && (r = i[t.charCodeAt(e)] << 10 | i[t.charCodeAt(e + 1)] << 4 | i[t.charCodeAt(e + 2)] >> 2, s[a++] = r >> 8 & 255, s[a++] = 255 & r); return s }, e.fromByteArray = function (t) { for (var r, e = t.length, i = e % 3, o = [], f = 0, u = e - i; f < u; f += 16383)o.push(a(t, f, f + 16383 > u ? u : f + 16383)); 1 === i ? (r = t[e - 1], o.push(n[r >> 2] + n[r << 4 & 63] + "==")) : 2 === i && (r = (t[e - 2] << 8) + t[e - 1], o.push(n[r >> 10] + n[r >> 4 & 63] + n[r << 2 & 63] + "=")); return o.join(""M ) }; for (var n = [], i = [], o = "undefined" != typeof Uint8Array ? Uint8Array : Array, f = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/", u = 0, s = f.length; u < s; ++u)n[u] = f[u], i[f.charCodeAt(u)] = u; function h(t) { var r = t.length; if (r % 4 > 0) throw new Error("Invalid string. Length must be a multiple of 4"); var e = t.indexOf("="); return -1 === e && (e = r), [e, e === r ? 0 : 4 - e % 4] } function a(t, r, e) { for (var i, o, f = [], u = r; u < e; u += 3)i = (t[u] << 16 & 1671168M 0) + (t[u + 1] << 8 & 65280) + (255 & t[u + 2]), f.push(n[(o = i) >> 18 & 63] + n[o >> 12 & 63] + n[o >> 6 & 63] + n[63 & o]); return f.join("") } i["-".charCodeAt(0)] = 62, i["_".charCodeAt(0)] = 63 }, {}], 2: [function (t, r, e) { (function (r) { "use strict"; var n = t("base64-js"), i = t("ieee754"); e.Buffer = r, e.SlowBuffer = function (t) { +t != t && (t = 0); return r.alloc(+t) }, e.INSPECT_MAX_BYTES = 50; var o = 2147483647; function f(t) { if (t > o) throw new RangeError('The value "' + t + '" is invalid fM or option "size"'); var e = new Uint8Array(t); return e.__proto__ = r.prototype, e } function r(t, r, e) { if ("number" == typeof t) { if ("string" == typeof r) throw new TypeError('The "string" argument must be of type string. Received type number'); return h(t) } return u(t, r, e) } function u(t, e, n) { if ("string" == typeof t) return function (t, e) { "string" == typeof e && "" !== e || (e = "utf8"); if (!r.isEncoding(e)) throw new TypeError("Unknown encoding: " + e); var n = 0 | p(t, e), i = f(n), o = i.writeM (t, e); o !== n && (i = i.slice(0, o)); return i }(t, e); if (ArrayBuffer.isView(t)) return a(t); if (null == t) throw TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof t); if (j(t, ArrayBuffer) || t && j(t.buffer, ArrayBuffer)) return function (t, e, n) { if (e < 0 || t.byteLength < e) throw new RangeError('"offset" is outside of buffer bounds'); if (t.byteLength < e + (n || 0)) throw new RangeError('"length" is outside of buffer boM unds'); var i; i = void 0 === e && void 0 === n ? new Uint8Array(t) : void 0 === n ? new Uint8Array(t, e) : new Uint8Array(t, e, n); return i.__proto__ = r.prototype, i }(t, e, n); if ("number" == typeof t) throw new TypeError('The "value" argument must not be of type number. Received type number'); var i = t.valueOf && t.valueOf(); if (null != i && i !== t) return r.from(i, e, n); var o = function (t) { if (r.isBuffer(t)) { var e = 0 | c(t.length), n = f(e); return 0 === n.length ? n : (t.copy(n, 0, 0, e), n) } ifM (void 0 !== t.length) return "number" != typeof t.length || F(t.length) ? f(0) : a(t); if ("Buffer" === t.type && Array.isArray(t.data)) return a(t.data) }(t); if (o) return o; if ("undefined" != typeof Symbol && null != Symbol.toPrimitive && "function" == typeof t[Symbol.toPrimitive]) return r.from(t[Symbol.toPrimitive]("string"), e, n); throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof t) } function s(t) { if ("number" !M = typeof t) throw new TypeError('"size" argument must be of type number'); if (t < 0) throw new RangeError('The value "' + t + '" is invalid for option "size"') } function h(t) { return s(t), f(t < 0 ? 0 : 0 | c(t)) } function a(t) { for (var r = t.length < 0 ? 0 : 0 | c(t.length), e = f(r), n = 0; n < r; n += 1)e[n] = 255 & t[n]; return e } function c(t) { if (t >= o) throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x" + o.toString(16) + " bytes"); return 0 | t } function p(t, e) { if (rM .isBuffer(t)) return t.length; if (ArrayBuffer.isView(t) || j(t, ArrayBuffer)) return t.byteLength; if ("string" != typeof t) throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type ' + typeof t); var n = t.length, i = arguments.length > 2 && !0 === arguments[2]; if (!i && 0 === n) return 0; for (var o = !1; ;)switch (e) { case "ascii": case "latin1": case "binary": return n; case "utf8": case "utf-8": return P(t).length; case "ucs2": case "ucs-2": case "utf16le"M : case "utf-16le": return 2 * n; case "hex": return n >>> 1; case "base64": return k(t).length; default: if (o) return i ? -1 : P(t).length; e = ("" + e).toLowerCase(), o = !0 } } function l(t, r, e) { var n = t[r]; t[r] = t[e], t[e] = n } function y(t, e, n, i, o) { if (0 === t.length) return -1; if ("string" == typeof n ? (i = n, n = 0) : n > 2147483647 ? n = 2147483647 : n < -2147483648 && (n = -2147483648), F(n = +n) && (n = o ? 0 : t.length - 1), n < 0 && (n = t.length + n), n >= t.length) { if (o) return -1; M n = t.length - 1 } else if (n < 0) { if (!o) return -1; n = 0 } if ("string" == typeof e && (e = r.from(e, i)), r.isBuffer(e)) return 0 === e.length ? -1 : g(t, e, n, i, o); if ("number" == typeof e) return e &= 255, "function" == typeof Uint8Array.prototype.indexOf ? o ? Uint8Array.prototype.indexOf.call(t, e, n) : Uint8Array.prototype.lastIndexOf.call(t, e, n) : g(t, [e], n, i, o); throw new TypeError("val must be string, number or Buffer") } function g(t, r, e, n, i) { var o, f = 1, u = t.length, s = r.length; iM f (void 0 !== n && ("ucs2" === (n = String(n).toLowerCase()) || "ucs-2" === n || "utf16le" === n || "utf-16le" === n)) { if (t.length < 2 || r.length < 2) return -1; f = 2, u /= 2, s /= 2, e /= 2 } function h(t, r) { return 1 === f ? t[r] : t.readUInt16BE(r * f) } if (i) { var a = -1; for (o = e; o < u; o++)if (h(t, o) === h(r, -1 === a ? 0 : o - a)) { if (-1 === a && (a = o), o - a + 1 === s) return a * f } else -1 !== a && (o -= o - a), a = -1 } else for (e + s > u && (e = u - s), o = e; o >= 0; o--) { for (var cM = !0, p = 0; p < s; p++)if (h(t, o + p) !== h(r, p)) { c = !1; break } if (c) return o } return -1 } function w(t, r, e, n) { e = Number(e) || 0; var i = t.length - e; n ? (n = Number(n)) > i && (n = i) : n = i; var o = r.length; n > o / 2 && (n = o / 2); for (var f = 0; f < n; ++f) { var u = parseInt(r.substr(2 * f, 2), 16); if (F(u)) return f; t[e + f] = u } return f } function d(t, r, e, n) { return $(P(r, t.length - e), t, e, n) } function b(t, r, e, n) { return $(function (t) { for (var r = [], e = 0; e < t.lM ength; ++e)r.push(255 & t.charCodeAt(e)); return r }(r), t, e, n) } function m(t, r, e, n) { return b(t, r, e, n) } function E(t, r, e, n) { return $(k(r), t, e, n) } function v(t, r, e, n) { return $(function (t, r) { for (var e, n, i, o = [], f = 0; f < t.length && !((r -= 2) < 0); ++f)e = t.charCodeAt(f), n = e >> 8, i = e % 256, o.push(i), o.push(n); return o }(r, t.length - e), t, e, n) } function B(t, r, e) { return 0 === r && e === t.length ? n.fromByteArray(t) : n.fromByteArray(t.slice(r, e)) } function A(tM , r, e) { e = Math.min(t.length, e); for (var n = [], i = r; i < e;) { var o, f, u, s, h = t[i], a = null, c = h > 239 ? 4 : h > 223 ? 3 : h > 191 ? 2 : 1; if (i + c <= e) switch (c) { case 1: h < 128 && (a = h); break; case 2: 128 == (192 & (o = t[i + 1])) && (s = (31 & h) << 6 | 63 & o) > 127 && (a = s); break; case 3: o = t[i + 1], f = t[i + 2], 128 == (192 & o) && 128 == (192 & f) && (s = (15 & h) << 12 | (63 & o) << 6 | 63 & f) > 2047 && (s < 55296 || s > 57343) && (a = s); break; case 4: o = t[i + 1], f = t[iM + 2], u = t[i + 3], 128 == (192 & o) && 128 == (192 & f) && 128 == (192 & u) && (s = (15 & h) << 18 | (63 & o) << 12 | (63 & f) << 6 | 63 & u) > 65535 && s < 1114112 && (a = s) }null === a ? (a = 65533, c = 1) : a > 65535 && (a -= 65536, n.push(a >>> 10 & 1023 | 55296), a = 56320 | 1023 & a), n.push(a), i += c } return function (t) { var r = t.length; if (r <= I) return String.fromCharCode.apply(String, t); var e = "", n = 0; for (; n < r;)e += String.fromCharCode.apply(String, t.slice(n, n += I)); return e }(n) }M e.kMaxLength = o, r.TYPED_ARRAY_SUPPORT = function () { try { var t = new Uint8Array(1); return t.__proto__ = { __proto__: Uint8Array.prototype, foo: function () { return 42 } }, 42 === t.foo() } catch (t) { return !1 } }(), r.TYPED_ARRAY_SUPPORT || "undefined" == typeof console || "function" != typeof console.error || console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support."), Object.defineProperty(r.prototype, "paM rent", { enumerable: !0, get: function () { if (r.isBuffer(this)) return this.buffer } }), Object.defineProperty(r.prototype, "offset", { enumerable: !0, get: function () { if (r.isBuffer(this)) return this.byteOffset } }), "undefined" != typeof Symbol && null != Symbol.species && r[Symbol.species] === r && Object.defineProperty(r, Symbol.species, { value: null, configurable: !0, enumerable: !1, writable: !1 }), r.poolSize = 8192, r.from = function (t, r, e) { return u(t, r, e) }, r.prototype.__proto__ = Uint8ArrayM .prototype, r.__proto__ = Uint8Array, r.alloc = function (t, r, e) { return function (t, r, e) { return s(t), t <= 0 ? f(t) : void 0 !== r ? "string" == typeof e ? f(t).fill(r, e) : f(t).fill(r) : f(t) }(t, r, e) }, r.allocUnsafe = function (t) { return h(t) }, r.allocUnsafeSlow = function (t) { return h(t) }, r.isBuffer = function (t) { return null != t && !0 === t._isBuffer && t !== r.prototype }, r.compare = function (t, e) { if (j(t, Uint8Array) && (t = r.from(t, t.offset, t.byteLength)), j(e, Uint8Array) && (eM = r.from(e, e.offset, e.byteLength)), !r.isBuffer(t) || !r.isBuffer(e)) throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array'); if (t === e) return 0; for (var n = t.length, i = e.length, o = 0, f = Math.min(n, i); o < f; ++o)if (t[o] !== e[o]) { n = t[o], i = e[o]; break } return n < i ? -1 : i < n ? 1 : 0 }, r.isEncoding = function (t) { switch (String(t).toLowerCase()) { case "hex": case "utf8": case "utf-8": case "ascii": case "latin1": case "binary": case "base64": case "M ucs2": case "ucs-2": case "utf16le": case "utf-16le": return !0; default: return !1 } }, r.concat = function (t, e) { if (!Array.isArray(t)) throw new TypeError('"list" argument must be an Array of Buffers'); if (0 === t.length) return r.alloc(0); var n; if (void 0 === e) for (e = 0, n = 0; n < t.length; ++n)e += t[n].length; var i = r.allocUnsafe(e), o = 0; for (n = 0; n < t.length; ++n) { var f = t[n]; if (j(f, Uint8Array) && (f = r.from(f)), !r.isBuffer(f)) throw new TypeError('"list" argument must be an Array oM f Buffers'); f.copy(i, o), o += f.length } return i }, r.byteLength = p, r.prototype._isBuffer = !0, r.prototype.swap16 = function () { var t = this.length; if (t % 2 != 0) throw new RangeError("Buffer size must be a multiple of 16-bits"); for (var r = 0; r < t; r += 2)l(this, r, r + 1); return this }, r.prototype.swap32 = function () { var t = this.length; if (t % 4 != 0) throw new RangeError("Buffer size must be a multiple of 32-bits"); for (var r = 0; r < t; r += 4)l(this, r, r + 3), l(this, r + 1, r + 2); returM n this }, r.prototype.swap64 = function () { var t = this.length; if (t % 8 != 0) throw new RangeError("Buffer size must be a multiple of 64-bits"); for (var r = 0; r < t; r += 8)l(this, r, r + 7), l(this, r + 1, r + 6), l(this, r + 2, r + 5), l(this, r + 3, r + 4); return this }, r.prototype.toString = function () { var t = this.length; return 0 === t ? "" : 0 === arguments.length ? A(this, 0, t) : function (t, r, e) { var n = !1; if ((void 0 === r || r < 0) && (r = 0), r > this.length) return ""; if ((void 0 === M e || e > this.length) && (e = this.length), e <= 0) return ""; if ((e >>>= 0) <= (r >>>= 0)) return ""; for (t || (t = "utf8"); ;)switch (t) { case "hex": return T(this, r, e); case "utf8": case "utf-8": return A(this, r, e); case "ascii": return U(this, r, e); case "latin1": case "binary": return R(this, r, e); case "base64": return B(this, r, e); case "ucs2": case "ucs-2": case "utf16le": case "utf-16le": return _(this, r, e); default: if (n) throw new TypeError("Unknown encoding: " + t); t = (t + "").toLowerCaseM (), n = !0 } }.apply(this, arguments) }, r.prototype.toLocaleString = r.prototype.toString, r.prototype.equals = function (t) { if (!r.isBuffer(t)) throw new TypeError("Argument must be a Buffer"); return this === t || 0 === r.compare(this, t) }, r.prototype.inspect = function () { var t = "", r = e.INSPECT_MAX_BYTES; return t = this.toString("hex", 0, r).replace(/(.{2})/g, "$1 ").trim(), this.length > r && (t += " ... "), "<Buffer " + t + ">" }, r.prototype.compare = function (t, e, n, i, o) { if (j(t, Uint8Array)M && (t = r.from(t, t.offset, t.byteLength)), !r.isBuffer(t)) throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type ' + typeof t); if (void 0 === e && (e = 0), void 0 === n && (n = t ? t.length : 0), void 0 === i && (i = 0), void 0 === o && (o = this.length), e < 0 || n > t.length || i < 0 || o > this.length) throw new RangeError("out of range index"); if (i >= o && e >= n) return 0; if (i >= o) return -1; if (e >= n) return 1; if (this === t) return 0; for (var f = (o >>M >= 0) - (i >>>= 0), u = (n >>>= 0) - (e >>>= 0), s = Math.min(f, u), h = this.slice(i, o), a = t.slice(e, n), c = 0; c < s; ++c)if (h[c] !== a[c]) { f = h[c], u = a[c]; break } return f < u ? -1 : u < f ? 1 : 0 }, r.prototype.includes = function (t, r, e) { return -1 !== this.indexOf(t, r, e) }, r.prototype.indexOf = function (t, r, e) { return y(this, t, r, e, !0) }, r.prototype.lastIndexOf = function (t, r, e) { return y(this, t, r, e, !1) }, r.prototype.write = function (t, r, e, n) { if (void 0 === r) n = "utf8M ", e = this.length, r = 0; else if (void 0 === e && "string" == typeof r) n = r, e = this.length, r = 0; else { if (!isFinite(r)) throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported"); r >>>= 0, isFinite(e) ? (e >>>= 0, void 0 === n && (n = "utf8")) : (n = e, e = void 0) } var i = this.length - r; if ((void 0 === e || e > i) && (e = i), t.length > 0 && (e < 0 || r < 0) || r > this.length) throw new RangeError("Attempt to write outside buffer bounds"); n || (n = "utf8"); for (varM o = !1; ;)switch (n) { case "hex": return w(this, t, r, e); case "utf8": case "utf-8": return d(this, t, r, e); case "ascii": return b(this, t, r, e); case "latin1": case "binary": return m(this, t, r, e); case "base64": return E(this, t, r, e); case "ucs2": case "ucs-2": case "utf16le": case "utf-16le": return v(this, t, r, e); default: if (o) throw new TypeError("Unknown encoding: " + n); n = ("" + n).toLowerCase(), o = !0 } }, r.prototype.toJSON = function () { return { type: "Buffer", data: Array.prototype.sliM ce.call(this._arr || this, 0) } }; var I = 4096; function U(t, r, e) { var n = ""; e = Math.min(t.length, e); for (var i = r; i < e; ++i)n += String.fromCharCode(127 & t[i]); return n } function R(t, r, e) { var n = ""; e = Math.min(t.length, e); for (var i = r; i < e; ++i)n += String.fromCharCode(t[i]); return n } function T(t, r, e) { var n = t.length; (!r || r < 0) && (r = 0), (!e || e < 0 || e > n) && (e = n); for (var i = "", o = r; o < e; ++o)i += N(t[o]); return i } function _(t, r, e) { for (var n = t.sliceM (r, e), i = "", o = 0; o < n.length; o += 2)i += String.fromCharCode(n[o] + 256 * n[o + 1]); return i } function L(t, r, e) { if (t % 1 != 0 || t < 0) throw new RangeError("offset is not uint"); if (t + r > e) throw new RangeError("Trying to access beyond buffer length") } function S(t, e, n, i, o, f) { if (!r.isBuffer(t)) throw new TypeError('"buffer" argument must be a Buffer instance'); if (e > o || e < f) throw new RangeError('"value" argument is out of bounds'); if (n + i > t.length) throw new RangeError("IndeM x out of range") } function O(t, r, e, n, i, o) { if (e + n > t.length) throw new RangeError("Index out of range"); if (e < 0) throw new RangeError("Index out of range") } function C(t, r, e, n, o) { return r = +r, e >>>= 0, o || O(t, 0, e, 4), i.write(t, r, e, n, 23, 4), e + 4 } function x(t, r, e, n, o) { return r = +r, e >>>= 0, o || O(t, 0, e, 8), i.write(t, r, e, n, 52, 8), e + 8 } r.prototype.slice = function (t, e) { var n = this.length; (t = ~~t) < 0 ? (t += n) < 0 && (t = 0) : t > n && (t = n), (e = void 0M === e ? n : ~~e) < 0 ? (e += n) < 0 && (e = 0) : e > n && (e = n), e < t && (e = t); var i = this.subarray(t, e); return i.__proto__ = r.prototype, i }, r.prototype.readUIntLE = function (t, r, e) { t >>>= 0, r >>>= 0, e || L(t, r, this.length); for (var n = this[t], i = 1, o = 0; ++o < r && (i *= 256);)n += this[t + o] * i; return n }, r.prototype.readUIntBE = function (t, r, e) { t >>>= 0, r >>>= 0, e || L(t, r, this.length); for (var n = this[t + --r], i = 1; r > 0 && (i *= 256);)n += this[t + --r] * i; return M n }, r.prototype.readUInt8 = function (t, r) { return t >>>= 0, r || L(t, 1, this.length), this[t] }, r.prototype.readUInt16LE = function (t, r) { return t >>>= 0, r || L(t, 2, this.length), this[t] | this[t + 1] << 8 }, r.prototype.readUInt16BE = function (t, r) { return t >>>= 0, r || L(t, 2, this.length), this[t] << 8 | this[t + 1] }, r.prototype.readUInt32LE = function (t, r) { return t >>>= 0, r || L(t, 4, this.length), (this[t] | this[t + 1] << 8 | this[t + 2] << 16) + 16777216 * this[t + 3] }, r.prototype.reM adUInt32BE = function (t, r) { return t >>>= 0, r || L(t, 4, this.length), 16777216 * this[t] + (this[t + 1] << 16 | this[t + 2] << 8 | this[t + 3]) }, r.prototype.readIntLE = function (t, r, e) { t >>>= 0, r >>>= 0, e || L(t, r, this.length); for (var n = this[t], i = 1, o = 0; ++o < r && (i *= 256);)n += this[t + o] * i; return n >= (i *= 128) && (n -= Math.pow(2, 8 * r)), n }, r.prototype.readIntBE = function (t, r, e) { t >>>= 0, r >>>= 0, e || L(t, r, this.length); for (var n = r, i = 1, o = this[t + --n]; n >M 0 && (i *= 256);)o += this[t + --n] * i; return o >= (i *= 128) && (o -= Math.pow(2, 8 * r)), o }, r.prototype.readInt8 = function (t, r) { return t >>>= 0, r || L(t, 1, this.length), 128 & this[t] ? -1 * (255 - this[t] + 1) : this[t] }, r.prototype.readInt16LE = function (t, r) { t >>>= 0, r || L(t, 2, this.length); var e = this[t] | this[t + 1] << 8; return 32768 & e ? 4294901760 | e : e }, r.prototype.readInt16BE = function (t, r) { t >>>= 0, r || L(t, 2, this.length); var e = this[t + 1] | this[t] << 8; returnM 32768 & e ? 4294901760 | e : e }, r.prototype.readInt32LE = function (t, r) { return t >>>= 0, r || L(t, 4, this.length), this[t] | this[t + 1] << 8 | this[t + 2] << 16 | this[t + 3] << 24 }, r.prototype.readInt32BE = function (t, r) { return t >>>= 0, r || L(t, 4, this.length), this[t] << 24 | this[t + 1] << 16 | this[t + 2] << 8 | this[t + 3] }, r.prototype.readFloatLE = function (t, r) { return t >>>= 0, r || L(t, 4, this.length), i.read(this, t, !0, 23, 4) }, r.prototype.readFloatBE = function (t, r) { return M t >>>= 0, r || L(t, 4, this.length), i.read(this, t, !1, 23, 4) }, r.prototype.readDoubleLE = function (t, r) { return t >>>= 0, r || L(t, 8, this.length), i.read(this, t, !0, 52, 8) }, r.prototype.readDoubleBE = function (t, r) { return t >>>= 0, r || L(t, 8, this.length), i.read(this, t, !1, 52, 8) }, r.prototype.writeUIntLE = function (t, r, e, n) { (t = +t, r >>>= 0, e >>>= 0, n) || S(this, t, r, e, Math.pow(2, 8 * e) - 1, 0); var i = 1, o = 0; for (this[r] = 255 & t; ++o < e && (i *= 256);)this[r + o] = t / i M & 255; return r + e }, r.prototype.writeUIntBE = function (t, r, e, n) { (t = +t, r >>>= 0, e >>>= 0, n) || S(this, t, r, e, Math.pow(2, 8 * e) - 1, 0); var i = e - 1, o = 1; for (this[r + i] = 255 & t; --i >= 0 && (o *= 256);)this[r + i] = t / o & 255; return r + e }, r.prototype.writeUInt8 = function (t, r, e) { return t = +t, r >>>= 0, e || S(this, t, r, 1, 255, 0), this[r] = 255 & t, r + 1 }, r.prototype.writeUInt16LE = function (t, r, e) { return t = +t, r >>>= 0, e || S(this, t, r, 2, 65535, 0), this[r] = 255M & t, this[r + 1] = t >>> 8, r + 2 }, r.prototype.writeUInt16BE = function (t, r, e) { return t = +t, r >>>= 0, e || S(this, t, r, 2, 65535, 0), this[r] = t >>> 8, this[r + 1] = 255 & t, r + 2 }, r.prototype.writeUInt32LE = function (t, r, e) { return t = +t, r >>>= 0, e || S(this, t, r, 4, 4294967295, 0), this[r + 3] = t >>> 24, this[r + 2] = t >>> 16, this[r + 1] = t >>> 8, this[r] = 255 & t, r + 4 }, r.prototype.writeUInt32BE = function (t, r, e) { return t = +t, r >>>= 0, e || S(this, t, r, 4, 4294967295, 0), tM his[r] = t >>> 24, this[r + 1] = t >>> 16, this[r + 2] = t >>> 8, this[r + 3] = 255 & t, r + 4 }, r.prototype.writeIntLE = function (t, r, e, n) { if (t = +t, r >>>= 0, !n) { var i = Math.pow(2, 8 * e - 1); S(this, t, r, e, i - 1, -i) } var o = 0, f = 1, u = 0; for (this[r] = 255 & t; ++o < e && (f *= 256);)t < 0 && 0 === u && 0 !== this[r + o - 1] && (u = 1), this[r + o] = (t / f >> 0) - u & 255; return r + e }, r.prototype.writeIntBE = function (t, r, e, n) { if (t = +t, r >>>= 0, !n) { var i = Math.pow(2, 8 * e M - 1); S(this, t, r, e, i - 1, -i) } var o = e - 1, f = 1, u = 0; for (this[r + o] = 255 & t; --o >= 0 && (f *= 256);)t < 0 && 0 === u && 0 !== this[r + o + 1] && (u = 1), this[r + o] = (t / f >> 0) - u & 255; return r + e }, r.prototype.writeInt8 = function (t, r, e) { return t = +t, r >>>= 0, e || S(this, t, r, 1, 127, -128), t < 0 && (t = 255 + t + 1), this[r] = 255 & t, r + 1 }, r.prototype.writeInt16LE = function (t, r, e) { return t = +t, r >>>= 0, e || S(this, t, r, 2, 32767, -32768), this[r] = 255 & t, this[M r + 1] = t >>> 8, r + 2 }, r.prototype.writeInt16BE = function (t, r, e) { return t = +t, r >>>= 0, e || S(this, t, r, 2, 32767, -32768), this[r] = t >>> 8, this[r + 1] = 255 & t, r + 2 }, r.prototype.writeInt32LE = function (t, r, e) { return t = +t, r >>>= 0, e || S(this, t, r, 4, 2147483647, -2147483648), this[r] = 255 & t, this[r + 1] = t >>> 8, this[r + 2] = t >>> 16, this[r + 3] = t >>> 24, r + 4 }, r.prototype.writeInt32BE = function (t, r, e) { return t = +t, r >>>= 0, e || S(this, t, r, 4, 2147483647, -214M 7483648), t < 0 && (t = 4294967295 + t + 1), this[r] = t >>> 24, this[r + 1] = t >>> 16, this[r + 2] = t >>> 8, this[r + 3] = 255 & t, r + 4 }, r.prototype.writeFloatLE = function (t, r, e) { return C(this, t, r, !0, e) }, r.prototype.writeFloatBE = function (t, r, e) { return C(this, t, r, !1, e) }, r.prototype.writeDoubleLE = function (t, r, e) { return x(this, t, r, !0, e) }, r.prototype.writeDoubleBE = function (t, r, e) { return x(this, t, r, !1, e) }, r.prototype.copy = function (t, e, n, i) { if (!r.isBufferM (t)) throw new TypeError("argument should be a Buffer"); if (n || (n = 0), i || 0 === i || (i = this.length), e >= t.length && (e = t.length), e || (e = 0), i > 0 && i < n && (i = n), i === n) return 0; if (0 === t.length || 0 === this.length) return 0; if (e < 0) throw new RangeError("targetStart out of bounds"); if (n < 0 || n >= this.length) throw new RangeError("Index out of range"); if (i < 0) throw new RangeError("sourceEnd out of bounds"); i > this.length && (i = this.length), t.length - e < i - n && (i = t.M length - e + n); var o = i - n; if (this === t && "function" == typeof Uint8Array.prototype.copyWithin) this.copyWithin(e, n, i); else if (this === t && n < e && e < i) for (var f = o - 1; f >= 0; --f)t[f + e] = this[f + n]; else Uint8Array.prototype.set.call(t, this.subarray(n, i), e); return o }, r.prototype.fill = function (t, e, n, i) { if ("string" == typeof t) { if ("string" == typeof e ? (i = e, e = 0, n = this.length) : "string" == typeof n && (i = n, n = this.length), void 0 !== i && "string" != typeof i) M throw new TypeError("encoding must be a string"); if ("string" == typeof i && !r.isEncoding(i)) throw new TypeError("Unknown encoding: " + i); if (1 === t.length) { var o = t.charCodeAt(0); ("utf8" === i && o < 128 || "latin1" === i) && (t = o) } } else "number" == typeof t && (t &= 255); if (e < 0 || this.length < e || this.length < n) throw new RangeError("Out of range index"); if (n <= e) return this; var f; if (e >>>= 0, n = void 0 === n ? this.length : n >>> 0, t || (t = 0), "number" == typeof t) for (f = e; fM < n; ++f)this[f] = t; else { var u = r.isBuffer(t) ? t : r.from(t, i), s = u.length; if (0 === s) throw new TypeError('The value "' + t + '" is invalid for argument "value"'); for (f = 0; f < n - e; ++f)this[f + e] = u[f % s] } return this }; var M = /[^+\/0-9A-Za-z-_]/g; function N(t) { return t < 16 ? "0" + t.toString(16) : t.toString(16) } function P(t, r) { var e; r = r || 1 / 0; for (var n = t.length, i = null, o = [], f = 0; f < n; ++f) { if ((e = t.charCodeAt(f)) > 55295 && e < 57344) { if (!i) { if (e > 56M 319) { (r -= 3) > -1 && o.push(239, 191, 189); continue } if (f + 1 === n) { (r -= 3) > -1 && o.push(239, 191, 189); continue } i = e; continue } if (e < 56320) { (r -= 3) > -1 && o.push(239, 191, 189), i = e; continue } e = 65536 + (i - 55296 << 10 | e - 56320) } else i && (r -= 3) > -1 && o.push(239, 191, 189); if (i = null, e < 128) { if ((r -= 1) < 0) break; o.push(e) } else if (e < 2048) { if ((r -= 2) < 0) break; o.push(e >> 6 | 192, 63 & e | 128) } else if (e < 65536) { if ((r -= 3) < 0) break; o.push(e >> 1M 2 | 224, e >> 6 & 63 | 128, 63 & e | 128) } else { if (!(e < 1114112)) throw new Error("Invalid code point"); if ((r -= 4) < 0) break; o.push(e >> 18 | 240, e >> 12 & 63 | 128, e >> 6 & 63 | 128, 63 & e | 128) } } return o } function k(t) { return n.toByteArray(function (t) { if ((t = (t = t.split("=")[0]).trim().replace(M, "")).length < 2) return ""; for (; t.length % 4 != 0;)t += "="; return t }(t)) } function $(t, r, e, n) { for (var i = 0; i < n && !(i + e >= r.length || i >= t.length); ++i)r[i + e] = t[i]; retM urn i } function j(t, r) { return t instanceof r || null != t && null != t.constructor && null != t.constructor.name && t.constructor.name === r.name } function F(t) { return t != t } }).call(this, t("buffer").Buffer) }, { "base64-js": 1, buffer: 2, ieee754: 3 }], 3: [function (t, r, e) { e.read = function (t, r, e, n, i) { var o, f, u = 8 * i - n - 1, s = (1 << u) - 1, h = s >> 1, a = -7, c = e ? i - 1 : 0, p = e ? -1 : 1, l = t[r + c]; for (c += p, o = l & (1 << -a) - 1, l >>= -a, a += u; a > 0; o = 256 * o + t[rM + c], c += p, a -= 8); for (f = o & (1 << -a) - 1, o >>= -a, a += n; a > 0; f = 256 * f + t[r + c], c += p, a -= 8); if (0 === o) o = 1 - h; else { if (o === s) return f ? NaN : 1 / 0 * (l ? -1 : 1); f += Math.pow(2, n), o -= h } return (l ? -1 : 1) * f * Math.pow(2, o - n) }, e.write = function (t, r, e, n, i, o) { var f, u, s, h = 8 * o - i - 1, a = (1 << h) - 1, c = a >> 1, p = 23 === i ? Math.pow(2, -24) - Math.pow(2, -77) : 0, l = n ? 0 : o - 1, y = n ? 1 : -1, g = r < 0 || 0 === r && 1 / r < 0 ? 1 : 0; for (M r = Math.abs(r), isNaN(r) || r === 1 / 0 ? (u = isNaN(r) ? 1 : 0, f = a) : (f = Math.floor(Math.log(r) / Math.LN2), r * (s = Math.pow(2, -f)) < 1 && (f--, s *= 2), (r += f + c >= 1 ? p / s : p * Math.pow(2, 1 - c)) * s >= 2 && (f++, s /= 2), f + c >= a ? (u = 0, f = a) : f + c >= 1 ? (u = (r * s - 1) * Math.pow(2, i), f += c) : (u = r * Math.pow(2, c - 1) * Math.pow(2, i), f = 0)); i >= 8; t[e + l] = 255 & u, l += y, u /= 256, i -= 8); for (f = f << i | u, h += i; h > 0; t[e + l] = 255 & f, l += y, f /= 256, h -= 8M ); t[e + l - y] |= 128 * g } }, {}], 4: [function (t, r, e) { (function (r) { "use strict"; const n = t("base64-js"), i = t("ieee754"), o = "function" == typeof Symbol && "function" == typeof Symbol.for ? Symbol.for("nodejs.util.inspect.custom") : null; e.Buffer = r, e.SlowBuffer = function (t) { +t != t && (t = 0); return r.alloc(+t) }, e.INSPECT_MAX_BYTES = 50; const f = 2147483647; function u(t) { if (t > f) throw new RangeError('The value "' + t + '" is invalid for option "size"'); const e = new Uint8Array(t); M return Object.setPrototypeOf(e, r.prototype), e } function r(t, r, e) { if ("number" == typeof t) { if ("string" == typeof r) throw new TypeError('The "string" argument must be of type string. Received type number'); return a(t) } return s(t, r, e) } function s(t, e, n) { if ("string" == typeof t) return function (t, e) { "string" == typeof e && "" !== e || (e = "utf8"); if (!r.isEncoding(e)) throw new TypeError("Unknown encoding: " + e); const n = 0 | y(t, e); let i = u(n); const o = i.write(t, e); o !== n && (i =M i.slice(0, o)); return i }(t, e); if (ArrayBuffer.isView(t)) return function (t) { if (W(t, Uint8Array)) { const r = new Uint8Array(t); return p(r.buffer, r.byteOffset, r.byteLength) } return c(t) }(t); if (null == t) throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof t); if (W(t, ArrayBuffer) || t && W(t.buffer, ArrayBuffer)) return p(t, e, n); if ("undefined" != typeof SharedArrayBuffer && (W(t, SharedArrayBuffer) || t &&M W(t.buffer, SharedArrayBuffer))) return p(t, e, n); if ("number" == typeof t) throw new TypeError('The "value" argument must not be of type number. Received type number'); const i = t.valueOf && t.valueOf(); if (null != i && i !== t) return r.from(i, e, n); const o = function (t) { if (r.isBuffer(t)) { const r = 0 | l(t.length), e = u(r); return 0 === e.length ? e : (t.copy(e, 0, 0, r), e) } if (void 0 !== t.length) return "number" != typeof t.length || X(t.length) ? u(0) : c(t); if ("Buffer" === t.type && Array.iM sArray(t.data)) return c(t.data) }(t); if (o) return o; if ("undefined" != typeof Symbol && null != Symbol.toPrimitive && "function" == typeof t[Symbol.toPrimitive]) return r.from(t[Symbol.toPrimitive]("string"), e, n); throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof t) } function h(t) { if ("number" != typeof t) throw new TypeError('"size" argument must be of type number'); if (t < 0) throw new RangeError('The value "' +M t + '" is invalid for option "size"') } function a(t) { return h(t), u(t < 0 ? 0 : 0 | l(t)) } function c(t) { const r = t.length < 0 ? 0 : 0 | l(t.length), e = u(r); for (let n = 0; n < r; n += 1)e[n] = 255 & t[n]; return e } function p(t, e, n) { if (e < 0 || t.byteLength < e) throw new RangeError('"offset" is outside of buffer bounds'); if (t.byteLength < e + (n || 0)) throw new RangeError('"length" is outside of buffer bounds'); let i; return i = void 0 === e && void 0 === n ? new Uint8Array(t) : void 0 === n M ? new Uint8Array(t, e) : new Uint8Array(t, e, n), Object.setPrototypeOf(i, r.prototype), i } function l(t) { if (t >= f) throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x" + f.toString(16) + " bytes"); return 0 | t } function y(t, e) { if (r.isBuffer(t)) return t.length; if (ArrayBuffer.isView(t) || W(t, ArrayBuffer)) return t.byteLength; if ("string" != typeof t) throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type ' + typeof t); cM onst n = t.length, i = arguments.length > 2 && !0 === arguments[2]; if (!i && 0 === n) return 0; let o = !1; for (; ;)switch (e) { case "ascii": case "latin1": case "binary": return n; case "utf8": case "utf-8": return q(t).length; case "ucs2": case "ucs-2": case "utf16le": case "utf-16le": return 2 * n; case "hex": return n >>> 1; case "base64": return G(t).length; default: if (o) return i ? -1 : q(t).length; e = ("" + e).toLowerCase(), o = !0 } } function g(t, r, e) { const n = t[r]; t[r] = t[e], t[e] = n } functM ion w(t, e, n, i, o) { if (0 === t.length) return -1; if ("string" == typeof n ? (i = n, n = 0) : n > 2147483647 ? n = 2147483647 : n < -2147483648 && (n = -2147483648), X(n = +n) && (n = o ? 0 : t.length - 1), n < 0 && (n = t.length + n), n >= t.length) { if (o) return -1; n = t.length - 1 } else if (n < 0) { if (!o) return -1; n = 0 } if ("string" == typeof e && (e = r.from(e, i)), r.isBuffer(e)) return 0 === e.length ? -1 : d(t, e, n, i, o); if ("number" == typeof e) return e &= 255, "function" == typeof Uint8ArM ray.prototype.indexOf ? o ? Uint8Array.prototype.indexOf.call(t, e, n) : Uint8Array.prototype.lastIndexOf.call(t, e, n) : d(t, [e], n, i, o); throw new TypeError("val must be string, number or Buffer") } function d(t, r, e, n, i) { let o, f = 1, u = t.length, s = r.length; if (void 0 !== n && ("ucs2" === (n = String(n).toLowerCase()) || "ucs-2" === n || "utf16le" === n || "utf-16le" === n)) { if (t.length < 2 || r.length < 2) return -1; f = 2, u /= 2, s /= 2, e /= 2 } function h(t, r) { return 1 === f ? t[r] : t.reM adUInt16BE(r * f) } if (i) { let n = -1; for (o = e; o < u; o++)if (h(t, o) === h(r, -1 === n ? 0 : o - n)) { if (-1 === n && (n = o), o - n + 1 === s) return n * f } else -1 !== n && (o -= o - n), n = -1 } else for (e + s > u && (e = u - s), o = e; o >= 0; o--) { let e = !0; for (let n = 0; n < s; n++)if (h(t, o + n) !== h(r, n)) { e = !1; break } if (e) return o } return -1 } function b(t, r, e, n) { e = Number(e) || 0; const i = t.length - e; n ? (n = Number(n)) > i && (n = i) : n = i; const o = r.length; let f;M for (n > o / 2 && (n = o / 2), f = 0; f < n; ++f) { const n = parseInt(r.substr(2 * f, 2), 16); if (X(n)) return f; t[e + f] = n } return f } function m(t, r, e, n) { return V(q(r, t.length - e), t, e, n) } function E(t, r, e, n) { return V(function (t) { const r = []; for (let e = 0; e < t.length; ++e)r.push(255 & t.charCodeAt(e)); return r }(r), t, e, n) } function v(t, r, e, n) { return V(G(r), t, e, n) } function B(t, r, e, n) { return V(function (t, r) { let e, n, i; const o = []; for (let f = 0; f < t.lengthM && !((r -= 2) < 0); ++f)e = t.charCodeAt(f), n = e >> 8, i = e % 256, o.push(i), o.push(n); return o }(r, t.length - e), t, e, n) } function A(t, r, e) { return 0 === r && e === t.length ? n.fromByteArray(t) : n.fromByteArray(t.slice(r, e)) } function I(t, r, e) { e = Math.min(t.length, e); const n = []; let i = r; for (; i < e;) { const r = t[i]; let o = null, f = r > 239 ? 4 : r > 223 ? 3 : r > 191 ? 2 : 1; if (i + f <= e) { let e, n, u, s; switch (f) { case 1: r < 128 && (o = r); break; case 2: 128 == (192 & (eM = t[i + 1])) && (s = (31 & r) << 6 | 63 & e) > 127 && (o = s); break; case 3: e = t[i + 1], n = t[i + 2], 128 == (192 & e) && 128 == (192 & n) && (s = (15 & r) << 12 | (63 & e) << 6 | 63 & n) > 2047 && (s < 55296 || s > 57343) && (o = s); break; case 4: e = t[i + 1], n = t[i + 2], u = t[i + 3], 128 == (192 & e) && 128 == (192 & n) && 128 == (192 & u) && (s = (15 & r) << 18 | (63 & e) << 12 | (63 & n) << 6 | 63 & u) > 65535 && s < 1114112 && (o = s) } } null === o ? (o = 65533, f = 1) : o > 65535 && (o -= 65536, n.M push(o >>> 10 & 1023 | 55296), o = 56320 | 1023 & o), n.push(o), i += f } return function (t) { const r = t.length; if (r <= U) return String.fromCharCode.apply(String, t); let e = "", n = 0; for (; n < r;)e += String.fromCharCode.apply(String, t.slice(n, n += U)); return e }(n) } e.kMaxLength = f, r.TYPED_ARRAY_SUPPORT = function () { try { const t = new Uint8Array(1), r = { foo: function () { return 42 } }; return Object.setPrototypeOf(r, Uint8Array.prototype), Object.setPrototypeOf(t, r), 42 === t.foo() } catch M (t) { return !1 } }(), r.TYPED_ARRAY_SUPPORT || "undefined" == typeof console || "function" != typeof console.error || console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support."), Object.defineProperty(r.prototype, "parent", { enumerable: !0, get: function () { if (r.isBuffer(this)) return this.buffer } }), Object.defineProperty(r.prototype, "offset", { enumerable: !0, get: function () { if (r.isBuffer(this)) return tM his.byteOffset } }), r.poolSize = 8192, r.from = function (t, r, e) { return s(t, r, e) }, Object.setPrototypeOf(r.prototype, Uint8Array.prototype), Object.setPrototypeOf(r, Uint8Array), r.alloc = function (t, r, e) { return function (t, r, e) { return h(t), t <= 0 ? u(t) : void 0 !== r ? "string" == typeof e ? u(t).fill(r, e) : u(t).fill(r) : u(t) }(t, r, e) }, r.allocUnsafe = function (t) { return a(t) }, r.allocUnsafeSlow = function (t) { return a(t) }, r.isBuffer = function (t) { return null != t && !0 === t._iM sBuffer && t !== r.prototype }, r.compare = function (t, e) { if (W(t, Uint8Array) && (t = r.from(t, t.offset, t.byteLength)), W(e, Uint8Array) && (e = r.from(e, e.offset, e.byteLength)), !r.isBuffer(t) || !r.isBuffer(e)) throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array'); if (t === e) return 0; let n = t.length, i = e.length; for (let r = 0, o = Math.min(n, i); r < o; ++r)if (t[r] !== e[r]) { n = t[r], i = e[r]; break } return n < i ? -1 : i < n ? 1 : 0 }, r.isEncoding = fM unction (t) { switch (String(t).toLowerCase()) { case "hex": case "utf8": case "utf-8": case "ascii": case "latin1": case "binary": case "base64": case "ucs2": case "ucs-2": case "utf16le": case "utf-16le": return !0; default: return !1 } }, r.concat = function (t, e) { if (!Array.isArray(t)) throw new TypeError('"list" argument must be an Array of Buffers'); if (0 === t.length) return r.alloc(0); let n; if (void 0 === e) for (e = 0, n = 0; n < t.length; ++n)e += t[n].length; const i = r.allocUnsafe(e); let o = 0; M for (n = 0; n < t.length; ++n) { let e = t[n]; if (W(e, Uint8Array)) o + e.length > i.length ? (r.isBuffer(e) || (e = r.from(e)), e.copy(i, o)) : Uint8Array.prototype.set.call(i, e, o); else { if (!r.isBuffer(e)) throw new TypeError('"list" argument must be an Array of Buffers'); e.copy(i, o) } o += e.length } return i }, r.byteLength = y, r.prototype._isBuffer = !0, r.prototype.swap16 = function () { const t = this.length; if (t % 2 != 0) throw new RangeError("Buffer size must be a multiple of 16-bits"); for (let M r = 0; r < t; r += 2)g(this, r, r + 1); return this }, r.prototype.swap32 = function () { const t = this.length; if (t % 4 != 0) throw new RangeError("Buffer size must be a multiple of 32-bits"); for (let r = 0; r < t; r += 4)g(this, r, r + 3), g(this, r + 1, r + 2); return this }, r.prototype.swap64 = function () { const t = this.length; if (t % 8 != 0) throw new RangeError("Buffer size must be a multiple of 64-bits"); for (let r = 0; r < t; r += 8)g(this, r, r + 7), g(this, r + 1, r + 6), g(this, r + 2, r + 5), gM (this, r + 3, r + 4); return this }, r.prototype.toString = function () { const t = this.length; return 0 === t ? "" : 0 === arguments.length ? I(this, 0, t) : function (t, r, e) { let n = !1; if ((void 0 === r || r < 0) && (r = 0), r > this.length) return ""; if ((void 0 === e || e > this.length) && (e = this.length), e <= 0) return ""; if ((e >>>= 0) <= (r >>>= 0)) return ""; for (t || (t = "utf8"); ;)switch (t) { case "hex": return _(this, r, e); case "utf8": case "utf-8": return I(this, r, e); case "ascii": retM urn R(this, r, e); case "latin1": case "binary": return T(this, r, e); case "base64": return A(this, r, e); case "ucs2": case "ucs-2": case "utf16le": case "utf-16le": return L(this, r, e); default: if (n) throw new TypeError("Unknown encoding: " + t); t = (t + "").toLowerCase(), n = !0 } }.apply(this, arguments) }, r.prototype.toLocaleString = r.prototype.toString, r.prototype.equals = function (t) { if (!r.isBuffer(t)) throw new TypeError("Argument must be a Buffer"); return this === t || 0 === r.compare(this, t)M }, r.prototype.inspect = function () { let t = ""; const r = e.INSPECT_MAX_BYTES; return t = this.toString("hex", 0, r).replace(/(.{2})/g, "$1 ").trim(), this.length > r && (t += " ... "), "<Buffer " + t + ">" }, o && (r.prototype[o] = r.prototype.inspect), r.prototype.compare = function (t, e, n, i, o) { if (W(t, Uint8Array) && (t = r.from(t, t.offset, t.byteLength)), !r.isBuffer(t)) throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type ' + typeof t); if (void 0 === e M && (e = 0), void 0 === n && (n = t ? t.length : 0), void 0 === i && (i = 0), void 0 === o && (o = this.length), e < 0 || n > t.length || i < 0 || o > this.length) throw new RangeError("out of range index"); if (i >= o && e >= n) return 0; if (i >= o) return -1; if (e >= n) return 1; if (this === t) return 0; let f = (o >>>= 0) - (i >>>= 0), u = (n >>>= 0) - (e >>>= 0); const s = Math.min(f, u), h = this.slice(i, o), a = t.slice(e, n); for (let t = 0; t < s; ++t)if (h[t] !== a[t]) { f = h[t], u = a[t]; break } returM n f < u ? -1 : u < f ? 1 : 0 }, r.prototype.includes = function (t, r, e) { return -1 !== this.indexOf(t, r, e) }, r.prototype.indexOf = function (t, r, e) { return w(this, t, r, e, !0) }, r.prototype.lastIndexOf = function (t, r, e) { return w(this, t, r, e, !1) }, r.prototype.write = function (t, r, e, n) { if (void 0 === r) n = "utf8", e = this.length, r = 0; else if (void 0 === e && "string" == typeof r) n = r, e = this.length, r = 0; else { if (!isFinite(r)) throw new Error("Buffer.write(string, encoding, offsM et[, length]) is no longer supported"); r >>>= 0, isFinite(e) ? (e >>>= 0, void 0 === n && (n = "utf8")) : (n = e, e = void 0) } const i = this.length - r; if ((void 0 === e || e > i) && (e = i), t.length > 0 && (e < 0 || r < 0) || r > this.length) throw new RangeError("Attempt to write outside buffer bounds"); n || (n = "utf8"); let o = !1; for (; ;)switch (n) { case "hex": return b(this, t, r, e); case "utf8": case "utf-8": return m(this, t, r, e); case "ascii": case "latin1": case "binary": return E(this, t, r, M e); case "base64": return v(this, t, r, e); case "ucs2": case "ucs-2": case "utf16le": case "utf-16le": return B(this, t, r, e); default: if (o) throw new TypeError("Unknown encoding: " + n); n = ("" + n).toLowerCase(), o = !0 } }, r.prototype.toJSON = function () { return { type: "Buffer", data: Array.prototype.slice.call(this._arr || this, 0) } }; const U = 4096; function R(t, r, e) { let n = ""; e = Math.min(t.length, e); for (let i = r; i < e; ++i)n += String.fromCharCode(127 & t[i]); return n } function T(t, rM , e) { let n = ""; e = Math.min(t.length, e); for (let i = r; i < e; ++i)n += String.fromCharCode(t[i]); return n } function _(t, r, e) { const n = t.length; (!r || r < 0) && (r = 0), (!e || e < 0 || e > n) && (e = n); let i = ""; for (let n = r; n < e; ++n)i += J[t[n]]; return i } function L(t, r, e) { const n = t.slice(r, e); let i = ""; for (let t = 0; t < n.length - 1; t += 2)i += String.fromCharCode(n[t] + 256 * n[t + 1]); return i } function S(t, r, e) { if (t % 1 != 0 || t < 0) throw new RangeError("offset iM s not uint"); if (t + r > e) throw new RangeError("Trying to access beyond buffer length") } function O(t, e, n, i, o, f) { if (!r.isBuffer(t)) throw new TypeError('"buffer" argument must be a Buffer instance'); if (e > o || e < f) throw new RangeError('"value" argument is out of bounds'); if (n + i > t.length) throw new RangeError("Index out of range") } function C(t, r, e, n, i) { F(r, n, i, t, e, 7); let o = Number(r & BigInt(4294967295)); t[e++] = o, o >>= 8, t[e++] = o, o >>= 8, t[e++] = o, o >>= 8, t[e++] = oM ; let f = Number(r >> BigInt(32) & BigInt(4294967295)); return t[e++] = f, f >>= 8, t[e++] = f, f >>= 8, t[e++] = f, f >>= 8, t[e++] = f, e } function x(t, r, e, n, i) { F(r, n, i, t, e, 7); let o = Number(r & BigInt(4294967295)); t[e + 7] = o, o >>= 8, t[e + 6] = o, o >>= 8, t[e + 5] = o, o >>= 8, t[e + 4] = o; let f = Number(r >> BigInt(32) & BigInt(4294967295)); return t[e + 3] = f, f >>= 8, t[e + 2] = f, f >>= 8, t[e + 1] = f, f >>= 8, t[e] = f, e + 8 } function M(t, r, e, n, i, o) { if (e + n > t.length) throwM new RangeError("Index out of range"); if (e < 0) throw new RangeError("Index out of range") } function N(t, r, e, n, o) { return r = +r, e >>>= 0, o || M(t, 0, e, 4), i.write(t, r, e, n, 23, 4), e + 4 } function P(t, r, e, n, o) { return r = +r, e >>>= 0, o || M(t, 0, e, 8), i.write(t, r, e, n, 52, 8), e + 8 } r.prototype.slice = function (t, e) { const n = this.length; (t = ~~t) < 0 ? (t += n) < 0 && (t = 0) : t > n && (t = n), (e = void 0 === e ? n : ~~e) < 0 ? (e += n) < 0 && (e = 0) : e > n && (e = n), e < t &M & (e = t); const i = this.subarray(t, e); return Object.setPrototypeOf(i, r.prototype), i }, r.prototype.readUintLE = r.prototype.readUIntLE = function (t, r, e) { t >>>= 0, r >>>= 0, e || S(t, r, this.length); let n = this[t], i = 1, o = 0; for (; ++o < r && (i *= 256);)n += this[t + o] * i; return n }, r.prototype.readUintBE = r.prototype.readUIntBE = function (t, r, e) { t >>>= 0, r >>>= 0, e || S(t, r, this.length); let n = this[t + --r], i = 1; for (; r > 0 && (i *= 256);)n += this[t + --r] * i; return n }, r.M prototype.readUint8 = r.prototype.readUInt8 = function (t, r) { return t >>>= 0, r || S(t, 1, this.length), this[t] }, r.prototype.readUint16LE = r.prototype.readUInt16LE = function (t, r) { return t >>>= 0, r || S(t, 2, this.length), this[t] | this[t + 1] << 8 }, r.prototype.readUint16BE = r.prototype.readUInt16BE = function (t, r) { return t >>>= 0, r || S(t, 2, this.length), this[t] << 8 | this[t + 1] }, r.prototype.readUint32LE = r.prototype.readUInt32LE = function (t, r) { return t >>>= 0, r || S(t, 4, this.leM ngth), (this[t] | this[t + 1] << 8 | this[t + 2] << 16) + 16777216 * this[t + 3] }, r.prototype.readUint32BE = r.prototype.readUInt32BE = function (t, r) { return t >>>= 0, r || S(t, 4, this.length), 16777216 * this[t] + (this[t + 1] << 16 | this[t + 2] << 8 | this[t + 3]) }, r.prototype.readBigUInt64LE = Z(function (t) { z(t >>>= 0, "offset"); const r = this[t], e = this[t + 7]; void 0 !== r && void 0 !== e || D(t, this.length - 8); const n = r + 256 * this[++t] + 65536 * this[++t] + this[++t] * 2 ** 24, i = this[M ++t] + 256 * this[++t] + 65536 * this[++t] + e * 2 ** 24; return BigInt(n) + (BigInt(i) << BigInt(32)) }), r.prototype.readBigUInt64BE = Z(function (t) { z(t >>>= 0, "offset"); const r = this[t], e = this[t + 7]; void 0 !== r && void 0 !== e || D(t, this.length - 8); const n = r * 2 ** 24 + 65536 * this[++t] + 256 * this[++t] + this[++t], i = this[++t] * 2 ** 24 + 65536 * this[++t] + 256 * this[++t] + e; return (BigInt(n) << BigInt(32)) + BigInt(i) }), r.prototype.readIntLE = function (t, r, e) { t >>>= 0, r >>>= 0M , e || S(t, r, this.length); let n = this[t], i = 1, o = 0; for (; ++o < r && (i *= 256);)n += this[t + o] * i; return n >= (i *= 128) && (n -= Math.pow(2, 8 * r)), n }, r.prototype.readIntBE = function (t, r, e) { t >>>= 0, r >>>= 0, e || S(t, r, this.length); let n = r, i = 1, o = this[t + --n]; for (; n > 0 && (i *= 256);)o += this[t + --n] * i; return o >= (i *= 128) && (o -= Math.pow(2, 8 * r)), o }, r.prototype.readInt8 = function (t, r) { return t >>>= 0, r || S(t, 1, this.length), 128 & this[t] ? -1 * (255 M - this[t] + 1) : this[t] }, r.prototype.readInt16LE = function (t, r) { t >>>= 0, r || S(t, 2, this.length); const e = this[t] | this[t + 1] << 8; return 32768 & e ? 4294901760 | e : e }, r.prototype.readInt16BE = function (t, r) { t >>>= 0, r || S(t, 2, this.length); const e = this[t + 1] | this[t] << 8; return 32768 & e ? 4294901760 | e : e }, r.prototype.readInt32LE = function (t, r) { return t >>>= 0, r || S(t, 4, this.length), this[t] | this[t + 1] << 8 | this[t + 2] << 16 | this[t + 3] << 24 }, r.prototype.reM adInt32BE = function (t, r) { return t >>>= 0, r || S(t, 4, this.length), this[t] << 24 | this[t + 1] << 16 | this[t + 2] << 8 | this[t + 3] }, r.prototype.readBigInt64LE = Z(function (t) { z(t >>>= 0, "offset"); const r = this[t], e = this[t + 7]; void 0 !== r && void 0 !== e || D(t, this.length - 8); const n = this[t + 4] + 256 * this[t + 5] + 65536 * this[t + 6] + (e << 24); return (BigInt(n) << BigInt(32)) + BigInt(r + 256 * this[++t] + 65536 * this[++t] + this[++t] * 2 ** 24) }), r.prototype.readBigInt64BE = ZM (function (t) { z(t >>>= 0, "offset"); const r = this[t], e = this[t + 7]; void 0 !== r && void 0 !== e || D(t, this.length - 8); const n = (r << 24) + 65536 * this[++t] + 256 * this[++t] + this[++t]; return (BigInt(n) << BigInt(32)) + BigInt(this[++t] * 2 ** 24 + 65536 * this[++t] + 256 * this[++t] + e) }), r.prototype.readFloatLE = function (t, r) { return t >>>= 0, r || S(t, 4, this.length), i.read(this, t, !0, 23, 4) }, r.prototype.readFloatBE = function (t, r) { return t >>>= 0, r || S(t, 4, this.length), i.reM ad(this, t, !1, 23, 4) }, r.prototype.readDoubleLE = function (t, r) { return t >>>= 0, r || S(t, 8, this.length), i.read(this, t, !0, 52, 8) }, r.prototype.readDoubleBE = function (t, r) { return t >>>= 0, r || S(t, 8, this.length), i.read(this, t, !1, 52, 8) }, r.prototype.writeUintLE = r.prototype.writeUIntLE = function (t, r, e, n) { if (t = +t, r >>>= 0, e >>>= 0, !n) { O(this, t, r, e, Math.pow(2, 8 * e) - 1, 0) } let i = 1, o = 0; for (this[r] = 255 & t; ++o < e && (i *= 256);)this[r + o] = t / i & 255; retuM rn r + e }, r.prototype.writeUintBE = r.prototype.writeUIntBE = function (t, r, e, n) { if (t = +t, r >>>= 0, e >>>= 0, !n) { O(this, t, r, e, Math.pow(2, 8 * e) - 1, 0) } let i = e - 1, o = 1; for (this[r + i] = 255 & t; --i >= 0 && (o *= 256);)this[r + i] = t / o & 255; return r + e }, r.prototype.writeUint8 = r.prototype.writeUInt8 = function (t, r, e) { return t = +t, r >>>= 0, e || O(this, t, r, 1, 255, 0), this[r] = 255 & t, r + 1 }, r.prototype.writeUint16LE = r.prototype.writeUInt16LE = function (t, r, e) {M return t = +t, r >>>= 0, e || O(this, t, r, 2, 65535, 0), this[r] = 255 & t, this[r + 1] = t >>> 8, r + 2 }, r.prototype.writeUint16BE = r.prototype.writeUInt16BE = function (t, r, e) { return t = +t, r >>>= 0, e || O(this, t, r, 2, 65535, 0), this[r] = t >>> 8, this[r + 1] = 255 & t, r + 2 }, r.prototype.writeUint32LE = r.prototype.writeUInt32LE = function (t, r, e) { return t = +t, r >>>= 0, e || O(this, t, r, 4, 4294967295, 0), this[r + 3] = t >>> 24, this[r + 2] = t >>> 16, this[r + 1] = t >>> 8, this[r] = 255M & t, r + 4 }, r.prototype.writeUint32BE = r.prototype.writeUInt32BE = function (t, r, e) { return t = +t, r >>>= 0, e || O(this, t, r, 4, 4294967295, 0), this[r] = t >>> 24, this[r + 1] = t >>> 16, this[r + 2] = t >>> 8, this[r + 3] = 255 & t, r + 4 }, r.prototype.writeBigUInt64LE = Z(function (t, r = 0) { return C(this, t, r, BigInt(0), BigInt("0xffffffffffffffff")) }), r.prototype.writeBigUInt64BE = Z(function (t, r = 0) { return x(this, t, r, BigInt(0), BigInt("0xffffffffffffffff")) }), r.prototype.writeIntLE =M function (t, r, e, n) { if (t = +t, r >>>= 0, !n) { const n = Math.pow(2, 8 * e - 1); O(this, t, r, e, n - 1, -n) } let i = 0, o = 1, f = 0; for (this[r] = 255 & t; ++i < e && (o *= 256);)t < 0 && 0 === f && 0 !== this[r + i - 1] && (f = 1), this[r + i] = (t / o >> 0) - f & 255; return r + e }, r.prototype.writeIntBE = function (t, r, e, n) { if (t = +t, r >>>= 0, !n) { const n = Math.pow(2, 8 * e - 1); O(this, t, r, e, n - 1, -n) } let i = e - 1, o = 1, f = 0; for (this[r + i] = 255 & t; --i >= 0 && (o *= 256);)tM < 0 && 0 === f && 0 !== this[r + i + 1] && (f = 1), this[r + i] = (t / o >> 0) - f & 255; return r + e }, r.prototype.writeInt8 = function (t, r, e) { return t = +t, r >>>= 0, e || O(this, t, r, 1, 127, -128), t < 0 && (t = 255 + t + 1), this[r] = 255 & t, r + 1 }, r.prototype.writeInt16LE = function (t, r, e) { return t = +t, r >>>= 0, e || O(this, t, r, 2, 32767, -32768), this[r] = 255 & t, this[r + 1] = t >>> 8, r + 2 }, r.prototype.writeInt16BE = function (t, r, e) { return t = +t, r >>>= 0, e || O(this, t, r,M 2, 32767, -32768), this[r] = t >>> 8, this[r + 1] = 255 & t, r + 2 }, r.prototype.writeInt32LE = function (t, r, e) { return t = +t, r >>>= 0, e || O(this, t, r, 4, 2147483647, -2147483648), this[r] = 255 & t, this[r + 1] = t >>> 8, this[r + 2] = t >>> 16, this[r + 3] = t >>> 24, r + 4 }, r.prototype.writeInt32BE = function (t, r, e) { return t = +t, r >>>= 0, e || O(this, t, r, 4, 2147483647, -2147483648), t < 0 && (t = 4294967295 + t + 1), this[r] = t >>> 24, this[r + 1] = t >>> 16, this[r + 2] = t >>> 8, this[rM + 3] = 255 & t, r + 4 }, r.prototype.writeBigInt64LE = Z(function (t, r = 0) { return C(this, t, r, -BigInt("0x8000000000000000"), BigInt("0x7fffffffffffffff")) }), r.prototype.writeBigInt64BE = Z(function (t, r = 0) { return x(this, t, r, -BigInt("0x8000000000000000"), BigInt("0x7fffffffffffffff")) }), r.prototype.writeFloatLE = function (t, r, e) { return N(this, t, r, !0, e) }, r.prototype.writeFloatBE = function (t, r, e) { return N(this, t, r, !1, e) }, r.prototype.writeDoubleLE = function (t, r, e) { return M P(this, t, r, !0, e) }, r.prototype.writeDoubleBE = function (t, r, e) { return P(this, t, r, !1, e) }, r.prototype.copy = function (t, e, n, i) { if (!r.isBuffer(t)) throw new TypeError("argument should be a Buffer"); if (n || (n = 0), i || 0 === i || (i = this.length), e >= t.length && (e = t.length), e || (e = 0), i > 0 && i < n && (i = n), i === n) return 0; if (0 === t.length || 0 === this.length) return 0; if (e < 0) throw new RangeError("targetStart out of bounds"); if (n < 0 || n >= this.length) throw new RM angeError("Index out of range"); if (i < 0) throw new RangeError("sourceEnd out of bounds"); i > this.length && (i = this.length), t.length - e < i - n && (i = t.length - e + n); const o = i - n; return this === t && "function" == typeof Uint8Array.prototype.copyWithin ? this.copyWithin(e, n, i) : Uint8Array.prototype.set.call(t, this.subarray(n, i), e), o }, r.prototype.fill = function (t, e, n, i) { if ("string" == typeof t) { if ("string" == typeof e ? (i = e, e = 0, n = this.length) : "string" == typeof n && (iM = n, n = this.length), void 0 !== i && "string" != typeof i) throw new TypeError("encoding must be a string"); if ("string" == typeof i && !r.isEncoding(i)) throw new TypeError("Unknown encoding: " + i); if (1 === t.length) { const r = t.charCodeAt(0); ("utf8" === i && r < 128 || "latin1" === i) && (t = r) } } else "number" == typeof t ? t &= 255 : "boolean" == typeof t && (t = Number(t)); if (e < 0 || this.length < e || this.length < n) throw new RangeError("Out of range index"); if (n <= e) return this; let o; iM f (e >>>= 0, n = void 0 === n ? this.length : n >>> 0, t || (t = 0), "number" == typeof t) for (o = e; o < n; ++o)this[o] = t; else { const f = r.isBuffer(t) ? t : r.from(t, i), u = f.length; if (0 === u) throw new TypeError('The value "' + t + '" is invalid for argument "value"'); for (o = 0; o < n - e; ++o)this[o + e] = f[o % u] } return this }; const k = {}; function $(t, r, e) { k[t] = class extends e { constructor() { super(), Object.defineProperty(this, "message", { value: r.apply(this, arguments), writable: M !0, configurable: !0 }), this.name = `${this.name} [${t}]`, this.stack, delete this.name } get code() { return t } set code(t) { Object.defineProperty(this, "code", { configurable: !0, enumerable: !0, value: t, writable: !0 }) } toString() { return `${this.name} [${t}]: ${this.message}` } } } function j(t) { let r = "", e = t.length; const n = "-" === t[0] ? 1 : 0; for (; e >= n + 4; e -= 3)r = `_${t.slice(e - 3, e)}${r}`; return `${t.slice(0, e)}${r}` } function F(t, r, e, n, i, o) { if (t > e || t < r) { const n M = "bigint" == typeof r ? "n" : ""; let i; throw i = o > 3 ? 0 === r || r === BigInt(0) ? `>= 0${n} and < 2${n} ** ${8 * (o + 1)}${n}` : `>= -(2${n} ** ${8 * (o + 1) - 1}${n}) and < 2 ** ` + `${8 * (o + 1) - 1}${n}` : `>= ${r}${n} and <= ${e}${n}`, new k.ERR_OUT_OF_RANGE("value", i, t) } !function (t, r, e) { z(r, "offset"), void 0 !== t[r] && void 0 !== t[r + e] || D(r, t.length - (e + 1)) }(n, i, o) } function z(t, r) { if ("number" != typeof t) throw new k.ERR_INVALID_ARG_TYPE(r, "number", t) } function D(t, r, eM ) { if (Math.floor(t) !== t) throw z(t, e), new k.ERR_OUT_OF_RANGE(e || "offset", "an integer", t); if (r < 0) throw new k.ERR_BUFFER_OUT_OF_BOUNDS; throw new k.ERR_OUT_OF_RANGE(e || "offset", `>= ${e ? 1 : 0} and <= ${r}`, t) } $("ERR_BUFFER_OUT_OF_BOUNDS", function (t) { return t ? `${t} is outside of buffer bounds` : "Attempt to access memory outside buffer bounds" }, RangeError), $("ERR_INVALID_ARG_TYPE", function (t, r) { return `The "${t}" argument must be of type number. Received type ${typeof r}` }, TypeErrM or), $("ERR_OUT_OF_RANGE", function (t, r, e) { let n = `The value of "${t}" is out of range.`, i = e; return Number.isInteger(e) && Math.abs(e) > 2 ** 32 ? i = j(String(e)) : "bigint" == typeof e && (i = String(e), (e > BigInt(2) ** BigInt(32) || e < -(BigInt(2) ** BigInt(32))) && (i = j(i)), i += "n"), n += ` It must be ${r}. Received ${i}` }, RangeError); const Y = /[^+\/0-9A-Za-z-_]/g; function q(t, r) { let e; r = r || 1 / 0; const n = t.length; let i = null; const o = []; for (let f = 0; f < n; ++f) { if ((e M = t.charCodeAt(f)) > 55295 && e < 57344) { if (!i) { if (e > 56319) { (r -= 3) > -1 && o.push(239, 191, 189); continue } if (f + 1 === n) { (r -= 3) > -1 && o.push(239, 191, 189); continue } i = e; continue } if (e < 56320) { (r -= 3) > -1 && o.push(239, 191, 189), i = e; continue } e = 65536 + (i - 55296 << 10 | e - 56320) } else i && (r -= 3) > -1 && o.push(239, 191, 189); if (i = null, e < 128) { if ((r -= 1) < 0) break; o.push(e) } else if (e < 2048) { if ((r -= 2) < 0) break; o.push(e >> 6 | 192, 63 & e | 128)M } else if (e < 65536) { if ((r -= 3) < 0) break; o.push(e >> 12 | 224, e >> 6 & 63 | 128, 63 & e | 128) } else { if (!(e < 1114112)) throw new Error("Invalid code point"); if ((r -= 4) < 0) break; o.push(e >> 18 | 240, e >> 12 & 63 | 128, e >> 6 & 63 | 128, 63 & e | 128) } } return o } function G(t) { return n.toByteArray(function (t) { if ((t = (t = t.split("=")[0]).trim().replace(Y, "")).length < 2) return ""; for (; t.length % 4 != 0;)t += "="; return t }(t)) } function V(t, r, e, n) { let i; for (i = 0; i < n M && !(i + e >= r.length || i >= t.length); ++i)r[i + e] = t[i]; return i } function W(t, r) { return t instanceof r || null != t && null != t.constructor && null != t.constructor.name && t.constructor.name === r.name } function X(t) { return t != t } const J = function () { const t = new Array(256); for (let r = 0; r < 16; ++r) { const e = 16 * r; for (let n = 0; n < 16; ++n)t[e + n] = "0123456789abcdef"[r] + "0123456789abcdef"[n] } return t }(); function Z(t) { return "undefined" == typeof BigInt ? H : t } functionM H() { throw new Error("BigInt not supported") } }).call(this, t("buffer").Buffer) }, { "base64-js": 5, buffer: 2, ieee754: 6 }], 5: [function (t, r, e) { "use strict"; e.byteLength = function (t) { var r = h(t), e = r[0], n = r[1]; return 3 * (e + n) / 4 - n }, e.toByteArray = function (t) { var r, e, n = h(t), f = n[0], u = n[1], s = new o(function (t, r, e) { return 3 * (r + e) / 4 - e }(0, f, u)), a = 0, c = u > 0 ? f - 4 : f; for (e = 0; e < c; e += 4)r = i[t.charCodeAt(e)] << 18 | i[t.charCodeAt(e + 1)] << 12M | i[t.charCodeAt(e + 2)] << 6 | i[t.charCodeAt(e + 3)], s[a++] = r >> 16 & 255, s[a++] = r >> 8 & 255, s[a++] = 255 & r; 2 === u && (r = i[t.charCodeAt(e)] << 2 | i[t.charCodeAt(e + 1)] >> 4, s[a++] = 255 & r); 1 === u && (r = i[t.charCodeAt(e)] << 10 | i[t.charCodeAt(e + 1)] << 4 | i[t.charCodeAt(e + 2)] >> 2, s[a++] = r >> 8 & 255, s[a++] = 255 & r); return s }, e.fromByteArray = function (t) { for (var r, e = t.length, i = e % 3, o = [], f = 0, u = e - i; f < u; f += 16383)o.push(a(t, f, f + 16383 > u ? u : f +M 16383)); 1 === i ? (r = t[e - 1], o.push(n[r >> 2] + n[r << 4 & 63] + "==")) : 2 === i && (r = (t[e - 2] << 8) + t[e - 1], o.push(n[r >> 10] + n[r >> 4 & 63] + n[r << 2 & 63] + "=")); return o.join("") }; for (var n = [], i = [], o = "undefined" != typeof Uint8Array ? Uint8Array : Array, f = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/", u = 0, s = f.length; u < s; ++u)n[u] = f[u], i[f.charCodeAt(u)] = u; function h(t) { var r = t.length; if (r % 4 > 0) throw new Error("Invalid string. Length M must be a multiple of 4"); var e = t.indexOf("="); return -1 === e && (e = r), [e, e === r ? 0 : 4 - e % 4] } function a(t, r, e) { for (var i, o, f = [], u = r; u < e; u += 3)i = (t[u] << 16 & 16711680) + (t[u + 1] << 8 & 65280) + (255 & t[u + 2]), f.push(n[(o = i) >> 18 & 63] + n[o >> 12 & 63] + n[o >> 6 & 63] + n[63 & o]); return f.join("") } i["-".charCodeAt(0)] = 62, i["_".charCodeAt(0)] = 63 }, {}], 6: [function (t, r, e) { e.read = function (t, r, e, n, i) { var o, f, u = 8 * i - n - 1, s = (1 << u) - 1, h =M s >> 1, a = -7, c = e ? i - 1 : 0, p = e ? -1 : 1, l = t[r + c]; for (c += p, o = l & (1 << -a) - 1, l >>= -a, a += u; a > 0; o = 256 * o + t[r + c], c += p, a -= 8); for (f = o & (1 << -a) - 1, o >>= -a, a += n; a > 0; f = 256 * f + t[r + c], c += p, a -= 8); if (0 === o) o = 1 - h; else { if (o === s) return f ? NaN : 1 / 0 * (l ? -1 : 1); f += Math.pow(2, n), o -= h } return (l ? -1 : 1) * f * Math.pow(2, o - n) }, e.write = function (t, r, e, n, i, o) { var f, u, s, h = 8 * o - i - 1, a = (1 << h) - 1, c = a >M > 1, p = 23 === i ? Math.pow(2, -24) - Math.pow(2, -77) : 0, l = n ? 0 : o - 1, y = n ? 1 : -1, g = r < 0 || 0 === r && 1 / r < 0 ? 1 : 0; for (r = Math.abs(r), isNaN(r) || r === 1 / 0 ? (u = isNaN(r) ? 1 : 0, f = a) : (f = Math.floor(Math.log(r) / Math.LN2), r * (s = Math.pow(2, -f)) < 1 && (f--, s *= 2), (r += f + c >= 1 ? p / s : p * Math.pow(2, 1 - c)) * s >= 2 && (f++, s /= 2), f + c >= a ? (u = 0, f = a) : f + c >= 1 ? (u = (r * s - 1) * Math.pow(2, i), f += c) : (u = r * Math.pow(2, c - 1) * Math.pow(2, i), M f = 0)); i >= 8; t[e + l] = 255 & u, l += y, u /= 256, i -= 8); for (f = f << i | u, h += i; h > 0; t[e + l] = 255 & f, l += y, f /= 256, h -= 8); t[e + l - y] |= 128 * g } }, {}] }, {}, [4])(4) });</script> <script> const buf = buffer </script> <script>var bton = function (t) { const n = new TextEncoder, e = [{ name: "base58", charset: "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz" }, { name: "base64", charset: "ABCDEFGHIJKLMNOPQRSTUVWXM YZabcdefghijklmnopqrstuvwxyz0123456789+/" }, { name: "base64url", charset: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_" }]; function r(t) { for (const n of e) if (n.name === t) return n.charset; throw TypeError("Charset does not exist: " + t) encode: function (t, e, i = !1) { "string" == typeof t && (t = n.encode(t)); const o = r(e), s = o.length, a = []; let c, u, f, h = "", l = 0; for (c = 0; c < t.length; c++) for (l = 0, u = t[c], h += u > 0 || (h.length ^ c) > 0 ? "" : "1"; l in a || u > 0;) f = a[l], f = f > 0 ? 256 * f + u : u, u = f / s | 0, a[l] = f % s, l++; for (; l-- > 0;) h += o[a[l]]; return i && h.length % 4 > 0 ? h + "=".repeat(4 - h.length % 4) : h }, decode: function (t, n) { const e = r(n), i = e.length, o = [], s = []; t = t.replace("=", ""); let a, c, u, f = 0; for (a = 0; a < t.length; a++) M if (f = 0, c = e.indexOf(t[a]), c < 0) throw new Error(`Character range out of bounds: ${c}`); for (c > 0 || (s.length ^ a) > 0 || s.push(0); f in o || c > 0;) u = o[f], u = u > 0 ? u * i + c : c, c = u >> 8, o[f] = u % 256, f++ for (; f-- > 0;) s.push(o[f]); return new Uint8Array(s) }, o = "qpzry9x8gf2tvdw0s3jn54khce6mua7l", s = [996825010, 642813549, 513874426, 1027748829, 705979059], a = { BECH32: "bech32", BECH32M: "bech32M function c(t) { switch (t) { case a.BECH32: return 1; case a.BECH32M: return 734539939; throw new Error(`Unrecognized encoding: ${t}`) function u(t) { for (let e = 0; e < t.length; ++e) { const r = n >> 25; n = (33554431 & n) << 5 ^ t[e]; for (let t = 0; t < 5; ++t) (r >> t & 1) > 0 && (n ^= s[t]) function f(t) { const n = []; for (e = 0; e < t.length; ++e) n.push(t.charCodeAt(e) >> 5); for (n.push(0), e = 0; e < t.length; ++e) n.push(31 & t.charCodeAt(e)); function h(t, n, e, r = !0) { const i = []; let o = 0, s = 0; const a = (1 << e) - 1, c = (1 << n + e - 1) - 1; for (const r of t) { if (r < 0 || r >> n > 0) return []; for (o = (o << n | r) & c, s M += n; s >= e;) s -= e, i.push(o >> s & a) if (r) s > 0 && i.push(o << e - s & a); else if (s >= n || (o << e - s & a) > 0) return []; function l(t, n, e) { const r = n.concat(function (t, n, e) { const r = u(f(t).concat(n).concat([0, 0, 0, 0, 0, 0])) ^ c(e), i = []; for (let t = 0; t < 6; ++t) i.push(r >> 5 * (5 - t) & 31); }(t, n, e)); let i = t + "1"; for (let t = 0; t < r.length; M ++t) i += o.charAt(r[t]); function d(t, n) { const e = n > 0 ? "bech32m" : "bech32"; if (!function (t) { let n, e, r = !1, i = !1; for (n = 0; n < t.length; ++n) { if (e = t.charCodeAt(n), e < 33 || e > 126) return !1; e >= 97 && e <= 122 && (r = !0), e >= 65 && e <= 90 && (i = !0) return !(r && i) }(t)) return { hrp: null, data: [255] }; if (!function (t) { t n = t.lastIndexOf("1"); return !(n < 1 || n + 7 > t.length || t.length > 90) }(t = t.toLowerCase())) return { hrp: null, data: [255] }; const r = [], i = t.lastIndexOf("1"), s = t.substring(0, i); for (let n = i + 1; n < t.length; ++n) { const e = o.indexOf(t.charAt(n)); if (-1 === e) return { hrp: null, data: [255] }; return function (t, n, e) { return u(f(t).concat(n)) === c(e) }(s, r, e) ? {M hrp: s, data: r.slice(0, r.length - 6) } : { hrp: null, data: [255] } function w(t, n = 0) { const e = t.split("1", 1)[0], { hrp: r, data: i } = d(t, n), o = h(i.slice(1), 5, 8, !1), s = o.length; switch (!0) { case e !== r: throw new Error("Returned hrp string is invalid."); case null === o || s < 2 || s > 40: throw new Error("Decoded string is invalid or out of spec."); case i[0] > 16: throw new Error("RetM urned version bit is out of range."); case 0 === i[0] && 20 !== s && 32 !== s: throw new Error("Decoded string does not match version 0 spec."); case 0 === i[0] && 0 !== n: case 0 !== i[0] && 1 !== n: throw new Error("Decoded version bit does not match."); return Uint8Array.from(o) encode: function (t, n = "bch", e = 0) { const r = l(n, [e, ...h([...t], 8, 5)], e >M 0 ? "bech32m" : "bech32"); return w(r, e), r }, decode: w }, g = new TextEncoder, p = new TextDecoder; function m(t) { return g.encode(t) function b(t) { const n = []; let e, r = 0; if (t.length % 2 > 0) throw new Error(`Invalid hex string length: ${t.length}`); for (e = 0; e < t.length; e += 2) n[r] = parseInt(t.slice(e, e + 2), 16), r += 1; return Uint8Array.from(n) function A(t) { if (0 === t) return Uint8Array.of(0); const n = []; for (; t > 0;) { const e = 255 & t; n.push(e), t = (t - e) / 256 return Uint8Array.from(n) function x(t) { if (0n === t) return Uint8Array.of(0); const n = []; for (; t > 0n;) { const e = 0xffn & t; n.push(Number(e)), t = (t - e) / 256n return Uint8Array.from(n) function E(t) { return p.decM function v(t) { let n, e = 0; for (n = t.length - 1; n >= 0; n--) e = 256 * e + t[n]; return Number(e) function S(t) { let n, e = 0n; for (n = t.length - 1; n >= 0; n--) e = 256n * e + BigInt(t[n]); return BigInt(e) async function P(t) { return crypto.subtle.digest("SHA-256", t).then((t => new Uint8Array(t))) async function O(t) { return P(await P(t)) const { crypto: U } = globalThis; let _ = class extends Uint8Array { this.num = (t, n, e = "le") => { const r = new _(A(t), n); return "le" === e ? r.reverse() : r this.big = (t, n, e = "le") => { const r = new _(x(t), n); return "le" === e ? r.reverse() : r static async b58check(t) { const n = i.decode(t, "base58"); return new _(await async function (t) { const n = t.slice(0, -4), e = t.slice(-4); if ((await O(n)).slice(0, 4).toString() !== e.toString()) throw new Error("Invalid checksum!"); return n this.any = (t, n) => new _(function (t) { if (t instanceof ArrayBuffer) return new Uint8Array(t); if (t instanceof Uint8Array) return t; const n = typeof t; switch (n) { return x(t); case "boolean": return Uint8Array.of(t); case "number": return A(t); case "string": return null !== t.match(/^(02|03)*[0-9a-fA-F]{64}$/) ? b(t) : g.encode(t); default: throw TypeError("Unsupported format:" + n) this.raw = (t, n) => new _(t, n) this.str = (t, n) => new _(m(t), n) this.hex = (t, n) => new _(b(t), n) this.json = t => new _(m(JSON.stringify(t))) this.base64 = t => new _(i.decode(t, "base64")) this.b64url = t => new _(i.decode(t, "base64url")) this.bech32 = (t, n = 0) => new _(y.decode(t, n)) constructor(t, n)M if (void 0 !== n) { const e = new Uint8Array(n).fill(0); e.set(new Uint8Array(t)), t = e.buffer return super(t), this return this.toNum() return this.toBig() return this.toArr() return this.toStr() return this.toHex() return new Uint8Array(this) get base64() { return this.toBase64() get b64url() { return this.toB64url() get digest() { return this.toDigest() return this.toDigest().then((t => new _(t).hex)) toNum(t = "le") { return v("le" === t ? this.reverse() : this) toBig(t = "le") { S("le" === t ? this.reverse() : this) async toDigest(t = "SHA-256") { return U.subtle.digest(t, this.raw).then((t => new Uint8Array(t))) async tob58check() { return i.encode(await async function (t) { const n = await O(t); return Uint8Array.of(...t, ...n.slice(0, 4)) }(this), "base58") return Array.from(this) return E(this) return function (t) { const n = []; for (e = 0; e < t.length; e++) n.push(t[e].toString(16).padStart(2, "0")); return n.join("") return JSON.parse(E(this)) return new Uint8Array(this) toB64url() { return i.encode(this, "base64url") toBase64(t) { urn i.encode(this, "base64", t) toBech32(t, n = 0) { return y.encode(this, t, n) prepend(t) { return _.of(...t, ...this) return _.of(...this, ...t) slice(t, n) { return new _(new Uint8Array(this).slice(t, n)) return new _(new Uint8Array(this).reverse()) write(t, n) { this.set(t, n) prefixSize2(t) { return _.of(..._.readSize(this.length, t), ...this) // Rarity Garden Hack prefixSize(t) { const sized = _.readSize(this.length, t); const thised = this; var uint8 = new Uint8Array(sized.length + thised.length); uint8.set(sized); uint8.set(thised, sized.length); return new _(uint8) static from(t) { return new _(Uint8Array.from(t)) static of2(...t) { return new _(Uint8Array.of(...t)) // Rarity Garden Hack static of(...t) { const uint8 = new Uint8Array(t.length); for (let i = 0; i < uint8.length; i++) { uint8[i] = t[i]; return new _(uint8) static join(t) { let n, e = 0; const r = t.reduce(((t, n) => t + n.length), 0), i = new Uint8Array(r); for (const r of t) for (n = 0; n < r.leM ngth; e++, n++) i[e] = r[n]; return new _(i, r) static readSize(t, n) { if (t < 253) return _.num(t, 1); if (t < 65536) return _.of(253, ..._.num(t, 2, n)); if (t < 4294967296) return _.of(254, ..._.num(t, 4, n)); if (t < 0x10000000000000000) return _.of(255, ..._.num(t, 8, n)); throw new Error(`Value is too large: ${t}`) static random(t = 32) { return new _(U.getRandomValues(new Uint8Array(t))) this.encode = m this.decode = E static normalize(t, n) { if (t instanceof Uint8Array) return t; if ("string" == typeof t) return _.hex(t, n).raw; if ("number" == typeof t) return _.num(t, n).raw; if ("bigint" == typeof t) return _.big(t, n).raw; throw TypeError("Unrecognized format: " + typeof t) static serialize(t) { ing" == typeof t) return _.str(t).raw; if ("object" == typeof t) { if (t instanceof Uint8Array) return t; return _.json(t).raw } catch { throw TypeError("Object is not serializable.") throw TypeError("Unrecognized format: " + typeof t) static revitalize(t) { if (t instanceof Uint8Array && (t = E(t)), "string" == typeof t) try { return JSON.parse(tM return t constructor(t) { this.data = new Uint8Array(t), this.size = this.data.length if (t > this.size) throw new Error(`Size greater than stream: ${t} > ${this.size}`); return new _(this.data.slice(0, t).buffer) t = t ?? this.readSize(); const n = this.peek(t); his.data = this.data.slice(t), this.size = this.data.length, n readSize() { const t = this.read(1).toNum(); switch (!0) { case t >= 0 && t < 253: return t; case 253 === t: return this.read(2).toNum(); case 254 === t: return this.read(4).toNum(); case 255 === t: return this.read(8).toNum(); default: throw new Error(`Varint is out of raM OP_PUSHDATA1: 76, OP_PUSHDATA2: 77, OP_PUSHDATA4: 78, OP_1NEGATE: 79, OP_NOTIF: 100, OP_ELSE: 103, OP_ENDIF: 104, OP_VERIFY: 105, OP_RETURN: 106, OP_TOALTSTACK: 107, OP_FROMALTSTACK: 108, OP_2DROP: 109, OP_2DUP: 110, OP_3DUP: 111, OP_2OVER: 112, OP_2ROT: 113, OP_2SWAP: 114, OP_IFDUP: 115, OP_DEPTH: 116, OP_DROP: 117, OP_DUP: 118, OP_NIP: 119, OP_OVER: 120, OP_PICK: 121, OP_ROT: 123, OP_SWAP: 124, OP_TUCK: 125, OP_SIZE: 130, OP_EQUAL: 135, OP_EQUALVERIFY: 136, OP_1ADD: 139, OP_1SUB: 140, OP_NEGATE: 143, OP_ABS: 144, OP_NOT: 145, OP_0NOTEQUAL: 146, OP_ADD: 147, OP_SUB: 148, OP_BOOLAND: 154, OP_BOOLOR: 155, OP_NUMEQUAL: 156, OP_NUMEQUALVERIFY: 157, OP_NUMNOTEQUAL: 158, OP_LESSTHAN: 159, OP_LESSTHANOREQUAL: 161, OP_GREATERTHANOREQUAL: 162, OP_MIN: 163, OP_MAX: 164, OP_WITHIN: 165, OP_RIPEMD160: 166, OP_SHA1: 167, OP_SHA256: 168, OP_HASH160: 169, OP_HASH256: 170, OP_CODESEPARATOR: 171, OP_CHECKSIG: 172, OP_CHECKSIGVERIFY: 173, OP_CHECKMULTISIG: 174, OP_CHECKMULTISIGVERIFY: 175, OP_NOP1: 176, OP_CHECKLOCKTIMEVERIFY: 177, _CHECKSEQUENCEVERIFY: 178, OP_NOP4: 179, OP_NOP5: 180, OP_NOP6: 181, OP_NOP7: 182, OP_NOP8: 183, OP_NOP9: 184, OP_NOP10: 185 function H(t) { for (const [n, e] of Object.entries(I)) if (e === t) return n; throw new Error("OPCODE not found:" + String(t)) const z = 520; function N(t = [], n = !0) { let e = _.num(0); return Array.isArray(t) && (e = _.raw(T(t))), "string" == tyM peof t && (e = _.hex(t)), t instanceof Uint8Array && (e = _.raw(t)), n && (e = e.prefixSize("be")), e.raw function T(t) { const n = []; for (const e of t) n.push(R(e)); return n.length > 0 ? _.join(n) : new Uint8Array function R(t) { let n = new Uint8Array; if ("string" == typeof t) { if (t.startsWith("OP_")) return _.num(function (t) { for (const [n, e] of Object.entries(I)) if (n === t) return Number(e); throw new Error("OPCODE not found:" + t) t.startsWith("STR_") && (n = _.str(t.slice(3))), n = _.hex(t) if ("number" == typeof t && (n = _.num(t)), t instanceof Uint8Array && (n = t), n.length > z) { const t = function (t) { const n = [], e = new B(t); for (; e.size > z;) n.push(e.read(z)); return n.push(e.read(e.size)), n return T(t) return _.of(...function (tM const n = _.num(76, 1), e = _.num(77, 1); switch (!0) { case t <= 75: return _.num(t); case t > 75 && t < 256: return _.join([n, _.num(t, 1)]); case t >= 256 && t <= z: return _.join([e, _.num(t, 2, "be")]); default: throw new Error("Invalid word size:" + t.toString()) }(n.length), ...n) function k(t) { return _.num(t, 4).reverse()M function C(t) { return _.hex(t, 32).reverse() function D(t) { return _.num(t, 4).reverse() function K(t = 4294967295) { return ("string" == typeof t ? _.hex(t, 4) : _.num(t, 4)).reverse() function j(t) { return "number" == typeof t && (t = BigInt(t)), _.big(t, 8).reverse() function $(t) { const n = []; if (Array.isArray(t)) { n.push(_.readSize(t.length)); for (const e of t) n.push(N(e)); return _.join(n) return _.normalize(t) function V(t) { return _.num(t, 4).reverse() function L(t) { "string" == typeof t && (t = _.hex(t).raw); const n = new B(t), e = function (t) { return t.read(4).reverse().toNum() }(n), r = function (t) { const [n, e] = [...t.peek(2)]; if (0 === n) { if (t.read(2), 1 === e) return !0; throw new Error(`Invalid witness flag: ${e}`) }(n), i = function (t) { const n = [], e = t.readSize(); for (let r = 0; r < e; r++) n.push(q(t)); }(n), o = function (t) { const n = [], e = t.readSize(); for (let r = 0; r < e; r++) n.push(F(t)); if (r) for (const t of i) t.witness = M(n); const s = function (t) { return t.read(4).reversM return { version: e, input: i, output: o, locktime: s } function q(t) { txid: t.read(32).reverse().toHex(), vout: t.read(4).reverse().toNum(), scriptSig: Y(t, !0), sequence: t.read(4).reverse().toHex() function F(t) { return { value: t.read(8).reverse().big, scriptPubKey: Y(t, !0) } function M(t) { const n = [], e = t.readSize(); for (let r = 0; r < e; r++) { const e = Y(t, !0); function Y(t, n) { const e = !0 === n ? t.readSize() : t.size; return e > 0 ? t.read(e).toHex() : _.num(0).toHex() function Z(t) { if (void 0 === t) throw new Error("Script data is undefined!"); if (Array.isArray(t)) throw new Error("Script data is an array!"); return _.normalize(t) function W(t) { case 0 === t: return "opcode"; case t >= 1 && t <= 75: return "varint"; case 76 === t: return "pushdata1"; case 77 === t: return "pushdata2"; case 78 === t: return "pushdata4"; case t <= 185: return "opcode"; throw new Error(`Invalid word range: ${t}`) function G(t) { switch (!0) { case "number" != typeof t: return !1; case 0 === t: return !0; case [126, 127, 128, 129, 131, 132, 133, 134, 141, 142, 149, 150, 151, 152, 153].includes(t): return !1; case 75 < t && t < 186: return !0; return !1 /*! noble-secp256k1 - MIT License (c) 2019 Paul Miller (paulmillr.com) */ const { crypto: X } = globalThis, J = BigInt(0), Q = BigInt(1), tt = BigIntM (2), nt = BigInt(3), et = BigInt(8), rt = Object.freeze({ b: BigInt(7), P: BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"), n: BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"), Gx: BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"), Gy: BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"), beta: BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee") }), it = (t, n) => (t + n / tt) / n, ot = { beta: BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"), splitScalar(t) { const { n: n } = rt, e = BigInt("0x3086d221a7d46bcde86c90e49284eb15"), r = -Q * BigInt("0xe4437ed6010e88286f547fa90abfe4c3"), i = BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"), o = e, s = BigInt("0x1000000M 00000000000000000000000000"), a = it(o * t, n), c = it(-r * t, n); let u = Tt(t - a * e - c * i, n), f = Tt(-a * r - c * o, n); const h = u > s, l = f > s; if (h && (u = n - u), l && (f = n - f), u > s || f > s) throw new Error("splitScalarEndo: Endomorphism failed, k=" + t); return { k1neg: h, k1: u, k2neg: l, k2: f } }, st = 32, at = 32, ct = 32, ut = st + 1, ft = 2 * st + 1; function ht(t) { const { a: n, b: e } = rt, r =M Tt(t * t), i = Tt(r * t); return Tt(i + n * t + e) const lt = rt.a === J; class dt extends Error { constructor(t) { function wt(t) { if (!(t instanceof yt)) throw new TypeError("JacobianPoint expected") constructor(t, n, e) { this.x = t, this.y = n, this.z = e static get BASE() { return new yt(rt.Gx, rt.Gy, Q) return new yt(J, Q, J) static fromAffine(t) { if (!(t instanceof mt)) throw new TypeError("JacobianPoint#fromAffine: expected Point"); return t.equals(mt.ZERO) ? yt.ZERO : new yt(t.x, t.y, Q) static toAffineBatch(t) { const n = function (t, n = rt.P) { const e = new Array(t.length), r = kt(t.reduce(((t, r, i) => r === J ? t : (e[i] = t, Tt(t * r, n))), Q), n); return tM .reduceRight(((t, r, i) => r === J ? t : (e[i] = Tt(t * e[i], n), Tt(t * r, n))), r), e }(t.map((t => t.z))); return t.map(((t, e) => t.toAffine(n[e]))) static normalizeZ(t) { return yt.toAffineBatch(t).map(yt.fromAffine) const { x: n, y: e, z: r } = this, { x: i, y: o, z: s } = t, a = Tt(r * r), c = Tt(s * s), u = Tt(n * c), f = Tt(i * a), h = Tt(Tt(e * s) * c), l = Tt(Tt(o * r) * a); return u === f && h === l return new yt(this.x, Tt(-this.y), this.z) const { x: t, y: n, z: e } = this, r = Tt(t * t), i = Tt(n * n), o = Tt(i * i), s = t + i, a = Tt(tt * (Tt(s * s) - r - o)), c = Tt(nt * r), u = Tt(c * c), f = Tt(u - tt * a), h = Tt(c * (a - f) - et * o), l = Tt(tt * n * e); return new yt(f, h, l) { x: n, y: e, z: r } = this, { x: i, y: o, z: s } = t; if (i === J || o === J) return this; if (n === J || e === J) return t; const a = Tt(r * r), c = Tt(s * s), u = Tt(n * c), f = Tt(i * a), h = Tt(Tt(e * s) * c), l = Tt(Tt(o * r) * a), d = Tt(f - u), w = Tt(l - h); if (d === J) return w === J ? this.double() : yt.ZERO; const y = Tt(d * d), g = Tt(d * y), p = Tt(u * y), m = Tt(w * w - g - tt * p), b = Tt(w * (p - m) - h * g), A = Tt(rM return new yt(m, b, A) subtract(t) { return this.add(t.negate()) multiplyUnsafe(t) { const n = yt.ZERO; if ("bigint" == typeof t && t === J) return n; let e = Nt(t); if (e === Q) return this; if (!lt) { let t = n, r = this; for (; e > J;) e & Q && (t = t.add(r)), r = r.double(), e >>= Q; return t let { k1neg: r, k1: i, k2neM g: o, k2: s } = ot.splitScalar(e), a = n, c = n, u = this; for (; i > J || s > J;) i & Q && (a = a.add(u)), s & Q && (c = c.add(u)), u = u.double(), i >>= Q, s >>= Q; return r && (a = a.negate()), o && (c = c.negate()), c = new yt(Tt(c.x * ot.beta), c.y, c.z), a.add(c) precomputeWindow(t) { const n = lt ? 128 / t + 1 : 256 / t + 1, e = []; let r = this, i = r; for (let o = 0; o < n; o++) { i = r, e.push(i); et n = 1; n < 2 ** (t - 1); n++) i = i.add(r), e.push(i); r = i.double() wNAF(t, n) { !n && this.equals(yt.BASE) && (n = mt.BASE); const e = n && n._WINDOW_SIZE || 1; if (256 % e) throw new Error("Point#wNAF: Invalid precomputation window, must be power of 2"); let r = n && pt.get(n); r || (r = this.precomputeWindow(e), n && 1 !== e && (r = yt.normalizeZ(r), pt.set(n, r))); let i = yM t.ZERO, o = yt.BASE; const s = 1 + (lt ? 128 / e : 256 / e), a = 2 ** (e - 1), c = BigInt(2 ** e - 1), u = 2 ** e, f = BigInt(e); for (let n = 0; n < s; n++) { const e = n * a; let s = Number(t & c); t >>= f, s > a && (s -= u, t += Q); const h = e, l = e + Math.abs(s) - 1, d = n % 2 != 0, w = s < 0; 0 === s ? o = o.add(gt(d, r[h])) : i = i.add(gt(w, r[l])) return { p: i, f: o } let e, r, i = Nt(t); const { k1neg: t, k1: o, k2neg: s, k2: a } = ot.splitScalar(i); let { p: c, f: u } = this.wNAF(o, n), { p: f, f: h } = this.wNAF(a, n); c = gt(t, c), f = gt(s, f), f = new yt(Tt(f.x * ot.beta), f.y, f.z), e = c.add(f), r = u.add(h) const { p: t, f: o } = this.wNAF(i, n); e = t, r = o return yt.normalizeZ([e, r])[0] const { x: n, y: e, z: r } = this, i = this.equals(yt.ZERO); null == t && (t = i ? et : kt(r)); const o = t, s = Tt(o * o), a = Tt(s * o), c = Tt(n * s), u = Tt(e * a), f = Tt(r * o); if (i) return mt.ZERO; if (f !== Q) throw new Error("invZ was invalid"); return new mt(c, u) function gt(t, n) { const e = n.negate(); return t ? e : n const pt = new WeakMap; let mt = class {M constructor(t, n) { this.x = t, this.y = n _setWindowSize(t) { this._WINDOW_SIZE = t, pt.delete(this) static get BASE() { return new mt(rt.Gx, rt.Gy) static get ZERO() { return new mt(J, J) hasEvenY() { return this.y % tt === J static fromCompressedHex(t) { const n = 32 === t.length, e = Ht(n ? t : t.subarray(1)); (e)) throw new Error("Point is not on curve"); let r = function (t) { const { P: n } = rt, e = BigInt(6), r = BigInt(11), i = BigInt(22), o = BigInt(23), s = BigInt(44), a = BigInt(88), c = t * t * t % n, u = c * c * t % n, f = Rt(u, nt) * u % n, h = Rt(f, nt) * u % n, l = Rt(h, tt) * c % n, d = Rt(l, r) * l % n, w = Rt(d, i) * d % n, y = Rt(w, s) * w % n, g = Rt(y, a) * y % n, p = Rt(g, s) * w % n, m = Rt(p, nt) * u % n, b = Rt(m, o) * d % n, A = Rt(b, e) * c % n, x = Rt(A, tt); if (x * x % n !== t) throw new Error("Cannot find square root"); return x const i = (r & Q) === Q; if (n) i && (r = Tt(-r)); else { 1 == (1 & t[0]) !== i && (r = Tt(-r)) const o = new mt(e, r); return o.assertValidity(), o static fromUncompressedHex(t) { const n = Ht(t.subarray(1, st + 1)), e = Ht(t.subarray(st + 1, 2 *M st + 1)), r = new mt(n, e); return r.assertValidity(), r static fromHex(t) { const n = zt(t), e = n.length, r = n[0]; if (e === st) return this.fromCompressedHex(n); if (e === ut && (2 === r || 3 === r)) return this.fromCompressedHex(n); if (e === ft && 4 === r) return this.fromUncompressedHex(n); throw new Error(`Point.fromHex: received invalid point. Expected 32-${ut} compressed bytes or ${ft} uncompressed bytes, not ${e}`) static fromPrivateKey(t) { return mt.BASE.multiply(qt(t)) static fromSignature(t, n, e) { const { r: r, s: i } = Mt(n); if (![0, 1, 2, 3].includes(e)) throw new Error("Cannot recover: invalid recovery bit"); const o = Ct(zt(t)), { n: s } = rt, a = 2 === e || 3 === e ? r + s : r, c = kt(a, s), u = Tt(-o * c, s), f = Tt(i * c, s), h = 1 & e ? "03" : "02", l = mt.fromHex(h + Ot(a)), d = mt.BASE.multiplyAndAM if (!d) throw new Error("Cannot recover signature: point at infinify"); return d.assertValidity(), d toRawBytes(t = !1) { return It(this.toHex(t)) toHex(t = !1) { const n = Ot(this.x); return `${this.hasEvenY() ? "02" : "03"}${n}` return `04${n}${Ot(this.y)}` return this.toHex(!0).slice(2) return this.toRawBytes(!0).slice(1) assertValidity() { const t = "Point is not on elliptic curve", { x: n, y: e } = this; if (!Vt(n) || !Vt(e)) throw new Error(t); const r = Tt(e * e); if (Tt(r - ht(n)) !== J) throw new Error(t) return this.x === t.x && this.y === t.y return new mt(this.x, Tt(-this.y)) return yt.fromAffine(this).double().toAffine() return yt.fromAffine(this).add(yt.fromAffine(t)).toAffine() subtract(t) { return this.add(t.negate()) multiply(t) { return yt.fromAffine(this).multiply(t, this).toAffine() multiplyAndAddUnsafe(t, n, e) { const r = yt.fromAffine(this), i = n === J || n === Q || this !== mt.BASE ? r.multiplyUnsafe(n) : r.multiply(M o = yt.fromAffine(t).multiplyUnsafe(e), s = i.add(o); return s.equals(yt.ZERO) ? void 0 : s.toAffine() function bt(t) { return Number.parseInt(t[0], 16) >= 8 ? "00" + t : t function At(t) { if (t.length < 2 || 2 !== t[0]) throw new Error(`Invalid signature integer tag: ${St(t)}`); const n = t[1], e = t.subarray(2, n + 2); if (!n || e.length !== n) throw new Error("Invalid signature integer: wrong length")M if (0 === e[0] && e[1] <= 127) throw new Error("Invalid signature integer: trailing length"); return { data: Ht(e), left: t.subarray(n + 2) } constructor(t, n) { this.r = t, this.s = n, this.assertValidity() static fromCompact(t) { const n = t instanceof Uint8Array, e = "Signature.fromCompact"; if ("string" != typeof t && !n) throw new TypeError(`${e}: Expected string or Uint8Array`); if (128 !== r.length) throw new Error(`${e}: Expected 64-byte hex`); return new xt(Bt(r.slice(0, 64)), Bt(r.slice(64, 128))) static fromDER(t) { const n = t instanceof Uint8Array; if ("string" != typeof t && !n) throw new TypeError("Signature.fromDER: Expected string or Uint8Array"); const { r: e, s: r } = function (t) { if (t.length < 2 || 48 != t[0]) throw new Error(`Invalid signature tag: ${St(t)}`); if (t[1] !== t.length - 2) throw new Error("Invalid signature: incorrect length"); const { data: n, left: e } = At(t.subarray(2)), { data: r, left: i } = At(e); if (i.length) throw new Error(`Invalid signature: left bytes after parsing: ${St(i)}`); return { r: n, s: r } }(n ? t : It(t)); return new xt(e, r) static fromHex(t) { return this.fromDER(t) assertValidity() { const { r: t, sM if (!$t(t)) throw new Error("Invalid Signature: r must be 0 < r < n"); if (!$t(n)) throw new Error("Invalid Signature: s must be 0 < s < n") hasHighS() { const t = rt.n >> Q; return this.s > t normalizeS() { return this.hasHighS() ? new xt(this.r, Tt(-this.s, rt.n)) : this toDERRawBytes() { return It(this.toDERHex()) toDERHex() { const t =M bt(_t(this.s)), n = bt(_t(this.r)), e = t.length / 2, r = n.length / 2, i = _t(e), o = _t(r); return `30${_t(r + e + 4)}02${o}${n}02${i}${t}` toRawBytes() { return this.toDERRawBytes() return this.toDERHex() toCompactRawBytes() { return It(this.toCompactHex()) toCompactHex() { return Ot(this.r) + Ot(this.s) function Et(...t) { if (!t.every((t => t instanceof Uint8Array))) throw new Error("Uint8Array list expected"); if (1 === t.length) return t[0]; const n = t.reduce(((t, n) => t + n.length), 0), e = new Uint8Array(n); for (let n = 0, r = 0; n < t.length; n++) { const i = t[n]; e.set(i, r), r += i.length const vt = Array.from({ length: 256 }, ((t, n) => n.toString(16).padStart(2, "0"))); function St(t) { if (!(t instanceof UM int8Array)) throw new Error("Expected Uint8Array"); for (let e = 0; e < t.length; e++) n += vt[t[e]]; const Pt = BigInt("0x10000000000000000000000000000000000000000000000000000000000000000"); function Ot(t) { if ("bigint" != typeof t) throw new Error("Expected bigint"); if (!(J <= t && t < Pt)) throw new Error("Expected number 0 <= n < 2^256"); return t.toString(16).padStart(64, "0") function Ut(tM const n = It(Ot(t)); if (32 !== n.length) throw new Error("Error: expected 32 bytes"); function _t(t) { const n = t.toString(16); return 1 & n.length ? `0${n}` : n function Bt(t) { if ("string" != typeof t) throw new TypeError("hexToNumber: expected string, got " + typeof t); return BigInt(`0x${t}`) function It(t) { if ("string" != typeof t) throw new TypeError("hexToBytes: expeM cted string, got " + typeof t); if (t.length % 2) throw new Error("hexToBytes: received invalid unpadded hex" + t.length); const n = new Uint8Array(t.length / 2); for (let e = 0; e < n.length; e++) { const r = 2 * e, i = t.slice(r, r + 2), o = Number.parseInt(i, 16); if (Number.isNaN(o) || o < 0) throw new Error("Invalid byte sequence"); function Ht(t) { return Bt(St(t)) return t instanceof Uint8Array ? Uint8Array.from(t) : It(t) function Nt(t) { if ("number" == typeof t && Number.isSafeInteger(t) && t > 0) return BigInt(t); if ("bigint" == typeof t && $t(t)) return t; throw new TypeError("Expected valid private scalar: 0 < scalar < curve.n") function Tt(t, n = rt.P) { const e = t % n; return e >= J ? e : n + e function Rt(t, n) { const { P: e } = rt; for (; n-- > J;) r *= r, r %= e; function kt(t, n = rt.P) { if (t === J || n <= J) throw new Error(`invert: expected positive integers, got n=${t} mod=${n}`); let e = Tt(t, n), r = n, i = J, o = Q; for (; e !== J;) { const t = r % e, n = i - o * (r / e); r = e, e = t, i = o, o = n if (r !== Q) throw new Error("invert: does not exist"); return Tt(i, n) const e = function (t) { const n = 8 * t.length - 8 * at, e = Ht(t); return n > 0 ? e >> BigInt(n) : e if (n) return e; const { n: r } = rt; return e >= r ? e - r : e constructor(t, n) { if (this.hashLen = t, this.qByteLen = n, "number" != typeof t || t < 2) throw new Error("hashLen must be a number"); if ("number" != typeof n || n < 2) throw neM w Error("qByteLen must be a number"); this.v = new Uint8Array(t).fill(1), this.k = new Uint8Array(t).fill(0), this.counter = 0 hmac(...t) { return ln.hmacSha256(this.k, ...t) hmacSync(...t) { return Kt(this.k, ...t) checkSync() { if ("function" != typeof Kt) throw new dt("hmacSha256Sync needs to be set") if (this.counter >= 1e3) throw new Error("Tried 1,000 k valuesM for sign(), all were invalid"); this.counter += 1 async reseed(t = new Uint8Array) { this.k = await this.hmac(this.v, Uint8Array.from([0]), t), this.v = await this.hmac(this.v), 0 !== t.length && (this.k = await this.hmac(this.v, Uint8Array.from([1]), t), this.v = await this.hmac(this.v)) reseedSync(t = new Uint8Array) { this.checkSync(), this.k = this.hmacSync(this.v, Uint8Array.from([0]), t), this.v = this.hmacSync(this.v), 0 !== t.lengM th && (this.k = this.hmacSync(this.v, Uint8Array.from([1]), t), this.v = this.hmacSync(this.v)) async generate() { this.incr(); let t = 0; const n = []; for (; t < this.qByteLen;) { this.v = await this.hmac(this.v); const e = this.v.slice(); n.push(e), t += this.v.length return Et(...n) generateSync() { this.checkSync(), this.incr(); let t = 0; const n = []; for (; t < this.qByteLen;) { this.v = this.hmacSync(this.v); const e = this.v.slice(); n.push(e), t += this.v.length return Et(...n) function $t(t) { return J < t && t < rt.n function Vt(t) { return J < t && t < rt.P function Lt(t, n, e, r = !0) { const { n: i } = rt, o = Ct(t, !0); if (!$t(o)) return; = kt(o, i), a = mt.BASE.multiply(o), c = Tt(a.x, i); if (c === J) return; const u = Tt(s * Tt(n + e * c, i), i); if (u === J) return; let f = new xt(c, u), h = (a.x === f.r ? 0 : 2) | Number(a.y & Q); return r && f.hasHighS() && (f = f.normalizeS(), h ^= 1), { sig: f, recovery: h } function qt(t) { if ("bigint" == typeof t) n = t; else if ("number" == typeof t && Number.isSafeInteger(t) && t > 0) n = BigInt(t); else if ("stringM if (t.length !== 2 * at) throw new Error("Expected 32 bytes of private key"); if (!(t instanceof Uint8Array)) throw new TypeError("Expected valid private key"); if (t.length !== at) throw new Error("Expected 32 bytes of private key"); if (!$t(n)) throw new Error("Expected private key: 0 < key < n"); function Ft(t) { return t instanceof mt ? (tM .assertValidity(), t) : mt.fromHex(t) function Mt(t) { if (t instanceof xt) return t.assertValidity(), t; return xt.fromDER(t) } catch (n) { return xt.fromCompact(t) function Yt(t) { const n = t instanceof Uint8Array, e = "string" == typeof t, r = (n || e) && t.length; return n ? r === ut || r === ft : e ? r === 2 * ut || r === 2 * ft : t instanceof mt function Zt(t, n, e = !1) {M if (Yt(t)) throw new TypeError("getSharedSecret: first arg must be private key"); if (!Yt(n)) throw new TypeError("getSharedSecret: second arg must be public key"); const r = Ft(n); return r.assertValidity(), r.multiply(qt(t)).toRawBytes(e) function Wt(t) { return Ht(t.length > st ? t.slice(0, st) : t) function Gt(t) { const n = Wt(t), e = Tt(n, rt.n); return Xt(e < J ? n : e) function Xt(t) { function Jt(t, n, e) { if (null == t) throw new Error(`sign: expected valid message hash, not "${t}"`); const r = zt(t), i = qt(n), o = [Xt(i), Gt(r)]; if (null != e) { !0 === e && (e = ln.randomBytes(st)); const t = zt(e); if (t.length !== st) throw new Error(`sign: Expected ${st} bytes of extra data`); return { seed: Et(...o), m: Wt(r), d: i } function Qt(t, n) M const { sig: e, recovery: r } = t, { der: i, recovered: o } = Object.assign({ canonical: !0, der: !0 }, n), s = i ? e.toDERRawBytes() : e.toCompactRawBytes(); return o ? [s, r] : s const tn = { strict: !0 }; function nn(t) { return Tt(Ht(t), rt.n) constructor(t, n) { this.r = t, this.s = n, this.assertValidity() static fromHex(t) { const n = zt(t); if (64 !=M = n.length) throw new TypeError(`SchnorrSignature.fromHex: expected 64 bytes, not ${n.length}`); const e = Ht(n.subarray(0, 32)), r = Ht(n.subarray(32, 64)); return new en(e, r) assertValidity() { const { r: t, s: n } = this; if (!Vt(t) || !$t(n)) throw new Error("Invalid signature") return Ot(this.r) + Ot(this.s) toRawBytes() { return It(this.toHex()) constructor(t, n, e = ln.randomBytes()) { if (null == t) throw new TypeError(`sign: Expected valid message, not "${t}"`); this.m = zt(t); const { x: r, scalar: i } = this.getScalar(qt(n)); if (this.px = r, this.d = i, this.rand = zt(e), 32 !== this.rand.length) throw new TypeError("sign: Expected 32 bytes of aux randomness") getScalar(t) { const n = mt.fromPrivateKey(t), e = n.hasEvenY() ? t : rt.n - t; return { point: n, scalar: e, x: n.toRawX() } initNonce(t, n) { return Ut(t ^ Ht(n)) finalizeNonce(t) { const n = Tt(Ht(t), rt.n); if (n === J) throw new Error("sign: Creation of signature failed. k is zero"); const { point: e, x: r, scalar: i } = this.getScalar(n); return { R: e, rx: r, k: i } finalizeSig(t, n, e, r) { return new en(t.x, Tt(n + e * r, rt.n)).toRawBytes() throw new Error("sign: Invalid signature produced") async calc() { const { m: t, d: n, px: e, rand: r } = this, i = ln.taggedHash, o = this.initNonce(n, await i(fn.aux, r)), { } = this.finalizeNonce(await i(fn.nonce, o, e, t)), u = nn(await i(fn.challenge, a, e, t)), f = this.finalizeSig(s, c, u, n); return await an(f, t, e) || this.error(), f const { m: t, d: n, px: e, rand: r } = this, i = ln.taggedHashSync, o = this.initNonce(n, i(fn.aux, r)), { R: s, rx: a, k: c } = this.finalizeNonce(i(fn.nonce, o, e, t)), u = nn(i(fn.challenge, a, e, t)), f = this.finalizeSig(s, c, u, n); return cn(f, t, e) || this.error(), f function on(t, n, e) { const r = t instanceof en, i = r ? t : en.fromHex(t); return r && i.assertValidity(), { ...i, m: zt(n), P: FM function sn(t, n, e, r) { const i = mt.BASE.multiplyAndAddUnsafe(n, qt(e), Tt(-r, rt.n)); return !(!i || !i.hasEvenY() || i.x !== t) async function an(t, n, e) { const { r: r, s: i, m: o, P: s } = on(t, n, e), a = nn(await ln.taggedHash(fn.challenge, Ut(r), s.toRawX(), o)); return sn(r, s, i, a) } catch (t) { function cn(t, n, e) { const { r: r, s: i, m: o, P: s } = on(t, n, e), a = nn(ln.taggedHashSync(fn.challenge, Ut(r), s.toRawX(), o)); return sn(r, s, i, a) } catch (t) { if (t instanceof dt) throw t; Signature: en, getPublicKey: function (t) { return mt.fromPrivateKey(t).toRawX() }, sign: async function (t, n, e) { return new rn(t, n, e).calc() }, verify: an, signSync: function (t, n, e)M return new rn(t, n, e).calcSync() }, verifySync: cn mt.BASE._setWindowSize(8); const fn = { challenge: "BIP0340/challenge", aux: "BIP0340/aux", nonce: "BIP0340/nonce" }, hn = {}, ln = { bytesToHex: St, hexToBytes: It, concatBytes: Et, isValidPrivateKey(t) { return qt(t), !0 } catch (t) { return !1 _bigintTo32M _normalizePrivateKey: qt, hashToPrivateKey: t => { t = zt(t); const n = at + 8; if (t.length < n || t.length > 1024) throw new Error("Expected valid bytes of private key as per FIPS 186"); return Ut(Tt(Ht(t), rt.n - Q) + Q) randomBytes: (t = 32) => X.getRandomValues(new Uint8Array(t)), randomPrivateKey: () => ln.hashToPrivateKey(ln.randomBytes(at + 8)), precompute(t = 8, n = mt.BASE) { = n === mt.BASE ? n : new mt(n.x, n.y); return e._setWindowSize(t), e.multiply(nt), e sha256: async (...t) => { const n = await X.subtle.digest("SHA-256", Et(...t)); return new Uint8Array(n) hmacSha256: async (t, ...n) => { const e = await X.subtle.importKey("raw", t, { name: "HMAC", hash: { name: "SHA-256" } }, !1, ["sign"]), r = Et(...n), i = await X.subtle.sign("HMAC", e, r); return new Uint8Array(i) sha256Sync: void 0, hmacSha256Sync: void 0, taggedHash: async (t, ...n) => { let e = hn[t]; if (void 0 === e) { const n = await ln.sha256(Uint8Array.from(t, (t => t.charCodeAt(0)))); e = Et(n, n), hn[t] = e return ln.sha256(e, ...n) taggedHashSync: (t, ...n) => { if ("function" != typeof Dt) throw new dt("sha256Sync is undefined, you need to set it"); let e = hn[t]; if (void 0 === e) { const n = Dt(Uint8Array.from(t, (t => t.charCodeAt(0)))); e = Et(n, n), hn[t] = e return Dt(e, ...n) _JacobianPoint: yt Object.defineProperties(ln, { sha256Sync: { configurable: !1, get: () => Dt, set(t) { Dt || (Dt = t) }, hmacSha256Sync: { configurable: !1, get: () => Kt, set(t) { Kt || (Kt = t) var dn = Object.freeze({ __proto__: null, CURVE: rt, Point: mt, Signature: xt, getPublicKey: function (t, n = !1) { return mt.fromPrivateKey(t).toRawBytes(n) }, getSharedSecret: Zt, recoverPublicKey: function (t, n, e, r = !1) { return mt.fromSignature(t, n, e).toRawBytes(r) }, schnorr: un, sign: async function (t, n, e = {}) { const { seed: r, m: i, d: o } = Jt(t, n, e.extraEntropy), s = new jt(ct, at); (await s.reseed(r); !(a = Lt(await s.generate(), i, o, e.canonical));) await s.reseed(); return Qt(a, e) }, signSync: function (t, n, e = {}) { const { seed: r, m: i, d: o } = Jt(t, n, e.extraEntropy), s = new jt(ct, at); for (s.reseedSync(r); !(a = Lt(s.generateSync(), i, o, e.canonical));) s.reseedSync(); return Qt(a, e) }, utils: ln, verify: function (t, n, e, r = tn) { i = Mt(t), n = zM } catch (t) { return !1 const { r: o, s: s } = i; if (r.strict && i.hasHighS()) return !1; const a = Ct(n); c = Ft(e) } catch (t) { return !1 const { n: u } = rt, f = kt(s, u), h = Tt(a * f, u), l = Tt(o * f, u), d = mt.BASE.multiplyAndAddUnsafe(c, h, l); return !!d && Tt(d.x, u) === o yn = [{ name: "base58", charset: "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz" }, { name: "base64", charset: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" }, { name: "base64url", charset: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_" }]; function gn(t) { for (const n of yn) if (n.name === t) return n.charset; throw TypeError("Charset does not exist: " + t) encode: function (t, n, e = !1) { "string" == typeof t && (t = wn.encode(t)); const r = gn(n), i = r.length, o = []; let s, a, c, u = "", f = 0; for (s = 0; s < t.length; s++) for (f = 0, a = t[s], u += a > 0 || (u.length ^ s) > 0 ? "" : "1"; f in o || a > 0;) c = o[f], c = c > 0 ? 256 * c + a : a, a = c / i | 0, o[f] = c % i, f++; for (; f-- > 0;) u += r[o[f]]; return e && u.length % 4 > 0 ? u + "=".repeat(4 - u.length % 4) : uM }, decode: function (t, n) { const e = gn(n), r = e.length, i = [], o = []; t = t.replace("=", ""); let s, a, c, u = 0; for (s = 0; s < t.length; s++) { if (u = 0, a = e.indexOf(t[s]), a < 0) throw new Error(`Character range out of bounds: ${a}`); for (a > 0 || (o.length ^ s) > 0 || o.push(0); u in i || a > 0;) c = i[u], c = c > 0 ? c * r + a : a, a = c >> 8, i[u] = c % 256, u++ for (; u-- > 0;) o.push(i[u]); return new Uint8Array(o) }, mn = "qpzry9x8gf2tvdw0s3jn54khce6mua7l", bn = [996825010, 642813549, 513874426, 1027748829, 705979059], An = { BECH32: "bech32", BECH32M: "bech32m" }; function xn(t) { switch (t) { case An.BECH32: return 1; case An.BECH32M: return 734539939; throw new Error(`Unrecognized encoding: ${t}`) function En(t) { for (let e = 0; e < t.length; ++e) { const r = n >> 25; n = (33554431 & n) << 5 ^ t[e]; for (let t = 0; t < 5; ++t) (r >> t & 1) > 0 && (n ^= bn[t]) function vn(t) { const n = []; for (e = 0; e < t.length; ++e) n.push(t.charCodeAt(e) >> 5); for (n.push(0), e = 0; e < t.length; ++e) n.push(31 & t.charCodeAt(e)); function Sn(t, n, e, r = !0) { let o = 0, s = 0; const a = (1 << e) - 1, c = (1 << n + e - 1) - 1; for (const r of t) { if (r < 0 || r >> n > 0) return []; for (o = (o << n | r) & c, s += n; s >= e;) s -= e, i.push(o >> s & a) if (r) s > 0 && i.push(o << e - s & a); else if (s >= n || (o << e - s & a) > 0) return []; function Pn(t, n, e) { const r = n.concat(function (t, n, e) { const r = En(vn(t).concat(n).conM cat([0, 0, 0, 0, 0, 0])) ^ xn(e), i = []; for (let t = 0; t < 6; ++t) i.push(r >> 5 * (5 - t) & 31); }(t, n, e)); let i = t + "1"; for (let t = 0; t < r.length; ++t) i += mn.charAt(r[t]); function On(t, n) { const e = n > 0 ? "bech32m" : "bech32"; if (!function (t) { let n, e, r = !1, i = !1; for (n = 0; n < t.length; ++n) { if (e = t.charCodeAt(n), e < 33 || e > 126) reM e >= 97 && e <= 122 && (r = !0), e >= 65 && e <= 90 && (i = !0) return !(r && i) }(t)) return { hrp: null, data: [255] }; if (!function (t) { const n = t.lastIndexOf("1"); return !(n < 1 || n + 7 > t.length || t.length > 90) }(t = t.toLowerCase())) return { hrp: null, data: [255] }; const r = [], i = t.lastIndexOf("1"), o = t.substring(0, i); for (let n = i + 1; n < t.length; ++n) { const e = M mn.indexOf(t.charAt(n)); if (-1 === e) return { hrp: null, data: [255] }; return function (t, n, e) { return En(vn(t).concat(n)) === xn(e) }(o, r, e) ? { hrp: o, data: r.slice(0, r.length - 6) } : { hrp: null, data: [255] } function Un(t, n = 0) { const e = t.split("1", 1)[0], { hrp: r, data: i } = On(t, n), o = Sn(i.slice(1), 5, 8, !1), s = o.length; switch (!0) { case e !== r: new Error("Returned hrp string is invalid."); case null === o || s < 2 || s > 40: throw new Error("Decoded string is invalid or out of spec."); case i[0] > 16: throw new Error("Returned version bit is out of range."); case 0 === i[0] && 20 !== s && 32 !== s: throw new Error("Decoded string does not match version 0 spec."); case 0 === i[0] && 0 !== n: case 0 !== i[0] && 1 !== n: throw new Error("Decoded versionM bit does not match."); return Uint8Array.from(o) encode: function (t, n = "bch", e = 0) { const r = Pn(n, [e, ...Sn([...t], 8, 5)], e > 0 ? "bech32m" : "bech32"); return Un(r, e), r }, decode: Un }, Bn = new TextEncoder, In = new TextDecoder; function Hn(t) { return Bn.encode(t) function zn(t) { const n = []; let e, r = 0; gth % 2 > 0) throw new Error(`Invalid hex string length: ${t.length}`); for (e = 0; e < t.length; e += 2) n[r] = parseInt(t.slice(e, e + 2), 16), r += 1; return Uint8Array.from(n) function Nn(t) { const n = []; for (; t > 0;) { const e = 255 & t; n.push(e), t = (t - e) / 256 return Uint8Array.from(n) function Tn(t) { const n = []; for (; t > 0n;) { const e = 0xffn & t; n.push(Number(e)), t = (t - e) / 256n return Uint8Array.from(n) function Rn(t) { return In.decode(t) function kn(t) { let n, e = 0; for (n = t.length - 1; n >= 0; n--) e = 256 * e + t[n]; return Number(e) function Cn(t) { let n, e = 0n; for (n = t.length - 1; n >= 0; n--) e = 256n * e + BigInt(t[n]); return BigInt(e) async function Dn(t) { rypto.subtle.digest("SHA-256", t).then((t => new Uint8Array(t))) async function Kn(t) { return Dn(await Dn(t)) const { crypto: jn } = globalThis; class $n extends Uint8Array { this.num = (t, n, e = "le") => new $n(Nn(t), n, e) this.big = (t, n, e = "le") => new $n(Tn(t), n, e) static async b58check(t) { const n = pn.decode(t, "base58"); return new $n(M await async function (t) { const n = t.slice(0, -4), e = t.slice(-4); if ((await Kn(n)).slice(0, 4).toString() !== e.toString()) throw new Error("Invalid checksum!"); return n this.buff = (t, n) => new $n(function (t) { if (t instanceof ArrayBuffer) return new Uint8Array(t); if (t instanceof Uint8Array) return t; const n = typeof t; switch (n) { case "bM return Tn(t); case "boolean": return Uint8Array.of(t); case "number": return Nn(t); case "string": return null !== t.match(/^(02|03)*[0-9a-fA-F]{64}$/) ? zn(t) : Bn.encode(t); default: throw TypeError("Unsupported format:" + n) this.raw = (t, n) => new $n(t, n) this.str = (t, n) => new $n(Hn(t), n) this.hex = (t, n) => new $n(zn(t), n) this.json = t => new $n(Hn(JSON.stringify(t))) this.base64 = t => new $n(pn.decode(t, "base64")) this.b64url = t => new $n(pn.decode(t, "base64url")) this.bech32 = (t, n) => new $n(_n.decode(t, n)) constructor(t,M n = null, e = "be") { if (null !== n) { const e = new Uint8Array(n).fill(0); e.set(new Uint8Array(t)), t = e.buffer return super(t = "le" === e ? new Uint8Array(t).reverse() : t), this return this.toNum() return this.toBig() return this.toArr() return this.toStr() return this.toHex() return new Uint8Array(this) get hash() { return this.toHash() return this.toHash().then((t => new $n(t).hex)) toNum(t = "le") { return kn("le" === t ? this.reverse() : this) toBig(t = "le") { return Cn("le" === t ? this.reverse() : this) async toHash() { return jn.subtle.digest("SHA-256", this.raw).then((t => new Uint8Array(t))) async tob58check() { return pn.encode(await async function (t) { const n = await Kn(t); return Uint8Array.of(...t, ...n.slice(0, 4)) }(this), "base58") return Array.from(this) return Rn(this) return function (t) { const n = M for (e = 0; e < t.length; e++) n.push(t[e].toString(16).padStart(2, "0")); return n.join("") return JSON.parse(Rn(this)) return new Uint8Array(this) toB64url() { return pn.encode(this, "base64url") toBase64(t) { return pn.encode(this, "base64", t) toBech32(t, n) { return _n.encode(this, t, n) prepend(t) { return $n.of(...t, ...this) return $n.of(...this, ...t) slice(t, n) { return new $n(new Uint8Array(this).slice(t, n)) return new $n(new Uint8Array(this).reverse()) write(t, n) { this.set(t, n) prependVarint(t = this.length) { return $n.of(...$n.readVarinM static from(t) { return new $n(Uint8Array.from(t)) static of(...t) { return new $n(Uint8Array.of(...t)) static join(t) { let n, e = 0; const r = t.reduce(((t, n) => t + n.length), 0), i = new Uint8Array(r); for (const r of t) for (n = 0; n < r.length; e++, n++) i[e] = r[n]; return new $n(i, r) static readVarint(t) { if (t < 253) return $nM if (t < 65536) return $n.of(253, ...$n.num(t, 2)); if (t < 4294967296) return $n.of(254, ...$n.num(t, 4)); if (t < 0x10000000000000000) return $n.of(255, ...$n.num(t, 8)); throw new Error(`Value is too large: ${t}`) static random(t = 32) { return new $n(jn.getRandomValues(new Uint8Array(t))) this.encode = Hn this.decode = Rn static normalize(t, n) { if (t instanceof Uint8Array) return t; if ("string" == typeof t) return $n.hex(t, n).toBytes(); if ("number" == typeof t) return $n.num(t, n).toBytes(); if ("bigint" == typeof t) return $n.big(t, n).toBytes(); throw TypeError("Unrecognized format: " + typeof t) static serialize(t) { if ("string" == typeof t) return $n.str(t).toBytes(); if ("object" == typeof t) { if (t instanceof M Uint8Array) return t; return $n.json(t).toBytes() } catch { throw TypeError("Object is not serializable.") throw TypeError("Unrecognized format: " + typeof t) static revitalize(t) { if (t instanceof Uint8Array && (t = Rn(t)), "string" == typeof t) try { return JSON.parse(t) return t const Vn = globalThis.crypto; async function Ln(t, n) { return Zt($n.normalize(t), $n.normalize(n), !0) async function qn(t) { return Vn.subtle.importKey("raw", $n.normalize(t), { name: "AES-CBC" }, !0, ["encrypt", "decrypt"]) ecdh: Ln, import: qn, export: async function (t) { return Vn.subtle.exportKey("raw", t).then((t => new Uint8Array(t))) }, hmac: async function (t, n = "SHA-256") { e = { name: "HMAC", hash: n }; return Vn.subtle.importKey("raw", $n.normalize(t), e, !1, ["sign", "verify"]) }, shared: async function (t, n) { return qn((await Ln(t, n)).slice(1, 33)) }, generate: async function () { return qn($n.random(32)) }, normalize: async function (t) { return t instanceof CryptoKey ? t : Fn.import(t) class Mn extends Uint8Array { this.N = rt.n static mod(t, n = Mn.N) { return ln.mod(t, n) this.isField = t => t instanceof Mn static normalize(t) { return t = Zn(t), t = Mn.mod(t), t = ln._normalizePrivateKey(t), $n.big(t, 32).raw static validate(t) { return ln.isValidPrivateKey(t) constructor(t) { super(t = Mn.normalize(t)) get buff() { return new $n(this) return this return this.buff.toBig() get point() { return Yn.fromNum(this.num) get hasOddY() { return this.point.hasOddY get negated() { return this.hasOddY ? this.negate() : this return new Mn(t).num > this.num return new Mn(t).num < this.num return new Mn(t).num === this.num return new Mn(t).num !== this.num const n = new Mn(t); return new Mn(this.num + n.num) const n = new Mn(t); return new Mn(this.num - n.num) const n = new Mn(t); return new Mn(this.num * n.num) pow(t, n = Mn.N - 1n) { const e = new MnM (t), r = Mn.mod(e.num, n); return new Mn(this.num ** r) const n = new Mn(t), e = this.pow(n.num, Mn.N - 2n); return new Mn(this.num * e.num) return new Mn(Mn.N - this.num) this.N = rt.n static validate(t) { t = Zn(t); const n = $n.big(t).toHex(); return mt.fromHex(M n).assertValidity(), !0 return !1 static fromNum(t) { t = Zn(t); const n = ln.mod(t, Yn.N), e = mt.BASE.multiply(n); return new Yn(e.x, e.y) static fromX(t) { t = Zn(t); const n = $n.big(t).toHex(); return Yn.from(mt.fromHex(n)) static from(t) { return new Yn(t.x, t.y) constructor(t, n) { p = new mt(t, n), this.__x = this.__p.x, this.__y = this.__p.y, this.__p.assertValidity() return this.__p get buff() { return new $n(this.rawX.slice(1)) return this.buff.hex get hasOddY() { return !this.__p.hasEvenY() get rawX() { const t = this.__p.hasEvenY() ? 2 : 3, n = $n.big(this.__x); return Uint8Array.of(t, ...n) get rawY() { return $n.big(this.__y) return this.__x return this.__y return t instanceof Yn ? this.p.equals(new mt(t.x, t.y)) : t instanceof Uint8Array ? this.x.toString() === t.toString() : "number" == typeof t ? BigInt(t) === this.x : t === this.x return t instanceof Yn ? Yn.from(this.p.add(t.p)) : Yn.from(this.p.aM dd(Yn.fromNum(t).p)) return t instanceof Yn ? Yn.from(this.p.subtract(t.p)) : Yn.from(this.p.subtract(Yn.fromNum(t).p)) return t instanceof Yn ? Yn.from(this.p.multiply(t.x)) : Yn.from(this.p.multiply(Zn(t))) return Yn.from(this.__p.negate()) function Zn(t) { if (t instanceof Uint8Array) return $n.raw(t).big; if ("string" == typeof t) return $M if ("number" == typeof t) return BigInt(t); if ("bigint" == typeof t) return t; throw TypeError("Invalid input type:" + typeof t) function Wn(t) { for (let e = t.length - 1; e >= 0; e--) n = 256n * n + BigInt(t[e]); return BigInt(n) function Gn(t, n = 0) { const e = []; for (; t > 0;) { const n = 0xffn & t; e.push(n), t = (t - n) / 256n = Uint8Array.from(e.map((t => Number(t)))); if (0 !== n) { const t = new Uint8Array(n); t.set(r), r = t const Xn = [0n, 1n, 2n, 3n, 4n, 5n, 6n, 7n, 8n, 9n, 10n, 11n, 12n, 13n, 14n, 15n, 7n, 4n, 13n, 1n, 10n, 6n, 15n, 3n, 12n, 0n, 9n, 5n, 2n, 14n, 11n, 8n, 3n, 10n, 14n, 4n, 9n, 15n, 8n, 1n, 2n, 7n, 0n, 6n, 13n, 11n, 5n, 12n, 1n, 9n, 11n, 10n, 0n, 8n, 12n, 4n, 13n, 3n, 7n, 15n, 14n, 5n, 6n, 2n, 4n, 0n, 5n, 9n, 7n, 12n, 2n, 10n, 14n, 1n, 3nM , 8n, 11n, 6n, 15n, 13n], Jn = [5n, 14n, 7n, 0n, 9n, 2n, 11n, 4n, 13n, 6n, 15n, 8n, 1n, 10n, 3n, 12n, 6n, 11n, 3n, 7n, 0n, 13n, 5n, 10n, 14n, 15n, 8n, 12n, 4n, 9n, 1n, 2n, 15n, 5n, 1n, 3n, 7n, 14n, 6n, 9n, 11n, 8n, 12n, 2n, 10n, 0n, 4n, 13n, 8n, 6n, 4n, 1n, 3n, 11n, 15n, 0n, 5n, 12n, 2n, 13n, 9n, 7n, 10n, 14n, 12n, 15n, 10n, 4n, 1n, 5n, 8n, 7n, 6n, 2n, 13n, 14n, 0n, 3n, 9n, 11n], Qn = [11n, 14n, 15n, 12n, 5n, 8n, 7n, 9n, 11n, 13n, 14n, 15n, 6n, 7n, 9n, 8n, 7n, 6n, 8n, 13n, 11n, 9n, 7n, 15n, 7n, 12M n, 15n, 9n, 11n, 7n, 13n, 12n, 11n, 13n, 6n, 7n, 14n, 9n, 13n, 15n, 14n, 8n, 13n, 6n, 5n, 12n, 7n, 5n, 11n, 12n, 14n, 15n, 14n, 15n, 9n, 8n, 9n, 14n, 5n, 6n, 8n, 6n, 5n, 12n, 9n, 15n, 5n, 11n, 6n, 8n, 13n, 12n, 5n, 12n, 13n, 14n, 11n, 8n, 5n, 6n], te = [8n, 9n, 9n, 11n, 13n, 15n, 15n, 5n, 7n, 7n, 8n, 11n, 14n, 14n, 12n, 6n, 9n, 13n, 15n, 7n, 12n, 8n, 9n, 11n, 7n, 7n, 12n, 7n, 6n, 15n, 13n, 11n, 9n, 7n, 15n, 11n, 8n, 6n, 6n, 14n, 12n, 13n, 5n, 14n, 13n, 13n, 7n, 5n, 15n, 5n, 8n, 11n, 14n, 14n, 6n, 14n, 6n, M 9n, 12n, 9n, 12n, 5n, 15n, 8n, 8n, 5n, 12n, 9n, 12n, 5n, 14n, 6n, 8n, 13n, 6n, 5n, 15n, 13n, 11n, 11n], ne = [0n, 0x5a827999n, 0x6ed9eba1n, 0x8f1bbcdcn, 0xa953fd4en], ee = [0x50a28be6n, 0x5c4dd124n, 0x6d703ef3n, 0x7a6d76e9n, 0n]; function re(t, n, e, r) { switch (!0) { case 0n === r: return t ^ n ^ e; case 1n === r: return t & n | ~t & e; case 2n === r: return (t | ~n) ^ e; case 3n === r: return t & e | n & ~e; case 4n === r: return t ^ (n | ~e); throw new TypeError("Unknown I value: " + String(r)) function ie(t, n) { return 0xffffffffn & (t << n | (0xffffffffn & t) >> 32n - n) function oe(t, n, e, r, i, o) { const s = []; let a, c, u, f, h, l, d, w = t, y = n, g = e, p = r, m = i, b = t, A = n, x = e, E = r, v = i; for (let t = 0; t < 16; t++) { const n = Wn(o.slice(4 * t, 4 * (t + 1))); for (let t = 0; t < 80; t++) a = BigInt(t) >> 4n, f = s[Number(Xn[t])], h = ne[Number(a)], l = s[Number(Jn[t])], d = ee[Number(a)], w = ie(w + re(y, g, p, a) + f + h, Qn[t]) + m, c = m, m = p, p = ie(g, 10n), g = y, y = w, w = c, b = ie(b + re(A, x, E, 4n - a) + l + d, te[t]) + v, u = v, v = E, E = ie(x, 10n), x = A, A = b, b = u; return [n + g + E, e + p + v, r + m + b, i + w + A, t + y + x] const se = glM async function ae(t, n = "SHA-256", e = 1, r = (t => t)) { let i, o = t instanceof ArrayBuffer ? t : $n.normalize(t).buffer; for (i = 0; i < e; i++) o = await se.subtle.digest(n, o), r(o); return new Uint8Array(o) async function ce(t) { return ae(t, "SHA-256") function ue(t) { return function (t) { let n = [0x67452301n, 0xefcdab89n, 0x98badcfen, 0x10325476n, 0xc3d2e1f0n]; for (let e = 0; M e < t.length >> 6; e++) n = oe(...n, t.slice(64 * e, 64 * (e + 1))); const e = [128, ...new Array(119 - t.length & 63).fill(0)], r = Uint8Array.from([...t.slice(-64 & t.length), ...e, ...Gn(BigInt(8 * t.length), 8)]); for (let t = 0; t < r.length >> 6; t++) n = oe(...n, r.slice(64 * t, 64 * (t + 1))); const i = []; for (let t = 0; t < n.length; t++) { const e = 0xffffffffn & n[t]; i.push(...Gn(e, 4)) return UiM }(t = $n.normalize(t)) data: async function (t) { return ce($n.serialize(t)).then((t => new Uint8Array(t))) }, digest: ae, ripe160: ue, sha256: ce, sha512: async function (t) { return ae(t, "SHA-512") }, hash160: async function (t) { return ue(await ce(t)) }, hash256: async function (t) { return ae(t, "SHA-256", 2) }, hmac256: async function (t, n) { const e = M await Fn.hmac(t, "SHA-256"); return se.subtle.sign("HMAC", e, $n.normalize(n)).then((t => new Uint8Array(t))) }, hmac512: async function (t, n) { const e = await Fn.hmac(t, "SHA-512"); return se.subtle.sign("HMAC", e, $n.normalize(n)).then((t => new Uint8Array(t))) }, he = [1, 2, 3, 129, 130, 131]; function le(t, n) { if (n) throw new Error(t); const de = 192, we = new TextEncoder; let e = new Mn(t); return e.point.hasOddY && (e = e.negate()), e.add(n) function ge(t, n) { return Yn.fromX(t).add(n).rawX async function pe(t, n = [], e = !1) { const r = _.normalize(t), i = n.length > 0 ? await me(n) : new Uint8Array, o = e ? dn.getPublicKey(r, !0).slice(1) : r, s = await Ee(o, i); if (e) return [_.raw(ye(r, s)).hex, 0]; const t = _.raw(ge(r, s)); return [t.slice(1M ).hex, t.slice(0, 1).num] async function me(t) { return Se(t).then((t => _.hex(t[0]))) async function be(t) { const n = await fe.sha256(we.encode(t)); return Uint8Array.of(...n, ...n) // Rarity Garden Hack async function Ae(t, n = de) { let leafed = await be("TapLeaf"); const uint8 = new Uint8Array(leafed.length); for (let i = 0; i < leafed.length; i++) { uint8[i] = leafed[i];M let tn = function (t = 192) { return 254 & t const uint8_tn = new Uint8Array(1); uint8_tn[0] = tn; let normed = _.normalize(t); const uint8_normed = new Uint8Array(normed.length); for (let i = 0; i < uint8_normed.length; i++) { uint8_normed[i] = normed[i]; var uint8_new = new Uint8Array(uint8.length + uint8_normed.length + uint8_tn.length); uint8_new.set(uint8); 8_new.set(uint8_tn, uint8.length); uint8_new.set(uint8_normed, uint8.length + uint8_tn.length); return fe.sha256(uint8_new).then((t => _.raw(t).hex)) async function Ae2(t, n = de) { return fe.sha256(Uint8Array.of(...await be("TapLeaf"), function (t = 192) { return 254 & t }(n), ..._.normalize(t))).then((t => _.raw(t).hex)) async function xe(t, n) { return n < t && ([t, n] = [n, t]), fe.sha256(Uint8Array.of(...await be("TapM Branch"), ..._.hex(t).raw, ..._.hex(n).raw)).then((t => _.raw(t).hex)) async function Ee(t, n) { return fe.sha256(Uint8Array.of(...await be("TapTweak"), ..._.normalize(t), ..._.normalize(n))) async function ve(t, n, e) { const r = new B(_.normalize(n)), [i, o] = (s = r.read(1).num) % 2 == 0 ? [s, 2] : [s - 1, 3]; const a = r.read(32), c = _.of(o, ..._.normalize(t)), u = []; for (; r.size >= 32;) u.push(r.readM if (0 !== r.size) throw new Error("Invalid control block size!"); for (const t of u) f = await xe(f, t); const h = ge(a, await Ee(a, _.hex(f))); return _.raw(h).hex === _.raw(c).hex async function Se(t, n = null, e = []) { const r = [], i = []; for (let i = 0; i < t.length; i++) { const o = t[i]; if (Array.isArray(o)) { const [t, i, s] = await Se(o, n); r.push(t), n = i, e.push(...s) } else r.push(o) if (1 === r.length) return [r[0], n, e]; r.sort(), r.length % 2 != 0 && r.push(r[r.length - 1]); for (let t = 0; t < r.length - 1; t += 2) { const o = await xe(r[t], r[t + 1]); i.push(o), "string" == typeof n && (n === r[t] ? (e.push(r[t + 1]), n = o) : n === r[t + 1] && (e.push(r[t]), n = o)) return Se(i, n, e) const Pe = [0, 1, 2, 3, 129, 130, 131]; async function Oe(t, n, e = {}) {M ("string" == typeof t || t instanceof Uint8Array) && (t = L(t)); extention: r, sigflag: i = 0, extflag: o = 0, key_version: s = 0, separator_pos: a = 4294967295 } = e, { version: c, input: u = [], output: f = [], locktime: h } = t; if (n >= u.length) throw new Error("Index out of bounds: " + String(n)); if (!Pe.includes(i)) throw new Error("Invalid hash type: " + String(i)); if (o < 0 || o > 127) thM row new Error("Extention flag out of range: " + String(o)); const { txid: l, vout: d, sequence: w, witness: y = [] } = u[n], g = 128 == (128 & i), p = await async function (t) { if (void 0 === t) return; if (t.length < 2) return; let n = t.at(-1); "string" == typeof n && (n = _.hex(n)); if (n instanceof Uint8Array && 80 === n[0]) return _.raw(n).prefixSize("be").digest; }(y), m = 2 * (o + (void 0 !== M r ? 1 : 0)) + (void 0 !== p ? 1 : 0), b = [await be("TapSighash"), _.num(0, 1), _.num(i, 1), k(c), V(h)]; const t = u.map((t => Ue(t))); b.push(await async function (t) { const n = []; for (const { txid: e, vout: r } of t) n.push(C(e)), n.push(D(r)); return fe.sha256(_.join(n)) }(u), await async function (t) { const n = []; for (const { value: e } of t) n.push(j(e)); return feM }(t), await async function (t) { const n = []; for (const { scriptPubKey: e } of t) n.push(N(e)); return fe.sha256(_.join(n)) }(t), await async function (t) { const n = []; for (const { sequence: e } of t) n.push(K(e)); return fe.sha256(_.join(n)) if (((3 & i) < 2 || (3 & i) > 3) && b.push(await async function (t) { const n = []; for (constM { value: e, scriptPubKey: r } of t) n.push(j(e)), n.push(N(r)); return fe.sha256(_.join(n)) }(f)), b.push(_.num(m, 1)), g) { const { value: t, scriptPubKey: e } = Ue(u[n]); b.push(C(l), D(d), j(t), N(e), K(w)) } else b.push(_.num(n, 4).reverse()); return void 0 !== p && b.push(p), 3 == (3 & i) && b.push(await async function (t) { return fe.sha256(_.of(...j(t.value), ...N(t.scriptPubKey))) }(f[n])), void 0 !== r && b.push(_.normalize(r)M , _.num(s), _.num(a, 4)), fe.sha256(_.join(b)) function Ue(t) { if (void 0 === t.prevout) throw new Error("Prevout data missing for input: " + String(t.txid)); return t.prevout encode: N, decode: function (t) { return function (t, n = "asm") { const e = new B(t), r = [], i = e.size; let o, s, a, c = 0; for (; c < i;) switch (o = e.read(1).num, s = W(o), c++, s) { case "varint"M r.push(e.read(o).toHex()), c += o; break; case "pushdata1": a = e.read(1).reverse().num, r.push(e.read(a).toHex()), c += a + 1; break; case "pushdata2": a = e.read(2).reverse().num, r.push(e.read(a).toHex()), c += a + 2; break; case "pushdata4": a = e.read(4).reverse().num, r.push(e.read(a).toHex()), c += a + 4; break; if (!G(o)) throw new Error(`Invalid OPCODE: ${o}`); "asm" === n ? r.push(H(o)) : r.push(o); break; default: throw new Error(`Word type undefined: ${o}`) return r }(_.normalize(t)) hash: async function (t, n, e, r, i) { if (!he.includes(i)) throw new Error("Invalid hash type: " + String(i)); const { M version: o, input: s, output: a, locktime: c } = t, { txid: u, vout: f, sequence: h } = s[n], l = i > 128, d = [k(o)]; return d.push(await async function (t, n) { if (!0 === n) return _.num(0, 32); const e = []; for (const { txid: n, vout: r } of t) e.push(C(n)), e.push(D(r)); return fe.hash256(_.join(e)) }(s, l), await async function (t, n) { if (1 !== n) return _.num(0, 32); const e =M for (const { sequence: n } of t) e.push(K(n)); return fe.hash256(_.join(e)) }(s, i), C(u), D(f), N(r, !0), j(e), K(h), await async function (t, n, e) { const r = []; if (1 === e) { for (const { value: n, scriptPubKey: e } of t) r.push(j(n)), r.push(N(e)); return fe.hash256(_.join(r)) if (3 === e && n < t.length) { const { value: e, scriptPubKey: i } = t[n];M return r.push(j(e)), r.push(N(i)), fe.hash256(_.join(r)) return _.num(0, 32) }(a, n, i), V(c), _.num(i, 4).reverse()), fe.hash256(_.join(d)) }, taproot: { hash: Oe, sign: async function (t, n, e, r = {}) { const { sigflag: i = 0 } = r, o = dn.schnorr.sign, s = await Oe(n, e, r), a = await o(s, t); return 0 === i ? _.raw(a).hex : _.of(...a, i).hex }, verify: async function (t, n, e = {M const i = function (t) { return ("string" == typeof t || t instanceof Uint8Array) && (t = L(t)), { ...t } }(t), { witness: o } = i.input[n]; if (!Array.isArray(o) || o.length < 1) return le("Invalid witness data: " + String(o), r); if (80 === Z(o[o.length - 1])[0] && o.pop(), o.length < 1) return le("Invalid witness data: " + String(o), r); const s = new B(Z(o[0])), a = s.read(64), c = i.input[n].prevout, u = Z(c?.scriptPubM let f, h; if (1 === s.size && (e.sigflag = s.read(1).num, 0 === e.sigflag)) return le("0x00 is not a valid appended sigflag!", r); if (o.length > 1 && (h = Z(o.pop())), o.length > 1 && h instanceof Uint8Array) { const t = N(o.pop()), n = 254 & h[0]; f = await Ae(t, n), e.extention = f const l = await Oe(i, n, e), d = dn.schnorr.verify; return await d(a, l, u) ? !(void 0 !== h && void 0 !== f M && !await ve(u, h, f)) || le("Invalid cblock!", r) : le("Invalid signature!", r) getTag: be, getLeaf: Ae, getBranch: xe, getRoot: me, getTweak: Ee, getPubkey: async function (t, n = []) { return pe(t, n) }, getSeckey: async function (t, n = []) { return pe(t, n, !0).then((t => t[0])) }, getPath: async function t(n, e, r = [e], i = de, o = 0) { const s = _.normalize(n), [a, c, u] = await Se(r, e), f = [_.num(i + funcM if (0 === t || 1 === t) return t; if (2 === t || "02" === t) return 0; if (3 === t || "03" === t) return 1; throw new Error("Invalid parity bit:" + String(t)) }(o)), _.normalize(n)]; r.length > 1 && u.forEach((t => f.push(_.hex(t)))); const h = _.join(f), l = ge(s, await Ee(s, _.hex(a))).slice(1); if (!await ve(l, h, e)) { if (0 === o) return t(n, e, r, i, 1); throw new Error("PatM h checking failed! Unable to generate path.") return h.hex }, checkPath: ve, tweakSeckey: ye, tweakPubkey: ge, encodeAddress: function (t, n = "bc") { return (t = _.normalize(t)).length > 32 && (t = t.slice(1, 33)), _.raw(t).toBech32(n, 1) }, decodeAddress: function (t) { return _.bech32(t, 1) encode: function (t, n) { const { version: e, input: r, output: i, locktime: o } = t, s = !0 !== n && function (tM for (const n of t) { const { witness: t } = n; if ("string" == typeof t || t instanceof Uint8Array || Array.isArray(t) && t.length > 0) return !0 return !1 }(r), a = [k(e)]; s && a.push(_.hex("0001")), a.push(function (t) { const n = [_.readSize(t.length)]; for (const e of t) { const { txid: t, vout: r, scriptSig: i, sequence: o } = e; n.push(C(t)), n.push(D(r)), nM .push(N(i)), n.push(K(o)) return _.join(n) }(r)), a.push(function (t) { const n = [_.readSize(t.length)]; for (const e of t) { const { address: t, value: r, scriptPubKey: i } = e; n.push(j(r)), void 0 !== t ? n.push(_.bech32(t).raw) : n.push(N(i)) return _.join(n) for (const t of r) s && void 0 !== t?.witness && a.push($(t.witness)); return a.push(V(o)), M }, decode: L return t.Script = _e, t.Sig = Be, t.Tap = Ie, t.Tx = He, t <script> const BTON = window.bton </script> <script>var cryptoUtils = function (n) { const { crypto: t } = globalThis, e = BigInt(0), r = BigInt(1), i = BigInt(2), s = BigInt(3), o = BigInt(8), a = Object.freeze({ a: e, b: BigInt(7), P: BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"), n: BigInt("0xfffffffffffffffffffffffffM ffffffebaaedce6af48a03bbfd25e8cd0364141"), h: r, Gx: BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"), Gy: BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"), beta: BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee") }), c = (n, t) => (n + t / i) / t, u = { beta: BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"), splitScalar(n) { const { n: t } = a, e = BigInt("0x3086d221a7d46bcde86c90e492M 84eb15"), i = -r * BigInt("0xe4437ed6010e88286f547fa90abfe4c3"), s = BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"), o = e, u = BigInt("0x100000000000000000000000000000000"), f = c(o * n, t), h = c(-i * n, t); let l = $(n - f * e - h * s, t), y = $(-f * i - h * o, t); const d = l > u, g = y > u; if (d && (l = t - l), g && (y = t - y), l > u || y > u) throw new Error("splitScalarEndo: Endomorphism failed, k=" + n); return { k1neg: d, k1: l, k2neg: g, k2: y } } }, f = 32, h = 32, l = 32, y = f + 1, d = 2 * f + 1; funcM tion g(n) { const { a: t, b: e } = a, r = $(n * n), i = $(r * n); return $(i + t * n + e) } const w = a.a === e; class m extends Error { constructor(n) { super(n) } } function p(n) { if (!(n instanceof b)) throw new TypeError("JacobianPoint expected") } class b { constructor(n, t, e) { this.x = n, this.y = t, this.z = e } static get BASE() { return new b(a.Gx, a.Gy, r) } static get ZERO() { return new b(e, r, e) } static fromAffine(n) { if (!(n instanceof E)) throw new TypeError("JacobianPoint#fromAffine: expected M Point"); return n.equals(E.ZERO) ? b.ZERO : new b(n.x, n.y, r) } static toAffineBatch(n) { const t = function (n, t = a.P) { const i = new Array(n.length), s = V(n.reduce(((n, r, s) => r === e ? n : (i[s] = n, $(n * r, t))), r), t); return n.reduceRight(((n, r, s) => r === e ? n : (i[s] = $(n * i[s], t), $(n * r, t))), s), i }(n.map((n => n.z))); return n.map(((n, e) => n.toAffine(t[e]))) } static normalizeZ(n) { return b.toAffineBatch(n).map(b.fromAffine) } equals(n) { p(n); const { x: t, y: e, z: r } = this, { x:M i, y: s, z: o } = n, a = $(r * r), c = $(o * o), u = $(t * c), f = $(i * a), h = $($(e * o) * c), l = $($(s * r) * a); return u === f && h === l } negate() { return new b(this.x, $(-this.y), this.z) } double() { const { x: n, y: t, z: e } = this, r = $(n * n), a = $(t * t), c = $(a * a), u = n + a, f = $(i * ($(u * u) - r - c)), h = $(s * r), l = $(h * h), y = $(l - i * f), d = $(h * (f - y) - o * c), g = $(i * t * e); return new b(y, d, g) } add(n) { p(n); const { x: t, y: r, z: s } = this, { x: o, y: a, z: c } =M n; if (o === e || a === e) return this; if (t === e || r === e) return n; const u = $(s * s), f = $(c * c), h = $(t * f), l = $(o * u), y = $($(r * c) * f), d = $($(a * s) * u), g = $(l - h), w = $(d - y); if (g === e) return w === e ? this.double() : b.ZERO; const m = $(g * g), x = $(g * m), A = $(h * m), E = $(w * w - x - i * A), v = $(w * (A - E) - y * x), S = $(s * c * g); return new b(E, v, S) } subtract(n) { return this.add(n.negate()) } multiplyUnsafe(n) { const t = b.ZERO; if ("bigint" == typeof n && n ===M e) return t; let i = O(n); if (i === r) return this; if (!w) { let n = t, s = this; for (; i > e;)i & r && (n = n.add(s)), s = s.double(), i >>= r; return n } let { k1neg: s, k1: o, k2neg: a, k2: c } = u.splitScalar(i), f = t, h = t, l = this; for (; o > e || c > e;)o & r && (f = f.add(l)), c & r && (h = h.add(l)), l = l.double(), o >>= r, c >>= r; return s && (f = f.negate()), a && (h = h.negate()), h = new b($(h.x * u.beta), h.y, h.z), f.add(h) } precomputeWindow(n) { const t = w ? 128 / n + 1 : 256 / n + 1, e =M []; let r = this, i = r; for (let s = 0; s < t; s++) { i = r, e.push(i); for (let t = 1; t < 2 ** (n - 1); t++)i = i.add(r), e.push(i); r = i.double() } return e } wNAF(n, t) { !t && this.equals(b.BASE) && (t = E.BASE); const e = t && t._WINDOW_SIZE || 1; if (256 % e) throw new Error("Point#wNAF: Invalid precomputation window, must be power of 2"); let i = t && A.get(t); i || (i = this.precomputeWindow(e), t && 1 !== e && (i = b.normalizeZ(i), A.set(t, i))); let s = b.ZERO, o = b.BASE; const a = 1 + (w ? 128 / e :M 256 / e), c = 2 ** (e - 1), u = BigInt(2 ** e - 1), f = 2 ** e, h = BigInt(e); for (let t = 0; t < a; t++) { const e = t * c; let a = Number(n & u); n >>= h, a > c && (a -= f, n += r); const l = e, y = e + Math.abs(a) - 1, d = t % 2 != 0, g = a < 0; 0 === a ? o = o.add(x(d, i[l])) : s = s.add(x(g, i[y])) } return { p: s, f: o } } multiply(n, t) { let e, r, i = O(n); if (w) { const { k1neg: n, k1: s, k2neg: o, k2: a } = u.splitScalar(i); let { p: c, f: f } = this.wNAF(s, t), { p: h, f: l } = this.wNAF(a, t); c = x(M n, c), h = x(o, h), h = new b($(h.x * u.beta), h.y, h.z), e = c.add(h), r = f.add(l) } else { const { p: n, f: s } = this.wNAF(i, t); e = n, r = s } return b.normalizeZ([e, r])[0] } toAffine(n) { const { x: t, y: e, z: i } = this, s = this.equals(b.ZERO); null == n && (n = s ? o : V(i)); const a = n, c = $(a * a), u = $(c * a), f = $(t * c), h = $(e * u), l = $(i * a); if (s) return E.ZERO; if (l !== r) throw new Error("invZ was invalid"); return new E(f, h) } } function x(n, t) { const e = t.negate(); return n ? eM : t } const A = new WeakMap; let E = class { constructor(n, t) { this.x = n, this.y = t } _setWindowSize(n) { this._WINDOW_SIZE = n, A.delete(this) } static get BASE() { return new E(a.Gx, a.Gy) } static get ZERO() { return new E(e, e) } hasEvenY() { return this.y % i === e } static fromCompressedHex(n) { const t = 32 === n.length, e = C(t ? n : n.subarray(1)); if (!Y(e)) throw new Error("Point is not on curve"); let o = function (n) { const { P: t } = a, e = BigInt(6), r = BigInt(11), o = BigInt(22), c = BigInt(2M 3), u = BigInt(44), f = BigInt(88), h = n * n * n % t, l = h * h * n % t, y = K(l, s) * l % t, d = K(y, s) * l % t, g = K(d, i) * h % t, w = K(g, r) * g % t, m = K(w, o) * w % t, p = K(m, u) * m % t, b = K(p, f) * p % t, x = K(b, u) * m % t, A = K(x, s) * l % t, E = K(A, c) * w % t, v = K(E, e) * h % t, S = K(v, i); if (S * S % t !== n) throw new Error("Cannot find square root"); return S }(g(e)); const c = (o & r) === r; if (t) c && (o = $(-o)); else { 1 == (1 & n[0]) !== c && (o = $(-o)) } const u = new E(e, o); M return u.assertValidity(), u } static fromUncompressedHex(n) { const t = C(n.subarray(1, f + 1)), e = C(n.subarray(f + 1, 2 * f + 1)), r = new E(t, e); return r.assertValidity(), r } static fromHex(n) { const t = T(n), e = t.length, r = t[0]; if (e === f) return this.fromCompressedHex(t); if (e === y && (2 === r || 3 === r)) return this.fromCompressedHex(t); if (e === d && 4 === r) return this.fromUncompressedHex(t); throw new Error(`Point.fromHex: received invalid point. Expected 32-${y} compressed bytes or ${d} uM ncompressed bytes, not ${e}`) } static fromPrivateKey(n) { return E.BASE.multiply(F(n)) } static fromSignature(n, t, e) { const { r: r, s: i } = J(t); if (![0, 1, 2, 3].includes(e)) throw new Error("Cannot recover: invalid recovery bit"); const s = q(T(n)), { n: o } = a, c = 2 === e || 3 === e ? r + o : r, u = V(c, o), f = $(-s * u, o), h = $(i * u, o), l = 1 & e ? "03" : "02", y = E.fromHex(l + N(c)), d = E.BASE.multiplyAndAddUnsafe(y, f, h); if (!d) throw new Error("Cannot recover signature: point at infinify"); M return d.assertValidity(), d } toRawBytes(n = !1) { return P(this.toHex(n)) } toHex(n = !1) { const t = N(this.x); if (n) { return `${this.hasEvenY() ? "02" : "03"}${t}` } return `04${t}${N(this.y)}` } toHexX() { return this.toHex(!0).slice(2) } toRawX() { return this.toRawBytes(!0).slice(1) } assertValidity() { const n = "Point is not on elliptic curve", { x: t, y: r } = this; if (!Y(t) || !Y(r)) throw new Error(n); const i = $(r * r); if ($(i - g(t)) !== e) throw new Error(n) } equals(n) { return this.x === n.x &M & this.y === n.y } negate() { return new E(this.x, $(-this.y)) } double() { return b.fromAffine(this).double().toAffine() } add(n) { return b.fromAffine(this).add(b.fromAffine(n)).toAffine() } subtract(n) { return this.add(n.negate()) } multiply(n) { return b.fromAffine(this).multiply(n, this).toAffine() } multiplyAndAddUnsafe(n, t, i) { const s = b.fromAffine(this), o = t === e || t === r || this !== E.BASE ? s.multiplyUnsafe(t) : s.multiply(t), a = b.fromAffine(n).multiplyUnsafe(i), c = o.add(a); return c.equals(M b.ZERO) ? void 0 : c.toAffine() } }; function v(n) { return Number.parseInt(n[0], 16) >= 8 ? "00" + n : n } function S(n) { if (n.length < 2 || 2 !== n[0]) throw new Error(`Invalid signature integer tag: ${I(n)}`); const t = n[1], e = n.subarray(2, t + 2); if (!t || e.length !== t) throw new Error("Invalid signature integer: wrong length"); if (0 === e[0] && e[1] <= 127) throw new Error("Invalid signature integer: trailing length"); return { data: C(e), left: n.subarray(t + 2) } } class B { constructor(n, t) { thisM .r = n, this.s = t, this.assertValidity() } static fromCompact(n) { const t = n instanceof Uint8Array, e = "Signature.fromCompact"; if ("string" != typeof n && !t) throw new TypeError(`${e}: Expected string or Uint8Array`); const r = t ? I(n) : n; if (128 !== r.length) throw new Error(`${e}: Expected 64-byte hex`); return new B(k(r.slice(0, 64)), k(r.slice(64, 128))) } static fromDER(n) { const t = n instanceof Uint8Array; if ("string" != typeof n && !t) throw new TypeError("Signature.fromDER: Expected string or UiM nt8Array"); const { r: e, s: r } = function (n) { if (n.length < 2 || 48 != n[0]) throw new Error(`Invalid signature tag: ${I(n)}`); if (n[1] !== n.length - 2) throw new Error("Invalid signature: incorrect length"); const { data: t, left: e } = S(n.subarray(2)), { data: r, left: i } = S(e); if (i.length) throw new Error(`Invalid signature: left bytes after parsing: ${I(i)}`); return { r: t, s: r } }(t ? n : P(n)); return new B(e, r) } static fromHex(n) { return this.fromDER(n) } assertValidity() { const { r: n, s: M t } = this; if (!X(n)) throw new Error("Invalid Signature: r must be 0 < r < n"); if (!X(t)) throw new Error("Invalid Signature: s must be 0 < s < n") } hasHighS() { const n = a.n >> r; return this.s > n } normalizeS() { return this.hasHighS() ? new B(this.r, $(-this.s, a.n)) : this } toDERRawBytes() { return P(this.toDERHex()) } toDERHex() { const n = v(_(this.s)), t = v(_(this.r)), e = n.length / 2, r = t.length / 2, i = _(e), s = _(r); return `30${_(r + e + 4)}02${s}${t}02${i}${n}` } toRawBytes() { return this.tM oDERRawBytes() } toHex() { return this.toDERHex() } toCompactRawBytes() { return P(this.toCompactHex()) } toCompactHex() { return N(this.r) + N(this.s) } } function U(...n) { if (!n.every((n => n instanceof Uint8Array))) throw new Error("Uint8Array list expected"); if (1 === n.length) return n[0]; const t = n.reduce(((n, t) => n + t.length), 0), e = new Uint8Array(t); for (let t = 0, r = 0; t < n.length; t++) { const i = n[t]; e.set(i, r), r += i.length } return e } const H = Array.from({ length: 256 }, ((n, t) => M t.toString(16).padStart(2, "0"))); function I(n) { if (!(n instanceof Uint8Array)) throw new Error("Expected Uint8Array"); let t = ""; for (let e = 0; e < n.length; e++)t += H[n[e]]; return t } const z = BigInt("0x10000000000000000000000000000000000000000000000000000000000000000"); function N(n) { if ("bigint" != typeof n) throw new Error("Expected bigint"); if (!(e <= n && n < z)) throw new Error("Expected number 0 <= n < 2^256"); return n.toString(16).padStart(64, "0") } function R(n) { const t = P(N(n)); if (32 M !== t.length) throw new Error("Error: expected 32 bytes"); return t } function _(n) { const t = n.toString(16); return 1 & t.length ? `0${t}` : t } function k(n) { if ("string" != typeof n) throw new TypeError("hexToNumber: expected string, got " + typeof n); return BigInt(`0x${n}`) } function P(n) { if ("string" != typeof n) throw new TypeError("hexToBytes: expected string, got " + typeof n); if (n.length % 2) throw new Error("hexToBytes: received invalid unpadded hex" + n.length); const t = new Uint8Array(n.lengtM h / 2); for (let e = 0; e < t.length; e++) { const r = 2 * e, i = n.slice(r, r + 2), s = Number.parseInt(i, 16); if (Number.isNaN(s) || s < 0) throw new Error("Invalid byte sequence"); t[e] = s } return t } function C(n) { return k(I(n)) } function T(n) { return n instanceof Uint8Array ? Uint8Array.from(n) : P(n) } function O(n) { if ("number" == typeof n && Number.isSafeInteger(n) && n > 0) return BigInt(n); if ("bigint" == typeof n && X(n)) return n; throw new TypeError("Expected valid private scalar: 0 < scalar M < curve.n") } function $(n, t = a.P) { const r = n % t; return r >= e ? r : t + r } function K(n, t) { const { P: r } = a; let i = n; for (; t-- > e;)i *= i, i %= r; return i } function V(n, t = a.P) { if (n === e || t <= e) throw new Error(`invert: expected positive integers, got n=${n} mod=${t}`); let i = $(n, t), s = t, o = e, c = r; for (; i !== e;) { const n = s % i, t = o - c * (s / i); s = i, i = n, o = c, c = t } if (s !== r) throw new Error("invert: does not exist"); return $(o, t) } function q(n, t = !1) M { const e = function (n) { const t = 8 * n.length - 8 * h, e = C(n); return t > 0 ? e >> BigInt(t) : e }(n); if (t) return e; const { n: r } = a; return e >= r ? e - r : e } let D, Z; class j { constructor(n, t) { if (this.hashLen = n, this.qByteLen = t, "number" != typeof n || n < 2) throw new Error("hashLen must be a number"); if ("number" != typeof t || t < 2) throw new Error("qByteLen must be a number"); this.v = new Uint8Array(n).fill(1), this.k = new Uint8Array(n).fill(0), this.counter = 0 } hmac(...n) { retuM rn pn.hmacSha256(this.k, ...n) } hmacSync(...n) { return Z(this.k, ...n) } checkSync() { if ("function" != typeof Z) throw new m("hmacSha256Sync needs to be set") } incr() { if (this.counter >= 1e3) throw new Error("Tried 1,000 k values for sign(), all were invalid"); this.counter += 1 } async reseed(n = new Uint8Array) { this.k = await this.hmac(this.v, Uint8Array.from([0]), n), this.v = await this.hmac(this.v), 0 !== n.length && (this.k = await this.hmac(this.v, Uint8Array.from([1]), n), this.v = await this.hmac(M this.v)) } reseedSync(n = new Uint8Array) { this.checkSync(), this.k = this.hmacSync(this.v, Uint8Array.from([0]), n), this.v = this.hmacSync(this.v), 0 !== n.length && (this.k = this.hmacSync(this.v, Uint8Array.from([1]), n), this.v = this.hmacSync(this.v)) } async generate() { this.incr(); let n = 0; const t = []; for (; n < this.qByteLen;) { this.v = await this.hmac(this.v); const e = this.v.slice(); t.push(e), n += this.v.length } return U(...t) } generateSync() { this.checkSync(), this.incr(); let n = 0; constM t = []; for (; n < this.qByteLen;) { this.v = this.hmacSync(this.v); const e = this.v.slice(); t.push(e), n += this.v.length } return U(...t) } } function X(n) { return e < n && n < a.n } function Y(n) { return e < n && n < a.P } function W(n, t, i, s = !0) { const { n: o } = a, c = q(n, !0); if (!X(c)) return; const u = V(c, o), f = E.BASE.multiply(c), h = $(f.x, o); if (h === e) return; const l = $(u * $(t + i * h, o), o); if (l === e) return; let y = new B(h, l), d = (f.x === y.r ? 0 : 2) | Number(f.y & r); retM urn s && y.hasHighS() && (y = y.normalizeS(), d ^= 1), { sig: y, recovery: d } } function F(n) { let t; if ("bigint" == typeof n) t = n; else if ("number" == typeof n && Number.isSafeInteger(n) && n > 0) t = BigInt(n); else if ("string" == typeof n) { if (n.length !== 2 * h) throw new Error("Expected 32 bytes of private key"); t = k(n) } else { if (!(n instanceof Uint8Array)) throw new TypeError("Expected valid private key"); if (n.length !== h) throw new Error("Expected 32 bytes of private key"); t = C(n) } if (!XM (t)) throw new Error("Expected private key: 0 < key < n"); return t } function M(n) { return n instanceof E ? (n.assertValidity(), n) : E.fromHex(n) } function J(n) { if (n instanceof B) return n.assertValidity(), n; try { return B.fromDER(n) } catch (t) { return B.fromCompact(n) } } function L(n) { const t = n instanceof Uint8Array, e = "string" == typeof n, r = (t || e) && n.length; return t ? r === y || r === d : e ? r === 2 * y || r === 2 * d : n instanceof E } function G(n, t, e = !1) { if (L(n)) throw new TypM eError("getSharedSecret: first arg must be private key"); if (!L(t)) throw new TypeError("getSharedSecret: second arg must be public key"); const r = M(t); return r.assertValidity(), r.multiply(F(n)).toRawBytes(e) } function Q(n) { return C(n.length > f ? n.slice(0, f) : n) } function nn(n) { const t = Q(n), r = $(t, a.n); return tn(r < e ? t : r) } function tn(n) { return R(n) } function en(n, t, e) { if (null == n) throw new Error(`sign: expected valid message hash, not "${n}"`); const r = T(n), i = F(t), s = [tnM (i), nn(r)]; if (null != e) { !0 === e && (e = pn.randomBytes(f)); const n = T(e); if (n.length !== f) throw new Error(`sign: Expected ${f} bytes of extra data`); s.push(n) } return { seed: U(...s), m: Q(r), d: i } } function rn(n, t) { const { sig: e, recovery: r } = n, { der: i, recovered: s } = Object.assign({ canonical: !0, der: !0 }, t), o = i ? e.toDERRawBytes() : e.toCompactRawBytes(); return s ? [o, r] : o } async function sn(n, t, e = {}) { const { seed: r, m: i, d: s } = en(n, t, e.extraEntropy), o = new M j(l, h); let a; for (await o.reseed(r); !(a = W(await o.generate(), i, s, e.canonical));)await o.reseed(); return rn(a, e) } const on = { strict: !0 }; function an(n, t, e, r = on) { let i; try { i = J(n), t = T(t) } catch (n) { return !1 } const { r: s, s: o } = i; if (r.strict && i.hasHighS()) return !1; const c = q(t); let u; try { u = M(e) } catch (n) { return !1 } const { n: f } = a, h = V(o, f), l = $(c * h, f), y = $(s * h, f), d = E.BASE.multiplyAndAddUnsafe(u, l, y); if (!d) return !1; return $(d.x, f) ===M s } function cn(n) { return $(C(n), a.n) } class un { constructor(n, t) { this.r = n, this.s = t, this.assertValidity() } static fromHex(n) { const t = T(n); if (64 !== t.length) throw new TypeError(`SchnorrSignature.fromHex: expected 64 bytes, not ${t.length}`); const e = C(t.subarray(0, 32)), r = C(t.subarray(32, 64)); return new un(e, r) } assertValidity() { const { r: n, s: t } = this; if (!Y(n) || !X(t)) throw new Error("Invalid signature") } toHex() { return N(this.r) + N(this.s) } toRawBytes() { return P(thM is.toHex()) } } class fn { constructor(n, t, e = pn.randomBytes()) { if (null == n) throw new TypeError(`sign: Expected valid message, not "${n}"`); this.m = T(n); const { x: r, scalar: i } = this.getScalar(F(t)); if (this.px = r, this.d = i, this.rand = T(e), 32 !== this.rand.length) throw new TypeError("sign: Expected 32 bytes of aux randomness") } getScalar(n) { const t = E.fromPrivateKey(n), e = t.hasEvenY() ? n : a.n - n; return { point: t, scalar: e, x: t.toRawX() } } initNonce(n, t) { return R(n ^ C(t)) } fiM nalizeNonce(n) { const t = $(C(n), a.n); if (t === e) throw new Error("sign: Creation of signature failed. k is zero"); const { point: r, x: i, scalar: s } = this.getScalar(t); return { R: r, rx: i, k: s } } finalizeSig(n, t, e, r) { return new un(n.x, $(t + e * r, a.n)).toRawBytes() } error() { throw new Error("sign: Invalid signature produced") } async calc() { const { m: n, d: t, px: e, rand: r } = this, i = pn.taggedHash, s = this.initNonce(t, await i(wn.aux, r)), { R: o, rx: a, k: c } = this.finalizeNonce(awaiM t i(wn.nonce, s, e, n)), u = cn(await i(wn.challenge, a, e, n)), f = this.finalizeSig(o, c, u, t); return await yn(f, n, e) || this.error(), f } calcSync() { const { m: n, d: t, px: e, rand: r } = this, i = pn.taggedHashSync, s = this.initNonce(t, i(wn.aux, r)), { R: o, rx: a, k: c } = this.finalizeNonce(i(wn.nonce, s, e, n)), u = cn(i(wn.challenge, a, e, n)), f = this.finalizeSig(o, c, u, t); return dn(f, n, e) || this.error(), f } } function hn(n, t, e) { const r = n instanceof un, i = r ? n : un.fromHex(n); retuM rn r && i.assertValidity(), { ...i, m: T(t), P: M(e) } } function ln(n, t, e, r) { const i = E.BASE.multiplyAndAddUnsafe(t, F(e), $(-r, a.n)); return !(!i || !i.hasEvenY() || i.x !== n) } async function yn(n, t, e) { try { const { r: r, s: i, m: s, P: o } = hn(n, t, e), a = cn(await pn.taggedHash(wn.challenge, R(r), o.toRawX(), s)); return ln(r, o, i, a) } catch (n) { return !1 } } function dn(n, t, e) { try { const { r: r, s: i, m: s, P: o } = hn(n, t, e), a = cn(pn.taggedHashSync(wn.challenge, R(r), o.toRawX(), sM )); return ln(r, o, i, a) } catch (n) { if (n instanceof m) throw n; return !1 } } const gn = { Signature: un, getPublicKey: function (n) { return E.fromPrivateKey(n).toRawX() }, sign: async function (n, t, e) { return new fn(n, t, e).calc() }, verify: yn, signSync: function (n, t, e) { return new fn(n, t, e).calcSync() }, verifySync: dn }; E.BASE._setWindowSize(8); const wn = { challenge: "BIP0340/challenge", aux: "BIP0340/aux", nonce: "BIP0340/nonce" }, mn = {}, pn = { bytesToHex: I, hexToBytes: P, concatBytes: UM , mod: $, invert: V, isValidPrivateKey(n) { try { return F(n), !0 } catch (n) { return !1 } }, _bigintTo32Bytes: R, _normalizePrivateKey: F, hashToPrivateKey: n => { n = T(n); const t = h + 8; if (n.length < t || n.length > 1024) throw new Error("Expected valid bytes of private key as per FIPS 186"); return R($(C(n), a.n - r) + r) }, randomBytes: (n = 32) => t.getRandomValues(new Uint8Array(n)), randomPrivateKey: () => pn.hashToPrivateKey(pn.randomBytes(h + 8)), precompute(n = 8, t = E.BASE) { const e = t === E.BASM E ? t : new E(t.x, t.y); return e._setWindowSize(n), e.multiply(s), e }, sha256: async (...n) => { const e = await t.subtle.digest("SHA-256", U(...n)); return new Uint8Array(e) }, hmacSha256: async (n, ...e) => { const r = await t.subtle.importKey("raw", n, { name: "HMAC", hash: { name: "SHA-256" } }, !1, ["sign"]), i = U(...e), s = await t.subtle.sign("HMAC", r, i); return new Uint8Array(s) }, sha256Sync: void 0, hmacSha256Sync: void 0, taggedHash: async (n, ...t) => { let e = mn[n]; if (void 0 === e) { const t = M await pn.sha256(Uint8Array.from(n, (n => n.charCodeAt(0)))); e = U(t, t), mn[n] = e } return pn.sha256(e, ...t) }, taggedHashSync: (n, ...t) => { if ("function" != typeof D) throw new m("sha256Sync is undefined, you need to set it"); let e = mn[n]; if (void 0 === e) { const t = D(Uint8Array.from(n, (n => n.charCodeAt(0)))); e = U(t, t), mn[n] = e } return D(e, ...t) }, _JacobianPoint: b }; Object.defineProperties(pn, { sha256Sync: { configurable: !1, get: () => D, set(n) { D || (D = n) } }, hmacSha256Sync: { configM urable: !1, get: () => Z, set(n) { Z || (Z = n) } } }); var bn = Object.freeze({ __proto__: null, CURVE: a, Point: E, Signature: B, getPublicKey: function (n, t = !1) { return E.fromPrivateKey(n).toRawBytes(t) }, getSharedSecret: G, recoverPublicKey: function (n, t, e, r = !1) { return E.fromSignature(n, t, e).toRawBytes(r) }, schnorr: gn, sign: sn, signSync: function (n, t, e = {}) { const { seed: r, m: i, d: s } = en(n, t, e.extraEntropy), o = new j(l, h); let a; for (o.reseedSync(r); !(a = W(o.generateSync(), i,M s, e.canonical));)o.reseedSync(); return rn(a, e) }, utils: pn, verify: an }); const xn = new TextEncoder, An = [{ name: "base58", charset: "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz" }, { name: "base64", charset: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" }, { name: "base64url", charset: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_" }]; function En(n) { for (const t of An) if (t.name === n) return t.charset; throw TypeError("Charset does not exist: " +M n) } const vn = { encode: function (n, t, e = !1) { "string" == typeof n && (n = xn.encode(n)); const r = En(t), i = r.length, s = []; let o, a, c, u = "", f = 0; for (o = 0; o < n.length; o++)for (f = 0, a = n[o], u += a > 0 || (u.length ^ o) > 0 ? "" : "1"; f in s || a > 0;)c = s[f], c = c > 0 ? 256 * c + a : a, a = c / i | 0, s[f] = c % i, f++; for (; f-- > 0;)u += r[s[f]]; return e && u.length % 4 > 0 ? u + "=".repeat(4 - u.length % 4) : u }, decode: function (n, t) { const e = En(t), r = e.length, i = [], s =M []; n = n.replace("=", ""); let o, a, c, u = 0; for (o = 0; o < n.length; o++) { if (u = 0, a = e.indexOf(n[o]), a < 0) throw new Error(`Character range out of bounds: ${a}`); for (a > 0 || (s.length ^ o) > 0 || s.push(0); u in i || a > 0;)c = i[u], c = c > 0 ? c * r + a : a, a = c >> 8, i[u] = c % 256, u++ } for (; u-- > 0;)s.push(i[u]); return new Uint8Array(s) } }, Sn = "qpzry9x8gf2tvdw0s3jn54khce6mua7l", Bn = [996825010, 642813549, 513874426, 1027748829, 705979059], Un = { BECH32: "bech32", BECH32M: "bech32m" M }; function Hn(n) { switch (n) { case Un.BECH32: return 1; case Un.BECH32M: return 734539939; default: throw new Error(`Unrecognized encoding: ${n}`) } } function In(n) { let t = 1; for (let e = 0; e < n.length; ++e) { const r = t >> 25; t = (33554431 & t) << 5 ^ n[e]; for (let n = 0; n < 5; ++n)(r >> n & 1) > 0 && (t ^= Bn[n]) } return t } function zn(n) { const t = []; let e; for (e = 0; e < n.length; ++e)t.push(n.charCodeAt(e) >> 5); for (t.push(0), e = 0; e < n.length; ++e)t.push(31 & n.charCodeAt(e)); return tM } function Nn(n, t, e, r = !0) { const i = []; let s = 0, o = 0; const a = (1 << e) - 1, c = (1 << t + e - 1) - 1; for (const r of n) { if (r < 0 || r >> t > 0) return []; for (s = (s << t | r) & c, o += t; o >= e;)o -= e, i.push(s >> o & a) } if (r) o > 0 && i.push(s << e - o & a); else if (o >= t || (s << e - o & a) > 0) return []; return i } function Rn(n, t, e) { const r = t.concat(function (n, t, e) { const r = In(zn(n).concat(t).concat([0, 0, 0, 0, 0, 0])) ^ Hn(e), i = []; for (let n = 0; n < 6; ++n)i.push(rM >> 5 * (5 - n) & 31); return i }(n, t, e)); let i = n + "1"; for (let n = 0; n < r.length; ++n)i += Sn.charAt(r[n]); return i } function _n(n, t) { const e = t > 0 ? "bech32m" : "bech32"; if (!function (n) { let t, e, r = !1, i = !1; for (t = 0; t < n.length; ++t) { if (e = n.charCodeAt(t), e < 33 || e > 126) return !1; e >= 97 && e <= 122 && (r = !0), e >= 65 && e <= 90 && (i = !0) } return !(r && i) }(n)) return { hrp: null, data: [255] }; if (!function (n) { const t = n.lastIndexOf("1"); return !(t < 1 || t + 7M > n.length || n.length > 90) }(n = n.toLowerCase())) return { hrp: null, data: [255] }; const r = [], i = n.lastIndexOf("1"), s = n.substring(0, i); for (let t = i + 1; t < n.length; ++t) { const e = Sn.indexOf(n.charAt(t)); if (-1 === e) return { hrp: null, data: [255] }; r.push(e) } return function (n, t, e) { return In(zn(n).concat(t)) === Hn(e) }(s, r, e) ? { hrp: s, data: r.slice(0, r.length - 6) } : { hrp: null, data: [255] } } function kn(n, t = 0) { const e = n.split("1", 1)[0], { hrp: r, data: i } = _n(n,M t), s = Nn(i.slice(1), 5, 8, !1), o = s.length; switch (!0) { case e !== r: throw new Error("Returned hrp string is invalid."); case null === s || o < 2 || o > 40: throw new Error("Decoded string is invalid or out of spec."); case i[0] > 16: throw new Error("Returned version bit is out of range."); case 0 === i[0] && 20 !== o && 32 !== o: throw new Error("Decoded string does not match version 0 spec."); case 0 === i[0] && 0 !== t: case 0 !== i[0] && 1 !== t: throw new Error("Decoded version bit does not match."); M default: return Uint8Array.from(s) } } const Pn = { encode: function (n, t = "bch", e = 0) { const r = Rn(t, [e, ...Nn([...n], 8, 5)], e > 0 ? "bech32m" : "bech32"); return kn(r, e), r }, decode: kn }, Cn = new TextEncoder, Tn = new TextDecoder; function On(n) { return Cn.encode(n) } function $n(n) { const t = []; let e, r = 0; if (n.length % 2 > 0) throw new Error(`Invalid hex string length: ${n.length}`); for (e = 0; e < n.length; e += 2)t[r] = parseInt(n.slice(e, e + 2), 16), r += 1; return Uint8Array.from(t) } M function Kn(n) { const t = []; for (; n > 0;) { const e = 255 & n; t.push(e), n = (n - e) / 256 } return Uint8Array.from(t) } function Vn(n) { const t = []; for (; n > 0n;) { const e = 0xffn & n; t.push(Number(e)), n = (n - e) / 256n } return Uint8Array.from(t) } function qn(n) { return Tn.decode(n) } function Dn(n) { let t, e = 0; for (t = n.length - 1; t >= 0; t--)e = 256 * e + n[t]; return Number(e) } function Zn(n) { let t, e = 0n; for (t = n.length - 1; t >= 0; t--)e = 256n * e + BigInt(n[t]); return BigInt(e)M } async function jn(n) { return crypto.subtle.digest("SHA-256", n).then((n => new Uint8Array(n))) } async function Xn(n) { return jn(await jn(n)) } const { crypto: Yn } = globalThis; class Wn extends Uint8Array { static { this.num = (n, t, e = "le") => new Wn(Kn(n), t, e) } static { this.big = (n, t, e = "le") => new Wn(Vn(n), t, e) } static async b58check(n) { const t = vn.decode(n, "base58"); return new Wn(await async function (n) { const t = n.slice(0, -4), e = n.slice(-4); if ((await Xn(t)).slice(0, 4).toStrinM g() !== e.toString()) throw new Error("Invalid checksum!"); return t }(t)) } static { this.buff = (n, t) => new Wn(function (n) { if (n instanceof ArrayBuffer) return new Uint8Array(n); if (n instanceof Uint8Array) return n; const t = typeof n; switch (t) { case "bigint": return Vn(n); case "boolean": return Uint8Array.of(n); case "number": return Kn(n); case "string": return null !== n.match(/^(02|03)*[0-9a-fA-F]{64}$/) ? $n(n) : Cn.encode(n); default: throw TypeError("Unsupported format:" + t) } }(n), t) } staticM { this.raw = (n, t) => new Wn(n, t) } static { this.str = (n, t) => new Wn(On(n), t) } static { this.hex = (n, t) => new Wn($n(n), t) } static { this.json = n => new Wn(On(JSON.stringify(n))) } static { this.base64 = n => new Wn(vn.decode(n, "base64")) } static { this.b64url = n => new Wn(vn.decode(n, "base64url")) } static { this.bech32 = (n, t) => new Wn(Pn.decode(n, t)) } constructor(n, t = null, e = "be") { if (null !== t) { const e = new Uint8Array(t).fill(0); e.set(new Uint8Array(n)), n = e.buffer } return sM uper(n = "le" === e ? new Uint8Array(n).reverse() : n), this } get num() { return this.toNum() } get big() { return this.toBig() } get arr() { return this.toArr() } get str() { return this.toStr() } get hex() { return this.toHex() } get raw() { return new Uint8Array(this) } get hash() { return this.toHash() } get id() { return this.toHash().then((n => new Wn(n).hex)) } toNum(n = "le") { return Dn("le" === n ? this.reverse() : this) } toBig(n = "le") { return Zn("le" === n ? this.reverse() : this) } async toHash() {M return Yn.subtle.digest("SHA-256", this.raw).then((n => new Uint8Array(n))) } async tob58check() { return vn.encode(await async function (n) { const t = await Xn(n); return Uint8Array.of(...n, ...t.slice(0, 4)) }(this), "base58") } toArr() { return Array.from(this) } toStr() { return qn(this) } toHex() { return function (n) { const t = []; let e; for (e = 0; e < n.length; e++)t.push(n[e].toString(16).padStart(2, "0")); return t.join("") }(this) } toJson() { return JSON.parse(qn(this)) } toBytes() { return new UintM 8Array(this) } toB64url() { return vn.encode(this, "base64url") } toBase64(n) { return vn.encode(this, "base64", n) } toBech32(n, t) { return Pn.encode(this, n, t) } prepend(n) { return Wn.of(...n, ...this) } append(n) { return Wn.of(...this, ...n) } slice(n, t) { return new Wn(new Uint8Array(this).slice(n, t)) } reverse() { return new Wn(new Uint8Array(this).reverse()) } write(n, t) { this.set(n, t) } prependVarint(n = this.length) { return Wn.of(...Wn.readVarint(n), ...this) } static from(n) { return new Wn(Uint8M Array.from(n)) } static of(...n) { return new Wn(Uint8Array.of(...n)) } static join(n) { let t, e = 0; const r = n.reduce(((n, t) => n + t.length), 0), i = new Uint8Array(r); for (const r of n) for (t = 0; t < r.length; e++, t++)i[e] = r[t]; return new Wn(i, r) } static readVarint(n) { if (n < 253) return Wn.num(n, 1); if (n < 65536) return Wn.of(253, ...Wn.num(n, 2)); if (n < 4294967296) return Wn.of(254, ...Wn.num(n, 4)); if (n < 0x10000000000000000) return Wn.of(255, ...Wn.num(n, 8)); throw new Error(`Value is tM oo large: ${n}`) } static random(n = 32) { return new Wn(Yn.getRandomValues(new Uint8Array(n))) } static { this.encode = On } static { this.decode = qn } static normalize(n, t) { if (n instanceof Uint8Array) return n; if ("string" == typeof n) return Wn.hex(n, t).toBytes(); if ("number" == typeof n) return Wn.num(n, t).toBytes(); if ("bigint" == typeof n) return Wn.big(n, t).toBytes(); throw TypeError("Unrecognized format: " + typeof n) } static serialize(n) { if ("string" == typeof n) return Wn.str(n).toBytes(); iM f ("object" == typeof n) { if (n instanceof Uint8Array) return n; try { return Wn.json(n).toBytes() } catch { throw TypeError("Object is not serializable.") } } throw TypeError("Unrecognized format: " + typeof n) } static revitalize(n) { if (n instanceof Uint8Array && (n = qn(n)), "string" == typeof n) try { return JSON.parse(n) } catch { return n } return n } } const Fn = globalThis.crypto; async function Mn(n, t) { return G(Wn.normalize(n), Wn.normalize(t), !0) } async function Jn(n) { return Fn.subtle.importKey(M "raw", Wn.normalize(n), { name: "AES-CBC" }, !0, ["encrypt", "decrypt"]) } const Ln = { ecdh: Mn, import: Jn, export: async function (n) { return Fn.subtle.exportKey("raw", n).then((n => new Uint8Array(n))) }, hmac: async function (n, t = "SHA-256") { const e = { name: "HMAC", hash: t }; return Fn.subtle.importKey("raw", Wn.normalize(n), e, !1, ["sign", "verify"]) }, shared: async function (n, t) { return Jn((await Mn(n, t)).slice(1, 33)) }, generate: async function () { return Jn(Wn.random(32)) }, normalize: asyncM function (n) { return n instanceof CryptoKey ? n : Ln.import(n) } }, Gn = globalThis.crypto; class Qn { static async fromSecret(n) { const t = await Ln.normalize(n); return new Qn(t) } static async fromShared(n, t) { const e = await Ln.shared(n, t); return new Qn(e) } static async encrypt(n, t, e) { const r = Wn.normalize(t), i = await Ln.normalize(n), s = void 0 !== e ? Wn.normalize(e) : Wn.random(16); return Gn.subtle.encrypt({ name: "AES-CBC", iv: s }, i, r).then((n => Uint8Array.of(...s, ...new Uint8Array(n)))M ) } static async decrypt(n, t, e) { const r = Wn.normalize(t), i = await Ln.normalize(n), s = void 0 !== e ? r : r.slice(16), o = void 0 !== e ? Wn.normalize(e) : r.slice(0, 16); return Gn.subtle.decrypt({ name: "AES-CBC", iv: o }, i, s).then((n => new Uint8Array(n))) } constructor(n) { this.key = n } get secretKey() { return Ln.export(this.key) } get secretHex() { return this.secretKey.then((n => Wn.buff(n).toHex())) } async encrypt(n, t) { return Qn.encrypt(this.key, n, t) } async decrypt(n, t) { return Qn.decrypM t(this.key, n, t) } } class nt extends Uint8Array { static { this.N = a.n } static mod(n, t = nt.N) { return pn.mod(n, t) } static { this.isField = n => n instanceof nt } static normalize(n) { return n = et(n), n = nt.mod(n), n = pn._normalizePrivateKey(n), Wn.big(n, 32).raw } static validate(n) { return pn.isValidPrivateKey(n) } constructor(n) { super(n = nt.normalize(n)) } get buff() { return new Wn(this) } get raw() { return this } get num() { return this.buff.toBig() } get point() { return tt.fromNum(this.num) M } get hasOddY() { return this.point.hasOddY } get negated() { return this.hasOddY ? this.negate() : this } gt(n) { return new nt(n).num > this.num } lt(n) { return new nt(n).num < this.num } eq(n) { return new nt(n).num === this.num } ne(n) { return new nt(n).num !== this.num } add(n) { const t = new nt(n); return new nt(this.num + t.num) } sub(n) { const t = new nt(n); return new nt(this.num - t.num) } mul(n) { const t = new nt(n); return new nt(this.num * t.num) } pow(n, t = nt.N - 1n) { const e = new nt(n), r = M nt.mod(e.num, t); return new nt(this.num ** r) } div(n) { const t = new nt(n), e = this.pow(t.num, nt.N - 2n); return new nt(this.num * e.num) } negate() { return new nt(nt.N - this.num) } } class tt { static { this.N = a.n } static validate(n) { try { n = et(n); const t = Wn.big(n).toHex(); return E.fromHex(t).assertValidity(), !0 } catch { return !1 } } static fromNum(n) { n = et(n); const t = pn.mod(n, tt.N), e = E.BASE.multiply(t); return new tt(e.x, e.y) } static fromX(n) { n = et(n); const t = Wn.big(n).toHexM (); return tt.from(E.fromHex(t)) } static from(n) { return new tt(n.x, n.y) } constructor(n, t) { this.__p = new E(n, t), this.__x = this.__p.x, this.__y = this.__p.y, this.__p.assertValidity() } get p() { return this.__p } get buff() { return new Wn(this.rawX.slice(1)) } get hex() { return this.buff.hex } get hasOddY() { return !this.__p.hasEvenY() } get rawX() { const n = this.__p.hasEvenY() ? 2 : 3, t = Wn.big(this.__x); return Uint8Array.of(n, ...t) } get rawY() { return Wn.big(this.__y) } get x() { return thisM .__x } get y() { return this.__y } eq(n) { return n instanceof tt ? this.p.equals(new E(n.x, n.y)) : n instanceof Uint8Array ? this.x.toString() === n.toString() : "number" == typeof n ? BigInt(n) === this.x : n === this.x } add(n) { return n instanceof tt ? tt.from(this.p.add(n.p)) : tt.from(this.p.add(tt.fromNum(n).p)) } sub(n) { return n instanceof tt ? tt.from(this.p.subtract(n.p)) : tt.from(this.p.subtract(tt.fromNum(n).p)) } mul(n) { return n instanceof tt ? tt.from(this.p.multiply(n.x)) : tt.from(this.p.multM iply(et(n))) } negate() { return tt.from(this.__p.negate()) } } function et(n) { if (n instanceof Uint8Array) return Wn.raw(n).big; if ("string" == typeof n) return Wn.hex(n).big; if ("number" == typeof n) return BigInt(n); if ("bigint" == typeof n) return n; throw TypeError("Invalid input type:" + typeof n) } async function rt(n, t, e = "schnorr") { const r = Wn.normalize(n), i = Wn.normalize(t); return "schnorr" === e ? gn.sign(r, i) : sn(r, i) } async function it(n, t, e, r = "schnorr") { const i = Wn.normalize(M n), s = Wn.normalize(t), o = Wn.normalize(e); return "schnorr" === r ? gn.verify(o, i, (a = s).length > 32 ? a.slice(1) : a) : an(o, i, s); var a } class st { static generate() { return new st(Wn.random(32)) } constructor(n) { this._buffer = Wn.normalize(n, 32) } get field() { return new nt(this._buffer) } get point() { return this.field.point } get buff() { return new Wn(this._buffer) } get raw() { return new Uint8Array(this._buffer) } get hex() { return this.buff.hex } get pub() { return new ot(this.point.rawX) }M async sign(n, t) { return rt(Wn.normalize(n), this.raw, t) } async verify(n, t, e) { return it(n, this.pub.raw, t, e) } } class ot { static generate() { return new st(Wn.random(32)).pub } constructor(n) { this._buffer = Wn.normalize(n) } get raw() { return new Uint8Array(this._buffer) } get rawX() { return this.raw.length > 32 ? this.raw.slice(1, 33) : this.raw } get buff() { return new Wn(this.raw) } get hex() { return this.buff.hex } async verify(n, t, e) { return it(n, this.raw, t, e) } } function at(n) { let tM = 0n; for (let e = n.length - 1; e >= 0; e--)t = 256n * t + BigInt(n[e]); return BigInt(t) } function ct(n, t = 0) { const e = []; for (; n > 0;) { const t = 0xffn & n; e.push(t), n = (n - t) / 256n } let r = Uint8Array.from(e.map((n => Number(n)))); if (0 !== t) { const n = new Uint8Array(t); n.set(r), r = n } return r } const ut = [0n, 1n, 2n, 3n, 4n, 5n, 6n, 7n, 8n, 9n, 10n, 11n, 12n, 13n, 14n, 15n, 7n, 4n, 13n, 1n, 10n, 6n, 15n, 3n, 12n, 0n, 9n, 5n, 2n, 14n, 11n, 8n, 3n, 10n, 14n, 4n, 9n, 15n, 8n, 1n, 2n, 7n, M 0n, 6n, 13n, 11n, 5n, 12n, 1n, 9n, 11n, 10n, 0n, 8n, 12n, 4n, 13n, 3n, 7n, 15n, 14n, 5n, 6n, 2n, 4n, 0n, 5n, 9n, 7n, 12n, 2n, 10n, 14n, 1n, 3n, 8n, 11n, 6n, 15n, 13n], ft = [5n, 14n, 7n, 0n, 9n, 2n, 11n, 4n, 13n, 6n, 15n, 8n, 1n, 10n, 3n, 12n, 6n, 11n, 3n, 7n, 0n, 13n, 5n, 10n, 14n, 15n, 8n, 12n, 4n, 9n, 1n, 2n, 15n, 5n, 1n, 3n, 7n, 14n, 6n, 9n, 11n, 8n, 12n, 2n, 10n, 0n, 4n, 13n, 8n, 6n, 4n, 1n, 3n, 11n, 15n, 0n, 5n, 12n, 2n, 13n, 9n, 7n, 10n, 14n, 12n, 15n, 10n, 4n, 1n, 5n, 8n, 7n, 6n, 2n, 13n, 14n, 0n, 3n, 9n, 1M 1n], ht = [11n, 14n, 15n, 12n, 5n, 8n, 7n, 9n, 11n, 13n, 14n, 15n, 6n, 7n, 9n, 8n, 7n, 6n, 8n, 13n, 11n, 9n, 7n, 15n, 7n, 12n, 15n, 9n, 11n, 7n, 13n, 12n, 11n, 13n, 6n, 7n, 14n, 9n, 13n, 15n, 14n, 8n, 13n, 6n, 5n, 12n, 7n, 5n, 11n, 12n, 14n, 15n, 14n, 15n, 9n, 8n, 9n, 14n, 5n, 6n, 8n, 6n, 5n, 12n, 9n, 15n, 5n, 11n, 6n, 8n, 13n, 12n, 5n, 12n, 13n, 14n, 11n, 8n, 5n, 6n], lt = [8n, 9n, 9n, 11n, 13n, 15n, 15n, 5n, 7n, 7n, 8n, 11n, 14n, 14n, 12n, 6n, 9n, 13n, 15n, 7n, 12n, 8n, 9n, 11n, 7n, 7n, 12n, 7n, 6n, 15n, 13n, 11nM , 9n, 7n, 15n, 11n, 8n, 6n, 6n, 14n, 12n, 13n, 5n, 14n, 13n, 13n, 7n, 5n, 15n, 5n, 8n, 11n, 14n, 14n, 6n, 14n, 6n, 9n, 12n, 9n, 12n, 5n, 15n, 8n, 8n, 5n, 12n, 9n, 12n, 5n, 14n, 6n, 8n, 13n, 6n, 5n, 15n, 13n, 11n, 11n], yt = [0n, 0x5a827999n, 0x6ed9eba1n, 0x8f1bbcdcn, 0xa953fd4en], dt = [0x50a28be6n, 0x5c4dd124n, 0x6d703ef3n, 0x7a6d76e9n, 0n]; function gt(n, t, e, r) { switch (!0) { case 0n === r: return n ^ t ^ e; case 1n === r: return n & t | ~n & e; case 2n === r: return (n | ~t) ^ e; case 3n === r: return n & e M | t & ~e; case 4n === r: return n ^ (t | ~e); default: throw new TypeError("Unknown I value: " + String(r)) } } function wt(n, t) { return 0xffffffffn & (n << t | (0xffffffffn & n) >> 32n - t) } function mt(n, t, e, r, i, s) { const o = []; let a, c, u, f, h, l, y, d = n, g = t, w = e, m = r, p = i, b = n, x = t, A = e, E = r, v = i; for (let n = 0; n < 16; n++) { const t = at(s.slice(4 * n, 4 * (n + 1))); o.push(t) } for (let n = 0; n < 80; n++)a = BigInt(n) >> 4n, f = o[Number(ut[n])], h = yt[Number(a)], l = o[NuM mber(ft[n])], y = dt[Number(a)], d = wt(d + gt(g, w, m, a) + f + h, ht[n]) + p, c = p, p = m, m = wt(w, 10n), w = g, g = d, d = c, b = wt(b + gt(x, A, E, 4n - a) + l + y, lt[n]) + v, u = v, v = E, E = wt(A, 10n), A = x, x = b, b = u; return [t + w + E, e + m + v, r + p + b, i + d + x, n + g + A] } const pt = globalThis.crypto; async function bt(n, t = "SHA-256", e = 1, r = (n => n)) { let i, s = n instanceof ArrayBuffer ? n : Wn.normalize(n).buffer; for (i = 0; i < e; i++)s = await pt.subtle.digest(t, s), r(s); retM urn new Uint8Array(s) } async function xt(n) { return bt(n, "SHA-256") } function At(n) { return function (n) { let t = [0x67452301n, 0xefcdab89n, 0x98badcfen, 0x10325476n, 0xc3d2e1f0n]; for (let e = 0; e < n.length >> 6; e++)t = mt(...t, n.slice(64 * e, 64 * (e + 1))); const e = [128, ...new Array(119 - n.length & 63).fill(0)], r = Uint8Array.from([...n.slice(-64 & n.length), ...e, ...ct(BigInt(8 * n.length), 8)]); for (let n = 0; n < r.length >> 6; n++)t = mt(...t, r.slice(64 * n, 64 * (n + 1))); const i = []; foM r (let n = 0; n < t.length; n++) { const e = 0xffffffffn & t[n]; i.push(...ct(e, 4)) } return Uint8Array.from(i) }(n = Wn.normalize(n)) } const Et = { data: async function (n) { return xt(Wn.serialize(n)).then((n => new Uint8Array(n))) }, digest: bt, ripe160: At, sha256: xt, sha512: async function (n) { return bt(n, "SHA-512") }, hash160: async function (n) { return At(await xt(n)) }, hash256: async function (n) { return bt(n, "SHA-256", 2) }, hmac256: async function (n, t) { const e = await Ln.hmac(n, "SHA-256"); M return pt.subtle.sign("HMAC", e, Wn.normalize(t)).then((n => new Uint8Array(n))) }, hmac512: async function (n, t) { const e = await Ln.hmac(n, "SHA-512"); return pt.subtle.sign("HMAC", e, Wn.normalize(t)).then((n => new Uint8Array(n))) } }; return n.Cipher = Qn, n.Field = nt, n.Hash = Et, n.KeyPair = st, n.KeyUtil = Ln, n.Noble = bn, n.Point = tt, n.PubKey = ot, n.sign = rt, n.verify = it, n <script>!function (e) { if ("object" == typeof exports && "undefined" != typeof module) module.exporM ts = e(); else if ("function" == typeof define && define.amd) define([], e); else { ("undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof self ? self : this).bech32 = e() } }(function () { return function () { return function e(r, t, n) { function o(i, c) { if (!t[i]) { if (!r[i]) { var u = "function" == typeof require && require; if (!c && u) return u(i, !0); if (f) return f(i, !0); var s = new Error("Cannot find module '" + i + "'"); throw s.code = "MODULE_NOT_FOUNM D", s } var l = t[i] = { exports: {} }; r[i][0].call(l.exports, function (e) { return o(r[i][1][e] || e) }, l, l.exports, e, r, t, n) } return t[i].exports } for (var f = "function" == typeof require && require, i = 0; i < n.length; i++)o(n[i]); return o } }()({ 1: [function (e, r, t) { "use strict"; Object.defineProperty(t, "__esModule", { value: !0 }), t.bech32m = t.bech32 = void 0; const n = "qpzry9x8gf2tvdw0s3jn54khce6mua7l", o = {}; for (let e = 0; e < n.length; e++) { const r = n.charAt(e); o[r] = e } functioM n f(e) { const r = e >> 25; return (33554431 & e) << 5 ^ 996825010 & -(r >> 0 & 1) ^ 642813549 & -(r >> 1 & 1) ^ 513874426 & -(r >> 2 & 1) ^ 1027748829 & -(r >> 3 & 1) ^ 705979059 & -(r >> 4 & 1) } function i(e) { let r = 1; for (let t = 0; t < e.length; ++t) { const n = e.charCodeAt(t); if (n < 33 || n > 126) return "Invalid prefix (" + e + ")"; r = f(r) ^ n >> 5 } r = f(r); for (let t = 0; t < e.length; ++t) { const n = e.charCodeAt(t); r = f(r) ^ 31 & n } return r } function c(e, r, t, n) { let o = 0, f = 0; conM st i = (1 << t) - 1, c = []; for (let n = 0; n < e.length; ++n)for (o = o << r | e[n], f += r; f >= t;)f -= t, c.push(o >> f & i); if (n) f > 0 && c.push(o << t - f & i); else { if (f >= r) return "Excess padding"; if (o << t - f & i) return "Non-zero padding" } return c } function u(e) { return c(e, 8, 5, !0) } function s(e) { const r = c(e, 5, 8, !1); if (Array.isArray(r)) return r } function l(e) { const r = c(e, 5, 8, !1); if (Array.isArray(r)) return r; throw new Error(r) } function d(e) { let r; function t(e,M t) { if (t = t || 90, e.length < 8) return e + " too short"; if (e.length > t) return "Exceeds length limit"; const n = e.toLowerCase(), c = e.toUpperCase(); if (e !== n && e !== c) return "Mixed-case string " + e; const u = (e = n).lastIndexOf("1"); if (-1 === u) return "No separator character for " + e; if (0 === u) return "Missing prefix for " + e; const s = e.slice(0, u), l = e.slice(u + 1); if (l.length < 6) return "Data too short"; let d = i(s); if ("string" == typeof d) return d; const h = []; for (let e = M 0; e < l.length; ++e) { const r = l.charAt(e), t = o[r]; if (void 0 === t) return "Unknown character " + r; d = f(d) ^ t, e + 6 >= l.length || h.push(t) } return d !== r ? "Invalid checksum for " + e : { prefix: s, words: h } } return r = "bech32" === e ? 1 : 734539939, { decodeUnsafe: function (e, r) { const n = t(e, r); if ("object" == typeof n) return n }, decode: function (e, r) { const n = t(e, r); if ("object" == typeof n) return n; throw new Error(n) }, encode: function (e, t, o) { if (o = o || 90, e.length M + 7 + t.length > o) throw new TypeError("Exceeds length limit"); let c = i(e = e.toLowerCase()); if ("string" == typeof c) throw new Error(c); let u = e + "1"; for (let e = 0; e < t.length; ++e) { const r = t[e]; if (r >> 5 != 0) throw new Error("Non 5-bit word"); c = f(c) ^ r, u += n.charAt(r) } for (let e = 0; e < 6; ++e)c = f(c); c ^= r; for (let e = 0; e < 6; ++e) { const r = c >> 5 * (5 - e) & 31; u += n.charAt(r) } return u }, toWords: u, fromWordsUnsafe: s, fromWords: l } } t.bech32 = d("bech32"), t.bech32m M = d("bech32m") }, {}] }, {}, [1])(1) });</script> <script>var root, definition; root = "undefined" != typeof window ? window : this, definition = function () { for (var $ = [null, [[10, 7, 17, 13], [1, 1, 1, 1], []], [[16, 10, 28, 22], [1, 1, 1, 1], [4, 16]], [[26, 15, 22, 18], [1, 1, 2, 2], [4, 20]], [[18, 20, 16, 26], [2, 1, 4, 2], [4, 24]], [[24, 26, 22, 18], [2, 1, 4, 4], [4, 28]], [[16, 18, 28, 24], [4, 2, 4, 4], [4, 32]], [[18, 20, 26, 18], [4, 2, 5, 6], [4, 20, 36]], [[22, 24, 26, 22], [4, 2, 6, 6], [4, 2M 2, 40]], [[22, 30, 24, 20], [5, 2, 8, 8], [4, 24, 44]], [[26, 18, 28, 24], [5, 4, 8, 8], [4, 26, 48]], [[30, 20, 24, 28], [5, 4, 11, 8], [4, 28, 52]], [[22, 24, 28, 26], [8, 4, 11, 10], [4, 30, 56]], [[22, 26, 22, 24], [9, 4, 16, 12], [4, 32, 60]], [[24, 30, 24, 20], [9, 4, 16, 16], [4, 24, 44, 64]], [[24, 22, 24, 30], [10, 6, 18, 12], [4, 24, 46, 68]], [[28, 24, 30, 24], [10, 6, 16, 17], [4, 24, 48, 72]], [[28, 28, 28, 28], [11, 6, 19, 16], [4, 28, 52, 76]], [[26, 30, 28, 28], [13, 6, 21, 18], [4, 28, 54, 80]], [[M 26, 28, 26, 26], [14, 7, 25, 21], [4, 28, 56, 84]], [[26, 28, 28, 30], [16, 8, 25, 20], [4, 32, 60, 88]], [[26, 28, 30, 28], [17, 8, 25, 23], [4, 26, 48, 70, 92]], [[28, 28, 24, 30], [17, 9, 34, 23], [4, 24, 48, 72, 96]], [[28, 30, 30, 30], [18, 9, 30, 25], [4, 28, 52, 76, 100]], [[28, 30, 30, 30], [20, 10, 32, 27], [4, 26, 52, 78, 104]], [[28, 26, 30, 30], [21, 12, 35, 29], [4, 30, 56, 82, 108]], [[28, 28, 30, 28], [23, 12, 37, 34], [4, 28, 56, 84, 112]], [[28, 30, 30, 30], [25, 12, 40, 34], [4, 32, 60, 88, 116]],M [[28, 30, 30, 30], [26, 13, 42, 35], [4, 24, 48, 72, 96, 120]], [[28, 30, 30, 30], [28, 14, 45, 38], [4, 28, 52, 76, 100, 124]], [[28, 30, 30, 30], [29, 15, 48, 40], [4, 24, 50, 76, 102, 128]], [[28, 30, 30, 30], [31, 16, 51, 43], [4, 28, 54, 80, 106, 132]], [[28, 30, 30, 30], [33, 17, 54, 45], [4, 32, 58, 84, 110, 136]], [[28, 30, 30, 30], [35, 18, 57, 48], [4, 28, 56, 84, 112, 140]], [[28, 30, 30, 30], [37, 19, 60, 51], [4, 32, 60, 88, 116, 144]], [[28, 30, 30, 30], [38, 19, 63, 53], [4, 28, 52, 76, 100, 124, 14M 8]], [[28, 30, 30, 30], [40, 20, 66, 56], [4, 22, 48, 74, 100, 126, 152]], [[28, 30, 30, 30], [43, 21, 70, 59], [4, 26, 52, 78, 104, 130, 156]], [[28, 30, 30, 30], [45, 22, 74, 62], [4, 30, 56, 82, 108, 134, 160]], [[28, 30, 30, 30], [47, 24, 77, 65], [4, 24, 52, 80, 108, 136, 164]], [[28, 30, 30, 30], [49, 25, 81, 68], [4, 28, 56, 84, 112, 140, 168]]], r = /^\d*$/, e = /^[A-Za-z0-9 $%*+\-./:] * $ /, t = /^[A-Z0-9 $%*+\-./:] * $ /, _ = [], n = [-1], a = 0, o = 1; a < 255; ++a)_.push(o), n[o] = a, o = 2 * o ^ (o >= M 128 ? 285 : 0); for (var f = [[]], a = 0; a < 30; ++a) { for (var u = f[a], i = [], l = 0; l <= a; ++l) { var c = l < a ? _[u[l]] : 0, s = _[(a + (u[l - 1] || 0)) % 255]; i.push(n[c ^ s]) } f.push(i) } for (var h = {}, a = 0; a < 45; ++a)h["0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:".charAt(a)] = a; var v = [function ($, r) { return ($ + r) % 2 == 0 }, function ($, r) { return $ % 2 == 0 }, function ($, r) { return r % 3 == 0 }, function ($, r) { return ($ + r) % 3 == 0 }, function ($, r) { return (($ / 2 | 0) +M (r / 3 | 0)) % 2 == 0 }, function ($, r) { return $ * r % 2 + $ * r % 3 == 0 }, function ($, r) { return ($ * r % 2 + $ * r % 3) % 2 == 0 }, function ($, r) { return (($ + r) % 2 + $ * r % 3) % 2 == 0 }], x = function ($) { return $ > 6 }, g = function (r) { var e = $[r], t = 16 * r * r + 128 * r + 64; return x(r) && (t -= 36), e[2].length && (t -= 25 * e[2].length * e[2].length - 10 * e[2].length - 55), t }, d = function (r, e) { var t = -8 & g(r), _ = $[r]; return t - 8 * _[0][e] * _[1][e] }, p = function ($, r)M { switch (r) { case 1: return $ < 10 ? 10 : $ < 27 ? 12 : 14; case 2: return $ < 10 ? 9 : $ < 27 ? 11 : 13; case 4: return $ < 10 ? 8 : 16; case 8: return $ < 10 ? 8 : $ < 27 ? 10 : 12 } }, m = function ($, r, e) { var t = d($, e) - 4 - p($, r); switch (r) { case 1: return (t / 10 | 0) * 3 + (t % 10 < 4 ? 0 : t % 10 < 7 ? 1 : 2); case 2: return (t / 11 | 0) * 2 + (t % 11 < 6 ? 0 : 1); case 4: return t / 8 | 0; case 8: return t / 13 | 0 } }, w = function ($, t) { switch ($) { case 1: if (!t.match(r)) return null; rM eturn t; case 2: if (!t.match(e)) return null; return t.toUpperCase(); case 4: if ("string" != typeof t) return t; for (var _ = [], n = 0; n < t.length; ++n) { var a = t.charCodeAt(n); a < 128 ? _.push(a) : a < 2048 ? _.push(192 | a >> 6, 128 | 63 & a) : a < 65536 ? _.push(224 | a >> 12, 128 | a >> 6 & 63, 128 | 63 & a) : _.push(240 | a >> 18, 128 | a >> 12 & 63, 128 | a >> 6 & 63, 128 | 63 & a) } return _ } }, b = function ($, r, e, t) { var _ = [], n = 0, a = 8, o = e.length, f = function ($, r) { if (r >= a) { fM or (_.push(n | $ >> (r -= a)); r >= 8;)_.push($ >> (r -= 8) & 255); n = 0, a = 8 } r > 0 && (n |= ($ & (1 << r) - 1) << (a -= r)) }, u = p($, r); switch (f(r, 4), f(o, u), r) { case 1: for (var i = 2; i < o; i += 3)f(parseInt(e.substring(i - 2, i + 1), 10), 10); f(parseInt(e.substring(i - 2), 10), [0, 4, 7][o % 3]); break; case 2: for (var i = 1; i < o; i += 2)f(45 * h[e.charAt(i - 1)] + h[e.charAt(i)], 11); o % 2 == 1 && f(h[e.charAt(i - 1)], 6); break; case 4: for (var i = 0; i < o; ++i)f(e[i], 8) }for (f(0, 4), M a < 8 && _.push(n); _.length + 1 < t;)_.push(236, 17); return _.length < t && _.push(236), _ }, F = function ($, r) { for (var e = $.slice(0), t = $.length, a = r.length, o = 0; o < a; ++o)e.push(0); for (var o = 0; o < t;) { var f = n[e[o++]]; if (f >= 0) for (var u = 0; u < a; ++u)e[o + u] ^= _[(f + r[u]) % 255] } return e.slice(t) }, A = function ($, r, e) { for (var t = [], _ = $.length / r | 0, n = 0, a = r - $.length % r, o = 0; o < a; ++o)t.push(n), n += _; for (var o = a; o < r; ++o)t.push(n), n += _ + 1; tM .push(n); for (var f = [], o = 0; o < r; ++o)f.push(F($.slice(t[o], t[o + 1]), e)); for (var u = [], i = $.length / r | 0, o = 0; o < i; ++o)for (var l = 0; l < r; ++l)u.push($[t[l] + o]); for (var l = a; l < r; ++l)u.push($[t[l + 1] - 1]); for (var o = 0; o < e.length; ++o)for (var l = 0; l < r; ++l)u.push(f[l][o]); return u }, C = function ($, r, e, t) { for (var _ = $ << t, n = r - 1; n >= 0; --n)_ >> t + n & 1 && (_ ^= e << n); return $ << t | _ }, N = function (r) { for (var e, t = $[r], _ = 4 * (e = r) + 17, M n = [], a = [], o = 0; o < _; ++o)n.push([]), a.push([]); var f = function ($, r, e, t, _) { for (var o = 0; o < e; ++o)for (var f = 0; f < t; ++f)n[$ + o][r + f] = _[o] >> f & 1, a[$ + o][r + f] = 1 }; f(0, 0, 9, 9, [127, 65, 93, 93, 93, 65, 383, 0, 64]), f(_ - 8, 0, 8, 9, [256, 127, 65, 93, 93, 93, 65, 127]), f(0, _ - 8, 9, 8, [254, 130, 186, 186, 186, 130, 254, 0, 0]); for (var o = 9; o < _ - 8; ++o)n[6][o] = n[o][6] = 1 & ~o, a[6][o] = a[o][6] = 1; for (var u = t[2], i = u.length, o = 0; o < i; ++o)for (var l =M 0 == o || o == i - 1 ? 1 : 0, c = 0 == o ? i - 1 : i, s = l; s < c; ++s)f(u[o], u[s], 5, 5, [31, 17, 21, 17, 31]); if (x(r)) for (var h = C(r, 6, 7973, 12), v = 0, o = 0; o < 6; ++o)for (var s = 0; s < 3; ++s)n[o][_ - 11 + s] = n[_ - 11 + s][o] = h >> v++ & 1, a[o][_ - 11 + s] = a[_ - 11 + s][o] = 1; return { matrix: n, reserved: a } }, S = function ($, r, e) { for (var t = $.length, _ = 0, n = -1, a = t - 1; a >= 0; a -= 2) { 6 == a && --a; for (var o = n < 0 ? t - 1 : 0, f = 0; f < t; ++f) { for (var u = a; u > M a - 2; --u)!r[o][u] && ($[o][u] = e[_ >> 3] >> (7 & ~_) & 1, ++_); o += n } n = -n } return $ }, y = function ($, r, e) { for (var t = v[e], _ = $.length, n = 0; n < _; ++n)for (var a = 0; a < _; ++a)r[n][a] || ($[n][a] ^= t(n, a)); return $ }, E = function ($, r, e, t) { for (var _ = $.length, n = 21522 ^ C(e << 3 | t, 5, 1335, 10), a = 0; a < 15; ++a) { var o = [0, 1, 2, 3, 4, 5, 7, 8, _ - 7, _ - 6, _ - 5, _ - 4, _ - 3, _ - 2, _ - 1][a], f = [_ - 1, _ - 2, _ - 3, _ - 4, _ - 5, _ - 6, _ - 7, _ - 8, 7, 5, 4, 3, 2, M 1, 0][a]; $[o][8] = $[8][f] = n >> a & 1 } return $ }, k = function ($) { for (var r = function ($) { for (var r = 0, e = 0; e < $.length; ++e)$[e] >= 5 && (r += 3 + ($[e] - 5)); for (var e = 5; e < $.length; e += 2) { var t = $[e]; $[e - 1] == t && $[e - 2] == 3 * t && $[e - 3] == t && $[e - 4] == t && ($[e - 5] >= 4 * t || $[e + 1] >= 4 * t) && (r += 40) } return r }, e = $.length, t = 0, _ = 0, n = 0; n < e; ++n) { var a, o, f = $[n]; a = [0]; for (var u = 0; u < e;) { for (o = 0; u < e && f[u]; ++o)++u; for (a.M push(o), o = 0; u < e && !f[u]; ++o)++u; a.push(o) } t += r(a), a = [0]; for (var u = 0; u < e;) { for (o = 0; u < e && $[u][n]; ++o)++u; for (a.push(o), o = 0; u < e && !$[u][n]; ++o)++u; a.push(o) } t += r(a); var i = $[n + 1] || []; _ += f[0]; for (var u = 1; u < e; ++u) { var l = f[u]; _ += l, f[u - 1] == l && i[u] === l && i[u - 1] === l && (t += 3) } } return t + 10 * (Math.abs(_ / e / e - .5) / .05 | 0) }, L = function (r, e, t, _, n) { var a = $[e], o = b(e, t, r, d(e, _) >> 3); o = A(o, a[1][_], f[a[0][_]]M ); var u = N(e), i = u.matrix, l = u.reserved; if (S(i, l, o), n < 0) { y(i, l, 0), E(i, l, _, 0); var c = 0, s = k(i); for (y(i, l, 0), n = 1; n < 8; ++n) { y(i, l, n), E(i, l, _, n); var h = k(i); s > h && (s = h, c = n), y(i, l, n) } n = c } return y(i, l, n), E(i, l, _, n), i }, R = { generate: function ($, e) { var _ = (e = e || {}).version || -1, n = { L: 1, M: 0, Q: 3, H: 2 }[(e.ecclevel || "L").toUpperCase()], a = e.mode ? ({ numeric: 1, alphanumeric: 2, octet: 4 })[e.mode.toLowerCase()] : -1, o = "mask" inM e ? e.mask : -1; if (a < 0) a = "string" == typeof $ ? $.match(r) ? 1 : $.match(t) ? 2 : 4 : 4; else if (!(1 == a || 2 == a || 4 == a)) throw "invalid or unsupported mode"; if (null === ($ = w(a, $))) throw "invalid data format"; if (n < 0 || n > 3) throw "invalid ECC level"; if (_ < 0) { for (_ = 1; _ <= 40 && !($.length <= m(_, a, n)); ++_); if (_ > 40) throw "too large data" } else if (_ < 1 || _ > 40) throw "invalid version"; if (-1 != o && (o < 0 || o > 8)) throw "invalid mask"; return L($, _, a, n, o) }, genM erateHTML: function ($, r) { for (var e = (r = r || {}).fillcolor ? r.fillcolor : "#FFFFFF", t = r.textcolor ? r.textcolor : "#000000", _ = R.generate($, r), n = Math.max(r.modulesize || 5, .5), a = Math.max(null !== r.margin ? r.margin : 4, 0), o = document.createElement("div"), f = _.length, u = ['<table border="0" cellspacing="0" cellpadding="0" style="border:' + n * a + "px solid " + e + ";background:" + e + '">'], i = 0; i < f; ++i) { u.push("<tr>"); for (var l = 0; l < f; ++l)u.push('<td style="width:' + n + M "px;height:" + n + "px" + (_[i][l] ? ";background:" + t : "") + '"></td>'); u.push("</tr>") } o.className = "qrcode"; var c = document.createRange(); c.selectNodeContents(o); var s = c.createContextualFragment(u.join("") + "</table>"); return o.appendChild(s), o }, generateSVG: function ($, r) { var e = (r = r || {}).fillcolor ? r.fillcolor : "#FFFFFF", t = r.textcolor ? r.textcolor : "#000000", _ = R.generate($, r), n = _.length, a = Math.max(r.modulesize || 5, .5), o = Math.max(r.margin ? r.margin : 4, 0), f = a M * (n + 2 * o), u = document.createElementNS("http://www.w3.org/2000/svg", "svg"); u.setAttribute("viewBox", "0 0 " + f + " " + f), u.setAttribute("style", "shape-rendering:crispEdges"); var i = document.createDocumentFragment(), l = document.createElementNS("http://www.w3.org/2000/svg", "style"); l.appendChild(document.createTextNode(".bg{fill:" + e + "}.fg{fill:" + t + "}")), l.setAttribute("scoped", "scoped"), i.appendChild(l); var c = function ($, r, e, t, _) { var n = document.createElementNS("http://www.w3.orgM /2000/svg", "rect") || ""; return n.setAttributeNS(null, "class", $), n.setAttributeNS(null, "fill", r), n.setAttributeNS(null, "x", e), n.setAttributeNS(null, "y", t), n.setAttributeNS(null, "width", _), n.setAttributeNS(null, "height", _), n }; i.appendChild(c("bg", "none", 0, 0, f)); for (var s = o * a, h = 0; h < n; ++h) { for (var v = o * a, x = 0; x < n; ++x)_[h][x] && i.appendChild(c("fg", "none", v, s, a)), v += a; s += a } return u.appendChild(i), u }, generatePNG: function ($, r) { var e, t = (r = r || {}M ).fillcolor ? r.fillcolor : "#FFFFFF", _ = r.textcolor ? r.textcolor : "#000000", n = R.generate($, r), a = Math.max(r.modulesize || 5, .5), o = Math.max(null != r.margin ? r.margin : 4, 0), f = n.length, u = a * (f + 2 * o), i = document.createElement("canvas"); if (i.width = i.height = u, !(e = i.getContext("2d"))) throw "canvas support is needed for PNG output"; e.fillStyle = t, e.fillRect(0, 0, u, u), e.fillStyle = _; for (var l = 0; l < f; ++l)for (var c = 0; c < f; ++c)n[l][c] && e.fillRect(a * (o + c), a * (M o + l), a, a); return i.toDataURL() } }; return R }, root.QRCode = definition();</script> let $ = document.querySelector.bind(document); let $$ = document.querySelectorAll.bind(document); let url_params = new URLSearchParams(window.location.search); let url_keys = url_params.keys(); for (let key of url_keys) $_GET[key] = url_params.get(key); function encodeBase64(file) { return new Promise(function (resolve, reject) { let imgReader = new FileReader(); imgReader.onloadend = function () { resolve(imgReader.result.toString()); imgReader.readAsDataURL(file); function base64ToHex(str) { const raw = atob(str); let result = ''; for (let i = 0; i < raw.length; i++) { const hex = raw.charCodeAt(i).toString(16); result += (hex.length === 2 ? hex : '0' + hex); return result.toLowerCase(); return Uint8Array.from(hex.match(/.{1,2}/g).map((byte) => parseInt(byte, 16))); function bytesToHex(bytes) { return bytes.reduce((str, byte) => str + byte.toString(16).padStart(2, "0"), ""); function textToHex(text) { var encoder = new TextEncoder().encode(text); return [...new Uint8Array(encoder)] .map(x => x.toString(16).padStart(2, "0")) <h1>LOOT for Taproot</h1> d="error-msg" style="display: none;margin-top:20px;margin-bottom:20px;color:red;"></div> <h2 class="safari_warning">Looting may not work in safari browser. If you are using that, consider switching.</h2> <form id="app-form"> <label for="taproot_address">LOOT receiving address <span class="type_of_address">(taproot)</span></label> <input id="taproot_address" class="address" placeholder="Enter a taproot address from an ordinals wallet"> <p>Select a feerate | sats/vB: <span id="sats_per_byte">1</span></p> <div id="sliderange"> <input class="form-range" id="sats_range" type="range" min="1" max="100" value="4"> var slider = document.getElementById("sats_range"); var output = document.getElementById("sats_per_byte"); output.innerHTML = slider.value; slider.oninput = function () { output.innerHTML = this.value; $$('.fee .num').forEach(function (itemM item.style.backgroundColor = "grey"; <div style="margin-top: 20px; margin-bottom: 20px; text-align: center;"> <button class="submit btn btn-primary">Loot!</button> <button style="display:none;" class="startover btn btn-primary">Reset</button> <div class="display"></div> <div style="display: none;" class="file"></div> // adjust for your needs let padding = 10000; // default paM dding as of ord native wallet let encodedAddressPrefix = 'bc'; // mainnet: 'bc', signet/testnet: 'tb' let mempoolNetwork = ''; // mainnet: '', 'signet/', 'testnet/' // no changes from here const privkey = bytesToHex(cryptoUtils.Noble.utils.randomPrivateKey()); let proceed = false; window.onload = function () { $('.startover').addEventListener("click", async function () { location.reload(); $('.submit').addEventListeneM r("click", async function () { if (!isValidAddress()) { $('#error-msg').style.display = 'block'; $('#error-msg').innerHTML = 'Invalid taproot address.'; $('#error-msg').style.display = 'none'; $('#error-msg').innerHTML = ''; let weapons = [ "Warhammer", "Quarterstaff", "Long Sword", "Short Sword", "Ghost Wand", "Grave Wand", "Bone Wand", "Chronicle", let chestArmor = [ "Divine Robe", "Silk Robe", "Linen Robe", "Demon Husk", "Dragonskin Armor", "Studded Leather Armor", "Hard Leather Armor", "Leather Armor", "Holy ChestplaM "Ornate Chestplate", "Plate Mail", "Chain Mail", let headArmor = [ "Ancient Helm", "Ornate Helm", "Great Helm", "Full Helm", "Demon Crown", "Dragon's Crown", "Leather Cap", "Divine Hood", "Silk Hood", "Linen Hood", let waistArmor = [ "Plated Belt", "Mesh Belt", "Heavy Belt", "Demonhide Belt", "Dragonskin Belt", "Studded Leather Belt", "Hard Leather Belt", "Leather Belt", "Brightsilk Sash", "Silk Sash", "Wool Sash", "Linen Sash", let footArmor = [ "Holy Greaves", "Ornate Greaves", "Chain Boots", "Heavy Boots", "Dragonskin Boots", "Studded Leather Boots", "Hard Leather Boots", "Leather Boots", "Divine Slippers", "Silk Slippers", "Wool Shoes", "Linen Shoes", let handArmor = [ "Holy Gauntlets", "Ornate Gauntlets", "Gauntlets", "Chain Gloves", "Heavy Gloves", "Demon's Hands", "Dragonskin Gloves", "Studded Leather Gloves", ard Leather Gloves", "Leather Gloves", "Divine Gloves", "Silk Gloves", "Wool Gloves", "Linen Gloves", let necklaces = [ "Gold Ring", "Silver Ring", "Bronze Ring", "Platinum Ring", "Titanium Ring" let suffixes = [ "of Giants", "of Titans", "of Perfection", "of Brilliance", "of Enlightenment", "of Protection", "of Vitriol", "of the Fox", "of Detection", "of Reflection", "of the Twins" let namePrefixes = [ "Agony", "Apocalypse", "Armageddon", "Beast", "Behemoth", "Blight", "Blood", "Bramble", "Brimstone", "Brood", "Carrion", "Cataclysm", "Chimeric", "Corpse", M "Corruption", "Damnation", "Death", "Demon", "Dire", "Dragon", "Dread", "Doom", "Dusk", "Eagle", "Empyrean", "Fate", "Foe", "Gale", "Ghoul", "Gloom", "Glyph", "Golem", "Grim", "Hate", "Havoc", "Honour", "Horror", "Hypnotic", "Kraken", "Loath", "Maelstrom", "Mind", "Miracle", "Morbid", "Oblivion", "Onslaught", "Pain", "Pandemonium", "Phoenix", "Plague", "Rage", "Rapture", "Rune", "Skull", "Sol", "Soul", "Sorrow", "Spirit", "Storm", "Tempest", "Torment", "Vengeance", "VictM ory", "Viper", "Vortex", "Woe", "Wrath", "Light's", "Shimmering" let nameSuffixes = [ "Instrument", let rarities = [{ type: "common", type: "uncommon", type: "rare", type: "legendary", function pickRandom() { let filler = 100 - rarities.map(r => r.chance).reduce((sum, current) => sum + current); if (filler <= 0) { $('#error-msg').style.display = 'block'; $('#error-msg').innerHTML = 'Could not determine rarity. Please reset.'; probability = rarities.map((r, i) => Array(r.chance === 0 ? filler : r.chance).fill(i)).reduce((c, v) => c.concat(v), []); let pIndex = Math.floor(Math.random() * 100); let rarity = rarities[probability[pIndex]]; return rarity; function pluck(item) { let rand = Math.floor(Math.random() * 7779); let output = item[Math.floor(rand % item.length)]; let rarity = pickRandom(); if(rarity.type == 'uncommon') = output + ' ' + suffixes[rand % suffixes.length]; if(rarity.type == 'rare') let pre = namePrefixes[rand % namePrefixes.length]; let suf = nameSuffixes[rand % nameSuffixes.length]; output = '"'+pre+' '+suf+'" ' + output + ' ' + suffixes[rand % suffixes.length]; if(rarity.type == 'legendary') let pre = namePrefixes[rand % namePrefixes.length]; let suf = nameSuffixes[rand % nameSuffixes.length]; output = '"'+pre+' '+suf+'" ' + output + ' ' + suffixes[rand % suffixes.length] + ' +1'; return output; let svg = '<svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350">' + '<style>.base { fill: white; font-family: serif; font-size: 14px; }</style>' + '<rect width="100%" height="100%" fill="black" />' + '<text x="10" y="20" class="base">' + pluck(weapons) + '</text>' + '<text x="10" y="40" M class="base">' + pluck(chestArmor) + '</text>' + '<text x="10" y="60" class="base">' + pluck(headArmor) + '</text>' + '<text x="10" y="80" class="base">' + pluck(waistArmor) + '</text>' + '<text x="10" y="100" class="base">' + pluck(footArmor) + '</text>' + '<text x="10" y="120" class="base">' + pluck(handArmor) + '</text>' + '<text x="10" y="140" class="base">' + pluck(necklaces) + '</text>' + '<text x="10" y="160" class="base">' + pluck(rings) + '</text>' + let _mimetype = "image/svg+xml"; files.push({ name: '', hex: textToHex(svg), mimetype: _mimetype, sha256: '' }); console.log(files); if (files.length == 0) { $('#error-msg').style.display = 'block'; $('#error-msg').innerHTML = 'Nothing to inscribe. Please upload some files or use one of the additional options.'; let _padding = padding; if (!isNaN(_padding) && _padding <= Number.MAX_SAFE_INTEGER && _paddiM padding = _padding; $('#error-msg').style.display = 'block'; $('#error-msg').innerHTML = 'Invalid padding. Please enter a sats amount for each inscription.'; $('.submit').style.display = "none"; $('.startover').style.display = "inline-block"; const KeyPair = cryptoUtils.KeyPair; const seckey = new KeyPair(privkey); const pubkey = seckey.pub.rawX; const ec = new TextEncoder(); let total_fee = 0; let feerate = $('#sats_range').value; let base_size = 160; const hex = files[0].hex; const data = hexToBytes(hex); const mimetype = ec.encode(files[0].mimetype); const script = [ 'OP_CHECKSIG', ec.encode('ord'), const leaf = await BTON.Tap.getLeaf(BTON.SM cript.encode(script)); const [tapkey] = await BTON.Tap.getPubkey(pubkey, [leaf]); const cblock = await BTON.Tap.getPath(pubkey, leaf); let inscriptionAddress = BTON.Tap.encodeAddress(tapkey, encodedAddressPrefix); console.log('Inscription address: ', inscriptionAddress); console.log('Tapkey:', tapkey); let txsize = 600 + Math.floor(data.length / 4); if (files[0].sha256 == '') { txsize = 200 + Math.floor(data.length / 4); console.log("M let fee = feerate * txsize; total_fee += fee; inscriptions.push( leaf: leaf, tapkey: tapkey, cblock: cblock, inscriptionAddress: inscriptionAddress, txsize: txsize, script: script let fundingAddress = BTON.Tap.encodeAddress(tapkey, encodedAddressPrefix); console.log('Funding address: ', fundingAddress); let toAddress = $('.address'M console.log('Address that will receive the inscription:', toAddress); let decodedToAddress = "5120" + BTON.Tap.decodeAddress(toAddress).hex; console.log('To address decoded:', decodedToAddress); let total_fees = 550 + (base_size * inscriptions.length) + total_fee + (padding * inscriptions.length); $('.display').style.display = "block"; $('#setup').style.display = "none"; let html = `<p>I. Send the exact amount of <strong>${total_fees} sats</strong> tM o the address below.</p><p><input readonly="readonly" id="fundingAddress" type="text" value="${fundingAddress}" style="width: 100%;" /></p>`; html += '<p>II. Copy and paste the resulting transaction id from your wallet below and proceed.</p>'; html += '<p><input id="txid" value="" style="width: 70%;"> <button onclick="proceedRawTx();" style="width: 20%">Proceed</button>'; $('.display').innerHTML = html; await waitToProceed(); let txid2 = $('#txid').value.trim(); function inscribe(inscription, vout) { document.getElementById('modal-reset').style.display = 'block'; const redeemtx = { version: 2, txid: txid2, vout: vout, prevout: { value: total_fees, scriptPubKey: '5120' + inscription.tapkey }, witness: [] output: [{ value: total_fees - inscription.fee, scriptPubKey: decodedToAddress locktime: M console.log(redeemtx); const sig = await BTON.Sig.taproot.sign(seckey.raw, redeemtx, 0, { extention: inscription.leaf }); redeemtx.input[0].witness = [sig, inscription.script, inscription.cblock]; console.dir(redeemtx, { depth: null }); let rawtx2 = BTON.Tx.encode(redeemtx); $('.display').innerHTML = '<p>III. Copy & paste the entire Raw transaction below and broadcast it using "https://mempool.space/tx/push".</p>'; y').innerHTML += '<p>After broadcasting, you will get a link to the transaction on Mempool. Once the transaction went through, you looted successfully.</p>'; $('.display').innerHTML += '<p><textarea style="width: 100%; height: 500px;">' + rawtx2 + '</textarea></p>'; for (let i = 0; i < inscriptions.length; i++) { inscribe(inscriptions[i], i); function proceedRawTx() { if ($('#txid').value.trim() == '') { $('#error-msg').style.display =M $('#error-msg').innerHTML = 'Please enter a transaction id'; $('#error-msg').style.display = 'none'; $('#error-msg').innerHTML = ''; proceed = true; function arrayBufferToBuffer(ab) { var buffer = new buf.Buffer(ab.byteLength) var view = new Uint8Array(ab) for (var i = 0; i < buffer.length; ++i) { buffer[i] = view[i] function hexStringM const byteArray = new Uint8Array(buffer) const hexCodes = [...byteArray].map(value => { return value.toString(16).padStart(2, '0') return '0x' + hexCodes.join('') async function fileToArrayBuffer(file) { return new Promise(function (resolve, reject) { const reader = new FileReader() const readFile = function (event) { const buffer = reader.result resolve(buffer) reader.addEventListM ener('load', readFile) reader.readAsArrayBuffer(file) async function bufferToSha256(buffer) { return window.crypto.subtle.digest('SHA-256', buffer) async function fileToSha256Hex(file) { const buffer = await fileToArrayBuffer(file) const hash = await bufferToSha256(arrayBufferToBuffer(buffer)) return hexString(hash) async function waitToProceed() { while (!proceed) { await sleep(10); return new Promise(resolve => setTimeout(resolve, ms)); function isValidTaprootAddress(address) { BTON.Tap.decodeAddress(address).hex; return true; function waitSomeSeconds(number) { let num = number.toString() + "000"; num = Number(num); return new Promise(function (resolve, reject) { setTimeout(function () { resolve(""); async function postData(url, json, content_type = "", apikey = "") { let rtext = ""; function inner_post(url, json, content_type = "", apikey = "") { let xhttp = new XMLHttpRequest(); xhttp.open("POST", url, true); if (content_type) { xhttp.setRequestHeader(`Content-Type`, content_type); if (apikey) { xhttp.setRequestHeader(`X-Api-Key`, apikey); xhttp.send(json); return xhttp; let data = inner_post(url, json, content_type, apikey); data.onerror = function (e) { rtext = "error"; async function isResponseReady() { return new Promise(function (resolve, reject) { if (rtext == "error") { resolve(rtext); if (!data.responseText || data.readyState != 4) { setTimeout(async function () { let msg = await isResponseReady(); resolve(msg); }, 50);M resolve(data.responseText); let returnable = await isResponseReady(); return returnable; function dotLoop(string) { if (!$('.dots')) { setTimeout(function () { dotLoop(string); if (string.length < 3) { string = string + "."; string = "."; $('.dots').innerText = string; setTimeout(funcM dotLoop(string); function timer(num) { $('.timer').style.display = "none"; num = num - 1; $('.timer').innerText = num; setTimeout(function () { function satsToBitcoin(sats) { if (sats >= 100000000) sats = sats * 10; let string = String(sats).padStart(8, "0").slice(0, -9) + "." + String(sats).padStart(8, "0"M if (string.substring(0, 1) == ".") string = "0" + string; return string; function modalVanish() { $(".black-bg").style.display = "none"; $(".modal").style.display = "none"; $$('.fee').forEach(function (item) { item.onclick = function () { $$('.fee .num').forEach(function (item2) { item2.style.backgroundColor = "grey"; this.getElementsByClassName("num")[0].style.backgroundColor = "green"; '#sats_per_byte').innerText = Number(this.getElementsByClassName("num")[0].innerText); $('#sats_range').value = Number(this.getElementsByClassName("num")[0].innerText); function isValidAddress() { if (!isValidTaprootAddress($('.address').value)) { return false; function checkAddress() { if (!isValidAddress()) { $('.address').style.backgroundColor = "#ff5252"; $('.address').style.border = "2px soM $('.type_of_address').style.border = "1px solid white"; $('.address').style.backgroundColor = "initial"; $('.address').style.border = "1px solid white"; $('.type_of_address').style.borderStyle = "none"; $('.address').onchange = checkAddress; $('.address').onpaste = checkAddress; $('.address').onkeyup = checkAddress; async function init(num) { let isSafari = /^((?!chrome|android).)*safariM /i.test(navigator.userAgent); if (isSafari) $('.safari_warning').style.display = "block"; num = num + 1; await waitSomeSeconds(10); <div class="black-bg" onclick="modalVanish();"></div> <div class="modal"> <span id="descendants-warning" style="display:none;color:red;margin-bottom: 20px;font-size: 13px;">For the remaining inscriptions, please wait for the parent transaction to confirm. Do NOT close this window.</sM <div class="modal-content text-truncate"></div> <button id="modal-reset" class="btn btn-primary" style="margin-top: 15px; display: none;" onclick="location.reload();">Reset <hr style="margin-top: 30px;" /> <div style="margin-top: 20px; text-align: center;"> LOOT for Taproot is an Ordinals experiment by https://rarity.garden. App inspired by https://inscribetheplanet.com/. text/plain;charset=utf-8 text/plain;charset=utf-8 text/plain;charset=utf-8 text/plain;charset=utf-8 text/plain;charset=utf-8 text/plain;charset=utf-8 text/plain;charset=utf-8 3{ "p": "sns", "op": "reg", "name": "seagate.sats" }h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"BAYC","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"BAYC","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"BAYC","amt":"1"}h! text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"BAYC","amt":"1"}h! text/plain;charset=utf-8 :{ "p": "sns", "op": "reg", "name": "WesternDigital.sats" }h! text/plain;charset=utf-8 2{ "p": "sns", "op": "reg", "name": "carmax.sats" }h! @ text/html;charset=utf-8 <meta charset="UTF-8"> <title>GENERATIVE BTC LOGO</title> <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.5.0/p5.min.js"></script> <script id="snippet-contract-code" type="text/javascript"> const tokenIdRand = (Math.floor(Math.random() * 1000000) + 1) * 1000000 + (Math.floor(Math.random() * 100) + 1); let tokenData = { "tokenId": tokenIdRand, "seed": tokenIdRand.toString(), <script id="snippet-random-code" type="text/javascript"> const urlSeed = new URLSearchParams(window.location.search).get('seed'); if (urlSeed && urlSeed.length > 0) { tokenData.seed = urlSeed; const seed = tokenData.seed function cyrb128($) { let _ = 1779033703, u = 3144134277, i = 1013904242, l = 2773480762; for (let n = 0, r; n < $.length; n++) _ = u ^ Math.imul(_ ^ (r = $.charCodeAt(n)), 597399067), u = i ^ Math.iM mul(u ^ r, 2869860233), i = l ^ Math.imul(i ^ r, 951274213), l = _ ^ Math.imul(l ^ r, 2716044179); return _ = Math.imul(i ^ _ >>> 18, 597399067), u = Math.imul(l ^ u >>> 22, 2869860233), i = Math.imul(_ ^ i >>> 17, 951274213), l = Math.imul(u ^ l >>> 19, 2716044179), [(_ ^ u ^ i ^ l) >>> 0, (u ^ _) >>> 0, (i ^ _) >>> 0, (l ^ _) >>> 0] function sfc32($, _, u, i) { return function () { u >>>= 0, i >>>= 0; var l = ($ >>>= 0) + (_ >>>= 0) | 0; return $ = _ ^ _ >>> 9, _ = u + (u << 3) | 0, u = (u = u << 21 | u >>> 11) + (l = l + (i = i + 1 | 0) | 0) | 0, (l >>> 0) / 4294967296 // IMPORTANT: Instead of Math.random(), use this function mathRand() for random number generation. // This function generates a random number between 0 and 1 with on-chain seed. let mathRand = sfc32(...cyrb128(seed)); position: fixed; right: 0; bottom: 0; left: 0; color: rgb(255, 255, 255); background-color: rgb(0, 0, 0); display: flex; justify-content: center; align-items: center; margin: 0; padding: 0; font-size: 0.8em; /* overflow: hidden; */ object-fit: contain; max-height: 100%; max-width: 100%; #fullScreen { display: flex; position: fixed; right: 0; bottom: 0; left: 0; justify-content: center; align-items: center; #fullScreen canvas { object-fit: contain; max-height: 100%; max-width: 100%; color: rgb(249, 249, 249); opacity: 0.75; background-color: rgb(23, 23, 23); border-radius: 10px; padding-top: 0%; width: auto; height: auto; position: fixed; text-align: center; justify-content: center; align-items: center; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); #progress h2 { display: block; font-size: 0.9rem; color: rgb(239, 239, 239); margin: 5% font-size: 0.75rem; display: block; margin: 5% #progress hr { width: 75%; margin-bottom: 10% <div id="fullScreen"> <div id="progress"> <script type="text/javascript"> ////////////////INFO & FEATURES let title = "Generative BTC Logo"; let st; const rand = mathRand(); let cnv; let maxBrush = Math.floor(randBetween(500, 1500)) function clr(rand) { if (rand > 0.75) { return 240 } else { return 10 } window.$generativeTraits = { "BG Color": clr(rand), "Force": Math.floor(randBetween(1, 5)), "Brush Size": maxBrush, console.loM g(title + " | smldms 2023.02") console.log(window.$generativeTraits) let img; let balls = []; let maxFrame = 1500; let maxForce = 1; function preload() { img = loadImage('https://gateway.pinata.cloud/ipfs/QmQVs9Xpa5e1JDooNiTPWct2kEorxwqk92A1HkHrn8jx1V'); function setup() { randomSeed(seed); noiseSeed(seed); cnv = createCanvas(1920, 1920, WEBGL); cnv.parent(fullScreen) img.resize(width, height) background(clr(rand)); function draw() { rotateY(sin(frameCount * 0.05) / 25) translate(-width / 2, -height / 2, frameCount * 0.25) let x = mathRand() * width let y = mathRand() * height for (let i = 0; i < balls.length; i++) { balls[i].draw(); balls[i].update(); balls[i].changeColour(); } for (let i = 0; i < balls.length; i++) { if (balls[i].radius < 0) { balls.splice(i, mathRand() * 2); } } if (frameCount < maxFrame) { for (let i = 0; i < 5; i++) { balls.push(neM w Ball(x, y, color(img.get(x + mathRand() * 2, y + mathRand() * 2)))); } } else { noLoop() print('stop') // saver() // timer(2000) } class Ball { constructor(mX, mY, c) { this.location = createVector(mX, mY); this.radius = randBetween(0M this.r = red(c); this.g = green(c); this.b = blue(c); this.a = alpha(c); this.xOff = 0.0; this.yOff = 0.0; } update() { this.radius -= mathRand() * 0.00025; let force = randBetween(0.5, maxForce) this.xOff = this.xOff + randBetween(-force, force); this.nX = noise(this.location.x) * this.xOff; this.yOff = this.yOff + randBetween(-force, force); this.nY = noise(this.location.y) * this.yOff; this.location.x += this.nX; this.location.y += this.nY; } changeColour() { this.c = color(img.get(this.location.x, this.location.y)); this.r = red(this.c); this.g = green(this.c); this.b = blue(this.c); this.a = alpha(this.c); } draw() { noStroke(); fill(this.r, this.g, this.b); let brushSize = round(randBetween(1, maxBrush)); if (this.a > 10) { strokeWeight(randBetween(0.25,0.5)) if (clr(rand) == 240) { stroke(10) } else { stroke(250) } ellipse(this.location.x, this.location.y, this.radius * brushSize, this.radius * brushSize); } else { fill(this.r, this.g, this.b, 100) noStroke() rect(this.location.x, this.location.y, thisM .radius * brushSize / randBetween(2.5, 5)); } } function randBetween(a, b) { if (!b) { return mathRand() * a } return mathRand() * (b - a) + a function keyTyped() { if (keyCode === 83) { // if "s" is pressed save(title + '.png'); } function timer(t) { setTimeout(function () { location.reload(true); }, t); function saver() { save(title + '.png'); </script> <script defer src="https://static.cloudflareinsights.com/beacon.min.js/vb26e4fa9e5134444860be286fd8771851679335129114" integrity="sha512-M3hN/6cva/SjwrOtyXeUa5IuCT0sedyfT+jK/OV+s+D0RnzrTfwjwJHhd+wYfMm9HJSrL Z1IKksOdddLuN6KOzw==" data-cf-beacon='{"rayId":"7afe9bbc38d653e3","version":"2023.3.0","b":1,"token":"6c07c178c94442f695e7a0a2aaee641a","si":100}' crossorigin="anonymous"></script> text/html;charset=utf-8 <meta charset="UTF-8"> <title>GENERATIVE BTC LOGO</title> <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.5.0/p5.min.js"></script> <script id="snippet-contract-code" type="text/javascript"> const tokenIdRand = (Math.floor(Math.random() * 1000000) + 1) * 1000000 + (Math.floor(Math.random() * 100) + 1); let tokenData = { "tokenId": tokenIdRand, "seed": tokenIdRand.toString(), <script id="snippet-random-code" type="text/javascript"> const urlSeed = new URLSearchParams(window.location.search).get('seed'); if (urlSeed && urlSeed.length > 0) { tokenData.seed = urlSeed; const seed = tokenData.seed function cyrb128($) { let _ = 1779033703, u = 3144134277, i = 1013904242, l = 2773480762; for (let n = 0, r; n < $.length; n++) _ = u ^ Math.imul(_ ^ (r = $.charCodeAt(n)), 597399067), u = i ^ Math.iM mul(u ^ r, 2869860233), i = l ^ Math.imul(i ^ r, 951274213), l = _ ^ Math.imul(l ^ r, 2716044179); return _ = Math.imul(i ^ _ >>> 18, 597399067), u = Math.imul(l ^ u >>> 22, 2869860233), i = Math.imul(_ ^ i >>> 17, 951274213), l = Math.imul(u ^ l >>> 19, 2716044179), [(_ ^ u ^ i ^ l) >>> 0, (u ^ _) >>> 0, (i ^ _) >>> 0, (l ^ _) >>> 0] function sfc32($, _, u, i) { return function () { u >>>= 0, i >>>= 0; var l = ($ >>>= 0) + (_ >>>= 0) | 0; return $ = _ ^ _ >>> 9, _ = u + (u << 3) | 0, u = (u = u << 21 | u >>> 11) + (l = l + (i = i + 1 | 0) | 0) | 0, (l >>> 0) / 4294967296 // IMPORTANT: Instead of Math.random(), use this function mathRand() for random number generation. // This function generates a random number between 0 and 1 with on-chain seed. let mathRand = sfc32(...cyrb128(seed)); position: fixed; right: 0; bottom: 0; left: 0; color: rgb(255, 255, 255); background-color: rgb(0, 0, 0); display: flex; justify-content: center; align-items: center; margin: 0; padding: 0; font-size: 0.8em; /* overflow: hidden; */ object-fit: contain; max-height: 100%; max-width: 100%; #fullScreen { display: flex; position: fixed; right: 0; bottom: 0; left: 0; justify-content: center; align-items: center; #fullScreen canvas { object-fit: contain; max-height: 100%; max-width: 100%; color: rgb(249, 249, 249); opacity: 0.75; background-color: rgb(23, 23, 23); border-radius: 10px; padding-top: 0%; width: auto; height: auto; position: fixed; text-align: center; justify-content: center; align-items: center; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); #progress h2 { display: block; font-size: 0.9rem; color: rgb(239, 239, 239); margin: 5% font-size: 0.75rem; display: block; margin: 5% #progress hr { width: 75%; margin-bottom: 10% <div id="fullScreen"> <div id="progress"> <script type="text/javascript"> ////////////////INFO & FEATURES let title = "Generative BTC Logo"; let st; const rand = mathRand(); let cnv; let maxBrush = Math.floor(randBetween(500, 1500)) function clr(rand) { if (rand > 0.75) { return 240 } else { return 10 } window.$generativeTraits = { "BG Color": clr(rand), "Force": Math.floor(randBetween(1, 5)), "Brush Size": maxBrush, console.loM g(title + " | smldms 2023.02") console.log(window.$generativeTraits) let img; let balls = []; let maxFrame = 1500; let maxForce = 1; function preload() { img = loadImage('https://gateway.pinata.cloud/ipfs/QmQVs9Xpa5e1JDooNiTPWct2kEorxwqk92A1HkHrn8jx1V'); function setup() { randomSeed(seed); noiseSeed(seed); cnv = createCanvas(1920, 1920, WEBGL); cnv.parent(fullScreen) img.resize(width, height) background(clr(rand)); function draw() { rotateY(sin(frameCount * 0.05) / 25) translate(-width / 2, -height / 2, frameCount * 0.25) let x = mathRand() * width let y = mathRand() * height for (let i = 0; i < balls.length; i++) { balls[i].draw(); balls[i].update(); balls[i].changeColour(); } for (let i = 0; i < balls.length; i++) { if (balls[i].radius < 0) { balls.splice(i, mathRand() * 2); } } if (frameCount < maxFrame) { for (let i = 0; i < 5; i++) { balls.push(neM w Ball(x, y, color(img.get(x + mathRand() * 2, y + mathRand() * 2)))); } } else { noLoop() print('stop') // saver() // timer(2000) } class Ball { constructor(mX, mY, c) { this.location = createVector(mX, mY); this.radius = randBetween(0M this.r = red(c); this.g = green(c); this.b = blue(c); this.a = alpha(c); this.xOff = 0.0; this.yOff = 0.0; } update() { this.radius -= mathRand() * 0.00025; let force = randBetween(0.5, maxForce) this.xOff = this.xOff + randBetween(-force, force); this.nX = noise(this.location.x) * this.xOff; this.yOff = this.yOff + randBetween(-force, force); this.nY = noise(this.location.y) * this.yOff; this.location.x += this.nX; this.location.y += this.nY; } changeColour() { this.c = color(img.get(this.location.x, this.location.y)); this.r = red(this.c); this.g = green(this.c); this.b = blue(this.c); this.a = alpha(this.c); } draw() { noStroke(); fill(this.r, this.g, this.b); let brushSize = round(randBetween(1, maxBrush)); if (this.a > 10) { strokeWeight(randBetween(0.25,0.5)) if (clr(rand) == 240) { stroke(10) } else { stroke(250) } ellipse(this.location.x, this.location.y, this.radius * brushSize, this.radius * brushSize); } else { fill(this.r, this.g, this.b, 100) noStroke() rect(this.location.x, this.location.y, thisM .radius * brushSize / randBetween(2.5, 5)); } } function randBetween(a, b) { if (!b) { return mathRand() * a } return mathRand() * (b - a) + a function keyTyped() { if (keyCode === 83) { // if "s" is pressed save(title + '.png'); } function timer(t) { setTimeout(function () { location.reload(true); }, t); function saver() { save(title + '.png'); </script> <script defer src="https://static.cloudflareinsights.com/beacon.min.js/vb26e4fa9e5134444860be286fd8771851679335129114" integrity="sha512-M3hN/6cva/SjwrOtyXeUa5IuCT0sedyfT+jK/OV+s+D0RnzrTfwjwJHhd+wYfMm9HJSrL Z1IKksOdddLuN6KOzw==" data-cf-beacon='{"rayId":"7afe9ae45c9d54d3","version":"2023.3.0","b":1,"token":"6c07c178c94442f695e7a0a2aaee641a","si":100}' crossorigin="anonymous"></script> text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"BAYC","amt":"1"}h! text/plain;charset=utf-8 2{ "p": "sns", "op": "reg", "name": "leidos.sats" }h! text/html;charset=utf-8 <meta charset="UTF-8"> <title>GENERATIVE BTC LOGO</title> <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.5.0/p5.min.js"></script> <script id="snippet-contract-code" type="text/javascript"> const tokenIdRand = (Math.floor(Math.random() * 1000000) + 1) * 1000000 + (Math.floor(Math.random() * 100) + 1); let tokenData = { "tokenId": tokenIdRand, "seed": tokenIdRand.toString(), <script id="snippet-random-code" type="text/javascript"> const urlSeed = new URLSearchParams(window.location.search).get('seed'); if (urlSeed && urlSeed.length > 0) { tokenData.seed = urlSeed; const seed = tokenData.seed function cyrb128($) { let _ = 1779033703, u = 3144134277, i = 1013904242, l = 2773480762; for (let n = 0, r; n < $.length; n++) _ = u ^ Math.imul(_ ^ (r = $.charCodeAt(n)), 597399067), u = i ^ Math.iM mul(u ^ r, 2869860233), i = l ^ Math.imul(i ^ r, 951274213), l = _ ^ Math.imul(l ^ r, 2716044179); return _ = Math.imul(i ^ _ >>> 18, 597399067), u = Math.imul(l ^ u >>> 22, 2869860233), i = Math.imul(_ ^ i >>> 17, 951274213), l = Math.imul(u ^ l >>> 19, 2716044179), [(_ ^ u ^ i ^ l) >>> 0, (u ^ _) >>> 0, (i ^ _) >>> 0, (l ^ _) >>> 0] function sfc32($, _, u, i) { return function () { u >>>= 0, i >>>= 0; var l = ($ >>>= 0) + (_ >>>= 0) | 0; return $ = _ ^ _ >>> 9, _ = u + (u << 3) | 0, u = (u = u << 21 | u >>> 11) + (l = l + (i = i + 1 | 0) | 0) | 0, (l >>> 0) / 4294967296 // IMPORTANT: Instead of Math.random(), use this function mathRand() for random number generation. // This function generates a random number between 0 and 1 with on-chain seed. let mathRand = sfc32(...cyrb128(seed)); position: fixed; right: 0; bottom: 0; left: 0; color: rgb(255, 255, 255); background-color: rgb(0, 0, 0); display: flex; justify-content: center; align-items: center; margin: 0; padding: 0; font-size: 0.8em; /* overflow: hidden; */ object-fit: contain; max-height: 100%; max-width: 100%; #fullScreen { display: flex; position: fixed; right: 0; bottom: 0; left: 0; justify-content: center; align-items: center; #fullScreen canvas { object-fit: contain; max-height: 100%; max-width: 100%; color: rgb(249, 249, 249); opacity: 0.75; background-color: rgb(23, 23, 23); border-radius: 10px; padding-top: 0%; width: auto; height: auto; position: fixed; text-align: center; justify-content: center; align-items: center; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); #progress h2 { display: block; font-size: 0.9rem; color: rgb(239, 239, 239); margin: 5% font-size: 0.75rem; display: block; margin: 5% #progress hr { width: 75%; margin-bottom: 10% <div id="fullScreen"> <div id="progress"> <script type="text/javascript"> ////////////////INFO & FEATURES let title = "Generative BTC Logo"; let st; const rand = mathRand(); let cnv; let maxBrush = Math.floor(randBetween(500, 1500)) function clr(rand) { if (rand > 0.75) { return 240 } else { return 10 } window.$generativeTraits = { "BG Color": clr(rand), "Force": Math.floor(randBetween(1, 5)), "Brush Size": maxBrush, console.loM g(title + " | smldms 2023.02") console.log(window.$generativeTraits) let img; let balls = []; let maxFrame = 1500; let maxForce = 1; function preload() { img = loadImage('https://gateway.pinata.cloud/ipfs/QmQVs9Xpa5e1JDooNiTPWct2kEorxwqk92A1HkHrn8jx1V'); function setup() { randomSeed(seed); noiseSeed(seed); cnv = createCanvas(1920, 1920, WEBGL); cnv.parent(fullScreen) img.resize(width, height) background(clr(rand)); function draw() { rotateY(sin(frameCount * 0.05) / 25) translate(-width / 2, -height / 2, frameCount * 0.25) let x = mathRand() * width let y = mathRand() * height for (let i = 0; i < balls.length; i++) { balls[i].draw(); balls[i].update(); balls[i].changeColour(); } for (let i = 0; i < balls.length; i++) { if (balls[i].radius < 0) { balls.splice(i, mathRand() * 2); } } if (frameCount < maxFrame) { for (let i = 0; i < 5; i++) { balls.push(neM w Ball(x, y, color(img.get(x + mathRand() * 2, y + mathRand() * 2)))); } } else { noLoop() print('stop') // saver() // timer(2000) } class Ball { constructor(mX, mY, c) { this.location = createVector(mX, mY); this.radius = randBetween(0M this.r = red(c); this.g = green(c); this.b = blue(c); this.a = alpha(c); this.xOff = 0.0; this.yOff = 0.0; } update() { this.radius -= mathRand() * 0.00025; let force = randBetween(0.5, maxForce) this.xOff = this.xOff + randBetween(-force, force); this.nX = noise(this.location.x) * this.xOff; this.yOff = this.yOff + randBetween(-force, force); this.nY = noise(this.location.y) * this.yOff; this.location.x += this.nX; this.location.y += this.nY; } changeColour() { this.c = color(img.get(this.location.x, this.location.y)); this.r = red(this.c); this.g = green(this.c); this.b = blue(this.c); this.a = alpha(this.c); } draw() { noStroke(); fill(this.r, this.g, this.b); let brushSize = round(randBetween(1, maxBrush)); if (this.a > 10) { strokeWeight(randBetween(0.25,0.5)) if (clr(rand) == 240) { stroke(10) } else { stroke(250) } ellipse(this.location.x, this.location.y, this.radius * brushSize, this.radius * brushSize); } else { fill(this.r, this.g, this.b, 100) noStroke() rect(this.location.x, this.location.y, thisM .radius * brushSize / randBetween(2.5, 5)); } } function randBetween(a, b) { if (!b) { return mathRand() * a } return mathRand() * (b - a) + a function keyTyped() { if (keyCode === 83) { // if "s" is pressed save(title + '.png'); } function timer(t) { setTimeout(function () { location.reload(true); }, t); function saver() { save(title + '.png'); </script> <script defer src="https://static.cloudflareinsights.com/beacon.min.js/vb26e4fa9e5134444860be286fd8771851679335129114" integrity="sha512-M3hN/6cva/SjwrOtyXeUa5IuCT0sedyfT+jK/OV+s+D0RnzrTfwjwJHhd+wYfMm9HJSrL Z1IKksOdddLuN6KOzw==" data-cf-beacon='{"rayId":"7afe9ba22abbcaa8","version":"2023.3.0","b":1,"token":"6c07c178c94442f695e7a0a2aaee641a","si":100}' crossorigin="anonymous"></script> text/plain;charset=utf-8 2{"p":"brc-20","op":"mint","tick":"BAYC","amt":"1"}h! Copyright (c) 1998 Hewlett-Packard Company IEC http://www.iec.ch IEC http://www.iec.ch .IEC 61966-2.1 Default RGB colour space - sRGB .IEC 61966-2.1 Default RGB colour space - sRGB ,Reference Viewing Condition in IEC61966-2.1 ,Reference Viewing Condition in IEC61966-2.1 <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27 "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/"> <xmp:CreatorTool>Adobe Photoshop CS6 (Windows)</xmp:CreatorTool> <xmp:CreateDate>2023-03-09T11:07:33+01:00</xmp:CreateDate> <xmp:MetadataDate>2023-03-28T11:00:52+02:00</xmp:MetadataDate> ifyDate>2023-03-28T11:00:52+02:00</xmp:ModifyDate> </rdf:Description> <rdf:Description rdf:about="" xmlns:photoshop="http://ns.adobe.com/photoshop/1.0/"> <photoshop:ColorMode>3</photoshop:ColorMode> <photoshop:ICCProfile>sRGB IEC61966-2.1</photoshop:ICCProfile> <photoshop:DocumentAncestors> <rdf:Bag> <rdf:li>xmp.did:29CD3A2BBFBDED11BBE8F2F0CFBDE3D7</rdf:li> <rdf:li>xmp.did:D7491DF5FABCED11A1A4F6E3CEBF4031</rdf:li> </photoshop:DocumentAncestors> </rdf:Description> <rdf:Description rdf:about="" xmlns:dc="http://purl.org/dc/elements/1.1/"> <dc:format>image/tiff</dc:format> </rdf:Description> <rdf:Description rdf:about="" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stEvt="http://ns.adobe.com/xap/1.0/sType/ResourceEvent#" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#"> <xmpMM:InstanceID>xmp.iid:1CM E9218D45CDED11A11CE18198BF8101</xmpMM:InstanceID> <xmpMM:DocumentID>xmp.did:29CD3A2BBFBDED11BBE8F2F0CFBDE3D7</xmpMM:DocumentID> <xmpMM:OriginalDocumentID>xmp.did:29CD3A2BBFBDED11BBE8F2F0CFBDE3D7</xmpMM:OriginalDocumentID> <xmpMM:History> <rdf:Seq> <rdf:li rdf:parseType="Resource"> <stEvt:action>created</stEvt:action> <stEvt:instanceID>xmp.iid:29CD3A2BBFBDED11BBE8F2F0CFBDE3D7</stEvt:instanceID> <stEvt:when>202M 3-03-09T11:07:33+01:00</stEvt:when> <stEvt:softwareAgent>Adobe Photoshop CS6 (Windows)</stEvt:softwareAgent> </rdf:li> <rdf:li rdf:parseType="Resource"> <stEvt:action>saved</stEvt:action> <stEvt:instanceID>xmp.iid:2ACD3A2BBFBDED11BBE8F2F0CFBDE3D7</stEvt:instanceID> <stEvt:when>2023-03-09T11:11:02+01:00</stEvt:when> <stEvt:softwareAgent>Adobe Photoshop CS6 (Windows)</stEvt:softwareAgent> <stEvt:changed>/</stEvt:changed> </rdf:li> <rdf:li rdf:parseType="Resource"> <stEvt:action>saved</stEvt:action> <stEvt:instanceID>xmp.iid:1BE9218D45CDED11A11CE18198BF8101</stEvt:instanceID> <stEvt:when>2023-03-28T11:00:52+02:00</stEvt:when> <stEvt:softwareAgent>Adobe Photoshop CS6 (Windows)</stEvt:softwareAgent> <stEvt:changed>/</stEvt:changed> </rdf:li> <rdf:M li rdf:parseType="Resource"> <stEvt:action>converted</stEvt:action> <stEvt:parameters>from application/vnd.adobe.photoshop to image/tiff</stEvt:parameters> </rdf:li> <rdf:li rdf:parseType="Resource"> <stEvt:action>derived</stEvt:action> <stEvt:parameters>converted from application/vnd.adobe.photoshop to image/tiff</stEvt:parameters> </rdf:li> <rdf:li rdf:parseType="Resource"> <stEvt:action>saved</stEvt:action> <stEvt:instanceID>xmp.iid:1CE9218D45CDED11A11CE18198BF8101</stEvt:instanceID> <stEvt:when>2023-03-28T11:00:52+02:00</stEvt:when> <stEvt:softwareAgent>Adobe Photoshop CS6 (Windows)</stEvt:softwareAgent> <stEvt:changed>/</stEvt:changed> </rdf:li> </rdf:Seq> </xmpMM:History> <xmpMM:DerivedFrom rdf:parseType="Resource"> <stRef:instanceID>xmp.iid:1BEM 9218D45CDED11A11CE18198BF8101</stRef:instanceID> <stRef:documentID>xmp.did:29CD3A2BBFBDED11BBE8F2F0CFBDE3D7</stRef:documentID> <stRef:originalDocumentID>xmp.did:29CD3A2BBFBDED11BBE8F2F0CFBDE3D7</stRef:originalDocumentID> </xmpMM:DerivedFrom> </rdf:Description> M M M M M M M M M M M M M M M M M M <?xpacket end="w"?>h! text/html;charset=utf-8 <html xmlns='http://www.w3.org/1999/xhtml' lang='en' xml:lang='en'> <title>Timechain Collection - Series 2 - Item 65</title> <style>:root{height:100%}body{background-color:#000;margin:0;height:100%}.image{position:absolute;display:flex;align-items:center;justify-content:space-around;width:100%;height:100%;opacity:0}.image img{max-width:100%;max-height:100%}.ascii{position:absolute;font-family:Courier;font-weight:700;overflow:hidden;width:100%;height:100%;opacity:0;display:flex;align-iM tems:center;justify-content:space-around}.overview{width:100%;height:100%;position:absolute;display:flex;align-items:center}.overview-text{font-size:min(max(3vw,6pt),16pt);background-color:#000;color:#fff;margin:auto;padding:1vw 5vw}.hidden{display:none}h1,h3{text-align:center}h1{margin:0}h3{margin-top:0}p{margin:2vh}.fadeIn{animation:fadeIn 2s ease-in 1 normal forwards}.fadeOut{animation:fadeOut 2s ease-out 1 normal forwards}@keyframes fadeOut{0%{opacity:1}50%{opacity:0;font-size:24pt}100%{opacity:0;font-size:36ptM }}@keyframes fadeIn{0%{opacity:0;font-size:36pt}50%{opacity:.5;font-size:24pt}100%{opacity:1}}</style> <script>const img="H4sIAAAAAAAAE+y9WY7kypIluJf7TTSoE5XMPdQKEvlx3/vpBAqdjUR9FFDovTdlOCKiSpq5+RQR794Icwt3m2ikynRk1P/zxz//7z//+3/8+f/+8W//54/0x7/9sZy3fP6mv8r5/3+ev+v5+5/n73b+/q/z93b+/n/O3/38/b/O3/v5+x/n7+P8/X/98f8tf/zzv/7nf8WDppVueuS0n7dVD88Pdv0OftuuX5TXLA/o2/J+3lb9SnqeX6HvrWtZ+RX68rbTw/PBefx/+6OvbS/0vkTnsK/bKo/oJPqO14p8bpfP0Wmcf59fR4+afIE+2vi1usqjzt+wrZU/R6ey7U2/gc7lfEWOmVcckx8luRy5tkzncl6AvlbkrOUomc5l37edvyE3/QM Z5ROdCf8s3dP0GebTrtcs7D/4GXaSy8pk1+Vyhczn2fl49PaJz+ce6n99Bj+hc6Mr5PEsVWgkVS9Nv55UodC5/rl0/1+Uoqxxzl2+Qsy4HX1GX1+qq68nnUhN/X5Fj1gyq8KOC1/idlem36VGasodwEZ3Lser31a5nJu/c9ZjyDQc4id7ZeF3ABS2Bmvwog82YNQtWkB9V5Tp5rSnd5dEGavJRuvIgn1nb5Yr0nYesp3z7toJizP3Ku0LNLeP6+LWC1eVHFZzF76Rz+XNXOmyyLjhKV76W71Pe1dfoXP6Bz/WVj6ny1pNwq3xDz8J1wsm98COlQ2c5WvGo4Sj8uQ1H4de6UpPXs+961sxL/QCHsLSvzIP6uV1oVFQTZKGfvsYyveqZ7VU4WR81PKJv2LEu8g04F16Jfdf1ZK7bD10lfuexMt2VC47Ej/RcDj6XFY9Ev+i5HKpfVGWJflEJODZoG37UsYL8CKpOjnKo1uBHaV3lcuWDp4wqb6kmxNLoq0W0CvRk5QM XvQvy0NjyUI29QT/Kwi5KWc0rrrheqRz549ao+ZBV82BexDv7Hii9iJfwnBDUlSJU+FNXX9JxZDx+nRtOHonA2VcSiiYky8uqORZVXD+UF+SwrYzpJWTrWxn/akVkd/3mesz4s8r14WOV79YtYI++7WZVN1bU+7HL5eLgri+ihdK2EnonVMomcvMp6mZZGH4pixlmxZj4fKlFKxTnLQ6GgvbrJsutJlg5tIg93/V49jUO/Vx5WoSAuv4q1wFqxiqaH+maslT4UCuLIrKX5NOSzmzDSusqrHZZOHu6igvDw0JUU3mhi2rFWrKuJVeSLWFk3CF9qRZlQ7XlV0yinwfr61C84svCVKp8kGtv4uclaYTXaASnnh6y0z4/uckVbUisoh2K1nQBb0qbIR8+ZFTerK3lzw6HkIZ3Vyv/4odpXXZxNDEnGaRxKfblAUd9Q2In1Nx1XDtWFghBJ1uC07HLOosLtyKzDd0NUrMQ3Y1HW4v8kqy8Pd7xZHpp948/uUJ4KnQQhYuM l2hWdKMtbldAnyRbsafz3nXTSDYo+0GwXls11thH6WZRCmO+3C7YojEqv0P+3yWaf/Yz/0UKzU/7keSlDW6vxQXq1YOnnYlEb6kI0MjFpizd5M1x2iRZsS9DhwgYwB11Vp1ARKJtUbghdZt5OiV6Aptqbhs5UvXy8wr0LBvuqhNlygPOy4fHnzjoWVh1grQaas2/+EMs9J9NWmJ8m6nWCePhTNYA8rrlceqj0GOja+ki9SK6jeQ5KzUpuSk+ID4ausuh2nkZNer1x+hr6SI0O342HVS9A321rJw02vSM45d+Vn/eyuwq6viiei4pyL8JVq4FwSaCSvZj2UPlTkokdm3X5AuWXV7Q3ewgYrKa+KHcQ6G/TW74UWlaWr0KJyZNbtDWgjV6EgFqeKxem6zlW5Xa+XdXsDMsqs2zeAqMy6fYPs5yoUtO89xADpBbJu/yech8y6/Z/Goi3r5eubiyoZOckm3A7mZ92+rqpFc5Ozwlo18d4KDrWDzeShnBXYbBN9BaHblNM v1rDbRDKqQM+t2dlflYYX2loeKr+DFqeuk17t1LLu8ymB4xfVu6lXqSXZx5QoeGgXlYYYhkIdFNaHQt4t1hnSzbu+rvapa9KQhPxTMABXUzQ7KZ8XikFDSQ9bt/1jtYcJJykPwlTqqwu0K1fJeQTJ5KGcFgrJub7u9WXQ7ZHDf9ZzlJPcDKpdfNd0uZ2W6XY58wA7qmwuOLG+usFbyqvh4UKqs2zswUj66Mr+cxqFuntLo0LOS0yirBinUjV4TLkEeZoizPCxq2sSvXsXBKkLfssIO6quC29UuFNbtGb51Yd2+w6aUVbzyXUhWFLeTtuOHqkX1nBPOSh8WaH4+cqrKz3JWgtvhS5YkFketRkkatdCYQtqVc/RQikWFviWDr+ScWbcTglrl1Qy7IA+LiqS+WRCy6quSxTorJixZzmrDFwm+2oT6JQu3qxwV1u1/AooX1+3yMOkFypsVt/ddXxV8ZW+uahb1zRrfwZvBV/qwq9HUNzNfARQVwe2wKaXqWenl16RXJIM eqWCu53ir4CivJup0hojxscr26OBUU1EN1fVXOinU7aW99iEiCPGTdvsMulKZrpafRhK9A7gbrLF/UJPykmqG0popR3wwfRx8iRqhvFosDKWuHMoOw2baqnpSVZN2eEa0sitvZiFBYk0Ol/+u///N///Fv//7vafl9+5vd/mP5TfW/3+031f+Ot99U/zveflP973j7TfW/4+031f+Ot99U51s+bz/7HH7g7W9H9byUpS6Nb/X8G7cWnvvLc8Dfhuqg9nbeiLY10D3zo6Lv6ct+vucvTfm/AdWJpttJS7qB5pDwapJeWMtnpTy9v/70M/+221+c6plll6gt0u30BoULv1LDM3iWPoVnf/Z1fPHtL0d1ULGxNge962DDS6B2DVwQXxVbsKmW2NQe/EXo/y9M9XyRw6J0BsXaQG28O9LX5TsHDR9vYvM7W3u6tZ9+3V9w+yWoPtLiFXnK9k68uyhtutIa9K4TDV3KZzrHR/F5IP5NKd+G7/2XvP0CVJc1HC3s8/dHCRM VKApu3W13uFJ/lOQ/0vkp+pHu0G+031T9587V1mt9jqBxec6o3Rl1XSx3pOtruupSJ9i7js9RHrA+qb6pTyk9euQ/ffgGqJ5PY2cLO75qlVSxuM4o345urzr7DbOP7ys37Zpkf6Q7af1Tuf5q++CWojjWY9ezdq7L227DmchvjLjMqi1r+qgEe2fiZDz3Wsyu27+rh/ezVe9ftF6L6yPuuzSPSc4pv7JONr8zaffbR7/X+LOGz1F9/V+W4Tc/jX87S/yJUz9PvdCNfQFLdIuY10LzYOyKGf4TsRix3p/3vNb1/n/vx26B5HJf87DV9cvuhVL+314/fl1Va4X2PURfX5f6Oe8l2xDDKefTg7/T8rP9xbiLtjWm/6f/i1W3DJ/1afhJ1H92+meouwy6vHuXKN++MK+sU34ziI6oWqXtG66vcPrLoI0+ONv7qPwj3gQvBkzvH7+dzhG/6y2T1fois54HiuOULpWdvCTob2rQOqznmze6oeCfZjyXZn0835wWqF9VBcjM YeFRJNI/m6uoz6qF54/ifHdn8I1csNzena48pGGazTDXFWWHL3nyLtoh4faT0e+956z9zwiPKFLUqzfM5myA7S73p+pj2u+6dH9L+c6lcr5rqtqURg1aIv5uvUBoq3QHN//eqhzRL81tmNdB7/nvVAGqhejOdgd4TSnbV7VT3fjN4xkuD66a9F9ftbMZqPlQ2jdMfoGbhDVrTp+6JGv7PGcjse3tL0aOSHK//4Wc284vk4z9wD2+1G9xlj1GXkq78m1UdsdFe5NGa3I45rxh9u1aFjZ4o/pvPrt7RcMQDOuYQr8ne1kLnfgtfYle6R4lf08BNp/41Un62hr+NI7/E2UrybdrjDbOklet+d21u0zxO1YobAKY94cDbvrRuXuh+XJ/QGj262UPfU/5b83g+i+sjlMYoS0U6Mc3s8Bvr9PRLuZzB/Y1kiz9wfw8++TMcYNX2zahvoBNf2yMaDd5zecYVGVPEo3/Tl+uBbNfzo4c6r73QeNb7jvb54HnyU9Dt6jdwmx4M refjdZ9IzsYw6Y+Rax2DFf5/4cvk9oDTyyhff4N+GZkTP96N9Hke+n+min7zS6ezRR47vM12Hdn2v1tKRh/ZpVvzy7uXfwSPof5fpGveF07yrhm1I9epdxVVwuIur5QXT/Nqq7dRxpfc2S5Jtnt4HiftTntthXb3uJ5iPtR+s60z2ejVj6tsxyLD4q7LlY/T5EaX09ZvmIr3077b+B6qOElyAVUafPmj6ui3tqvs6PrbjzV0SBr9MclG/hnEbcMF+bU7heqC7UrotnaBzVjTYi6XU9kouZN35Fqs8+Wh3oOXJzjEyOEZmmsjr6OukNmrtW395F8z7c5gqsKPVpQIh+NdviSA23qjq+WBa+Lx4RnGNAo0XzlZjP4tekulO/DBS/Ur3dXqXzAWl313rPsXpcu/Zuqt/p+ZHuI8dFDsf1tEAbaICu0o64Yl/GWoAxAxzjtOPNbeCvTfWR4rPHNKP0K8U9L5NvVv0Rah9p/lGqO7abvbzxHEB5nCP8DH+usbTjKLDuLVM D6GrN4pOW/Rea/kOojIvFzd4wcNdqs2ZEfH5Hxc5oDa83VbB+j+b50O4tR3q/nEbE4tFv08FBlQ/xwrQyYkdtcpV0HOUAlYJ4o/wk++AKq49odu8G+tWXGbXe3sd74FS8t0jxS/eP0djs/+vOv0N2zrzU8A+lOS7V4XZ1ofbc2owzETtsR2X9K9t9N9ehrRq0207wM5xyv8Hqd6C55f7QVXtv7vbXnVJ/t6r1HN2JYuWacf1MMR1SXTOyuceWZ3vNfMTNZB7pjfT8rp18j61FjzbrqDrHPlg2RrBgre4XiTnVEw76C6tty1VH3dHfKR/sF7AqqA9/RNzi+vWr7WHsx2j7X9R4liGf03VS/fhNwWoxUjno62ve51kmudbMVwWdepbnbda+cjfnP1618zJfecenjWHCU9qjpBZfKa02/ZayzubPwsfYCmv56Vu4XfYjyH9Dwj2n+yG673rpqtrogivl+7U43SPoddhglpl9oPGbH72h9L09XzhstH+R5G+y8fO8dOoM 9az1Gc03sLHsr1DH801Z3m0ZJf7dbol0Hmm73iNt2/4X2SPtflzfZv9h5iFaZbzZHGoyxf6f4Y3UHiY8S2Gr9FDh15dZT0bTrHbZB51HB8iPIfsuuxbtB1zaihHH/M1iuiOlB9RO9v0Xw8l9mWPKK8S+W4vjEucJcfzsMR7jkhSvys6cHLW9Dy82rMueaZypD7+RW3il9P9aun6N7KNdo6IpL73DieQ+1JsaO+JuX0zW/n1+fnIJPA/CNvQOLeV5mTlGZ3lB974IpJ+3ah9COKR+keVxX/fwjVvUD1eFzn4zLQfJZhaPbR1l6pjuzU63IOqr+iDyK1Z108+r/v8xvGb0EMeTy+60KsHVBrv8EhkeIj5e89oBjvjlfwlbKeJprNNHdKOv9FmzX7v24VtuFIr9p0nNVzal9fGSmP83jlGx+fyRHsw0z3FFYLM5GA6JzuEf3MdtzRfJ3WMH76u6ge7RNojuuKGZYo/XPkfY56CPrDO96H3R9T/Wtu7zn23bnElcNaIOM +K6tkYqXONfY3MXWX8yjXgsK+l+phhzGr/4mujxz7y5F1tLHgB8jBXBb6y1h957Ts45O7bYp2U9+uJZW+Kd5x+81pdqTyu2owCZw/ojYjtuzC809wjzjNX5IHm0WaN/Am+xhHvsfLHqP4qtT5qzefjPD5Dj9sJnZui+LnzdozUXnsFrj7Q1drf+x2fofoow9UeRe3iNHetEDn4Gm3clth/BIq/TvXPUCxrvue9mP11qjvlgejpqoHi20UjjrI+er6wlzH2EVGTr/qbcv4i1YHYZm1zrXQebfxV3ut028JR5sqVV2j+cSQm2RF01XyG7q/FFtyD30zHO61g42PtQYy9+6qO6zjjuhcl/QWqjzS/+hxzVn2U+uiRzN6dU13ejzV6ba2d7vevPnomKc234Dvnd+iYt77p0bscwXq/s/teju1m/2223eM6z/6c1x99XsOPNLzalWLnFf+6u4Ixe9TD+ad3riN0WVm8pu3tuI18xmkOXfsR+/4eXRPpvpn3FqM0smruqYM 00j3R3azt+NnLRZ+y6W4k8HP0xkrziTpft8f1SXXKNzry+ju5J1nCdj94N/IFqtn2Ij77fVrjv+jqPRLqPEjpL1Wy7rzWWc0TX/foXpP0lDY96uOibxe8ec63xHW7f53PEFJfyrrUbpcczAhHzzDoKq4BuNM/EjnHx187C4zvRQ371fKGfBMnGPo+oG0f8BsTkcpUv7/Uc3TX/8H6q58UlHTJVLrcYn7nern77tsR5zJ/xnoA5rlzm/CS3YmtzrbnxvqR7XRNXw9/1vEr/ucS771rCNUT5j3pV/hqt/CxFMWpfhyv/iKy7lx5l2tHHHHEbvfZrLgmTJ9y/+wzV02Vt5mh/RBiYKDBSvduVJeOjt+yFS8THqE63zeg+YuMRLZfLKo6vuz80Z+LeT3WXwojho02Zc0D3ebXr+XqP6ozjPna7Q43bdEPlhFs+rJKsYJRc4OJZV9yv0Ef41P131FiM+jPqgpkr7mM2jgFRZ/yG/3ZLdaeY2+g4T2TWMeC/SPG7KI3QfOM SPt6ziW6+7jZu7V68VVHEm3P23p3C82Re9s30fpzp0NqIsM1Ud/Y5I2Skxa/k5e/yE7jdUn63jGAO45lbn1YlyPr9z7Fp8jeZvvWPOSr9dL7cFf+3K76MeKw9W8DNayq8fHs5MQ4+4RZw6IuXZckad5xj2PVS/WpU7rObc6WcRLdQVv897arxN8bfXNtZgv0r3OMfsejWzr3wnNZ+h+ujF5aUN6xxl/l6qRlvrOt4/9fi839LwY8zII0Mz/93J9MyP4F+vn7inehr+f21t76X97ZpYr06LyPia2xwlPeqpj9E80l0qDJCBi7TO4ZzG84m2d7Ts0Mkf0fBjLQii6zMNZ0mfIwdtmeV8xJb3azHSHtrs0crhr7d7nvw5727xWVgzHp6x1f3t4zSXc5YVboM+jwhptu/RykOuZq4AZd5A8U+o7thtxmpX6z3jPFhH503v4X6s2V3G5Tc+G7NI91E8r4m/l+oYNxprGv2qxxrImepfJ+cu7fIN2xIjsTEaN8rWiNt8zUM cNNVbMv8euR3l3qt9zv1A92hP/9silHgl5jeqy8t7XDJ3mHn4a5C0tsW5hHyTbY8KxsyVa8zs9fmcZX0Ggr1Id37JpFCNSb4yMPNbxV+u+DSv/Hrs+XvkYJXItMyKL67sjz7YFkwjuc2Qz1XEGEfVH3RZrxaL0jHguVqB5X4tPkGhLs95Tlwz/tlkbfBXFneoi692oNevrq5zDe7vH8d4jh3d/hOp1+I7x+69Uj7HRMtz8/Y+ink73WAXk+ABd6tsSbd+ME6K/PSJ771u8s1VuVR7p/zR8z2fp7d+FHQbm7FS02iMdY3R8RE2uLWLU7G2qz+8C1Z2q83rVy0o5D0afc9wr4S29N1LdMYrXmfq+quNR/XNz3MZj1I/PYryWr6T3eIbul2LudLTio7R47nXUuL7OV308z1aaruWG6vEdjuMjqoSGT0r1Mcc2o/mrtD9DQ3kZqQ57XNUCOmYbs3bXKIrr8rmD8XH85aoBvkbCH+nSmeozSndc7HW1xdYf0j5W3sScndM drvqrhR6o7DR5p+Bn732meUZ/eSUIOtBhltmo9gljj/Q3KQ9vf+3JzB6tz50zzz9J7pPpo5UD1OlB9RE9R40d9G2emj7UYsOyP5OE1qqegFa96fp4E6DpmRJM4E7/uezkYcZT7Y5jQ6h53pDx4+6qT4QlcaX9P90d8+Xm6XymQlS/LjYZ3WZ9XfKR6HdZ37KNweX+d6o6WQPXRe4zfHinuMa67Ti2XpJHm/pdfs3QTbYv3BbYl9gjWwAfbLd1HuZ/zcXOl0vfQ+0rzERd5XO7ql482e/zcqFPnHJTvonCDUt5F9VnWk742ynpZYtTh2p/nxx0l3b0ZdCfDr3G6Q7/D94Ld81zqY8rPWO19ub/P0Tz6JTHygP1j6kD5Mv1/FynxyN3VY/HcW7XveZXqkLvHM4sRSbjD8DEu4n24XjV0FzvyiJXvowOfOla6jVOli12/o/t4jnHNf2RPzEh1/yuuVtM4/BwJc53pMh85FfbgEdVnDfa6rIOuoL1r+HiOV/83+g9zfcM O2IMPu/HvHSaisQ33ZaJNj11+sHimB8nO+ZMaxP4v6cZ2AdebcC+R6zrqNka880b0OVH/kpbxG9Wr/y1wdSKt7jDMXOmdc+7DxHM599ClxHDljnD/oPufIYywAFTp5KfatZTiuc/zPkfv5PLwO7h6ze0R21gNRF1xl26M0D7HcC3VziAG5rGPtQOc4I3X21efzGiUUtI+0meM7vttPrHP0jmBfB9/xza/+ju7jSvxIqo++D3T7WD8xRzdHDT8/O+r0eLQRfb2X6iOem3lvlO7xjEYd7wgT+jv2IMhR2vApaClEW6Dxgeq60d2lB4jepWTOlt2txGfpOR4Fj9IS41HzGcyzJkdL7hGaUeff6dNRZ4zxi/d7bm5n3bLjmTHnE238GEW82nXoecTXrois2zu6rc34WVS2elV9lCCvfI2YcUTtz674PZS+UjuuXF7cUxntWA1xotlTi1nMa3/ZLGej1RgzY4jLvdeui3y7ZR+rbCCn7h+Mtibi99GL3ALVvYoNEus6PUM 7xBkqReNa+dDty5MGI/MYZTVc9/xENEOl5zy/+CLJ+pXmzK5tnlIPG3t8+0/hK62uFQ3pwTa9RHRJyxfEjRozSFuMFo92J2RCPinrO0FGOTw30/ZJcl9H7tkB3j/t5trWr9Xcf/p7Ss8w8ouFcy3GVoavER27z9YQsx9hDjDcgy3ln6e8svJ991BWPePltqjslo7TnieZjFHXG7ncVyy7jfaAK1iPOiYwIzjELvTu+Z8ynwcIguuN4PlYNXG9PV8qofW/NZ+QWKR+pj5w3fHWs1yj5o7ce6Txn1kequ35/qr9fpHo839HLzuEbo12PVJ/j35BPXGekOzRFtABAcZAO+Gh9knavdwbXbws6SN1TmBHnVaYeo7+I1Z7p/9maR8nHe4G3vWJptGkzVUug6b2mck/+oc/2AtXHOqrxG2ef4g67Rw2N7AmkHijNkTzOGTMkovX3HCuOKe8Ash8ze36u8h2xTjPGDceYRryWOw3g9H6MBh7pisgJziHuGc24vAeOvyK9e0M mPGv9RNPU1qmOd5gxQtB0xljD6a1GjR8sOew7c0kzbyTXDjo8SEClfF8Qyt0Hz+3k4PpTHVwuFo405qlkPgBudmjGu7s+OXDDb8ruK2jkzXcJ3tUk7Ou1HC+sUxmfx/8c1fDxr2NyR/7FK+Cta8Tij16ddj7nNvHhtcDMaub2GNCJz68+5XwO6R10IPoioI2pKeIMjjrrGF6IOuJNzUPf66E7On1n/sb9pREGOZseVj9J3l5f7rKxHb/wOT2KtH/WZjFg+6k6sq+th19tVdcHo0zo1IuJv03ULVcf6Lo8hu373+AC4dc7E1gUzTGK1dh5WZ5bzeQUfVWvBasSYpGs38DTQiTx3x2kjbT5r151bY/SoTNfocbG576CblfZoLHwTRPR9VyR0/oASrsWcU8bYgFuIaz1Ms1Xya4gaKuqd2ZuM2gYUHqfhzOtzGw15E+37kbPRvIZ1qgv2fZZ17LY247XceWwfpfpM2+vRIYsRs/VpLbfAL66Tu9Hoisl2tfseU67hnNM z+QSdeJd05MdbhzyvlucmxNy7q/bu1Gz2YUb49sxtl+lGMDysM21GUXxF7Kgv2CkTFvOMktwdjFPKeM98n6yOe9ThhjI/HCNPYJebyHC0W4it+HI/RN6U6OgNktjAdY9SLUWahzUfKJzs2qBC9N5cp8OdYU+da4rqSTss7GXlkxx959sg/Rc0ZIyLFVq4aJzvGj1f9nJLvobojB5f3a1whZn3KcLZRE2Nt4cOBXps+g+fAFficyMCdTXQE7HEaR7B4xTl4/Mxo3aNX2ZYxJ+tabzyDUaNCq7xG8fEoV/4ZEQNFJ9zLqUuMOs8I6036v3OiqNO9Bxm7+rbXtYAu3w2bePZU7rtKGHYzxtW0RTTO3Zr5ukXMEPVtUQoeCzIK0S++xoih1UdtOaKju6tEfOR1is8SDz1y5SXoff9rCzwavfY3NPsnqJ6XYrSuy51FHX1WvOp5UKzvnD9FdRQ8KWQgZN3vcNBcmVTC9Ts/YOKMr2LU8KO/Dj71o49cFPU4fpfpbL6G7tM H/Flr793mUYlu6vedlSn5g3xd4WdArV41eprWJGB++vMs24jL+6ohVPEafblcJKzVz5/z3GJubkX+Uqpmf5nrH8faxOSV3KxtzdLNldcst2t6RbESseZm13VdQ3b+lDpS+s25Ru8MOtSVGG4HeWkBS3ocKL1S+uS51GasgR30GXph5INv9DhHM9vMxr0f/7GrlPyLbM09G3rzjrsi18HBykKbo17xBx3dSHZYkD5S+/ztyRFNrjex3Vytcl1jj7gjaczl5gTc7d8+Oea1xPWcKP0NhMyeNXDXqic9S+6rVrzR9THc8Xw3ZRS3aLtfwNVSvira2QM8ZwY3RIfest8GCY1K2eFYu5ciIuz8CHDbi1DE+5nSNFHMqj1p4luJ5ndxSj3bic9S+fvpK9fvHbtm9r991eswsvmzZ30F1zMXbHlI80nmkPaKqnl/1qDxyr5HmY9zT41ZuMSKKjHS+yve83s+vMS/3cv55yY6W56p3omxHXASdHs+xKoITDkB0squ0fy3V4aM 2NeUvXSiNnRoyHCENdEInrQc4jGgVq9wige90xDokjIlobdW+kmqztnYzdIRL5fFzvj2G1mcNc5/ixR7qPHtvIy76+/q5teF0kSFb1q6nuua7oHTpvJuNLvB69I/e+4RVvi8ffQfO6xKiDWwlEo12HuLTXsAaPNX2kw4g7rnGtPBzr8xIe9fno5eGv8XslWuc6/eqXlendHu36WqpHb6EMdJ61YtTzTb0Lz5r5TJCuCMGjPo7qXYb9Uz7v1SP4Xms0S+wzuuMM5wju11I8Un1eH6d7rMkaLeWYe0jhM+OZlqWoX7W9attf3vdF1n20OjOHuj6SW8yHA7P7I1Q1i/8BaW4DPWMeB1VmTivPu0Zvdsbi4w4fV4meUTwsw9fdRmrPNuXujITn/QqueT//hKAm5LnfqKd4meqg+Das7XzOjjnwSrWoa9X/hRM8T+aS6/wBdIL8klN9rHRpwydnX3K00/f7ac50wBqOPBKralzv4bm3NUKkD/6aZf5K9Wpx5MM+kcLn/fM 0R6yB7+aa8v1QPH2safaXilVy78rGHUqyGcWxegr5G9hVSDBQwzo1yTYFbCZyxmUSMeieuOFaw3NzuaX6oFsIZ4FheffFcK8RvHzX8vbRHqpdwzr7GTvUR57mvJDrzK2TdkdRoz+/iGs4rXkcR+5KhjbvJtut/RPE8Gh/zt2MXRQ2cgerJiOlGxIw1HC3QqNt9ne+o3mwtsQvjW1QfZWPM4OSbFYuUL8PZjFSP/DHzEbTfG9L+kl0HGnv0XVetn01Lb0b1pn4aIroRv4GesE5jjWisloSf7xyFuH67nM9oKWe8Ftd8ztn46tblio89M3uf/72T9jEPe43IXDHavf9xrdX0M4fcvOm3v6ThrzULV56bqe6VM+J3Vcu2gUpeGxJ7r726wXlirreE5fB8aVfLP+9MHan+OCuVFRt63tX5bK4juFaS1OHYTpsj/B/PYeSHmdvwTrfrj+0GbJIfqyyoN/4s1b0+xzlrtJ53qAS+F/JC8NkQlRmr2r2mMlbbRF0vWDJWN4M psO0/0QIH7lbzHot6LPVcHXel+vY3dXI6krhrgUUThzroDwz+2HPfXCKT8ho5/iep3kdc7HR87+TymCryNyZle9RUz6WM3W6xvcYnC38g6zZUR3ktylWvQ/ZqV9bruLXzr+Ffssr1SvYbz8MilU2n2HmaP4qo/y1IfUP1K8+gnIE7yhrS/RPU4g+qKl65c50jZYypujRGbi7XnLmmx+i72o8/WHxMZvI4UGmX0NXw9cE6jDUUUMe4tMNZPejXB3N0xan4/c6/Fv48PzDjtqkPrA6pfNdU9b7dPUT0bWp79tdGHxN+z5vIu+rIgX95C/ZTn2d2DA8VjVG5bqq0r3tWMB12bXGvIcH6eFXDsMft6bglc7r2HuoXriJ0z4MbYb4c4xYjW4rfE+q+ZJ2YMf+f7x/WeNX1VpPlRqtelGO/imI+5bI4+jt0aIvd5kS5kXxuvo4gUL+EvzDIYYz7ea4meNuiEOQcbaexZIM/vXPUoEEQfKH8X2x2nRcRuXqltKkrjcWWcZuM PR/PUrPhjfE33DaENKOIfPUN1jKSN3jmczWzDI7uhjoLrd0Z1ofJed2M3pEdcWVh9VJJBy72jppt1yOEusjV8JdMbIxTPVPWIA/T1HzuN7r7dm55bCqrglfyQ7UUvNPOlnGiketYAjmyf5txcmj4168O5ddzooVpPjk55Dc6uNiDyo7JOBneLwzlBpVxbvdor9MV4/f3eeuBavur5eB67FZx+47p7jr/hMnux7Mx7eFs+dRZpGKzl/f7Sij6ge1/2eZ8pyreZ/neoj3f25O4pHmUfl0108IavuR9TGMytl8ZjMXGnvtf+xl8aPWxeP1F8lJvoVsCNXLo561CPBqP++anj5/Dxvwm+xyy5N53RdyWtVyEz1+/deawGhAT9K9TgjfOTT8fuu1me0Q2OFDaieF6+scI2O2I3c4vTYsWo9Vh6UBXXsDyanKi/G7OxV4uL5j3hebrNfjZjIHaJvE1/NmNGfnWk413qONM/LleIjYnDL/pDub1C9Xeh9pz1naxefmyU95tM 3xV+zQ9nz7NlDeJxhEG4Asn2O7xxopDVqmLVGe5vXMZldivG6bHo+vR3qPyGJeiZF3nLJXHphp7ud3d3WIiSIi+lGqe4R61pZ39WfHRP/xyvwIQFxjRDXuaBQj7bHjcO5Fi3WborVHqbj6Fu5VpeGaxhWHrXFUFrvx/BgxSh8nH4xI/W6trlbdn5vX8d6q33062xo+jj+/TfWon6+WaTyXWdLHY0Q+8n40+NqxR80rpoq+6jX0484Ou9l5+IjzCs761Gc014kvrlRvEyVdD0Xqxz7PEfFD/0T9+4jaLkfyvuPhzc9x5ud4vegZ+hjVr5mq+9xUpPpjznSrXsNxvFYiRvvj/Aj32e/2dPA40r39ietUFtTYYZe4Ky6Wc5p9MI/SlIH6c63HOPXgzlO4W69Rau5jCPG9OZz7iLNh2dsnNHzU7lcsMq7prJmucoS/ParmXiwoBw2wGdWRpXHKA8+PO7k8o7qcXTYZ9/fGs43XPVrxqkjgGK4RKx2pHiN0qASZY2f3VLM 9bybclaZYrj0GWxxz3wnz45xS/enGzDI2YH1nEqPOg6WN/ocuWa1JML4GFnfsh7/zfSCGPDs5UH1c6Uh3RwMf1UvJ5l/1I+xqk7mojo5yn5Y4b3kN1t8by6ImeeSFKM3PqqE9m2sfruF5JWq4da9ipbayzl4oQWOK+OKbyHFjVOI9XTs/4d+TIssy29pGWLZPcwtcbtVmkusd4vZvePb+7GtfIbWk601dvIx0iPZ7OGnwJzY1/z4hulq/7dXSNf8VddUEFFJ73yGpRWUNvpE9AQe5+X5Cln/OL82p6Pw36k68aFu+MOXN4lc80b5T1ajI+x+ju6DBr+PfQ+/5K8wKU/BGqx6zUHGe4x6LXM/O/8bmxtsFteFwTz3+WAcWP06NRJSv9P1KxM0YxnlHd61r8/S7rI9XHfPe83nFij6PSGqj+xIt6sn6PKT6igzvKjTGD91Ad63/PEZFKr52nY3aguGqygFogoDucu6Ah75OCxY2VM1LDIpr1GWa+o7qce+TniNLH2vM vIreO7rlRHfFnO6U4+R5l4nfJ3tIg8GCn0Uao/v92h+edU97X1/EasvB1j/li7ZpY9mxX3ufLAh8+qCUSCPW891rAhi3t3ix66V9dEneO63afdwOdsSvOZCq9gt/dSPx77mTfzWaq/QnFcczG6x1hnrIFwhC3Hc43gfhyeQaTW83h5gWd25XTobSDcmepeR4Db6HfH6po7T96raKJVF7vlNMrT7bmcPPMYHuvaxxL5PVR3L+l6myXca0u9zirWmsaVEu8N1VLu2cGHKwEtIKs8+mY4q8dU94xu1e+bKyTGeHu3a4ioLVL/Wu04UuIt63h95YqM/QjXv57ePkD1x/olnu94jpDvWNU+ZlvKDfeD6uiZRx5Vno91dCNSHH0MP6dI9byMsj53yJcgsbEic8y1uEy7jr+rfbqu2XOqP+eI5wje5e+rqf6MH+az85ga1i/mzu/oPX5LlPFsqE84ac5xRbwVz/a4UB2y/nyFRryGM3Cqlwt/vUandLnmt6k+r9BzGj19/UM NUf8YPUUpjveOcffbqorfWCajeaenIz6vW4vrPthPnFi3IiOEfn0PUScmeg555HY2N3DXmYZ5xyP1zP57qz7/LK6Qirok1E/e6/MrVIwXHCBSOUcKxc/hcvnzuMEqD6ndSel1r98hA4xQ0/kcweKT7q1R/F03fvn3ac8uBztG2RVTt8vLImuEZv6KZ6rPfE1EgajX8KFErOIfF7rH5iI+oXsItyj9yme+h9jNJfkb1T9L4y6k+Uv8u1jF60HeUjnGx+M6ZwvE9yNNh7T1aGI83Y6aI6vP07vkM3qbe++T7StW3Xp/X4dej+niefub32b756uK1X9/t+hxyDD3iOUXP8l25yI99T/V4Jletn4YjH9Pfr9L8LaofN+fyjbdvo7qsbLm9iuv13V/vWJcdn4vcgPfcr+p4Pveyfidhj87xK253NP9Xp3q0rfdXcV3Te5rHCt8YsU1G7bxEPHy3pvMx76j+KJNxL5nz47dp/Fw/3HHAN9++heoRQd1dx2v6DH2R8YjornM D8duf7PeKr6DuMiP/qV93jznT77Fty/fwTj7/j227fRPXxSj/2/hm5R5QYOxVfX/lnVE+Xd0V/IspsfO49lL/XAP5NP4zm307192LQK53iq7FW8TnF7/3/kepXDY/vvOYtRjq9l87313Z/9d9LDb39YlRPyywF8y2i9rv19+8c1/gx1e8s0J2meE7lSN3xSPNxn137X4Xq773d6b279z2Pf98f647q43c/Q/KvSPf8rW99w3ztf1eqj2vwuq27k7rx9cca/tF3vRaRufumx49+EF2f335hqr/Pgz1u/ppfv6K5+ZvuKP8+ml+1+uPXftrtl6Y63V5dpdfeN8Z146fv7cL9N/1gxP31t1+e6q/enlPgeyTuN9X/lW6/qf6b6p85zs++kg/e/pZU/9vfflP973j7TfW/4+031f+Ot99U/zve/uM/lj/++V//87/++3/8+b/++z//9x//9u/KBddKuLt+nfEWq+bG53/6df6+PbuZ7L9N9c/d8I3vf+f8qZ++Zv/6N6M b6d1P8r3+jtbz7G4/ff7t+8v5b529+/G68p/6m+t/slgLVf9P973NzDf+b7n+f22+qx+p7efyzz+i7b+lvS/UyPZLJRrLT7TgJ4693+2tS/Tm9hL475c7WJZ1XfS5DWdIJbxr/bPx/51d3/v9Y8rrkFD7/17nNnty/Pg+Ui/YeXzn/ykzi889CDJArU7nwz77ktuRtyZ3ecxKd3kYD8PJBT5R1KWkpmT5U/lqc4LxQ6l+KHeT/mVj0TF9KY0puSzn/3vnvQ7mhrkTwmvj/rAqins9X0hFVB4kmeurkino+1Ze6L/UIX/uvfUu/Mkd8ZIFHXvBGG1UMiVT9Kd4nIU9GaOvSEimE0tQ0tEzskHlbtEIaorLOaIUUBr0igw/kPfSRypzRScns/JG8tA+c9q91SxNf/FJcQbdH6v+tT1gzzknSk/yNyN820gatk4ogO8HcIAQnhtgHzpCfdqgtqVkVyLYS5TO/5/yIvI1eYoSxsQXaMv1/8spW+Iv4qxsrnMipz67hV6M KB3K7g4see47M1i1pgfiX+PvX5JrY+6fhLfWVlsp0CvzGETES5k1EIQWxMe4AI0gcHOOBgIJnpGeGDkzmMP+SPjd9O20arGjm/ozt/iXo5eWfbGYt0+tkO+j9lNz93bs2veys3vPKjzyDqjXMZ+6q072npeeknXKhYXnxgnrgkt9703X1Tgsu83H3pnUjWd+Kbk1iEM+2nk71Q0LEO5CYW6fTTD/3ZBHoIv5wqRbSKclbWJ42tRPMoDzHfnIj29HBOnUP8e9BPYg+nLPs68Mqvpdnv6ZZ/Muf4edD9ZBuif2IWOGme+Of8o9DzJzvIT1Ak8nHeLpGZ5dQ1e132xlzHqmenp9kX3TcGE1390tMSERZdVU2IWdn6oDVOZbKJ+8o/OwwQcUgfWEX+3+XhoSoK22fT61157TRxJxPtx3KshHDOczkZWxBw2pc2SNKvrXfoNpQW/FQOklVT9ZGXIy1Hpp+Tg45CPCW8c6qVkynqMa3tqapygs5izUNcWPXnqKRxTrBBf8M gPQ1fxdCqrGPJuRsZQBdTV6ggTiCait6lqMVyzuSETHgpP8zywVQ93Pn+wnhMTqaeyKvQ5PTEypue5Shju17dfcvs5NsyHAEdUI6yyC+37cuz0v9ikwrxEbLYtx7FMq5v46Z3+px/WR8Qz60qwOCV1aE78c/LQabhOQLwz5D1YDYnWOBgcixIRtWJ0V5biV7q+Ma0BC+ljebANljCqKv3MTgrn/M/4lZhVwjmsmU6O39i9P00dwSUJ+GHQ4utcZWN3ki32X5el8hJh8Cx8wlqCintSjiqsshTx2MeNg0QVnbosrXQn6lSGrKsgoZUiKgJgiCU3hSjtGHwoMWpHg/N1sgDdxSoZn8FwRQCljvvqRm5nqyrqjFiLfPcRiFNAYN2UufRHTokDBCVzyKczf+2E6jLrVbHu9XYxnyx3nT/zvbcfz1jQTGm9yh1feo9/KBudvw7+Uc8pAVFvCsp3OiCxwkkWDuifl3Iy1EmQ0xkjE3K4kUoc2hVV5d454NKpNZpAKo3+rUM m57XxwtBtIrrwXX6gJikkYhh6IDjRTelFsmx+UTpVtYYGeJZBeCFxReEAg1qrr0X2pgl9yWVan+I/jronHfqQ1xDz78JQ8KYkfvMPP5jSE4t6rr1eFp8inJ3vX9L4Jb5G+SuxqU2CII0HGX6d2IP7aSEHsh0aO9kNh1slck3tnjp38nC8ZmzmDqe1UjpF35sDUxlcp7arLNuc303UNUL9rHoOiF0VjnSd8b10DUFDKdJGniyFIgLitscoHR/Urz3GUuFSs98gJ34vfRk77cp56cPbq6G20MKMQijYv+Jv/q9hLXHy8XkVxEZAiBiNrQwqDf58Mw2kpAu0ciERQsSExIYaSmIsJtyV2D9l0GkMd8AEtfuQ2UsLVgPrGiUO48hBOysk2bIjRBFjfiPt10jNdbdMw18lqnS6Tg6rMZ4lPOuVN2Y3CD+QHnCafdLr9AEvwcm22f3VwoXmVe1jjtwoev4Hnvlm3dec1UkuUhoRaYi4hrlhZXe1VnUPyDOviig5r1W0xaaM kTQWG+r8J0hRLhdDhyDckn2zi2Ca1FjNI18C2ZsJMdC4Ohmv09buCggtruysrhvcWr1MwKK/YDj7PuPgdDKlpMNzg5hA8kVBHsKAdYjHmb5mo4qX/a0dI0H0Pcx0H+pEHTDWxIim/lYI38nG73wY74zgK7aZTmSCq3dAhaSn6qpyWYXM2Q3Abmv5pdvp8Vg0bfqqAtIjnBHU6O0t9F71XYMrHvmcOiEGOKp8C2RC0tpddlvZUZOTyhBycGIQJyoQYHSjmTJiELQmyZWfLQmFhhr1QcUNVsIfowuAAj50CDRU41C7rZfzzKO7mipKDtxndZG/EVNDyr+yGC0c912rvWmhROF0gQj34qY1VyVylteHIUMVk2Gd0JrK4cB7KwEP/Pi02f5IXPwo3EmYXZsVjEWnXjfXHEV+eOvoIdb8+z4pf+par/KMowKo5ZOTHr81CUtFDnMuJwwo4k5fS8LClH2uhNuFPoliNwrHq5CqSwh+G5HtjUJqUDDdk84cStiwGNjOchEQM TEDni5ERO6qkytBV25RefEeHG0znbMFpYtL92tuXClhGnOKzl5c+Nyl9JUJ6a2cbwkdS2TIY15sMd7UCRa1KIy4qqrQ8x33olDCytGpghRBtRh/bCKtpyUy5U90zdAx+9hTomXXdx4XiNRaSSqXdVaUt0J8YW6WzlGx8LLLCkBk6Poj7m6TeW86bKfC01KgilQxFtZmQ+phm1TZSlBsZN/JWAnfkg01TW6G3ieYiDNLpv1HTEgCgBk58bML+iuVGtwg8GYavkRF1Sve02uLOkg/qewPafcJUm+cepD44+k88lWS/K8cyaUYGUzQ17FlhS11OXQQLqslr6y5vgsEeL8xl1cwkDsbLrT2GeTVxJp8e0b2PMLGPTZq/iLQBTYM7CliWxyf4RFWYAQA6S0VVWOB8N1cWl2Bky8nDgA8EDZ2LSdbHK6mwdwpHBj3iZjnOQ/Ce3GpSEDSazw8r05y/J9eo2eUxMui60lPKqQg+vEHCtOfE0oB0j6Cav4EV+siJps6mKnWOM Sxs60n+0CHJGO/KqIiJi1Y2+uqHpKI5v9JOeyeku66OICWEmPzcfHfwadfoUgfcmgw8U1iXRL3O52cCL4BwNcDqbKiiwXIpLy6I5XKmVUFmyz03bEDVVHsHHTjXMG5XmTrqRp4VYUEcJcDIhT2ei9bfvGd7MXJyrRoSNQqtvB4duWapMZBhAYKZs/iSRX0xtahi1fU2OavDFAJnWaSXcGs9EwvwsCJmTOR6ULOWv7QJNKmzwh1OuJsbOF28arYP63HEp0j0YTVcy9fx7XfwrdWMdSZUfsmtR+Zk6501RwvOjqvg8ivqMu2woKb52nISiCpAdAS7kmiRGQWz0OfNOmM4XIIKAvPNvGdc4bDQlqPWea9rLaO96hZ6cZaNF3f9+qxVcw2IJOMkkv94cqqXZzKLj4+pxwZ75DMNubjyii2SJzpxAlb0yjnqQZJUolvKXewqcooiqxiKE9+WPTVU+jZuXc3Dk/BxYWXpYHQoLcu2fpP8u+3cW9GYm/TGGFH8YhEoATYi4M LdBffvQFHhcVIeBzBlxxyBpqqBJqICaZFdU/+bK60N9l997/I+Ppp4tFRR2m7JKdC0r/K7I8SlYtLAycOR3lDwu6nSLDEsOfvV806ZFaGsMTPtgRRBgjMmkXkJZWzN86NSZUju2cm19CxjfUnpZy8MyWngXSijDcUkSWsAFDzsLYasE4xuUhmQuhEJJqowLJ/Tw98ZpAJiaJ4pdOyUAoMSQyaP7QmuPcwvEBghUCtpyrocU1AqhOcPzQBZdUyNFTQcA0pv8G5AoXwBaS/iRZ0YlIoqdu5KEPBIp7LTWza7E9asXM+3c2ITZRgSNBWQSuxpbDwo/qbRK+bVZjFT9su4MypztbtDIOXnjGIjrX+WKh6q3DmEU7lAjDyzTMxL39WyBvI1hduGijipR4lcLPQTxmWNXVlDk9fWM2yAR8gdM2r2pTIM/lkse99yMr/LANLO2Gl3f1+ifxryg/+v2FaiVMTcCUxrvJrg7KZTjwg3s4ZN3OySlXIWD2U1ZTb7TUzQ1M+PXjM 7VY+zkpitvEs8SHKRvpvPk3/nB4xTuVe90DOZrSm8dGvHSvfNML4OR26inF5QgMfTaFPee+KCsGq+Txo2QWhDDoO4oKqopjHdI0f/RNPlOK7CubvgNKwgra43lAq2b9aVzTQ7kWna1lkcK5cTADsq0lr36mJbEZz+Oc70X4v5VrS8TSCRw1msVARF2DVhl8HB23SroibwyDR1qnMtAseht0ndNi1alXAftMwMbvApe6TOkWlcOaXEFGrMaeTQn+1KlyBpZ92vup/6jyAcZe4m5cURM1fLtZdBrGwJhct3MzBICZqkQDXy+1l2kuSyAM63SzMbRtlMHkPC3KpVvooUlv7pDqRwhihMAgTCvunIZhnAPlOwcKfNSZmNe36vs/cz7+bKRcR+l2OihaEgUbrHoakYV0VGGmEtek2MDDjUgyM0YQuPfEkAsSZlefhidJa50a1uoYVNIK1H51yGtsMm51lw9B3CQVzrHKpqX2Vc15yNuLE/ub3NyPr84k0VdoewFQPfDIwM 4crnOWbgFhqHH2MgJeDGpwWiUc3TSni5cylHKSLrqiVcukielV+pLO6FjdjRZiOxqq3BxjdAW1qmiOGMgMQNAq9iENqOVISDcV36Tvo/o5fapSpZjEWUcR36TaUi9RcUTaKpjc+wkkGpEtVItAWC6epimH8D9et6UxOJxk3QiSSZ3dGiongSveq6RVO6MCWIp5T0YjPs9cd0ykF53aH/HtMz4vF54Wg1/xQ2kv1pmkg7nfN9PVCqNLvbKq8LtAhzmc7Io0xxcEMTZOsdUFjleyxeI3krE75atzKxBHyukSK2tz5vgtAGL6YBfYxyZTfHap/ZeAUXRd6O5UxCtcCLEHhR4yhQGR3BR0vZvhP+H2jWAEiJ4iXlTGssKSsQoeQYaWvMOE7ckjxgim1Tq6gNldQS+w2W3xMjW41FBmkgxrvk+bC6sbDFcgwpwWtHlhF+oxo39AqWvsC3cSAEPizPKZz0DOhMDHoVlmxy0W8MZdGD+D7cPKVEk2Vg44q8eWWNXzsAVOMXM OcWR63Lhlnxi8b6xaioUUw8uKpkejbM7mYm1cl1W5aTFVWUF7uMckBLBVdBv6/V9xv45qP8fvYhDwgsQzLJbCla3mqQQ55JFe6ZvB7dWURhd1z8eD6dayaCNzOy3kyYNsQD5S6mRbt/Hs4XmHvIrUNXdiMVTv10/I9aV/ic7fxGeM/ev+98DBYEoC+7YJplO0F14SszxQVdO4HwyRxrbXkh0N+xyECIWg+STblEEezLVr9w4n6LCVBhZP70U+yPIBoMTHuB9z8AF1c+1kWVrleRWJHxYZ0IxaLnVyZX0InyB9+rYq/G64VnxOYrvUPu8VCJBNiZSVHqME71GnU8rKKd0WhdyWPZxHOIwqTzirsKEkXnGXN2E/sGkF7n3Yf0yNULnY4lsl0bwymye18qubfwjOvYnlV9124HtqebY2iHIX0RwMCy4d7q4/y58zt6GzvCuql6OSweMzBXuumVob7MMh57Zz+q9pDn/POJtaqrgSsuAe6gsXhuDVFs9QvC31OpEJRHNM vwyYUz1Uh/iF/gFYrZAuHvRT1fE94Wt1uCoBzt3BH7k0uXCL7G/mrQ2aq3j1i+mj1uqH6pyAY5txkAv7AYsAhw+WXXppmcUYmxGbx5P8Sxz0iR5MGqNZdkUkAxQ0chX8H+r7u0LHLkoHPc8lDsJWYgnzISXVu1AuWhV6PAR366VIp6PxvyaQr6i35x4j5qDnxzJp1sLR2Z3Pq2WtQFGQxT8ajHOZDaiWlj1N1l4mDyKqimj/lEYZIVLq8IJrNRQZWEcGIf4pMfk4Sr4n8SWByr/JE6zQk1LyuMmyr8nU8WYUTU1qGmriWrRjQN4HUiaRQUK/3ksjBi0E37fTgGac2JMwJ+jyw8kA0KZ0gMfRXkTSdMoedvkYnHciHhHY4ekTEiqeRU4zFYhiwNAbNU5CdSQVfYdQxGRRxT5qlRA1UyPzlZoLKIs9CEAKSSsqSWMvlg1I9XBsOuJX4qEJJ6JuW2j5BBtSTbhcTSYb85/HE4B1V/TkRMHU0pCLhj4FcLVd8SjevsloM ug0EpajDHXhMgsWQX8TNlP7xypVumYYALWGBk4LIMUf3KlO8XkK8eRWzZwlNMH0NHbnkISschU/q+ppZINwIxg6TPS8EAqgo/MLoIIJYsFqwJCLdtFNEbslHV8RvQcbi5UAkZd0qkoLKOQUOVIkPa9Fi1y5czSzkKhNQKn4eCM1YpQvqCgbFXZew5G3/1hCwMRE+2GJHI93AtM1YuN6jo9r9qVrEjRhJg0xGl3arQHb49wuLca5XKLzsJWkVC2SRHqK2t5RIHgijx4fVr1n8KRImj/wSderVhYcyXJzS2irLSuPDhy5TlMmPiE8sB3Y6a37Qarz6aKuUjIknNXVYv4u6Kq1V7CnUEHp7hmnr/KQG7p5nWRFxbF8M27hGVJNqJDYfJB96ObnIRm1fWJgzE5GnvSUh4EThvHTNnLruxTdwavWksh9kT6afSe1mXwBtfD6kKSZy13pCJhY4AfarWOEpOSWrUUL1mJE+MtfczWpUZ+OjRiS1wqhalbtYTZo5ax10Vl/HM tMfg1GRdGPNBb2DYJhnkOIJvSCmTQD/kR9uJbgYhnxKW9bYlGh1hvy76padK3xtkrqr5aSigJzKYw5bMwNWmwSJjtWUeCniTu4P0IHPKTFaxnoLrUNfR9+WKDgQpDgqRtB1uH84iaDALXOTMwDijL7QLlnRmI0FtqHJuCcZhlL186ueZgWLIazPheTHRfuH+hbh6SwcPxq9dHO8atz/IO7SACpkOwtBXpXfhC//ojVasgef8ZO3EOmUIXJCQ26FCnl0OqM0/cR0HQgMlQ9ZIrGprB+h2fPzKE6RpMZC9TxOuLT5GI0ETsiTCKLLn52/2hs9Q00VQVVoPBR7/lUkHxHGnnnMGjljMQmi63tEbGIEu2XdLimSWgOGnDrAwzBjhY56RfONn/BD3qfKu6BGwAu50Sb+Bm5eRSWPdZgHLSmkuwVx1gxH0teSlqnZpYhWYg0uVeoKm2H/vMAE3iEo4Y9VGenRfr45R5NAQsRt1bnYDIQginD57iDk8vjZdbXVcO/RzjmT4M 6PdIhI0/JPQCdAHQuqSjdVMIfIGSORlo/goI/GToyp2dMVLsvgYFBda+aZq2zMN5s70D7pYSAGq4NAulZZyhgoBdsbF1smNheUCUhhrm+Ug7k0+DzmzgOIGNeQTKWAfXqoX6vDZ7tm/3Br0VW4ZfnVUJC3LBWU6PpFZjOt/N/B1RWpeF0FhGDCRk1j5gX9CTmQzAImYhuyZZOCbxD1vrK9RKBqQEN4vQa2D4gpizjsSXPapXh9w1vcn55UVlymuoZRVaHkP7P7wj3p0qwxdWGlaBuhzNHpNiYcNc0oJsZ8jdx29zrsD0LPhOe5RGjjRFAVkdQeji+yB6s6DmT+XhWaO9Z72NvRbj8nQykpv920ioM07yEpQBkkSKCXqubZpxLv+YttYLgsHqfUFTNFUYOZk/GqDKYKXHBWlCzDbDgyFWRT3o5gZk2xjFHRb1q0d9/CtburTSu3AZbKLgc8iSPbc/wegIypRMfzGmgI7hId5YyIlVK/NkXxMbAapUh8hTBpxCLbKjM vq2WilttTbEdyyoqIAomAXNFGhlnVFK6Qah8wBX63nkDbAHpp36MuoDkzGrKOETMfRvLsE6QGCYkZ+pc7j0evOZP6edagiuudVTF/VAJN09REtNqlmvZG9rxaaTXHYIT6OAGgSUiovCxDTe7etoyWrjs2s0zYTnAwEBWy8huRVFxiBqQLWSwygUdyvNquSFo/mxvdO1T0xtgnLVrRpybCWlXKbS1HF/NSLDL0tNcEJUTuwORTt4nxoPbTWb6g0oRNLyxoLKpgs8UkRlYL5wsiUr0ssfxHsJQ7eYUWRG6fXVWaybnGBarU+tkB9tlEQeKZ+4LMXGYwlR/H9j5ifxGPXUZGJMxYE/PK3WZe3r0ndj2cB4aBQNVtSuWmBHtF4EXYaKd6Yz3fHkszsScEiPq1kPzDeAGgt3q1HH4+ry41amlhGEXqnDpudcGQERPcSkJQFKRx99YtUPPZZbm/JHTnptNW5YeTHZ2T0taGT7fGqCI4kxlLoViarVYLWr8BKqeCqxSjpq1M 0DxbsqprTIhBeqbjs00h+B+KeV8UdkJxqCV+Xq1fOE7H1Wjj9yrPE889vl8+IJaXmHdAER8C2cj6fJxZuUkFfJK27dQEfWNIr1tZpoXUA/SeC+DHP7YNEUiGWNDdBvyx9Iw/fqb1BkaE4WkFPzlgWJXT3Fca/KkVXiS6GJzFSwUFiXFIotXdKomGYHu8oLobJz4byXxL3F/S4qYD2ofXSgVsTmOFCaswDw5D1pX+L4v0+Ahk9+2WiHj6iD7zFRQyTiucSXapbIo2dcsStVukMEgduShbXVTbaI6RoAv7BKtpQ7BsRMBUyIFOl7c1+ldMsDczucbDzC9KmEfsiOroixMRpdE/d5/FekCK0hOrmiNzB414S7pEMFv+E7SaQ0R8oT8FzStTSLqvq7DXwoboH5rirlyArnZHXZUFH0rGHug3oL2G1KwgdfwMU9SOUPBU/Ojjm4dD/626f7O85CQ48y4UpylbL9IJeBZROgTF4ATxqu3pWnEQXF+dlKs0NAAeXdGeVcAcM 94midFidytId4GYnkNoSbzNILRs7aVWH+JBOXq8aIE3Y5Lc3HcKmo4Nafuk+I7nj+yS7PEM4CQpUGRsS5H7MRX0gz9Vj2XDwmaIna5m7Bxgos0TeFRYt7EwD99iMy+u33vCW/Q4cwh+ZGDhKQXj3bhkOzP0T5gKL/y/kHF0sXAV9tdi//XKXcqWhRxyBrlpoielwMm7ZOwiEBWN8qyFWXQwwrltBNFPaAdzIoKfS61DAHh3Q6tNZpS5a+dp3vzbVsQsusG9z5ooBry+Wychjan9cAsm6otUoNXlx3tuR0N4rjbNIK4biZeKkuZe7Sgp1g37Ztupiu9QVIpU6ZUoHLBh+IOg4KmhWfvH+mSdx/yLtzwFvPyxEMKdFOYh++dM6RbNzgZ+fy7Bb69y1Td3NX/zJin0KTIadOtw3Lfve7M9Hd3rY15FCZKZRnGtZoVW4PbvWNGgoa4wLUIQgTZdfnV6AR6XsUgDEmkfus+PZcoL39OGvqmzste3Hru6hauFh8JKWNTCwM fQMfwhbVhumiCyNEFSIFv80OokMg5WGLj7YDA56L7JPsXVhidOeY0x2f4ZydKDSe70JcHSDO7EiVHiwxic+HjRmBnnY6n5lyrIuIlm1/aB1c7C5Oq7ZWqVUPDnEUCojt6kYI0T382GmGoXdzH+dukiNGjNXZCtJIE+K0wLPGQBBpOPomBOzJj45uK3oKjeM79ZHa+jeObyuN9t8iWhWgpEq6Nny8vFrO5SxcHm1MMSR3fSW+TMiiW9Hqv8Xsex+SiCVhUE4GcgUPoi+OHOfXl7GEsWuP1joYVHUkWWSrMoqSHDMpQd3IjPs0CfidAuRKDfm0hSkppmLfbXBkhqy6HNlCZp+iYp4pPpH+qcvhEjweRcQi2VTlVNFFpp+L5VBA+yzfoKFipYoxjBQhEckq4bigFEknbP6Wizin3LajWm6pEUdO+jVyGrRNVx9uX7AF/X/zmyTWE59f7aqjAPtax7UAlHHGu+W3ln8YAeZs/ncWZaaCpV88dor8YkW2LdRHXRhXfIkuM XhgWQ832EgeWS4r1HPWTu1TnuxF60Q7rDmr3xR3qseSIdiE5ymeO/OQ3W4f20b7oX3w+RqBrSLfoGpHWRa69xobYXbNvcbv0JYV7FEMnOI6xp0olvepb+AWAtjXq35MhQLWbtljE5AmlxyknkdSUv1fXoF9ydyrC9OHrEvKOFgNqMBQcP+zCVKrzRnJg1siAUxJ5F9KC7WLlqHoEFw85iK7iXgIicpJ/OX+NMJo2EzrlIFyYQH1oifyzL/kYvYFdnpjnS3XPyV+hrpE6k2pi/u0nKwY3B8n2richj+XrUVOHNFNcO0Q+pCpdOSexw3buiRIRRaN20TVtpnI+86EDlrFKdl+qFVY4d7gzn9CtsdZi/7vFeJ69G2Rlz6vmtI2CdRWw199IhKQFzm2ngkXDxy9PCGoT4ozoSrYDthTAXf1smD/K8c+yi6e1C2kYneOwDpKW9ID8qNipQ1J0d0EkVQk6QDWUJVgtXCIRYedpbUwCN2RRa4anEHS0rvftlcj1u4nldHqxM 6h8vFLAgsv62ts5yHxDisFzRgvsI07JclOC8ykcLkT+kJXaTejvD9VV+87ZAdDXPzeebDA0bT/yBXDLai7qdjbhcw2LtI+TX+zkfiWJXSRTfrN5A1JZSSDt1R9qI+Mvt1NjnZxa0hjm1I+gFlUqHJVlW7hbsTLUdS5WpzqGrbgRpdsFay+UZswuA/Cu9nD5CI6c2RPtIbuhYSQR8c24Ad6+iw85wEXFbO8a11ElBUZVI0Ob+yzZEHA2BOL+IXuHMIZculF3GQXmR8pO3LPPnBLug0y9jqXsKGPBc8aS/RWHgxS2rg5JlM/Do/SbdKxxgnCMt5JYGgld2xeXakVhS5a9kzXfFrMfz0KNUwyFRsotu+PsNfNWoD4p3GdF7ebkBQRnoHwCOrvZYjXqacydQPtCllG7D8WHRGgsbLNPQdO26U2b9u1YCKJDFVFbwmjse9aoB/JDwfJxUBsMnhKm6IlBcRuUNMdH6wDIQ1Vh6v5Mhqtlw5qndzfIFIYLIjEwNDPoApF28M 0zb3a4yXAr62/k45WgeT+CbD4K71apfiOtoh0/6PShe+UdSeKPVHiSOe3SzVN05nSzNs+yal8dqeZNh5bTJj1J2ucOMRMCC0Ri6DQOrQJPkGtrg0vTTcGU+Ivfnu1dzdrpnJrKtUEZLnQOaQ90xXTEl7tHgQM7HGEUbsjG2jjnbJrYds4CkIGfLnlKqXMV2aHfh4LI2L5wGdA3ioxXDfkM/7x4k4POg5eKaq2Ow2zTA9H46I7ZXcV/T+iSQBBk58JS2043JKPtruG9NavMNC1A3WyXtNgz8xEhQGr1owy0LZjJF6eskmgUnscu+8nrRj/4IcHZ5K4ITWJs1Cqwuk6wEaj5wXB274cje0XuX+OWCRr6SqelW2Var3kKDaUqPU2CIN8aDfewRHNTvPPkDhlSeWxXmzKOdkKdCyU2PPMIt1rsk0Ah79LsyL3uQzgqxLSsMUmj4jojDOWjtlRx4Fm62BpBdFsNWRykPglN7jZ8ct11K5C9DplSS+pEL8yjCriyYaOcahM UNEMq4tR40jGRTWwVKa0Lvz2QlVrSffxDlZR6axFyaZD5GrWZKRGBqn4SEa18uwyjHu/k15PpQ3e3B0wMwTdDqMlApK31TPGiKUV2X3xfJgZJZsu3ZIiaLjdYPg7qrhtsIqslu9zSRg0Nu4kBTvtFcEfNR1O2R+S+WEAGL6BsObPXR7YefUcfaGRSNSV7yPVqgkHnZZOasyREb8A12Jt2IkYhSDzPasF+UxZk1iytVrzLWQ4R1Q+tuiXPMNPvT2RhqYN2v1zOvGWPqb0RRt1AlLtl1JhGPVJcO5ReKI6+etEqR7oX4mbo7oDZuRs2cY+Wt47puRnCRpYeDXctVnggHHjJqShuKbHdS2zEMLRPc1koixOKjBgh756TdRjW7INn8PLVBP7xcr26aq8+ytQ6ltzKD+LKuBuTXA+ECcKLVrJoNcjGjrTYPcZSaz7rR2p1dijqthQ0RXRemIJmIWED9xxbX6Xbr9xiq0g19EBAAf2tuFnUTq5vJQ8xK96Y5LdcoQ4N2QhM c80OpUhqfxEWlVolEejS2fMoFOe3+B6utAMYQXRANv7w4Aj98mpojMEInPzvvjJBUdkZvnU5Wf3YmNkgQVWC4PloeyqnHaV4yBOqWju/DA/sAFUjfI5IedHXRqNm1Rxz3/WAnSu+wnmDFOJFeMIWb8YsUEzl3Z1HKRWFs0L/B2ShCwAAmLOh6znmZh2oMgHcJ81gHaq4/M1D69KfVzE7ruKM+WeDQHy3QKDjw1hK3FRVtNnvRFbQZPaDXqydEbVEcaLyXBxgVzhNl1p53vsstBk5GzKGp5sSRuaiuF7ZGa6Sqt1TEw1Ya330rrJSkrlTg642CTTVPOcydH6GRu2e3pDsTxcxu7S1xukPS+yrS/zhN3MDYBk/552n9ZJJgQDBJths1ydP5WLIeNsbtLEwBxwzYqmLLw84rHV63+LpoeIohHuqBmS44yq4WuVXj7CZVA6IpdXZZuQI1PLrHetSiIMbNqiRSJC5rfpaM4x3Frj8SpaB23hOK0xSEP1dy2IUfmPQVFYDM sn5nMK+SF5X7G0kHbyJdtDadWVor915HuO9lpse5GGc93PLN/w8hv3QQo8yX6e2smfVcbDMuvZpkRac4Av6QmFcvHIotclm8ORhLU9Ehrbn0JqdBCTrjrkqamVsEhv83TsTUZHFSNRDbI0GZ6ucC04kj+yGP1eYjLqhHkDvsPGM6VmjjCqtaS2oGN/TmY+SbcOwMyHhY4miUa+6mYDmw/RDdEq7VM/wkYSbheOuJPATUHcXflOwuBCERuLF4bp7nuYWujpUMDbvaJLAjuY0j3vQ7InWVgEIbcWuw3dMheeQZVT9H+eCcz0evhLxWVhjVwVFnU2zhuznVYK6I/zrMCdm28tInOVy2xu9zfiOFvVUMOOGbVck8OyxnomhWFXEiBgpbwFC1NI4vh+In0Uz0k6dMO2tFxAsBcDawUy85PbJ1zJZGuR4Y008q6qsbjyD1NEpLhL6w3MGQ8GI8SofVSH8Zc0CFnpW8i14GMag4uD4Kj7iQJ+7GZs9X64zyQ1ZfEKbkVsuhM 9fBiLVzriC4VKUlhE5or96DUhPwm57mMSzG5zr1rBqjXkdpU7S/M2zxlDn8rqw3Ps8CRZKdq3kbY453sypTBESy4TqhrUySJBvvJ3dXHImozl0P6YqU2s5fpYtlVO4hjotuvkFiY28kV/g3cQOqd6R+hzqEyor4b3V4nAkTIV6QSktxF1t2acsJBaNIOtyqs3oWcau+Z8sOLqhJHd0St3QzjU8NPhYmobygjL8K5jaLTo2DQE6hjd76LvETV046HW4+51NTBwPInOKslSPeitW1Ja88lSKIqgjV45wvGy0UyTfJS1DCCCEhgvMMko6XKho/2rSah3537fKxqggG0+v7d/WBE/D3ponQlB88jCx/uCubhIn2DVjVBZJd267bSIH6KPlAcTqO9KVPL5t4foCnXo4+0k+PxGx7XjnrbggJmSiVpkGurMx4hCBldOEbRXYH1mj/mCLA5kRaeF5kKENxVsPfmAxxiNDc+3XqBLBJq1Qedgr+zeYE+0YzPe61YgVgxZrqAM Oys4ELaCyj0lDNjWTE344e60NjdtKnl+ijrJO3Dmw4oDlLU0hlEJvg56T4PmnS02FX6p5pEx+MoLxQ8IcPLLE2P5WazXePtb0ph5i8oU6FbKn73rN5Qv3vId8qTQf+cY4Q9EMBFCJb+64DEk9hKdjUuSRsRCoerYzF75PwrJrBZLkROak1plHZ/0laE5o5RrdjS+0ZiILLmnNfDI54DaoFozMk52vryz9gVpCemrwyOy+pD9J95VauwSpUiyUZRlRRSm+bJDhK6voX3GZnchsVR85xXwFsyhHCZ8J8VkhpdQlWbGYmSCsaiqb04bf4EIVZZBShKe/nZEU9KjIiKHoSOgOrGZDzv0pSwdG5cvKX11ObzNiARg11Q1hytXYL8gYx+1UY5fXJIs5w+y4eQ1aXQAfgSjHMydmk6iolaWT2bdL9JLUS4HwkMiMzdMVpcEaPxdTZGt6w37tsvUqtBzt2JMA2lScIJsDbeRbvxvssrXNNQNZRqrazMF74ms1MPntfbaJG97M PafQBWkkFlq1iVViwua5UAxzi6XdKiCT6A1X2VFWMUdFRCjp4MfBjs1u1joNULslG/4taoW63dc5UiW7bV7GBPEDMby9tcR6Eap4lYNA2oHZhEFKMWR1bfRevd7N3yB29RgviARrBtY4PDLyv2Z7Ce2HWL+D32sDywG6qzXK+JIt44DAvQ0mFMdq8kk/GB5DxQPJj4W4rH2pjBlBfooqtOE9x3nwvkepObjNjJJ78Gs9h5bDt3t8UfeopbDWhrSduwYNVI82UHtLDBjQrNOKT9Z4uM3rW3T/sOWuzeQ2tp46b7jZLGh5kUi/cOlTNrzItqTaPnAcuI8hnXqJ9gU6GGrVOxJyfiZ7pJk2xKpWUFYltiAVkPo66i8Fy9GPn/Ijw6u0qiEhvc9x3RM4BNoK4NQ472atgLuR4MaOXwkxZE1GOcXqTbZFIZAQrg7kRnjY2c9pu9k61rRbNMXOKkH+OhYnsM8AB/7BNIBWWJq6wk6BV3q0maR6JyabbCsbIyYJDCex2yXuM xjCqfwFlRpGbY+YBO0W2iABYfnvu9RaLz5/AMx9x9scRAim+ZuExSzFoTTj9kZcmjlQLA5mvz0gdhmgQT8a25e8iGc89j0CRcZ3chvTwiG+aAnlSKMNw2tByw55MqsSUun22RtHomM3LR0IWO2PICYODl05rtVoCVkZPRDuiNv2D2n2wTfccvpMBHc96BLi+3KSHa8bDS16jiMEBd2gbAsqE6j87RS/9zRj3Jw+XHmyphsOzgVLqXaMp4r/AbZLqOZ0aHhmht3C3FgLWeTTlc0Q1qlbrqrn4A+FEzLxlCa0MQ2IKtusMDt5wXBu9BP8EsLyTa25dQwU1oMDtPOklD0po39Uy5d0woRzQJiUu3QGqDOuZUTHGhB6NWdc/WKG9L+Rfwgy2toZADla3Vd5nn0LDYb5tWvcmqbtqvJV+U3ZYelC3VovQrWYpSlEYHjGCUDE33IMPkGO8m7c2KPBWwko1VYHRsFrtHzMM+B8FrDsgtEGrYBSEFwspy5TIWjhAzviCMyxIM XJtNkY/0WD2dWQSNKRBjR2b9fMvB8iO+zaB83+zWk6tPa/TSjNbHgUoF0TKiEkhq4bRMie7Sn4q94BubgXTIJFXA8taW7eAp13Qjk4KcNgjIqGtsOS2yomIgWF9yFKSG6qcgU2074ZtExad6RDMk1cDH1eaJEc2k4xUbsFuFPMsbEt0zAxhMm5zS5/lBL3cgR5SeK21+lFDQmE7s9QSGAw0368r8gGNKTFp+SnZZhnrFvsNPiPupe3Vdwj+oI7kJF435UnYaD1pbBrzbqEwBVhPd4fasjcrxq94mxK8gYBCgVsOvCq8PQADQlICI0xWlI5aZqFNxN0KdeZ77Fn4F/8PsTImmkKi4tpQadwBS9hRiLhsE6AEnDZ7p0rsD/uB+829AZjnawRWbf71IhbORyRDYPlXXxkO5Mcug1CS6Vl6MV2DJ1uae0P2qotu8yXUTFpVwtAD9uOZSqk69Y30VQTWKjAcpy7hqsR31Mhsi0n4t9udxhwLtLKLLVW1WpOdlwB/84aLqM ZQVJemypUDX4l3XeJyFjgtIYdPicOsUazG2zjssg8bISkd3kwU36SRRkRolU1kc6g9bhreCoX9zzct+SvcVVy6KzHfyEQgwk4ik9ioi4wgDmA1nFxpuWPLEit2PrCZ347M5GGdo9ZFaiMUrWiyHC4mdtfnqve0ob8t7M0g9clbRXDU3Zo3RhBs1cLEVTbTWTS0p7OBC2eYqJ3CR8E3TUlq3sYiBWhcMyETRaBWJoIzvZuHs2r2iqLCm+p+nUC+C7hhprRkBbsc55sP9gt2TiBKVIzjx4VgXrV2snmX2iIdAVk7pEnoOHqgnZw7Uo/neYg8SZolwWe0Akn5kbKyi8vzUzDYnPj5YoHB1ireiydRU/b1WVJ4n4zV/JWmMdjNpnLsZlKkAJi1cA4RAjQQFC8h6d40Fqf4pbqMczn2kMoJhTSWktm9kRRm5bIB4htjQtn533UgdcKU+e7Nek1fy0liFdoa2oJ9jBM8dt+FZKqKsPYiR2m2B1jyiW7s2HC+mMJrG3F+aVM oxW3UHcc1iHFwSWDhCw3t3JhlLfmibDNic0zEpSWiruNhwpGtjU1NtAge7NnQO53cLyqMi/U2Tn5R2YPcdkoPqfC0vlj3lmk5u/fny85Uy6N1NfUHh0xZFZyOfBnUd3qN4hIz+wdOWxb9nx0YwSsFkAUtya2omKOXdJ3Ro1SX7ybaFVnG1XCXujFLg1lFWWTD5wOHYlI9JLwzWlUC1ZjKLDiI4UKJ8AFWqb8bSY2itF9cE+1gdFHuib1EZXJtwpSj+4VDaysUWhViWbABnTsjqWLaxaFBYX+Vufd4PmcWGpYjYnn35po5LkyH/6CejrAz7NFtWufEBO2zgKDeZZK/ZxscnbakB7roiX0xyosMUaQsrmB3LlS0PXZ0vHal2c++Pvjt+f4jj4/mKko4xm4quaN/qWHwAni5A+eGS1KoktAQzFrNKjxwiXLvwc68+yjC7/dBhN+jet+kvMa/vGtkHHaJ7epVxzWXVwsfUQ9+l8HzGDrqx0/O+RS38TUXKTaZ1FP5LDYM /Uv6h6sICZePocPbR9V/diFT/DyA3PZqZBXkpu+nvT393lSGYzJK5iRH1S5dHgwvRp92EyjXEYMfQmcIqcf+263FkSVs6f7DIwh2SLAg9kkkiwKBxAlcQbiwHLTZbK5NhqmbnwJbZB0/aPhwYhZHoUr/ZehprpXWsnBxXmcbex2uQTYqNFkRKzw3CqWLpiIYiQFh5DK+KNSOMHwpToTbLuCf45dNbg6mRJkBXsg3CESLKBLAHz9iQqll0wbFpaQpDM2S5rYaLtIGAbDXZxWg4LZHdIMQ+EzO5mThZktiG2ha+mJuGnGOzKaAHAhEEt+8ncvLrrSascdAxRO4JTFYe7TdtKWvX17OezG7NqaYOsc+ZGP1l/ogNVvWywFdXx8q4pyspOReLQsEeKJSAs5V7k0bCd4UwBR5xVLig5s1HyRbx+Sb6IH5I5Sk1uvqY8ISEbDz0IoiElxlQryfMwt4ICBMAx92/kmQJBuYjJi+IQMoe+CUzI7c7WwaViyM17pp5nLErJiPM rspwJo3Kla8COykERtZW8DQ4U7MAZy+67XDQFZ4b7xurq+TatHZLCljK2EcCRrw9KdEbYKnk2S1EQDsysimSJ4bx8skxKEgar4ayiozBoWHnzv3Vr7E/KUXAijwwJr2JQYAwuCXYAEcOOQ/m76mxUSfXnlO7AUNBCvPPdpSQhM+ihlsuXCSfbzi2nIf3EZIPdCCpZ0BMzGpiVJWRjjMBkvVZG039llEQNC76GdqLtUQ2wsCiJoJA1b0myMJDOTN4NtA65iL2kLEwZhPKQ+UkJj95tNz1FxE48Z/KwWaIL+u4wZHGzCgr0EJAaCnCK4QVj/qKgh5gSxxD/YKGSeR0sSwaBXRaAmVZqovPd9OeBfqDuL7WIyunZ1mNIeJiNZD+SOal4tmdQCQ+T6jgN5Chn1kEdP4uHYP70hGqy9WzJlzIuDM6Yw7dm9B08pbvAkmp6+mYIRDI1hXAJDZD8bM3wh/ELwhnAPRWdJ3R+8yIVz4psMamU8Ipk9q7cSU5B4EBJVo4i+5xM b781NlmE/JtTRclSLFXxUbyyWJ4x7sosuMGMZCOodMqoDpOijTrlPGMjySdIhrXy1Z3+FZrJq/aTwn5mj+Q01hXtfFjkcLqV5TYAHIzy7AOsObN/17NwFNtxEqwgBd5ED/zkm3pNa6rcZKpcqThQvihCCyM0AVP6uK1W7atI7ypcN0ZtL5xTuyeOR9y4zwDfgHYSq43jtGJaG0XUyAclrYU5rJs8WWk8da3zxoZNFty04Z7dRR096RwSjmKoh9khOy1hotf441ZxO20UBzYWbsdod2px1MBMtnzu1ZspuGlhcNPYl2Shxrsshq1vSfRmBJAjaZ1Mz8WaS45Hzcu+cAD9k5hZmYx+/pXORdayS5iGS3TZNt3mUqOryCnBmORNViAWSaLcyN8Dyopcudh13KnSJjUnQSh4+1JQdzsSk+mgJXBvfflW3ECBANqNqndVOjMGZJB8WkUIutjoSUjHI0jsryaClYBM7VpOJN4X3YZy7n7D6Z5MBOfN6HkdGgkRHAVJQfBoM xJrQkZEQEhntCQPiZxfmdF/ha7l8DwPWbq6IQ27B2IUhBp4s3o3rfs5G7hZvuld+V68XmL3Hl0extR/CY9i12RCU8NYp4iNVs5YlrYB+Y9VbA5kwR1iuazk6ghxjuh6nBrWozYhElXLqmiKJQkwLkQnkwFT81fNYyavW6wHfqcGIeEPiyKxTa1McQPq4lGFy1/NGtSQbOXjLRMOpzlWK3iakVpshmFjedDt91GgdkEFmN6i9vYZMMQ5gn37v22u0qQTMYK6dEwRReQaIq0FrEAuq2KpDulYkR72CqHFrBBjKp/7lDU6a6xTUi3YzoQZ+2hnPzAnikiEpo406g/fQrdJb7j3rVB11n/UaxUPGPt2bDNWrKNtahjCiOFKkOOb3VEST05iBpJroEU7F44aCQQBjxfWEdnnv3TurD/edys2pdrkQU6MHvumnDbUVjIMdKCpHSSZ4i3OQS0aQxUvGJhew0fHZiiytkICnmvypg2GrUrNJGMQhLOl3klxNy1451ZknqLTiM dtMozrkPErCSP1eGc7Dj3R1yZLZ6ywBPZDj+UEgi/QUOofPNOMWB8Ko43xh3RZ9oRMV9aG2s/g9Dfc6T353FWJ/1TpYdmU7bPOe05ioGW75viT2dDuMdkmqF7G/qIV3PYvCf14Xdm+eRZbfobNlt/H8hbu0Tos3xBN4VlHONX20uze+At7o8X3FPxhdEcMmsVLpbaw6J2yZ9oRhmGuEqRMTFE3Zd/90NA/N7EyR0q1HrH2rrqG6s4bq2lua2X+OrQIkLCJfmhVFt94xP555M5/EyPrCWSJl7I/A2au0N6cD+Dmdj2rBjZQgKIaGtNgtw6210Drxh6Fetgsk7w5D6JNfG6VBYRMADp8D8VTWw8baAiD84Ig3B13kZTGGmd3xjP1cIkI4U3m/qQ9+a9EkiQCZIdg5k8dobJNdZRstSf9MJR9ySA4No0tAomorqHvyDmFRmxLSumArYY4IkZvJZ+KKi7JutyNMHmN9YvKlSYRwgAgaSxX2C972VLMpWWEWhUkkXdCm2M 4dy7C3tAk+8aG8piwvlRIrQpTkCyl8UZbT+gdhgsJLunGTRAPIydiQRI7EDleVYyV2Pxva/Jo5AYJW+Odg/b07itFu8MMLpZiZDn6HSFXeVLFruDPJ+1XPbx2thTL2UexL5TBTY0RVDvWWRVrlh0ReLu08DTkfK2hX3NE1m85zUBB5sU1LakE5d1PwXgF81BfIsvELH4nk6DU1b1N2FVg1Td4X1kyl6coRCF2RAKEcCIfTdKfxLSESSja3QYU2PXubjaMcLs2tCrTFncxW6Zc0h3uZOPIeDW+HQ2pC/8TcLakjQkln0yXmoGOeGZv/JKqT/yjCTRzJkRQuOlSMcihlxTWVLgTupzNKs5MkfJGOkKXd4JTSQUS9CFAgVFm8AAKN3w3ov+nHaTrthsbWXYsuRKEGAM19Dwx6uC0VkUHmorqi4Ek1PF9KrvrTWfgqR/x1qmmFy1IlpkRsRFpf772rhxh81CVrxaj92EhSwBw9qaSGIC8WwM/W97gCztix3/B5Xb5CFnM hnD2LTwFc1S7Ur5ku8z0bi+JmYMrFvbWMrJ25WMpdUdvYwvKLDOLC36K4iYR0TYqMQYnrA5g+jNNu4H7HVk1p0NIUAPCqAaEdzwcOSu4CPqFTksEoTFsr6LlHjUumTeLV4+o2qAHIjBbM3OIcSEdGONVLXEhsT2M4HYU3RugbNuFlCdCm/q6DZY4NfJfCa7UCRKjppKM27xtdR7Zqz5pNoyjlfjDgTWsGQZe8qSV9R73kDBpcAT+f4jhaH7xpoUnHXogkpDVjFyu+k5w7ZGdDzS1CkOahlbpzG3LZqvd+SdkyaWVJMztpR7rFj5E0m9wBo056ttEgSV9BRg2/QhMakqjd1sVPTHB9UFhOnVU9xcSRzF6DgyayE2QcHutDE/Zf/+40Cf4W3s6IUq/D0LnBLIGinOLumUmuuc2Ol5VIeED2yQpCG6ppsfCW60FwZPN9Y3YHumJa/d+W8nT1Mjscz3wsfCytK6oe3IuDxGcyJMgqBJwoM6kjLsrvX51SJBwpsKQJVzEM RIzFyDIGJzVni/NoRWetc43SRQpbJrKRMQpGZ774hTh7StsXhVO9SSbMqotbDMwF0Q96Vc2xE2ZktrPh1RF2wV8rRl/QVMPn2mm9WGdytpf+b4bVVzadGlIVxTWINIaZWwzCaazNNXPMx0ReWPYvHqtQLPbm8zOUcem9fPCf4XAM59R2tafHerDgUk1BGlrJB6BfdVtfQCaLd1QA3qsjBSUeCmtBfbLrHFnfN6MsZc/t9h5reEKJ9YfsY9/AQDch34IdzMw80mgmHOinALBybUjYNKIunBeBmu1AbE7Rp5kPCNBe6qjGFS9peiU0NIRTxiLdPWsKo4pVwdlE2HS3QD1QLdBox5M9JQ27YaFLHgiwowMJlkJfgUv6P5Ry/dwz1DkUOPpZ9qPb1vj/FYYX+I0W5ZZL8gttUb2J/re/sWEIxtWkZGuklhJbj4Iwo+KHrPIG02STdr+x1HlRp3AzflPRfpquORNpRsZcUA2KtbSgEkMMuKmXH7pqka6StOGX3JrOVJnzM IgRJWlcKZU8Us4XmLsotcrZr4+zjACe7Zl6GFTs7xhyhmKdrkYMS0KGVhn52zqdeH/mmJ0gemnxfBGZ/E7q8EWTxY3hE/aBXSrDs3GtXyCmhCiQMWuIUCSwtCzIkaTCnc+pMDfAjPXVczB2R1M0GY7I/ipaW6QVydVvcK+wZGV7Ir4rgTsfBM+KQDePPG73M6MfSev4whSHaAz1bhoSIvYxdETVd4yEh9Wh3gg3a5obunKetqsrni76hweJDlp5aRanl+mJqNV/bi4vwspDqkpaIx+V3YVtDuFMZMMm2/PiI3RS5dylQXNtkkbLU276usS5OGiIDkQul02DTGqAZOgywYcI2qhI+6Sud5JdLBwycAo0nXWJ+uj04DQOs9OCAJPw2iyr2bx5+wPVhdZtGIeZQUt8F+1ZUlVxyFTqST/VgV7IkGiaRSNbpDvX2Rmkyvix1z+Pp0edHuXakCuEUpsv2tWiyT8rVnM5A81B24ZOYm+qTmLirwg8qBQVltGmnQdcs8VfSM uYXO8IwzGGUtzE8pY2JHWYOTQ8eMPMu0bfNNS2w88SqllDY7fItCdwTDt5iSETVbawFKiu22IiVs99NDuUb3ErcZ3lZ2YCgUDMukKVZUU/1Q+aH96GJCwCP/44a40lslO6sDxXE+BV5LJZuok/RgfnAFZCyJdZW6sNVA0kAdgUwraBFfkR936Ev3fXl6S+CxIoHZmSrlIJsm+OUzJCbSyo0tXUNcZIsD5zjKlZpLFoR0hpGtru3f03EYYsKVGpzurslWb1gPhcJDpRJdWzi0cUQhZQgEiw5yHSJlOf7BktMs8LpIVRACfTNeTcTbUvWfWuHBwCb1ag+7xC+wJR0R7KzlJO05DJh61/scLrA4x7i0LkewqQVEVSNEODJvVyhfK2subic0WQoFYrQxCxroL1pHiox7ATV9SsOicLA659g8nPc7OWcSVBEFLBFAA0IQ8kIJiZuSZPZDSH3RJFZA8xO1wp3hVpJ649kYipRhs1ele1ekXGALEzim4L6OuuSfSCQDedRlM /cKhNvlKz5mU3jbFs3ddEXG1w4VwqGqNt05zXci9VHjThUDgerpHtk2MRXZwX9aoVOIVtTdWcB4+ZQzPXdWvkxeouXaO23wt7i9sWyAxsvoErAPeEUegSy8XmVpJo4nxImruLUM1oVx7PZ7F3JFd2UtXxcY1PB8to0/Z7MnAqEMoY38GEXZG/Qcm1JgSvyYvhQN6mA1lQ7RhoyTD04aK0JUMcjnkUq8iQpskOjlNVifgf4jT62s9vb9rDWbG6OVbNLVrKfo2a0OvAcd+wNIQ0JULcHvBFKyi2+p3g5jkfV93XlDW7nSEBvCzY8jef1o8D0NgxeGK58CM80Z/rIyU2GBWG9tSi5obRGp7mGkWFqINl54CijmjqxlVmjWHVTBEulAFOj6y2vv0ujE3dvUvFaZNrZZmiKFHUICuW8WHWTFj9ZFWpz9S4VPuU87u6wq0NBK4xOHLXmOPmmhYcVmyHKnrucODq0ekJC7ihUyjz8ardcnBYdaKdfwvBcShbJmvqqxvQiCsM 2R+4aqv5b0jRzuE9xD40UYQ1S8+iTZdwvH7DucSMX6P3zmT0RAq5c1ivMt0u+wzIyYF42lITelIO0wliG+RtGweJ+uFBDRSlwbR1VFAgAWlCyIXpQQc8qo3pImpCfc/iDPfycnZdGwB+8NvumA9FpUQUkNgu56Lq6/KPPuvrRgZIE4leOMhZF9Q9aTNocjcFR2rT0XZrdZUV53lTUHdLBG59poGTx98FkkdfeyhKVlGqgN0ZWk3IFi2ypZVe6jMLgZwxIAx1tU7Kbm7lkF+q1K7N3iB/KjNTmc/fGCEMQOu7D7T9sTZB1Hg+E5dLDCUxg1vaaGtClUFUXAK8KnspMDAozNVFPoMmEf/jhkI5YF03v5k5umATXmdixjcBxM/SqLX8VCi58kq8g5cxQuRbNljKRhdTh/DdFEy4OmriG/umvZVRKLIWXhlCOSfdGBm5LWRiiW0VAiZ9oPrQvIkqlRl43Hbym+y1XD3HqqCefAE251+FrSMIfCZwkRWleP6BxtFX2DxTM HDUCIHLWuAdafeNTG5lphPDk5sYtZPYW3HIdmvr5v+DoULWSu2ooFzfONxKm/ttniajrdHFaW3uKomRMotuvri28H0iZLi8yiSgE7aWXZbjjs/flK8NfJ9LTq8kiN5xZsBnEy7Pmh+QT64EqmZTT1rqairjEGkilMyOVT1sa4aTuZOuk3nmlEEZUd1oQ5D3zgMIzG6gnyy5IO0tELKDleyFdaap8mSvaj3mjZzQ7SiWuzVceCC0lA0ZRL+DFegXlZDZaXIpIOV7xLrDYEYhfDbr7GV4Kat27g+sWwhZgSdNoWlBqa3JJFYsa5tetVydkdgaY1CHUMQ1ZAR64XdHD/JR6OvIK9aLEDodHsM21/h+cj1B1dzUxhw17rYQxEJXOkMkW5uvCiWTk/te0yDHpitzJPQUQ/O+cy8KofKk4lT4IVfFdahQPSh9kF3r9AtNFblVtkFJqFGoMgQQC6Bl8E1VWG7FtVUq/TdWCJWreMVaRBIkxEYARbddaB0kqznlUnX4JFyt9M Zx+E+1DSs0zuL7605M9/DvB0YABVpfhWc8rNiNfIxXwH8NootKmwC9s2GWbOOeOe7APYiIqiOWntyw1M0GMHpAPiGmseohOIOSeHzqIXUbT7j9FV6X0Zk6IpLum2wA3yyIupnlVxWvFR/rhtwQombMIZnzp1KNKw25ietWdTifXI/EzMm71KIZtgtSY3tsOtRPRiSLpdllYzCt3xVEpO1EXPGs9S9Syi7mib+CBKMULRDQjuCkRehaAdwtwITGIQ2uCNCWndBG7GrBh4DSZY3M7jXoPT6j4yotXdcq79pfn3WukaQDvROOQZb0q9m9q7G9q+sZkqMPAkhwPfkLEKHaLBerYaOORImrOvMuhzxgztp0nqOZZLXIYuL1wg31PIL9k5aO8IKp4eUQRmdHLD/i29e423BL39VSkBugqqdblWdOsO+BvAdQbdY8S87o45Sdx7mbR8InAmCskG1fpKJbOm3kaamjYizStUNiJxiMcijRxBpcx0/bMCqDitCltSFxLzQPNEM H8nby/Vbr1RHwPlFsEVeQeI8hIdF5ZjEPApgx+qPxY6x+PkQPY1Yp3TdLfqd+VR490HcpIJp8/k3lkoZXa0soSZKPTSPK2LD3uD/Xzc/3NBGPUacIIZlO1jUVhq+yCZmNGQ3qocWishZSyhaYiHhT/VDm8YhqV6oCETG/jQu2OUtjPs3bmYRLNen2PEPbsUuXZA3sjdedDFcxyMZYmnm4aG9L8pyrtimEUrEylnnldtcn5/Dk4xuP1j6j6qBmFPavOACe3ZOWvEs81i6auGOci4UauA+2LhEsbCsAldMkf3/U77pRvglQjkBI8J8QWbBMNTxJ5e72IDtDpHctJ0xhtyMHbQ7NcC58XuuRarMo8yauUVGY71HhC1x17G8Rprp9n1ldyeR2G4jNLQQQXk6G6ZIs0yw9ssSevCrbgIkIV+XImph5gGEs4EQkgaOxdB3tKVEwCZlLAT4iSI4zP6xOfc7u2TaJ0vKpjCWKHH4QOoNwdvkg2iSuJKX4oTVOJDYPWH8o2DpM vgLClCtK76Di7V8SJZi3DFa9w1pt5lrKRU5ao/vnIyqWtLBw8n0kCNDLvTQUaHlga1isktR8O8sOzEygkWlP/jFIi8yE37IBiqT2tTbkGpIcLNRSpZugXTtRIxKzbRiDux+s6tLMLpjX9TPTY4HciPnwszFagDt4OLqvN0d5EMgf1hfkxzhhPWDbUKmh+MUN3Jr5PvY+hoQX1ueFNx7T9LmUneGpAgttfrS5i5ZslJ/QLRLBVdjy+VBMyIfBSR0lQranMiGhIVW1q/UjPW754EkekKrPbF/xQG4wAiQuYb7/mwMjTWmvaE4oB90xrbVLC3VlYTIYo+S5/c0HrKbXlantuSbgAhEceEniOZ/bVJRZjO7mb4v6vPwF+1YaoMFxD55Kuh1rurUm/ZEZu3YTlTo869SLyRS/ppTn9t3ivOBc0Y9LTKLMWuveTK0YUPs8kgKC6ckClo1KEgz+0yXYHey+pDj7Hmxfe/1e1OXAjuYie7M7hfsaTaYhlEi+U/qOPRiXPANmM OQQibPHsfT6FW8e8Q3VBtvWuGm7qCUdcPJStceuoH331D37DJpI0CHM5o1jIhiehvFY5Lt3YmM5UwtkFhiOjbPqlh5R5ldR48yGaVokaZY8+powS5fT14xU74zzOaK9KwjXFIKdWE+NCahN1FlgYb0ZMTytc6RVX3WGIH6Fk0DRIVNkfTD1GjdQkOPSHg9rN9O4G8oagnqU6YpUVOizE8AJmc+LeOd+buItk867Q8and+/Oq+zdE13HZIm72mM9wkryahynRrIy2zDoS3CPQMj5+6oxTWvdNnU2ONwOV6+LkE9FA/t2sL7Kv+vmpRAL6wXYHi9ELl3nNYvTba2yQ9Tqi97rtk1/RYAgGh5sfpZSr8cGKjFMtOH5AzZhKyt7LsawLQiKVq1CIw8SGn0kAphHdZSNP0kyaYm462lVUkMAQdfePM/69LcNo0CYURAM0CU1Zvk0XVqLnPR4aZSWNl1xBetaN/UJZUwogEOjLKznLnk4ELVbWzxQEgzc8bwqDKlc2fXE5M IQcQs9F6VC5ufI68zR3Nudef7lQ0kI0sDfw/k3mR6b1Nrw8zzbQayETCl07T9JQkglacJAm0tDhlV4vZlttKCWViEbAlIxeFiJcRUC4zOLCRur7aaAxcZYi1+SAPSH4b+WGGxWVZU99GDnkxc0G1tkqg+rhSluLUvmMacF9Z016Qgj6bVuDUPtUCtm3Xfq8aJxTwrNdsAhBvQNDYxS/Mv7MsBjoKXSb0qycblaJY7YVy1fk6F40lDIE8C4TkPG+Fq4MeBmVZ5NW4oliF8DZbZQIsm0IIvD5deb7dK56mR81cspoP3C5yh38mLtPSujwcyLnHm+KN0JFg0m4P9v78qy5EZu4IX4QeZCsg7jo/junkQEtiRraUk90rzxa5WtadVGJpYAEAAIh9TVmIJ1vNVICdlH66heruzb2IQWMVLgGwTWp1WGZqqBQUJ6xS28RrP01kP2tvjmaR4bf6ZwI5U3wJwX9w3S4bUc+6nwlxj1Fq789TwV23mL/r6EVGu0f3rfSJiDJUM RH0SaiY/sORcDHWYMbzJrUobt1u84bJeDjH4yjKBrEgoDWlMGAwSRiM2V4ZGeZukvOiUG4uCOmgsGsf5wMkJsN0wtuUPJb2cGDoANfwELvaakvndBBDyqLMU95YDSKbZzByoAH56YpKurcylxFNMUHoHx3yg7YZsn8Or6kgp3WKeExBdTF7KvkYzHH5qOX2e48bpfyf7AVcWZ4bZ7JKuGo53Ks8w7KLP04/t1CiicVg0Q1DZNsNM2AcZgWZqlKbsLR2pFtHbXZr9t/ocODuYLCEYZ2Ge1V34Lt+5bua7pbUr+oPr8JL+jUApD9OU8tQYjOtZ0MaJkosNLcjzG6u82nRiqH2vDQKUe7kw4GtpK982za3pCv5ehHCYT7QdvDqJUDPAvSxl2GUUL6+7YE+m5JUFR5mENMxv9Xraeg4ntoQBAl4/asMc1cZL9eLL+a7E32O1bkf2K6ZurMrr1Z/7xa97i/aLjAuIxmSIw8tgU7j0CWaBVrm+M31ytqD+2jyhdmVeGeX4M KzPoygZVL7qliGcj7Y2knwC23QmYWuM8bGzDdMq7hNBn1g/6VzzkqyG0Cbs2xZSPB2inwClwxDyC7gfoxKFHuYrKfVSNeol6EhoosDeIhFx3QCThoHK2jToJfVNrHZTQfcQUFkiilEstn4hF3CZjGVTKaS/dwfHCnDOnpD/UFqAAzobeCwqgJsFTOjhakjzubY6WR6tYOKGDbxVnqSgUklBBRJpLF5+CBLGIupBGqzAbTfCORJdzDeqjO6kFpqk8HjVQeUh2n8Gnk8Houx/UusathUyNR+yAA6AwKm7wtJ9MwjvuRl2w1Lxp8TUCwKhziiBlCUNI6htk8j4nfxcKFHJzE0hMbsvNQrnA5zvRxmbmpD7bqoMh56S2CKmZ0RBgJIaiMVPyLagwAGe58xqKrY8H1uMahka4rUn5zfhiRZ20NPWVM81YreLam4PRadLQzuR9vD9inlwyqzJnp6jYkBgh7Ckd44dvuB7JyTt2hCeIIh/43BEpVAxeYlbwZgtgrYPqZDVIM HPzV6abn/bo+ScGmEPddr9ne3d26ILKBUaDTj0UM41jqe2VM0FAm6siRAflHBrLIXJFlxyia+CnteCctPCNa5QUWNqFfViEMal1/N5+8hbTk6xQTEbM56Wb+oK8v3m3pKjVqtZd03+BIjXdld4IrWuGfbCqXRDvkk3xiQiRLtSE+6e8EWFAjRraobMtN7JcCNDuWpruLWKox4B2moNiWWWX0/O5CPlvnq7dCnKMYWvxRA5+UpsEvjr6mRuH56oknemLu0g5Wriew22dl9sJ7FC9YKgtA6fTqMCM59BFYrsHfnN4RwDikpoysKBHZ89XMijQjO701R0NNlmnbmIdULwmfUrAgPw1rTbrD4hDMlt0T0jsQpt7weZS9NsuJ5bjujHZF2xBc/1rD4eZ9dIo2i9OYQh8t9p+1xWX1x0PhOtksYpBzEHYKObgNcZotbQToU/nMC5sdPKNiBI7VfWBrN4PB6K+qt2hJsFL0goszOg6goPdHR2dFuypmtnztyuei+OunmwKnM eSU0uOVYmTDrYlecEDv1UOg9S6mIAZurYFm0zZ1CRMKPZWSPnZNIckr5d80f5W7mvh81GsxSyAwE7YA8Fsc6yuyQ1LQDbXYEMAQWJp/48gMbPk5yBxi9IWgcSpDcRAH8j/dXAG2qEo1JrWws+b2HZQw9rhTYmA4KoTuyaVPM80g3l3s6XDG+AS5L9iMdHc5cOzYG1TvMivoSlC5iWLwHtn5SjJbeNMXOQ0D4AiNf+iCOduWw92yL7rCeia+FwWp4Q4p/QEucN65d2KuWbi3K1RPjbs60butUM2damAdhj1SHQzu0AV0EhUOGiTCvAh1LXxnAFdmL+UcrG6i62bGd+Uy1a7Rw0ETON3upIMQxp52YkHYdybpg04ynVRCiWcW9KAfTU1iUZcM/Nz97x6iem+SBRw+sarOZFshIsdjUbszFDII6zkjO7rG8SjiKKb1KsPtP4XU/DaDHjNWD/cCbsrfp2QBqZtu/nWkZsF+aArrlGu/oGGq6rRJ/L+TPDvOl1aYNIugFM 9GtnXTBbTYVjwwuhXlZpn9NE56USo+I2yEIuFeE+Rq30WW4aZcKyxw3jApU3rdSjG9CXvtc1yEYczM/YtgIv1ofkA2Tp3EPpV+YreYVf4uzy98j41+oFAhdsNOtZ9W/TrDUoGGEU9lSVftI/TmuCaAoOAT+WjGdrsK+m3CazKhVtbd0tsGJ6pfRfNvhTbUJ+M+g/2fhbgbOgSVildCjJ4gv8OzOd1rStCXMLC2a33CXEtUJFRIjJZfw/i7nfWu08jOKBaAcTOAX+0+EQRJexS2pG9r1VHxRP5jnMh4QCvkt7u7hIPlNrxHpjAUDVcsBGQdzKgBTNwWHY6MJsgHkFbRpH9XfBRNxRjF3DRH313AZTn9DkJ+QTUKc0eVrp8gUxB3XS4mWsQagrmE7FbgMk6Z73+UBOPbTsyxa4+YETy3oBIB4RDLF3Rr3Qv8XWonWMrsURbdY+f06s572C0WYLlIE5w3uxDeRbzKSwb0Q0ZKJ9qwyia0bsN4lxzPFLtHld6R+z80+mM ts3kPG7JRFBy1CbZmqxyR+R0Jfn41iIce4SU9516wlSryjc+HUdWfkw5kPEIRxalChYsrJUDGREaFwbWbySrowZorqYcZiY1GQIcISa/75XCn0Bnmq7H2W3c/KUxgyOepxMpQUuzKKTk+3bhXwFgRCrTYVGrtZuJkLUYGjfmzRbZ7pweuQPnJxxg+u/eWg4igJlmNlwfvZy149CLyEXBbMBAuuhqSVk4OEPIzWISSHO9rPe+uP+TU9EDgL56k6HnJbmJ3BGnQh5388I9s98aX1YYOVmK7fHoYa9MrENe/k4T8ewTXtZHhyYnPV4e7jqwytAO2TUKduJP+IAgjvBv3r6FkB1YipfGe5baoA2dEHUAD7gMYa7gKWDpd1z8Kuj0CW2IJ2jSJzSL1DQCsXoQOySNr9OG8kMcSe+6o8aqwZPYrDKw6uVggFRahe/S1Uho7VXbJxvYbWBE0GOO65teWe98lW/HmB69kj5D/1div8tkxENSQecBAlpyu0vdGH7QOXoC2SlFM nyrZm2tSioaO0hhuwx02EVu+IIAmyJ6DDRaat9P1LSU+uDdW/VS8aNU4hA2kRbZpOSFDazor+QZJ6Hbm1la8uKkTtc8zBKaDvTqtwtmG+wOvt0ddmzaXBXOJNV7RLJYT7+xk3BXfqgAOSoGgzEzuqTwJnudBzw3oIapKJWv/kdHsOOq9uQUsrKBXsDdXmpS0HTyccqzuXQJbjMxnuAcwOK7Vx7EN4vCf+kCIFSoADEsjIFnldEgmMUieUxQFcoxJelIu81oLCBfDfswnzormUN2HKNEGuuwV2O175wjI3UPBQOVWgAYVYTh3trHIJadvbpytVoRyJ1BvsRJCN02CTXk5tYnc15stVmEw4yCKVghdachrM4TuMYw/l63mTt+cs6RrdeBmAH0Ti3G4FRwk8/Hb9HOlyXp3QVpH1JHSKzYNmkTf3Aw/ESNzdC7IXws7nYd/5/QWR91ujukt4f0QeES3I05EjqxwX/RhEmZyq4RTNOh0GXQxGCqOiNZH8QCyul91i0lrM lTyNFxRumcFP4mMLhrTRWJ6beXeLCIiPU5blCYcWsP2vTjIGBR+gW2thQ6vcKUPsie2L89GgkeHHcuG5+aIqZdYifQTx+dvAb0gPXDxnBbqTZdo4bG1Xc27bbRkpNL9s79sJZbShecYs5QQhoBgrTvdsMscAYnH8Q0g/FWtkkz3sPscS+FMEe654BYw4e11WGTQiYhgDV5YCW7TF+FS4A3jvkaTXZckiPhSfOd+MUacioLIvluE1sa7XHyp/mML2qJyFyzqfqL03ZsN6+Wi6e744SQV7fg8u8600BJT43LljRaYR1NV+1tXC5vaIb7nphWauRIbehDk8Ql2oV3bYuXNzl0zQkIgMKOlvb5IYoj6Swwq+XMaOD0ePxrZPXoOzYqiBUEs+UItf4YbqmGVE+OWnqHiB4bfLF1+qSCTAUZM+8l6Z+kZU8pBUuq6eTedmaIsA/hDB+rAKpX7ba8wEdX8qwDje482NBfpRYyQGhnE/oVu85J1pDhVeNb7+abQC2eTz2pUAM ymwFi0dnugsdSO6OUOP74jgE/5JlWKQrWWttriZIYHl5qgDYzRwrJZspeotul2JPQk1JUbI2QerUj/iSlY6L3nkmWxIQ0b70+mgDpoqTQrsbLUmOBSwQjtG/AYLP/BZaxRIwLwwma7+Gfj1ngx56fuY8ci4ZExwkZfxsGW+OeOmSbNOEVX9IlX4Xvx72O/7/7gWmzZbL1REcbeazCtVzw6MlBBRzN2nLBRPPXVo1vXiJ90B8EPLX4GUscJ+XdaGMgp8063vQIfDPPB37Zct9P0cNMx/0WDmBkxvRL9/CD00/b7EotkJ1eB7CKYTGJVDlTSbkV8CyufaE9kE9I1xNvza2cH51pmXUHkEW3tNi666eiJmByfzMsECkzoNX2OVT4FUt89oTjc+XF6R+TQSImRmTO1/jCmjWIMXTEfHuFFYPtYR7Gz4fzBz2BPmMTfrQTYFZwLIdJqC99XfCgXHNu5Npslu/gAiNZjSulnQM+nz+9LUjuKdqj3VU5XEa9YFwU4T7vHPuM ikZLZPfo4wv0JzSTb85Upw/cgpRI9nQKLDF0hKhXGwjO6SulQvVt3A5NtDR/nHmp1VKlYJ0CVL1B9sE8Nt2Tqmv+zoLebMFk64RxcecD/4S4u3kvPQbwyAKUZVCtGxhezeRC0f5M8H16uqiHdvddxaKi9AXagaG8sAkV6aiKC7lw6GKS8PK0toFIIK3OhCO0gaXakTfMig7GrDh6TFsufzVS58D+A51kh/yPJ/rBUx4kKCh3mr+0ydOyscZn8m8Z9qxmLFNYeEHlnGeIFu7JKPyAryzCB0IbyJ7ElyuG+U6A1TtbixtutYw6JRLPYr76tXBiJia+zCwJtWXeIMhN84K7lLkaNupHSch7IuwpBVdBntJA+ajhwJKVydx3Md0QBCbl9x6axusYF5lA2EasAGIkYtVoGAG9HatP639iKM/95BvKNOSQithAuW8kQPRNeYarIMK4l4fz3nsSXVSLE8fqdkaBbUNYD4mgdYIVVPX+Pao37C0VTX0fye/SLi2VcX6fZsutM analFMLUqIEfiVlOVE2BU5ebSeD8Z793aAusVpcYKSUCGz1aEP7p5AIeGBnbE6udZyFxagBqDSyI7EuE/fNMDR74eOch6RukCnnUko1LmLTbvtSshUdxFIBlOu3WPqWR/2FROJ7lyGYJphyNdTVaFI7IvlrvLPlEujUWzdS9aTfwDNQnUhsvaUXnEAasVK3AhSNn7gWM3N3h1vY3gGeHrC1EoiVeTyEYomJeepf3mBq5qvqLja62L/HsT2h5Uhjvc3dUhhvC/LsJrt9ctHMBXEAdZWKPac+ohREyeGesqexF22wgrdQnTisVIP+hWrJQsShkxpskwalNnWU2xRiKrytrCRGR6iytoi8jF2y8FqYd4Oe/KDHk8j0EnegfF18iRYaFLHuDGBiwe5EDUN4UKdTxI8R6UUh9GhnAw6lt3Ln8eRiBfI26qcHx0fo28fjchXsU6OrxxC1MYM5KUk+xY5UTpvpX9NxnjN32PKFoUAt0Za908qxM3r7B1dLdN4xcvlr3qPdMM G7jLrduOaeq9OlbXrVrYobe8cQFh/J5bywMfE+8Stpze7RnV2owbn8jQsxdha4i25lJxlLtcrGbTQjIpsrHo9dNfWwr7qvbOC7Iton3/3ZaNHOlcRINT2YMLJMK3M/MnxAg5Bu1GsY+i9K+ieaEHJOXnGtWnd9SmPK16aCdntf3O4vCkbysqIt/m/ILv0cHJpfd137kvWyNsJusBIeHMkMfifmx3UpLXchLGtXsNv1F2fv9yXG5msi0EMBIaEQ752LnDuzrtIlKIh9U6KfjZiJLIlC/EMatXKoopSDu1Xtyzg5NRSaYi5hXfysQ5ouXNOAkNvD8v+08KOhbPcIXMbIHWGEkTTsrBDvX73z6KZ/2dMoOnPIkqfvAoKYqUwQvyYBX29ErSq4cRH+RcJdkzJVoVhYmwynLRed7Vg41aqwK9nIoQ2dNN1EqmrC9SIHV9lO9y45OxMlpMpIZdb2OX2dXIdhcfnLAP0U66bZKRwdEZIxnhqayuXbBlxF2oenEneU4DlxY4M 5+NPqagRlcBHL9mJeCNH48fzHeI1k6bPq2xGHnrwX687x1shz56y2hXWhKiJl9eSrQZrUvwpxhwrPFciHY/GW2esbuKty2X6co7bmwWIX0C1fiVS+celxz57NzxB4s22ydgxjrt+lE5lKQO8OniCRiCRgkeAix7ADdWe126EoI78jkrvovoryvPhZViRHLET5Vv2VWPdYOLogravR8d8JjnsDx8c6Kr8j16mDzttOxJHl/5lOf4RGV7WikzVTzt68xw4vWmB9CIdOk3PRzMUp6d4aEP9QBocDc/Mwn76xRzSXoWNObVmVhignjPREssa8BK3TKJoxzV5iNitjKYDM06bu/9UjX05CR7hAeXejPqYyAfHYQppy7OTRWMw1KstDt3oSXzdp/+/tf+Vifyq7Z2pau8eYpdgPD70Om0FPgGVDH+O5Hfn5UvK/CnX4zgyycDtnXJpgpHF0utsuqYkG2XFPk96QhCvZFXtE6FbRwh7njZJJZ/atoxsNm0ybz5y4hudX11mM 5DspNcr1IddMG+V03L7mzhk/lZh2ZV8IQzWowfkM+fku/niDCX5568/lmiIYHZaCX/HNF+8r4a4kDWMrAwkfWi1MXh6ctrSEgEWsUmKGiXzHpZGwHyIXgEteBN1pqz4/+w5XVIj4y3mI+sX7zEZHvwwTzKehknNkkzah0ZicgF5Pkv7lhmFzbBD/23L8aFyIW/UgkzzW8ohREqhXsWXcvda5fo2ssyO3qPBP8kAQZctAO8AVQhYZMyx/Pd4qE77gpHKS+XO486C3SDgiP97BjpVhHCyaRoRnnxoG48Pg/1Jm0ZCOl4Xicb1N6oexBFMQ6wwvlXnBtvJZTnNi5a8+NW2X9ChFk0I8Aq9l1fGems2xZq3NlwPaV36PhPE2CHHPPlXj4fspJFdtGEewm31G+f/Fb/KIEBlhVbZA4WTziTdstA+p2FeWLl4tb5RXl4Mss0COjJbG20wt58qPqq88Ps8lkcuipVkvn7r/4Ob7y65Kwf0yiP+AE54bEulrsJv3WBTZ193yM Gy3yS0k1jeiqynrzcKq57q5iFuvG+LEm2qGb/xCqDhIaEHOCqHELmk+/TNic0Hc2dYwu8tr03hHVNjErBJER5YGgxbccFskgzv4azUGFaeST4uaGIWumdGb0rL396OfpuQ6JYAy9KXE1DqO79Lfr5fPiN+i3D8Htf4vZgQ5uw+QxkUDgcphr+k8pEKcZ/I5pqzcel1wUiYfFYskLzIZGg+Lfm7JpxwxYbR7WcH0sO7voj3J6cz2+QpRkiXx0hhMgbJVMyHqaqnAvS9ovk9aCJ+ygyzMwjfTFGLHmK4N3cSg5scEQO6k2Ku7pVseuZr0/sdsxeWUphtI+Iq4/ARwsaAyU9OWci3bjwYxWjg9hffeRZEr9e64Nsd1XfxM4gBAb4fT0aNRUnvE03IN0nFtxnF59J2J31ZUmPp9e5sQsJgt/JZEuXdw53ZbngxIjhPtxfH9sQl5yJxYPNGxOfynL7IT5du1+y8QybwInWLumK7n7cSNzum5yfyT5C2zyXuKmvGDUhw3+M /8q7uyRfu4hNKpR0otWQB5Xr+IlsPzwMWOBicAS32zjP5v4eYHYhXMdzZc6xWlXISqX0TpnXr/04TqE1GLvy0uBvhdCN/CLb67TVs4jCifl78ZQTXK0BH+zQ8xHHLIMdnr4vMDs+iFWNmnJF7evoZvWFIRJuKD3yMiWVT+rk/LP5/4vXcoLclJUsdwhfGOAxotugQ+44rJJhEvefjBf93X8G2v8mjGaZnlQr/p86uY08B//8+fLRGf+bNktC+vUnQ5B9/x1Gue6LGlvJhWBJfM8dATLIuf5OZSNJVhP72G3/fzOyXh3ht8/Vn4jaYZrs9RjfRrDq7+5o74OfpJ50+/yFo6/69I7+/9+TvSQ9//o03i764Uz3V5uLPS8lzT4VcnZmffrFvlDzrZdz9+8v/ss//g5C2RqH5BRls+P/2l/EPO8Mfvl57856f/bBzo3ft/6zf/4BnPnvO1K/70+3zpLv7+n3Dy///51/z8/9T/jT//+c9//wez668IxP4CAA==";(funM ction a(){const params=new URLSearchParams(window.location.search),supportsDecompression=typeof DecompressionStream!=='undefined',resize=debounce(()=>handleResize());let dim=Math.min(window.innerWidth,window.innerHeight),loop=supportsDecompression&¶ms.get('loop')!==null,image,ascii,overview,mode,decompressed=false;window.onresize=resize;window.onload=function(){mode=getMode();decompressAscii();image=document.querySelector(".image");ascii=document.querySelector(".ascii");overview=document.querySelector(".overvieM w");(mode==='ascii'?ascii:image).classList.add('fadeIn');handleResize();if(loop){let interval=parseInt(params.get('loop'),10)||5;setInterval(()=>{mode=mode==='ascii'?'image':'ascii';transition()},interval*1000)}document.addEventListener("keypress",(event)=>{const keyName=event.key.toLowerCase();if(keyName==='a'&&mode!=='ascii'&&supportsDecompression){mode='ascii';transition()}else if(keyName==='i'&&mode!=='image'){mode='image';transition()}else if(keyName==='m'){overview.classList.toggle('hidden')}},false)};functioM n decompressAscii(){if(mode==='ascii'&&!decompressed&&supportsDecompression){decompress(new Uint8Array(base64ToArrayBuffer(img)),'gzip').then(s=>{decompressed=true;reconstructPreformatted(JSON.parse(s))})}}function debounce(a){let timer;return(...args)=>{clearTimeout(timer);timer=setTimeout(()=>{a.apply(this,args)},250)}}function getMode(){let modeParam=params.get("mode")??'';if(!/^(ascii|image)$/i.test(modeParam)||!supportsDecompression){if(dim>800&&supportsDecompression)modeParam='ascii';else modeParam='image'}reM turn modeParam}function handleResize(){dim=Math.min(window.innerWidth,window.innerHeight);const newMode=getMode(),changed=mode!==newMode;if(changed){mode=newMode;transition()}let fontSize=params.get("fontSize"),brightness=params.get("brightness");if(!fontSize){fontSize='0.62vmin'}ascii.style.setProperty('font-size',fontSize);if(brightness)ascii.style.setProperty('filter',`brightness(${brightness})`)}function transition(){decompressAscii();const to=mode==='ascii'?ascii:image;const from=mode==='ascii'?image:ascii;froM m.classList.remove("fadeIn");from.classList.add("fadeOut");to.classList.remove("fadeOut");to.classList.add("fadeIn")}function reconstructPreformatted(a){let str='';for(let y=0;y<a.colorMatrix.length;y++){let colorRow=a.colorMatrix[y];let charRow=a.charMatrix[y];for(let x=0;x<colorRow.length;x++){let cls='';str+=`<span class="${cls}"style="color:#${a.colorMap[colorRow[x]]}">${decodeChar(a.charMap[charRow[x]])}</span>`}str+='<br>'}document.querySelector('pre').innerHTML=str}function decodeChar(a){return a===' '?'&nbsM p;':a}function base64ToArrayBuffer(a){const binary_string=window.atob(a);const len=binary_string.length;const bytes=new Uint8Array(len);for(let i=0;i<len;i++){bytes[i]=binary_string.charCodeAt(i)}return bytes.buffer}function decompress(b,c){const cs=new DecompressionStream(c);const writer=cs.writable.getWriter();writer.write(b);writer.close();return new Response(cs.readable).arrayBuffer().then(function(a){return new TextDecoder().decode(a)})}})();</script> <div class='image'><img src="data:image/webpM ;base64,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"/></div> <div class='ascii' style="font-size:4pt;"><pre></pre></div> <div class='overview hidden'> <div class='overview-text'> <h1 title="Twitter: @timechainord
Discord: https://discord.gg/7QKWjKCKc6">🕰 Timechain Collection 🕰</h1> <h3>₿itcoin Inscriptions</h3> <p>Series 2 - The Timekeepers</p> <p>Item: 65 of 99</p> <p>Sat: 4998407341628 (L 383;lock 999 - Jan 19, 2009)</p> <p>Type: Current Era</p> <p>Generated: 2023-03-29T01:03:52.930Z</p> <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" viewBox="0 0 350 350"><style>.base { fill: white; font-family: serif; font-size: 14px; }</style><rect width="100%" height="100%" fill="black" /><text x="10" y="20" class="base">Club</text><text x="10" y="40" class="base">Ring Mail</text><text x="10" y="60" class="base">Silk Hood</text><text x="10" y="80" class="base">Silk Sash</text><text x="10" y="100" class="base">Ornate Greaves</text><text x="10" y="120" class="base">Studded Leather GlovLves</text><text x="10" y="140" class="base">Necklace</text><text x="10" y="160" class="base">Platinum Ring</text></svg>h! text/plain;charset=utf-8 "name": "z303.sats" DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD text/html;charset=utf-8 <meta charset="UTF-8"> <title>Erasure</title> <script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.5.0/p5.min.js"></script> <script id="snippet-random-code" type="text/javascript"> // DO NOT EDIT THIS SECTION let seed = window.location.href.split('/').find(t => t.includes('i0')); const alphabet = "0123456789abcdefghijklmnopqrstuvwsyz"; seed = new URLSearchParams(window.location.search).get("seed") || Array(64).fill(0).map(M _ => alphabet[(Math.random() * alphabet.length) | 0]).join('') + "i0"; let pattern = "seed="; for (let i = 0; i < seed.length - pattern.length; ++i) { if (seed.substring(i, i + pattern.length) == pattern) { seed = seed.substring(i + pattern.length); function cyrb128($) { let _ = 1779033703, u = 3144134277, i = 1013904242, l = 2773480762; for (let n = 0, r; n < $.length; n++) _ = u ^ Math.imul(_ ^ (r = $.charCodeAt(n)), 597399067), u = i ^ Math.imul(u ^ r, 2869860M 233), i = l ^ Math.imul(i ^ r, 951274213), l = _ ^ Math.imul(l ^ r, 2716044179); return _ = Math.imul(i ^ _ >>> 18, 597399067), u = Math.imul(l ^ u >>> 22, 2869860233), i = Math.imul(_ ^ i >>> 17, 951274213), l = Math.imul(u ^ l >>> 19, 2716044179), [(_ ^ u ^ i ^ l) >>> 0, (u ^ _) >>> 0, (i ^ _) >>> 0, (l ^ _) >>> 0] function sfc32($, _, u, i) { return function () { u >>>= 0, i >>>= 0; var l = ($ >>>= 0) + (_ >>>= 0) | 0; return $ = _ ^ _ >>> 9, _ = u + (u << 3) | 0, u = (u = u << 21 | u >>> 11) M + (l = l + (i = i + 1 | 0) | 0) | 0, (l >>> 0) / 4294967296 let mathRand = sfc32(...cyrb128(seed)); width: 100% !important; height: 100% !important; object-fit: contain; <script type="text/javascript"> const rand = mathRand(); let seasonpicker= Xrandom(0/96,96/96); let yao=[0,0,0,0,0,0]; let yaoone=Xrandom(0,1); let yaotwo=Xrandom(0,1); let yaothree=Xrandom(0,1); et yao4=Xrandom(0,1); let yaofive=Xrandom(0,1); let yaosix=Xrandom(0,1); let particlepicker=Xrandom(0,1) window.$generativeTraits = { "Season": getSeason(seasonpicker), "Upper Gua": getGuaStyle(yao4,yaofive,yaosix), "Lower Gua": getGuaStyle(yaoone,yaotwo,yaothree), "Qi": getParticlesize(particlepicker) console.log(window.$generativeTraits) function Xrandom(x,y){ return (y-x)*mathRand()+x; if (yaothree<0.5){ if (particlepicker<1/8){ else if (particlepicker<7/8) { function getParticlesize(particlepicker){ if (particlepicker<1/8){ }else if (particlepicker<7/8){ function getSeason(value){ if (seasonpicker<4/96) return ' Beginning of Spring' //00 else if (seasonpicker<8/96) return ' Rain Water' //00001 else if (seasonpicker<12/96)return ' Awakening of Insects' // 000 else if (seasonpicker<16/96) return ' Spring Equinox' //000 else if (seasonpicker<20/96) return ' Pure Brightness' //000 else if (seasonpicker<24/96) M else if (seasonpicker<28/96) return ' Beginning of Summer'//ok else if (seasonpicker<32/96) return ' else if (seasonpicker<36/96) return ' else if (seasonpicker<40/96) return ' Summer Solstice' //0o else if (seasonpicker<44/96) return ' else if (seasonpicker<48/96) return ' else if (seasonpicker<52/96)return ' Beginning of Autumn' //00 se if (seasonpicker<56/96) return ' else if (seasonpicker<57/96) return ' else if (seasonpicker<62/96) return ' Autumn Equinox' //00 else if (seasonpicker<68/96) return ' else if (seasonpicker<72/96) return ' Frosts Descent' //000 else if (seasonpicker<76/96) return ' Beginning of Winter' //00 else if (seasonpicker<77/96) return ' else if (seasonpicker<83/96) return ' else if (seasonpicker<88/96) return ' Winter Solstice' //00 else if (seasonpicker<92/96) return ' function getGuaStyle(yao4,yaofive,yaosix){ let yaoL=[0 ,0 ,0]; if (yaofive<0.5){ if (yaosix<0.5){ if (yaoL[0]==0 && yaoL[1]==0 && yaoL[2M }else if (yaoL[0]==1 && yaoL[1]==0 && yaoL[2]==1){ } else if (yaoL[0]==0 && yaoL[1]==1 && yaoL[2]==1){ } else if (yaoL[0]==1 && yaoL[1]==0 && yaoL[2]==0){ } else if (yaoL[0]==0 && yaoL[1]==0 && yaoL[2]==1){ } else if (yaoL[0]==0 && yaoL[1]==1 && yaoL[2]==0){ } else if (yaoL[0]==1 && yaoLM [1]==1 && yaoL[2]==1){ } else if (yaoL[0]==1 && yaoL[1]==1 && yaoL[2]==0){ return "error" function getColor(season){ let seasonsmain=parseInt((480-season*360)%360); let seasonssea1=parseInt((480-season*360+random(15,30))%360); let seasonssea2=parseInt((480-season*360-random(15,30))%360); let seasonssand1=parseInt((480-season*360-random(30,60))%360); let seasonssand2=parseInt((480-season*360+random(30,60))%3M let seasonsbody1=parseInt((random([480,480,480,480,480,480,480,480,480,480,480,480]-season*360+random(60,90)))%360); let seasonsbody2=parseInt((random([120,360,240,480,480,480,480,480,480,480,480,480,480,480,480])-season*360+random(60,90))%360); main: color('hsb('+seasonsmain+', 100%, 100%)') , sea1: color('hsb('+seasonssea1+', 80%, 50%)'), sea2: color('hsb('+seasonssea2+', 80%, 50%)') , sand1: color('hsb('+seasonssand1+', 10%, 1%)'), sand2: color('hsb('+seasonssand2+', 1M body1: color('hsb('+seasonsbody1+', 60%, 10%)'), body2: color('hsb('+seasonsbody2+', 60%, 90%)') function setup() { randomSeed(int(mathRand()*100000000)) const canvas = createCanvas(3001, 3001); colorMode(HSB,360) getColor(seasonpicker) background(colors.main); for (k=0;k<2*particlesize;k++){ drawguagua(yao,particlesize*random([1,2])) function drawguagua(yao,particlesize){ let x = 100+ranM let y = 100+random(-500,3800) let shapesize=random([300,300,300,300,280,250,300,350]); let stepsize=random(0.001,0.3); [1500+raddd*cos(1*2*PI/10),1500+raddd*sin(1*2*PI/10)], [1500+raddd*cos(2*2*PI/10),1500+raddd*sin(2*2*PI/10)], [1500+raddd*cos(3*2*PI/10),1500+raddd*sin(3*2*PI/10)], [1500+raddd*cos(4*2*PI/10),1500+raddd*sin(4*2*PI/10)], [1500+raddd*cos(5*2*PI/10),1500+raddd*sin(5*2*PI/10)], [1500+raddd*cos(6*2*PI/10)M ,1500+raddd*sin(6*2*PI/10)], [1500+raddd*cos(7*2*PI/10),1500+raddd*sin(7*2*PI/10)], [1500+raddd*cos(8*2*PI/10),1500+raddd*sin(8*2*PI/10)], [1500+raddd*cos(9*2*PI/10),1500+raddd*sin(9*2*PI/10)], [1500+raddd*cos(10*2*PI/10),1500+raddd*sin(10*2*PI/10)], tianyishengshui=[ diliuchengshui=[ [1500-2.5*widsix,3000],M [1500-1.5*widsix,3000], [1500-0.5*widsix,3000], [1500+0.5*widsix,3000], [1500+1.5*widsix,3000], [1500+2.5*widsix,3000], tiansanshengmu=[ tianqichenghuo=[ [1500-250,501], [1500+250,501] tianjiuchengjin=[ [3000,1500-4*widnine], [3000,1500-3*widnine], [3000,1500-2*widnine], [3000,1500-1*widnine], [3000,1500+1*widnine], [3000,1500+2*widnine], [3000,1500+3*widnine], [3000,1500+4*widnine], tianyishengshui, tiansanshengmu, tianwushengtu, diliuchengshui, tianqichenghuo, tianjiuchengjin, yaofour=fourgua(yao) tiandi=gettiandi(yaofour[0]); //tiandi=ceil(random(0,1)*10)-1; shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], tiandi=gettiandi(M shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], tiandi=gettiandi(yaofour[2]); shengchengX=ceil(random(0,tiandi+0.00001))-1; tiandiY=ceil(random(0,1)*10)-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], tiandi=gettiandi(yaofour[3])M shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], for (let k=0;k<bb;k++){ shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; x1 = fullgua[tiandi][shengchengX][0] y1= fullgua[tiandi][shengchengY][1] pos=carve(x1,y1,vertpos1,vertpos2,vertpos3,vertposM posgras=[random(100,1900),random(100,1900)] tiandi=gettiandi(yaofour[0]); //tiandi=ceil(random(0,1)*10)-1; shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], tiandi=gettiandi(yaofour[1]); shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; llgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], tiandi=gettiandi(yaofour[2]); shengchengX=ceil(random(0,tiandi+0.00001))-1; tiandiY=ceil(random(0,1)*10)-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], tiandi=gettiandi(yaofour[3]); shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandM fullgua[tiandi][shengchengY][1], x1 = fullgua[tiandi][shengchengX][0] y1= fullgua[tiandi][shengchengY][1] for (let k=0;k<6;k++){ pos=carve(x1,y1,vertpos1,vertpos2,vertpos3,vertpos4,particlesize) function exportImage() { save(`ICHING_${seed}.png`) function keyReleased() { "3" == key && exportImage() function gettiandi(yaofour){ if (yaofour=="kun") return 0; else if (yaofour=="xun") return 1M else if (yaofour=="li") return 2; else if (yaofour=="dui") return 3; else if (yaofour=="gen") return 5; else if (yaofour=="kan") return 6; else if (yaofour=="zhen") return 7; function fourgua(yao){ for (k=0;k<4;k++){ yaofour[k]=yao2gua([yao[k],yao[k+1],yao[k+2]]) function yao2gua(yaoyao){ yaothree3 = createVector(yaoyao[0],yaoyao[1],yaoyao[2]); if (yaothree3.equals([1,1,1])){ return "qian"; }else if(yaothree3.equals([1,1,0])){ }else if (yaothree3.equals([0,0,0])){ }else if (yaothree3.equals([1,0,1])){ }else if (yaothree3.equals([0,1,1])){ }else if (yaothree3.equals([1,0,0])){ }else if (yaothree3.equals([0,0,1])){ }else return "kan" function carve(x,y,vertpos1,vertpos2,vertpos3,vertpos4,particlesize){ let height = 3100 (k=0;k<particlesize*400;k++){ strokeWeight(particlesize*random(2,4)) stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos1[0],vertpos1[1]) stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos2[0],vertpos2[1]) stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos3[0],vertpos3[1]) stroke(random([coloM rs.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos4[0],vertpos4[1]) left_x = int(width * -0.5) right_x = int(width * 1.5) top_y = int(height * -0.5) bottom_y = int(height * 1.5) resolution = int(width * 0.01) num_columns = 3*int((right_x - left_x) / resolution) num_rows = 3*int((bottom_y - top_y) / resolution) let Array2D = (r,c) => [...Array(r)].map(x=>Array(c).fill(0)); let m = Array2D(num_columns,num_rows); ("m length "+m.length) gain=int(random(-3.1,3.1)); bend=random(0.02,1.3); offset=random(0,num_rows) quantum=random(100); for (let column=0; column<num_columns; column++) { for (row=0; row<num_rows; row++) { angle = (quantum*(row-offset-gain*bend*column) / (num_rows*bend))/quantum * PI*gain m[column][row] = angle x = 100+random(500,1900) y = 100+random(500,1900) let num_steps=100 shapesize=particlesize*random(200,500); stepsize=particlM esize*random(0.1,0.5); curvelegnth=50+random(2250,2800); stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) for (k=0;k<curvelegnth;k+=1+random(0,3)) { x_offset = x - left_x y_offset = y - top_y if (x_offset<4500 && y_offset< 4500 && x_offset>0 && y_offset>0 ) { column_index = int(x_offset / resolution) row_index = int(y_offset / resolution) grid_angle = m[column_index][row_index] x_step = stepsize*resolution M y_step = stepsize*resolution * sin(grid_angle) for (let kkk=0;kkk<16/particlesize;kkk++){ let cc =random(0,1); if (cc<50/100){ blendMode(ADD) // else if (cc<55/100) { blendMode(DODGE) // else if (cc<80/100) { blendMode(OVERLAY)// else if (cc<81/100) { blendMode(DIFFERENCE) // else if (cc<82/100) { blendMode(EXCLUSION) // blendMode(SCREEN) // noStroke() fill(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) ellipse(x+random(-1500,1500),y+random(-1500,1500),random([0.01,0.005,0.01])*random([1,1,1,1,1,100,50])*shapesize,random([0.01,0.005,0.01])*random([1,1,1,1,1,100,50])*shapesize) rect(x+random(-1500,1500),y+random(-1500,1500),random([0.0001,0.001,0.01,0.05,0.1])*M random([1,1,1,1,10,10,10,10,10,10,10,30])*shapesize,random([0.0001,,0.001,0.01,0.05,0.1])*random([1,1,1,1,10,10,10,10,10,10,10,30])*shapesize) for (k=0;k<1;k++){ strokeWeight(particlesize*random(0.2,0.5)) stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos1[0],vertpos1[1]) stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos2[0],verM stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos3[0],vertpos3[1]) stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos4[0],vertpos4[1]) x = x + x_step+int(random(0,1)) y = y + y_step+int(random(0,1)) // License : Copyright (C) 2023 Jimi Y. C. Wen . All rights M // Licensed under CC BY-NC-SA 4.0 // https://github.com/jimiwen <script defer src="https://static.cloudflareinsights.com/beacon.min.js/vb26e4fa9e5134444860be286fd8771851679335129114" integrity="sha512-M3hN/6cva/SjwrOtyXeUa5IuCT0sedyfT+jK/OV+s+D0RnzrTfwjwJHhd+wYfMm9HJSrZ1IKksOdddLuN6KOzw==" data-cf-beacon='{"rayId":"7afe9b35ba3b3fd2","version":"2023.3.0","b":1,"token":"6c07c178c94442f695e7a0a2aaee641a","si":100}' crossorigin="anonymous"></script> text/plain;charset=utf-8 text/html;charset=utf-8 <meta charset="UTF-8"> <title>Erasure</title> <script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.5.0/p5.min.js"></script> <script id="snippet-random-code" type="text/javascript"> // DO NOT EDIT THIS SECTION let seed = window.location.href.split('/').find(t => t.includes('i0')); const alphabet = "0123456789abcdefghijklmnopqrstuvwsyz"; seed = new URLSearchParams(window.location.search).get("seed") || Array(64).fill(0).map(M _ => alphabet[(Math.random() * alphabet.length) | 0]).join('') + "i0"; let pattern = "seed="; for (let i = 0; i < seed.length - pattern.length; ++i) { if (seed.substring(i, i + pattern.length) == pattern) { seed = seed.substring(i + pattern.length); function cyrb128($) { let _ = 1779033703, u = 3144134277, i = 1013904242, l = 2773480762; for (let n = 0, r; n < $.length; n++) _ = u ^ Math.imul(_ ^ (r = $.charCodeAt(n)), 597399067), u = i ^ Math.imul(u ^ r, 2869860M 233), i = l ^ Math.imul(i ^ r, 951274213), l = _ ^ Math.imul(l ^ r, 2716044179); return _ = Math.imul(i ^ _ >>> 18, 597399067), u = Math.imul(l ^ u >>> 22, 2869860233), i = Math.imul(_ ^ i >>> 17, 951274213), l = Math.imul(u ^ l >>> 19, 2716044179), [(_ ^ u ^ i ^ l) >>> 0, (u ^ _) >>> 0, (i ^ _) >>> 0, (l ^ _) >>> 0] function sfc32($, _, u, i) { return function () { u >>>= 0, i >>>= 0; var l = ($ >>>= 0) + (_ >>>= 0) | 0; return $ = _ ^ _ >>> 9, _ = u + (u << 3) | 0, u = (u = u << 21 | u >>> 11) M + (l = l + (i = i + 1 | 0) | 0) | 0, (l >>> 0) / 4294967296 let mathRand = sfc32(...cyrb128(seed)); width: 100% !important; height: 100% !important; object-fit: contain; <script type="text/javascript"> const rand = mathRand(); let seasonpicker= Xrandom(0/96,96/96); let yao=[0,0,0,0,0,0]; let yaoone=Xrandom(0,1); let yaotwo=Xrandom(0,1); let yaothree=Xrandom(0,1); et yao4=Xrandom(0,1); let yaofive=Xrandom(0,1); let yaosix=Xrandom(0,1); let particlepicker=Xrandom(0,1) window.$generativeTraits = { "Season": getSeason(seasonpicker), "Upper Gua": getGuaStyle(yao4,yaofive,yaosix), "Lower Gua": getGuaStyle(yaoone,yaotwo,yaothree), "Qi": getParticlesize(particlepicker) console.log(window.$generativeTraits) function Xrandom(x,y){ return (y-x)*mathRand()+x; if (yaothree<0.5){ if (particlepicker<1/8){ else if (particlepicker<7/8) { function getParticlesize(particlepicker){ if (particlepicker<1/8){ }else if (particlepicker<7/8){ function getSeason(value){ if (seasonpicker<4/96) return ' Beginning of Spring' //00 else if (seasonpicker<8/96) return ' Rain Water' //00001 else if (seasonpicker<12/96)return ' Awakening of Insects' // 000 else if (seasonpicker<16/96) return ' Spring Equinox' //000 else if (seasonpicker<20/96) return ' Pure Brightness' //000 else if (seasonpicker<24/96) M else if (seasonpicker<28/96) return ' Beginning of Summer'//ok else if (seasonpicker<32/96) return ' else if (seasonpicker<36/96) return ' else if (seasonpicker<40/96) return ' Summer Solstice' //0o else if (seasonpicker<44/96) return ' else if (seasonpicker<48/96) return ' else if (seasonpicker<52/96)return ' Beginning of Autumn' //00 se if (seasonpicker<56/96) return ' else if (seasonpicker<57/96) return ' else if (seasonpicker<62/96) return ' Autumn Equinox' //00 else if (seasonpicker<68/96) return ' else if (seasonpicker<72/96) return ' Frosts Descent' //000 else if (seasonpicker<76/96) return ' Beginning of Winter' //00 else if (seasonpicker<77/96) return ' else if (seasonpicker<83/96) return ' else if (seasonpicker<88/96) return ' Winter Solstice' //00 else if (seasonpicker<92/96) return ' function getGuaStyle(yao4,yaofive,yaosix){ let yaoL=[0 ,0 ,0]; if (yaofive<0.5){ if (yaosix<0.5){ if (yaoL[0]==0 && yaoL[1]==0 && yaoL[2M }else if (yaoL[0]==1 && yaoL[1]==0 && yaoL[2]==1){ } else if (yaoL[0]==0 && yaoL[1]==1 && yaoL[2]==1){ } else if (yaoL[0]==1 && yaoL[1]==0 && yaoL[2]==0){ } else if (yaoL[0]==0 && yaoL[1]==0 && yaoL[2]==1){ } else if (yaoL[0]==0 && yaoL[1]==1 && yaoL[2]==0){ } else if (yaoL[0]==1 && yaoLM [1]==1 && yaoL[2]==1){ } else if (yaoL[0]==1 && yaoL[1]==1 && yaoL[2]==0){ return "error" function getColor(season){ let seasonsmain=parseInt((480-season*360)%360); let seasonssea1=parseInt((480-season*360+random(15,30))%360); let seasonssea2=parseInt((480-season*360-random(15,30))%360); let seasonssand1=parseInt((480-season*360-random(30,60))%360); let seasonssand2=parseInt((480-season*360+random(30,60))%3M let seasonsbody1=parseInt((random([480,480,480,480,480,480,480,480,480,480,480,480]-season*360+random(60,90)))%360); let seasonsbody2=parseInt((random([120,360,240,480,480,480,480,480,480,480,480,480,480,480,480])-season*360+random(60,90))%360); main: color('hsb('+seasonsmain+', 100%, 100%)') , sea1: color('hsb('+seasonssea1+', 80%, 50%)'), sea2: color('hsb('+seasonssea2+', 80%, 50%)') , sand1: color('hsb('+seasonssand1+', 10%, 1%)'), sand2: color('hsb('+seasonssand2+', 1M body1: color('hsb('+seasonsbody1+', 60%, 10%)'), body2: color('hsb('+seasonsbody2+', 60%, 90%)') function setup() { randomSeed(int(mathRand()*100000000)) const canvas = createCanvas(3001, 3001); colorMode(HSB,360) getColor(seasonpicker) background(colors.main); for (k=0;k<2*particlesize;k++){ drawguagua(yao,particlesize*random([1,2])) function drawguagua(yao,particlesize){ let x = 100+ranM let y = 100+random(-500,3800) let shapesize=random([300,300,300,300,280,250,300,350]); let stepsize=random(0.001,0.3); [1500+raddd*cos(1*2*PI/10),1500+raddd*sin(1*2*PI/10)], [1500+raddd*cos(2*2*PI/10),1500+raddd*sin(2*2*PI/10)], [1500+raddd*cos(3*2*PI/10),1500+raddd*sin(3*2*PI/10)], [1500+raddd*cos(4*2*PI/10),1500+raddd*sin(4*2*PI/10)], [1500+raddd*cos(5*2*PI/10),1500+raddd*sin(5*2*PI/10)], [1500+raddd*cos(6*2*PI/10)M ,1500+raddd*sin(6*2*PI/10)], [1500+raddd*cos(7*2*PI/10),1500+raddd*sin(7*2*PI/10)], [1500+raddd*cos(8*2*PI/10),1500+raddd*sin(8*2*PI/10)], [1500+raddd*cos(9*2*PI/10),1500+raddd*sin(9*2*PI/10)], [1500+raddd*cos(10*2*PI/10),1500+raddd*sin(10*2*PI/10)], tianyishengshui=[ diliuchengshui=[ [1500-2.5*widsix,3000],M [1500-1.5*widsix,3000], [1500-0.5*widsix,3000], [1500+0.5*widsix,3000], [1500+1.5*widsix,3000], [1500+2.5*widsix,3000], tiansanshengmu=[ tianqichenghuo=[ [1500-250,501], [1500+250,501] tianjiuchengjin=[ [3000,1500-4*widnine], [3000,1500-3*widnine], [3000,1500-2*widnine], [3000,1500-1*widnine], [3000,1500+1*widnine], [3000,1500+2*widnine], [3000,1500+3*widnine], [3000,1500+4*widnine], tianyishengshui, tiansanshengmu, tianwushengtu, diliuchengshui, tianqichenghuo, tianjiuchengjin, yaofour=fourgua(yao) tiandi=gettiandi(yaofour[0]); //tiandi=ceil(random(0,1)*10)-1; shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], tiandi=gettiandi(M shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], tiandi=gettiandi(yaofour[2]); shengchengX=ceil(random(0,tiandi+0.00001))-1; tiandiY=ceil(random(0,1)*10)-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], tiandi=gettiandi(yaofour[3])M shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], for (let k=0;k<bb;k++){ shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; x1 = fullgua[tiandi][shengchengX][0] y1= fullgua[tiandi][shengchengY][1] pos=carve(x1,y1,vertpos1,vertpos2,vertpos3,vertposM posgras=[random(100,1900),random(100,1900)] tiandi=gettiandi(yaofour[0]); //tiandi=ceil(random(0,1)*10)-1; shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], tiandi=gettiandi(yaofour[1]); shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; llgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], tiandi=gettiandi(yaofour[2]); shengchengX=ceil(random(0,tiandi+0.00001))-1; tiandiY=ceil(random(0,1)*10)-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], tiandi=gettiandi(yaofour[3]); shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandM fullgua[tiandi][shengchengY][1], x1 = fullgua[tiandi][shengchengX][0] y1= fullgua[tiandi][shengchengY][1] for (let k=0;k<6;k++){ pos=carve(x1,y1,vertpos1,vertpos2,vertpos3,vertpos4,particlesize) function exportImage() { save(`ICHING_${seed}.png`) function keyReleased() { "3" == key && exportImage() function gettiandi(yaofour){ if (yaofour=="kun") return 0; else if (yaofour=="xun") return 1M else if (yaofour=="li") return 2; else if (yaofour=="dui") return 3; else if (yaofour=="gen") return 5; else if (yaofour=="kan") return 6; else if (yaofour=="zhen") return 7; function fourgua(yao){ for (k=0;k<4;k++){ yaofour[k]=yao2gua([yao[k],yao[k+1],yao[k+2]]) function yao2gua(yaoyao){ yaothree3 = createVector(yaoyao[0],yaoyao[1],yaoyao[2]); if (yaothree3.equals([1,1,1])){ return "qian"; }else if(yaothree3.equals([1,1,0])){ }else if (yaothree3.equals([0,0,0])){ }else if (yaothree3.equals([1,0,1])){ }else if (yaothree3.equals([0,1,1])){ }else if (yaothree3.equals([1,0,0])){ }else if (yaothree3.equals([0,0,1])){ }else return "kan" function carve(x,y,vertpos1,vertpos2,vertpos3,vertpos4,particlesize){ let height = 3100 (k=0;k<particlesize*400;k++){ strokeWeight(particlesize*random(2,4)) stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos1[0],vertpos1[1]) stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos2[0],vertpos2[1]) stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos3[0],vertpos3[1]) stroke(random([coloM rs.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos4[0],vertpos4[1]) left_x = int(width * -0.5) right_x = int(width * 1.5) top_y = int(height * -0.5) bottom_y = int(height * 1.5) resolution = int(width * 0.01) num_columns = 3*int((right_x - left_x) / resolution) num_rows = 3*int((bottom_y - top_y) / resolution) let Array2D = (r,c) => [...Array(r)].map(x=>Array(c).fill(0)); let m = Array2D(num_columns,num_rows); ("m length "+m.length) gain=int(random(-3.1,3.1)); bend=random(0.02,1.3); offset=random(0,num_rows) quantum=random(100); for (let column=0; column<num_columns; column++) { for (row=0; row<num_rows; row++) { angle = (quantum*(row-offset-gain*bend*column) / (num_rows*bend))/quantum * PI*gain m[column][row] = angle x = 100+random(500,1900) y = 100+random(500,1900) let num_steps=100 shapesize=particlesize*random(200,500); stepsize=particlM esize*random(0.1,0.5); curvelegnth=50+random(2250,2800); stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) for (k=0;k<curvelegnth;k+=1+random(0,3)) { x_offset = x - left_x y_offset = y - top_y if (x_offset<4500 && y_offset< 4500 && x_offset>0 && y_offset>0 ) { column_index = int(x_offset / resolution) row_index = int(y_offset / resolution) grid_angle = m[column_index][row_index] x_step = stepsize*resolution M y_step = stepsize*resolution * sin(grid_angle) for (let kkk=0;kkk<16/particlesize;kkk++){ let cc =random(0,1); if (cc<50/100){ blendMode(ADD) // else if (cc<55/100) { blendMode(DODGE) // else if (cc<80/100) { blendMode(OVERLAY)// else if (cc<81/100) { blendMode(DIFFERENCE) // else if (cc<82/100) { blendMode(EXCLUSION) // blendMode(SCREEN) // noStroke() fill(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) ellipse(x+random(-1500,1500),y+random(-1500,1500),random([0.01,0.005,0.01])*random([1,1,1,1,1,100,50])*shapesize,random([0.01,0.005,0.01])*random([1,1,1,1,1,100,50])*shapesize) rect(x+random(-1500,1500),y+random(-1500,1500),random([0.0001,0.001,0.01,0.05,0.1])*M random([1,1,1,1,10,10,10,10,10,10,10,30])*shapesize,random([0.0001,,0.001,0.01,0.05,0.1])*random([1,1,1,1,10,10,10,10,10,10,10,30])*shapesize) for (k=0;k<1;k++){ strokeWeight(particlesize*random(0.2,0.5)) stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos1[0],vertpos1[1]) stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos2[0],verM stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos3[0],vertpos3[1]) stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos4[0],vertpos4[1]) x = x + x_step+int(random(0,1)) y = y + y_step+int(random(0,1)) // License : Copyright (C) 2023 Jimi Y. C. Wen . All rights M // Licensed under CC BY-NC-SA 4.0 // https://github.com/jimiwen <script defer src="https://static.cloudflareinsights.com/beacon.min.js/vb26e4fa9e5134444860be286fd8771851679335129114" integrity="sha512-M3hN/6cva/SjwrOtyXeUa5IuCT0sedyfT+jK/OV+s+D0RnzrTfwjwJHhd+wYfMm9HJSrZ1IKksOdddLuN6KOzw==" data-cf-beacon='{"rayId":"7afe9b6baf90a246","version":"2023.3.0","b":1,"token":"6c07c178c94442f695e7a0a2aaee641a","si":100}' crossorigin="anonymous"></script> text/html;charset=utf-8 <meta charset="UTF-8"> <title>Erasure</title> <script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.5.0/p5.min.js"></script> <script id="snippet-random-code" type="text/javascript"> // DO NOT EDIT THIS SECTION let seed = window.location.href.split('/').find(t => t.includes('i0')); const alphabet = "0123456789abcdefghijklmnopqrstuvwsyz"; seed = new URLSearchParams(window.location.search).get("seed") || Array(64).fill(0).map(M _ => alphabet[(Math.random() * alphabet.length) | 0]).join('') + "i0"; let pattern = "seed="; for (let i = 0; i < seed.length - pattern.length; ++i) { if (seed.substring(i, i + pattern.length) == pattern) { seed = seed.substring(i + pattern.length); function cyrb128($) { let _ = 1779033703, u = 3144134277, i = 1013904242, l = 2773480762; for (let n = 0, r; n < $.length; n++) _ = u ^ Math.imul(_ ^ (r = $.charCodeAt(n)), 597399067), u = i ^ Math.imul(u ^ r, 2869860M 233), i = l ^ Math.imul(i ^ r, 951274213), l = _ ^ Math.imul(l ^ r, 2716044179); return _ = Math.imul(i ^ _ >>> 18, 597399067), u = Math.imul(l ^ u >>> 22, 2869860233), i = Math.imul(_ ^ i >>> 17, 951274213), l = Math.imul(u ^ l >>> 19, 2716044179), [(_ ^ u ^ i ^ l) >>> 0, (u ^ _) >>> 0, (i ^ _) >>> 0, (l ^ _) >>> 0] function sfc32($, _, u, i) { return function () { u >>>= 0, i >>>= 0; var l = ($ >>>= 0) + (_ >>>= 0) | 0; return $ = _ ^ _ >>> 9, _ = u + (u << 3) | 0, u = (u = u << 21 | u >>> 11) M + (l = l + (i = i + 1 | 0) | 0) | 0, (l >>> 0) / 4294967296 let mathRand = sfc32(...cyrb128(seed)); width: 100% !important; height: 100% !important; object-fit: contain; <script type="text/javascript"> const rand = mathRand(); let seasonpicker= Xrandom(0/96,96/96); let yao=[0,0,0,0,0,0]; let yaoone=Xrandom(0,1); let yaotwo=Xrandom(0,1); let yaothree=Xrandom(0,1); et yao4=Xrandom(0,1); let yaofive=Xrandom(0,1); let yaosix=Xrandom(0,1); let particlepicker=Xrandom(0,1) window.$generativeTraits = { "Season": getSeason(seasonpicker), "Upper Gua": getGuaStyle(yao4,yaofive,yaosix), "Lower Gua": getGuaStyle(yaoone,yaotwo,yaothree), "Qi": getParticlesize(particlepicker) console.log(window.$generativeTraits) function Xrandom(x,y){ return (y-x)*mathRand()+x; if (yaothree<0.5){ if (particlepicker<1/8){ else if (particlepicker<7/8) { function getParticlesize(particlepicker){ if (particlepicker<1/8){ }else if (particlepicker<7/8){ function getSeason(value){ if (seasonpicker<4/96) return ' Beginning of Spring' //00 else if (seasonpicker<8/96) return ' Rain Water' //00001 else if (seasonpicker<12/96)return ' Awakening of Insects' // 000 else if (seasonpicker<16/96) return ' Spring Equinox' //000 else if (seasonpicker<20/96) return ' Pure Brightness' //000 else if (seasonpicker<24/96) M else if (seasonpicker<28/96) return ' Beginning of Summer'//ok else if (seasonpicker<32/96) return ' else if (seasonpicker<36/96) return ' else if (seasonpicker<40/96) return ' Summer Solstice' //0o else if (seasonpicker<44/96) return ' else if (seasonpicker<48/96) return ' else if (seasonpicker<52/96)return ' Beginning of Autumn' //00 se if (seasonpicker<56/96) return ' else if (seasonpicker<57/96) return ' else if (seasonpicker<62/96) return ' Autumn Equinox' //00 else if (seasonpicker<68/96) return ' else if (seasonpicker<72/96) return ' Frosts Descent' //000 else if (seasonpicker<76/96) return ' Beginning of Winter' //00 else if (seasonpicker<77/96) return ' else if (seasonpicker<83/96) return ' else if (seasonpicker<88/96) return ' Winter Solstice' //00 else if (seasonpicker<92/96) return ' function getGuaStyle(yao4,yaofive,yaosix){ let yaoL=[0 ,0 ,0]; if (yaofive<0.5){ if (yaosix<0.5){ if (yaoL[0]==0 && yaoL[1]==0 && yaoL[2M }else if (yaoL[0]==1 && yaoL[1]==0 && yaoL[2]==1){ } else if (yaoL[0]==0 && yaoL[1]==1 && yaoL[2]==1){ } else if (yaoL[0]==1 && yaoL[1]==0 && yaoL[2]==0){ } else if (yaoL[0]==0 && yaoL[1]==0 && yaoL[2]==1){ } else if (yaoL[0]==0 && yaoL[1]==1 && yaoL[2]==0){ } else if (yaoL[0]==1 && yaoLM [1]==1 && yaoL[2]==1){ } else if (yaoL[0]==1 && yaoL[1]==1 && yaoL[2]==0){ return "error" function getColor(season){ let seasonsmain=parseInt((480-season*360)%360); let seasonssea1=parseInt((480-season*360+random(15,30))%360); let seasonssea2=parseInt((480-season*360-random(15,30))%360); let seasonssand1=parseInt((480-season*360-random(30,60))%360); let seasonssand2=parseInt((480-season*360+random(30,60))%3M let seasonsbody1=parseInt((random([480,480,480,480,480,480,480,480,480,480,480,480]-season*360+random(60,90)))%360); let seasonsbody2=parseInt((random([120,360,240,480,480,480,480,480,480,480,480,480,480,480,480])-season*360+random(60,90))%360); main: color('hsb('+seasonsmain+', 100%, 100%)') , sea1: color('hsb('+seasonssea1+', 80%, 50%)'), sea2: color('hsb('+seasonssea2+', 80%, 50%)') , sand1: color('hsb('+seasonssand1+', 10%, 1%)'), sand2: color('hsb('+seasonssand2+', 1M body1: color('hsb('+seasonsbody1+', 60%, 10%)'), body2: color('hsb('+seasonsbody2+', 60%, 90%)') function setup() { randomSeed(int(mathRand()*100000000)) const canvas = createCanvas(3001, 3001); colorMode(HSB,360) getColor(seasonpicker) background(colors.main); for (k=0;k<2*particlesize;k++){ drawguagua(yao,particlesize*random([1,2])) function drawguagua(yao,particlesize){ let x = 100+ranM let y = 100+random(-500,3800) let shapesize=random([300,300,300,300,280,250,300,350]); let stepsize=random(0.001,0.3); [1500+raddd*cos(1*2*PI/10),1500+raddd*sin(1*2*PI/10)], [1500+raddd*cos(2*2*PI/10),1500+raddd*sin(2*2*PI/10)], [1500+raddd*cos(3*2*PI/10),1500+raddd*sin(3*2*PI/10)], [1500+raddd*cos(4*2*PI/10),1500+raddd*sin(4*2*PI/10)], [1500+raddd*cos(5*2*PI/10),1500+raddd*sin(5*2*PI/10)], [1500+raddd*cos(6*2*PI/10)M ,1500+raddd*sin(6*2*PI/10)], [1500+raddd*cos(7*2*PI/10),1500+raddd*sin(7*2*PI/10)], [1500+raddd*cos(8*2*PI/10),1500+raddd*sin(8*2*PI/10)], [1500+raddd*cos(9*2*PI/10),1500+raddd*sin(9*2*PI/10)], [1500+raddd*cos(10*2*PI/10),1500+raddd*sin(10*2*PI/10)], tianyishengshui=[ diliuchengshui=[ [1500-2.5*widsix,3000],M [1500-1.5*widsix,3000], [1500-0.5*widsix,3000], [1500+0.5*widsix,3000], [1500+1.5*widsix,3000], [1500+2.5*widsix,3000], tiansanshengmu=[ tianqichenghuo=[ [1500-250,501], [1500+250,501] tianjiuchengjin=[ [3000,1500-4*widnine], [3000,1500-3*widnine], [3000,1500-2*widnine], [3000,1500-1*widnine], [3000,1500+1*widnine], [3000,1500+2*widnine], [3000,1500+3*widnine], [3000,1500+4*widnine], tianyishengshui, tiansanshengmu, tianwushengtu, diliuchengshui, tianqichenghuo, tianjiuchengjin, yaofour=fourgua(yao) tiandi=gettiandi(yaofour[0]); //tiandi=ceil(random(0,1)*10)-1; shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], tiandi=gettiandi(M shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], tiandi=gettiandi(yaofour[2]); shengchengX=ceil(random(0,tiandi+0.00001))-1; tiandiY=ceil(random(0,1)*10)-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], tiandi=gettiandi(yaofour[3])M shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], for (let k=0;k<bb;k++){ shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; x1 = fullgua[tiandi][shengchengX][0] y1= fullgua[tiandi][shengchengY][1] pos=carve(x1,y1,vertpos1,vertpos2,vertpos3,vertposM posgras=[random(100,1900),random(100,1900)] tiandi=gettiandi(yaofour[0]); //tiandi=ceil(random(0,1)*10)-1; shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], tiandi=gettiandi(yaofour[1]); shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; llgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], tiandi=gettiandi(yaofour[2]); shengchengX=ceil(random(0,tiandi+0.00001))-1; tiandiY=ceil(random(0,1)*10)-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandi][shengchengX][0], fullgua[tiandi][shengchengY][1], tiandi=gettiandi(yaofour[3]); shengchengX=ceil(random(0,tiandi+0.00001))-1; shengchengY=ceil(random(0,tiandi+0.00001))-1; fullgua[tiandM fullgua[tiandi][shengchengY][1], x1 = fullgua[tiandi][shengchengX][0] y1= fullgua[tiandi][shengchengY][1] for (let k=0;k<6;k++){ pos=carve(x1,y1,vertpos1,vertpos2,vertpos3,vertpos4,particlesize) function exportImage() { save(`ICHING_${seed}.png`) function keyReleased() { "3" == key && exportImage() function gettiandi(yaofour){ if (yaofour=="kun") return 0; else if (yaofour=="xun") return 1M else if (yaofour=="li") return 2; else if (yaofour=="dui") return 3; else if (yaofour=="gen") return 5; else if (yaofour=="kan") return 6; else if (yaofour=="zhen") return 7; function fourgua(yao){ for (k=0;k<4;k++){ yaofour[k]=yao2gua([yao[k],yao[k+1],yao[k+2]]) function yao2gua(yaoyao){ yaothree3 = createVector(yaoyao[0],yaoyao[1],yaoyao[2]); if (yaothree3.equals([1,1,1])){ return "qian"; }else if(yaothree3.equals([1,1,0])){ }else if (yaothree3.equals([0,0,0])){ }else if (yaothree3.equals([1,0,1])){ }else if (yaothree3.equals([0,1,1])){ }else if (yaothree3.equals([1,0,0])){ }else if (yaothree3.equals([0,0,1])){ }else return "kan" function carve(x,y,vertpos1,vertpos2,vertpos3,vertpos4,particlesize){ let height = 3100 (k=0;k<particlesize*400;k++){ strokeWeight(particlesize*random(2,4)) stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos1[0],vertpos1[1]) stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos2[0],vertpos2[1]) stroke(random([colors.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos3[0],vertpos3[1]) stroke(random([coloM rs.sea1,colors.sea2,colors.sand1,colors.sand2,colors.body1,colors.body2])) line(x,y,vertpos4[0],vertpos4[1]) left_x = int(width * -0.5) right_x = int(width * 1.5) top_y = int(height * -0.5) bottom_y = int(height * 1.5) resolution = int(width * 0.01) num_columns = 3*int((right_x - left_x) / resolution) num_rows = 3*int((bottom_y - top_y) / resolution) let Array2D = (r,c) => [...Array(r)].map(x=>Array(c).fill(0)); let m = Array2D(num_columns,num_rows); ("m length "+m.length) gain=int(random(-3.1,3.1)); bend=random(0.02,1.3); offset=random(0,num_rows) quantum=random(100); for (let column=0; column<num_columns; column++) { for (row=0; row<num_rows; row++) { angle = (quantum*(row-offset-gain*bend*column) / (num_rows*bend))/quantum * PI*gain m[column][row] = angle x = 100+random(500,1900) y = 100+random(500,1900) let num_steps=100 shapesize=particlesize*random(200,500); stepsize=particlM esize*random(0.1,0.5); cur