0xbbfb…4231

All memos sent from and to 0xbbfb…4231.

<html> <head> <meta name="viewport" content="width=device-width"> <title>Caesium</title> <style>body{background-color: black;}body{margin:0}</style> <script language="javascript" type="text/javascript" src="https://cdn.jsdelivr.net/npm/p5@1.3.1/lib/p5.js"></script> </head> <body> <div id="c"></div><script lang="javascript">var scr=0,targ_scr=0,inv=!1,w=Math.min(innerHeight,innerWidth),k=w/200;const hashCode=r=>r.split("").reduce((r,e)=>(r=(r<<5)-r+e.charCodeAt(0))&r,0);function rnd_between(e,t){return r()*(t-e)+e}function hslToRgb(r,e,t){var a,n,i;if(0==e)a=n=i=t;else{var h=function(r,e,t){return t<0&&(t+=1),t>1&&(t-=1),t<1/6?r+6*(e-r)*t:t<.5?e:t<2/3?r+(e-r)*(2/3-t)*6:r},l=t<.5?t*(1+e):t+e-t*e,k=2*t-l;a=h(k,l,r+1/3),n=h(k,l,r),i=h(k,l,r-1/3)}return[Math.round(255*a),Math.round(255*n),Math.round(255*i)]}function rgbToHsl(r,e,t){r/=255,e/=255,t/=255;var a,n,i=Math.max(r,e,t),h=Math.min(r,e,t),l=(i+h)/2;if(i==h)a=n=0;else{var k=i-h;switch(n=l>.5?k/(2-i-h):k/(i+h),i){case r:a=(e-t)/k+(e<t?6:0);break;case e:a=(t-r)/k+2;break;case t:a=(r-e)/k+4}a/=6}return[a,n,l]}function invertRGB(r,e,t){return[255-r,255-e,255-t]}class RectSpiral{constructor(e,t,a,n,i,h,l,k,s,c,M,o,I,w,P,u,d,g,p,y){this.rend=e,this.center={x:t,y:a},this.rectangleMode=i,this.rectCount=n,this.start={rev:h,rot:l,w:k,h:s,radius:c,hue:0},this.end={rev:o,rot:I,w:w,h:P,radius:u,hue:1},this.inc=g,this.c=0,this.spinDir=r()<.5?-1:1,this.spinDir*=.005*(r()+1),this.greyscale=p,this.wire=y}draw(r,e,t,a){this.c+=this.inc,this.rend.push(),this.rend.colorMode(this.rend.HSL,1),this.rend.rectMode(this.rectangleMode),this.rend.noStroke(),this.rend.translate(this.center.x*this.rend.width,this.center.y*this.rend.height);var n=(this.end.rev-this.start.rev)/this.rectCount*r,i=(Math.abs(this.start.w)+Math.abs(this.end.w))/2,h=(Math.abs(this.start.h)+Math.abs(this.end.h))/2,l=(i-h)/(i+h),k=Math.sign(l),s=l>.6,c=s?0:-1;this.rend.rotate(this.start.rev+this.c*this.spinDir/3);for(var M=0;M<=1;M+=1/this.rectCount){var o=this.rend.lerp(this.start.radius,this.end.radius,M)*this.rend.width,I=this.rend.map(M*e,0,1,this.start.rot,this.end.rot,!1),w=this.rend.lerp(this.start.w,this.end.w,M)*t*(1+.5*scr*(c+(s?k<0?3:-1:0))),P=this.rend.lerp(this.start.h,this.end.h,M)*a*(1+.5*scr*(c+(s?k>0?3:-1:0))),u=(this.rend.lerp(this.start.hue,this.end.hue,M)+this.c/300)%1;this.rend.push(),this.rend.translate(0,o),this.rend.rotate(I),this.wire?(this.rend.noFill(),this.greyscale?this.rend.stroke(0,0,inv?1-u:u):this.rend.stroke(inv?rgbToHsl(...invertRGB(...hslToRgb(...[u,1,.5]))):[u,1,.5])):this.greyscale?this.rend.fill(0,0,inv?1-u:u):this.rend.fill(inv?rgbToHsl(...invertRGB(...hslToRgb(...[u,1,.5]))):[u,1,.5]),this.rend.rect(0,0,w,P),this.rend.pop(),this.rend.rotate(n)}this.rend.pop()}}function toNum(r){return parseInt(r,16).toString().split("").map(r=>parseInt(isNaN(r)?0:r)).reduce((r,e)=>r+e)}function getID(){for(var r=Array(theme_rarities.length).fill(theme_rarities).map((r,e)=>r.slice(0,e+1)).map(r=>r.reduce((r,e)=>r+e)),e=0;e<r.length;e++){var t=null!=r[e-1]?r[e-1]:0,a=null!=r[e]?r[e]:1;if(mod1>t&&mod1<a)return e}}const LCG=r=>()=>(2**31-1&(r=Math.imul(48271,r)))/2**31,r=LCG(hashCode(hash)),grey=r()<.01,wireF=r()<.01,mod1=r(),mod2=r(),mod3=r(),mod4=.6+.3*r(),mod5=.6+.3*r(),themes=[[new RectSpiral(null,.5,.5,130,"center",0,Math.PI/2,25*k,.25*k,.1,.86,-Math.PI,Math.PI/2,-100*k,.25*k,1/3,r(),r(),grey,wireF),new RectSpiral(null,.5,.5,75,"center",Math.PI/4,0,1*k,1*k,.1*.7,.86,-1.3*Math.PI*.75*.75,1*Math.PI,50*k,42*k,.4,r(),r(),grey,wireF),new RectSpiral(null,.5,.5,60,"corner",Math.PI/2,0,20*k,.25*k,1/7,.86,1.75*Math.PI,1*Math.PI,100*k,2*k,1/3,r(),r(),grey,wireF)],[new RectSpiral(null,.5,.5,17,"center",0,Math.PI/2,20*k,15*k,1/14,.93,-2.3*Math.PI*.75,2*Math.PI,40*k,30*k,.5,r()-.5,r(),grey,!0),new RectSpiral(null,.5,.5,60,"center",0,0,1*k,1*k,1/15,.93+.5,-1.3*Math.PI*.75*1.5,-1.1*Math.PI,44*k,38*k,1/2.4,r(),r(),grey,wireF),new RectSpiral(null,.5,.5,130,"center",0,0,4*k,4*k,1/7,.93+.5,-1.3*Math.PI*.75,2*Math.PI,4*k,4*k,.4,r(),r(),grey,wireF),new RectSpiral(null,.5,.5,130,"center",0,0,150*k,.5*k,1/3,.86,-Math.PI/2,-Math.PI/2,-150*k,.5*k,.4,r(),r(),grey,wireF),new RectSpiral(null,.5,.5,130,"corner",0,0,150*k,.5*k,1/30,.86,Math.PI/2,0,0*k,.5*k,1/30,r(),r(),grey,wireF)],[new RectSpiral(null,.5,.5,130,"center",0,0,25*k,25*k,.25,.86,2*-Math.PI,-Math.PI/2,-25*k,1*k,1/15,.93+1,r(),grey,wireF),new RectSpiral(null,.5,.5,100,"center",-Math.PI,Math.PI/2,1*k,1*k,.1,.93+.5,1*Math.PI*.75,1*Math.PI,70*k,.5*k,.4,.93+1,r(),grey,wireF),new RectSpiral(null,.5,.5,20,"center",0,0,1*k,1*k,0,.93+.5,-1.3*Math.PI*.75,1.25*Math.PI,50*k,40*k,.4,.93+1,r(),grey,wireF),new RectSpiral(null,.5,.5,130,"center",0,0,50*k,1*k,1/3,.86,-Math.PI/2,-Math.PI/2,-50*k,1*k,.4,.93+1,r(),grey,wireF),new RectSpiral(null,.5,.5,45,"center",0,0,50*k,1*k,0,.86,-Math.PI/2,-Math.PI/2,25*k,1*k,0,.93+1,r(),grey,wireF)],[new RectSpiral(null,.5,.5,80,"center",0,0,100*k,100*k,.2,.93,-Math.PI,-Math.PI/2,100*k,1*k,.1,1.03,r(),grey,!0),new RectSpiral(null,.5,.5,130,"corner",-Math.PI,0,60*k,35*k,1/14,.93+.5,1*Math.PI*.75,1*Math.PI,1*k,1*k,.5,.93+1,r(),grey,wireF),new RectSpiral(null,.5,.5,80,"center",0,0,100*k,1*k,1/3,.93,-Math.PI,-Math.PI/2,100*k,.25*k,1/8,1.03,r(),grey,wireF)],[new RectSpiral(null,.5,.5,140,"corner",Math.PI/2,0,1*k,1*k,.04,.86,1.75*Math.PI,1*Math.PI,80*k,40*k,.2,r(),r(),grey,wireF),new RectSpiral(null,.5,.5,80,"center",0,0,100*k,1*k,1/3,.93,-Math.PI,-Math.PI/2,100*k,1*k,1/8,1.03,r(),grey,wireF),new RectSpiral(null,.5,.5,130,"center",0,0,20*k,18*k,.1,.86,-1.3*Math.PI*.75,1*Math.PI,40*k,.25*k,.4,r(),r(),grey,!0)],[new RectSpiral(null,.5,.5,90,"center",0,0,2*k,1*k,0,.93-.5,-1.3*Math.PI*.75*2,1*Math.PI,30*k,25*k,.2,.93,r(),grey,wireF),new RectSpiral(null,.5,.5,35,"center",-Math.PI,0,2*k,1.5*k,0,.93-.5,1*Math.PI*.75,1*Math.PI,60*k,5*k,.4,.93,r(),grey,!0),new RectSpiral(null,.5,.5,130,"center",Math.PI,0,200*k,.25*k,.25,.86,Math.PI/2,-Math.PI/2,-200*k,.25*k,1/3,r(),r(),grey,wireF),new RectSpiral(null,.5,.5,35,"center",0,0,150*k,2*k,.25,.86,Math.PI/2,Math.PI/2,-150*k,2*k,1/3,r(),r(),grey,wireF)],[new RectSpiral(null,.5,.5,70,"center",0,0,200*k,.35*k,.05,.93+.5,-1.3*Math.PI*.75*Math.PI/2,Math.PI/2,-200*k,.35*k,.04,r(),r(),grey,wireF),new RectSpiral(null,.5,.5,70,"center",0,Math.PI/2,100*k,2*k,1/3,.86,2*-Math.PI,Math.PI/2,-100*k,2*k,.4,r(),r(),grey,wireF),new RectSpiral(null,.5,.5,10,"center",0,0,5*k,5*k,.2,.86,-Math.PI/2,-Math.PI/2,5*k,5*k,.2,.93+1,r()),new RectSpiral(null,.5,.5,90,"center",Math.PI/2,0,2*k,2*k,1/15,.86,3*Math.PI,0,25*k,20*k,1/3,.93+1,r()),new RectSpiral(null,.5,.5,130,"center",0,0,50*k,1*k,1/3,.86,-Math.PI/2,-Math.PI/2,-50*k,1*k,.4,.93+1,r())],[new RectSpiral(null,.5,.5,18,"center",0,0,50*k,50*k,.3,.86,2,0,10*k,10*k,.3,r(),r(),grey,wireF),new RectSpiral(null,.5,.5,50,"center",0,0,150*k,.5*k,.17,.86,Math.PI/2,0,250*k,.5*k,.17,r(),r(),grey,wireF),new RectSpiral(null,.5,.5,22,"center",Math.PI/2,0,50*k,50*k,1/3,.86,2+Math.PI/2,0,10*k,10*k,1/3,r(),r(),grey,!0),new RectSpiral(null,.5,.5,200,"corner",Math.PI/2,-Math.PI/2,80*k,10*k,0,.86,1.75*Math.PI*2,3*Math.PI/2,1*k,1*k,.4,r(),r(),grey,wireF),new RectSpiral(null,.5,.5,98,"corner",Math.PI/2,-Math.PI/2,90*k,.25*k,0,.86,1.75*Math.PI*2,3*Math.PI/2,0*k,.25*k,0,r(),r(),grey,wireF)],[new RectSpiral(null,.5,.5,60,"center",0,0,10*k,10*k,1/3,.86,2*-Math.PI,-Math.PI/2,20*k,20*k,1/15,r(),r(),grey,wireF),new RectSpiral(null,.5,.5,80,"center",0,Math.PI/2,250*k,.25*k,.04,.86,-Math.PI/3,Math.PI/2,-35*k,.25*k,1/15,r(),r(),grey,wireF),new RectSpiral(null,.5,.5,60,"center",0,0,100*k,1*k,1/3,.86,-Math.PI,-Math.PI/2,50*k,1*k,.2,r(),r(),grey,wireF)],[new RectSpiral(null,.5,.5,130,"center",0,Math.PI/2,100*k,2*k,1/3*.8,.86,-Math.PI,2*Math.PI,-100*k,6*k,1/2.2*.8,r(),r(),grey,wireF),new RectSpiral(null,.5,.5,130,"center",0,0,2*k,1*k,.1,.86,-1.3*Math.PI*.75,3*Math.PI,50*k,.25*k,.4,r(),r(),grey,wireF),new RectSpiral(null,.5,.5,160,"center",0,Math.PI/2,170*k,.25*k,.2,.86,-Math.PI/3,-Math.PI/2,-70*k,.25*k,.04,r(),r(),grey,wireF)],[new RectSpiral(null,.5,.5,160,"corner",0,0,10*k,10*k,.04,.86,1.6*-Math.PI,0,150*k,150*k,.04,r(),r(),grey,!0)],[new RectSpiral(null,.5,.5,80,"center",0,Math.PI/2,250*k,.25*k,.04,.86,-Math.PI/3,Math.PI/2,-35*k,.25*k,1/15,r(),r(),grey,wireF)],[new RectSpiral(null,.5,.5,50,"center",0,0,200*k,.5*k,.12,.86,Math.PI/2,0,250*k,.5*k,.12,r(),r(),grey,wireF)],[new RectSpiral(null,.5,.5,400,"corner",Math.PI/2,-Math.PI/2,100*k,.2*k,.4,.86,1.75*Math.PI*1.5,1*Math.PI/2,1*k,.2*k,0,r(),r(),grey,wireF)],[new RectSpiral(null,.5,.5,50,"center",0,0,200*k,.5*k,.2*.4,.86,Math.PI/2,0,-50*k,.5*k,.2*.4,r(),r(),grey,wireF),new RectSpiral(null,.5,.5,130,"center",0,Math.PI/2,100*k,.2*k,1/3*.8,.86,-Math.PI,2*Math.PI,-100*k,.6*k,1/2.2*.8,r(),.8,grey,wireF)]],theme_rarities=[.08,.08,.08,.08,.08,.08,.08,.08,.08,.08,.04,.04,.04,.04,.04],theme_names=["Vertex","Axiom","Chord","Matrix","Rhombus","Octagon","Hexagon","Trapezoid","Quadrilateral","Postulate","Intergral","Tangent","Derivative","Tensor","Manifold"],id=getID();window.METADATA={theme:theme_names[id],greyscale:grey,total_wireframe:wireF,contains_wireframe:themes[id].map(r=>r.wire).includes(!0),contains_center_star:null!=themes[id].find(r=>r.start.radius==r.end.radius&&0==r.start.radius),revolution:Math.floor(100*mod2),twisting:Math.floor(100*mod3),width:Math.floor(100*mod4),height:Math.floor(100*mod5)};let sketch=function(r){r.setup=function(){var e=r.createCanvas(w,w);for(var t of(e.parent("c"),e.elt.style.margin="auto",e.elt.style.display="block",themes))for(var a of t)a.rend=r},r.draw=function(){for(var e of(scr=(scr+targ_scr)/2,r.background(0+inv?255:0),r.push(),themes[id]))e&&e.draw(2*mod2+Math.PI,3*mod3,mod4+.1,mod5+.1);r.pop()},r.mouseWheel=(e=>{targ_scr-=e.delta/750,targ_scr=r.constrain(targ_scr,0,1)}),r.mouseClicked=(r=>{inv=!inv,document.getElementsByTagName("body")[0].style.background=inv?"#fff":"#000"})},myp5=new p5(sketch); </script> </body> </html>
<!DOCTYPE html> <meta name="viewport" content="width=device-width"> <title>Clines</title> <style> * { background-color: black } canvas { margin: auto; position: absolute; top: 0; bottom: 0; left: 0; right: 0 } </style><canvas id=A></canvas> <script>window.METADATA = {};M = Math, W = 0, onresize = Z = _ => { W = M.min(innerWidth, innerHeight), A.style.width = A.style.height = W + "px", W = A.width = A.height = 0 | W * (devicePixelRatio || 1), C = A.getContext`2d`; { let a = 0x9E3779B9, b = 0x243F6A88, c = 0xB7E15162, d = parseInt(hash.substr(2, 8), 16), e; R = _ => (e = 0 | a + b + d, ++d, a = b ^ b >>> 9, b = c + (c << 3), c = c << 21 | c >>> 11, c += e, (e >>> 0) / 2 ** 32) } for (i = 16; i--;)R(); P = [["FFFFFF", "000000", "FFFFFF", "000000"], ["222831", "393E46", "00ADB5", "EEEEEE"], ["F9ED69", "F08A5D", "B83B5E", "6A2C70"], ["F38181", "FCE38A", "EAFFD0", "95E1D3"], ["08D9D6", "252A34", "FF2E63", "EAEAEA"], ["364F6B", "3FC1C9", "F5F5F5", "FC5185"], ["A8D8EA", "AA96DA", "FCBAD3", "FFFFD2"], ["E3FDFD", "CBF1F5", "A6E3E9", "71C9CE"], ["E4F9F5", "30E3CA", "11999E", "40514E"], ["FFC7C7", "FFE2E2", "F6F6F6", "8785A2"], ["F9F7F7", "DBE2EF", "3F72AF", "112D4E"], ["48466D", "3D84A8", "46CDCF", "ABEDD8"], ["2B2E4A", "E84545", "903749", "53354A"], ["00B8A9", "F8F3D4", "F6416C", "FFDE7D"], ["FFB6B9", "FAE3D9", "BBDED6", "61C0BF"], ["E23E57", "88304E", "522546", "311D3F"], ["FFCFDF", "FEFDCA", "E0F9B5", "A5DEE5"], ["212121", "323232", "0D7377", "14FFEC"], ["A8E6CF", "DCEDC1", "FFD3B6", "FFAAA5"], ["DEFCF9", "CADEFC", "C3BEF0", "CCA8E9"], ["FFC8C8", "FF9999", "444F5A", "3E4149"], ["F67280", "C06C84", "6C5B7B", "355C7D"], ["3EC1D3", "F6F7D7", "FF9A00", "FF165D"], ["2D4059", "EA5455", "F07B3F", "FFD460"], ["6FE7DD", "3490DE", "6639A6", "521262"], ["BAD7DF", "FFE2E2", "F6F6F6", "99DDCC"], ["8EF6E4", "9896F1", "D59BF6", "EDB1F1"], ["A1EAFB", "FDFDFD", "FFCEF3", "CABBE9"], ["384259", "F73859", "7AC7C4", "C4EDDE"], ["303841", "00ADB5", "EEEEEE", "FF5722"], ["DCEDC2", "FFD3B5", "FFAAA6", "FF8C94"], ["F0F5F9", "C9D6DF", "52616B", "1E2022"], ["F85F73", "FBE8D3", "928A97", "283C63"], ["07689F", "A2D5F2", "FAFAFA", "FF7E67"], ["2A363B", "E84A5F", "FF847C", "FECEA8"], ["00E0FF", "74F9FF", "A6FFF2", "E8FFE8"], ["A8E6CF", "FDFFAB", "FFD3B6", "FFAAA5"], ["F7FBFC", "D6E6F2", "B9D7EA", "769FCD"], ["7EFFDB", "B693FE", "8C82FC", "FF9DE2"], ["15B7B9", "10DDC2", "F5F5F5", "F57170"], ["CEFFF1", "ACE7EF", "A6ACEC", "A56CC1"], ["A9EEE6", "FEFAEC", "F9A1BC", "625772"], ["EBFFFA", "C6FCE5", "6EF3D6", "0DCEDA"], ["0C056D", "590D82", "B61AAE", "F25D9C"], ["DFF4F3", "DDE7F2", "B9BBDF", "878ECD"], ["D4A5A5", "FFECDA", "F9FFEA", "A6D0E4"], ["1FAB89", "62D2A2", "9DF3C4", "D7FBE8"], ["99E1E5", "F3E8CB", "F2C6B4", "FBAFAF"], ["303841", "3A4750", "D72323", "EEEEEE"], ["303A52", "574B90", "9E579D", "FC85AE"], ["FAFAFA", "E8F1F5", "005691", "004A7C"], ["155263", "FF6F3C", "FF9A3C", "FFC93C"], ["283149", "404B69", "F73859", "DBEDF3"], ["393232", "4D4545", "8D6262", "ED8D8D"], ["FEF0FF", "D6C8FF", "C79ECF", "7E6BC4"], ["FCEFEE", "FCCDE2", "FC5C9C", "C5E3F6"], ["F5EEE6", "F3D7CA", "E6A4B4", "C86B85"], ["11CBD7", "C6F1E7", "F0FFF3", "FA4659"], ["FF6464", "FF8264", "FFAA64", "FFF5A5"], ["27296D", "5E63B6", "A393EB", "F5C7F7"], ["A9EEE6", "FEFAEC", "F38181", "625772"], ["FB929E", "FFDFDF", "FFF6F6", "AEDEFC"], ["FFFCCA", "55E9BC", "11D3BC", "537780"], ["66BFBF", "EAF6F6", "FCFEFE", "F76B8A"], ["FBF0F0", "DFD3D3", "B8B0B0", "7C7575"], ["233142", "455D7A", "F95959", "E3E3E3"], ["E0FCFF", "90F2FF", "6EB6FF", "7098DA"], ["3A0088", "930077", "E61C5D", "FFBD39"], ["F8B595", "F67280", "C06C84", "6C5B7C"], ["00204A", "005792", "00BBF0", "D9FAFF"], ["35477D", "6C5B7B", "C06C84", "F67280"], ["C7F3FF", "FDC7FF", "FFDCF5", "F2F4C3"], ["F6F6F6", "D6E4F0", "1E56A0", "163172"], ["FFA5A5", "FFFFC2", "C8E7ED", "BFCFFF"], ["4D606E", "3FBAC2", "D3D4D8", "F5F5F5"], ["253B6E", "1F5F8B", "1891AC", "D2ECF9"], ["C7F5FE", "FCC8F8", "EAB4F8", "F3F798"], ["071A52", "086972", "17B978", "A7FF83"], ["9DDCDC", "FFF4E1", "FFEBB7", "E67A7A"], ["A7EFE9", "7FDFD4", "FBE1B6", "FBAC91"], ["C8F4DE", "A4E5D9", "66C6BA", "649DAD"], ["ADF7D1", "95E8D7", "7DACE4", "8971D0"], ["2A363B", "E84A5F", "FF847B", "FECEA8"], ["FFD9E8", "DE95BA", "7F4A88", "4A266A"], ["A6E4E7", "F9F9F9", "EBCBAE", "8F8787"], ["232931", "393E46", "4ECCA3", "EEEEEE"], ["DFF5F2", "87DFD6", "46B7B9", "2F9296"], ["E7E6E1", "F7F6E7", "C1C0B9", "537791"], ["700961", "B80D57", "E03E36", "FF7C38"], ["F69D9D", "FFEAB6", "FDFFBA", "C0FFC2"], ["222831", "393E46", "00ADB5", "00FFF5"], ["A1D9FF", "CA82F8", "ED93CB", "F2BBBB"], ["F4F7F7", "AACFD0", "79A8A9", "1F4E5F"], ["F8B195", "F67280", "C06C84", "355C7D"], ["E4FFFE", "A4F6F9", "FF99FE", "BA52ED"], ["EAAFAF", "A2738C", "645C84", "427996"], ["FBFBFB", "B9E1DC", "F38181", "756C83"], ["FA4659", "FEFFE4", "A3DE83", "2EB872"], ["F47C7C", "F7F48B", "A1DE93", "70A1D7"], ["F06868", "FAB57A", "EDF798", "80D6FF"], ["7A08FA", "A82FFC", "C264FE", "F8ECFD"], ["FFFFC1", "FFD2A5", "FFA8B8", "D988BC"], ["F2F2F2", "EBD5D5", "EA8A8A", "685454"], ["240041", "900048", "FF4057", "FF8260"], ["3498DB", "ECF0F1", "34495E", "F1C40F"], ["F4F7F7", "AACFD0", "5DA0A2", "34495E"], ["F33535", "D8E9F0", "33425B", "29252C"], ["0E3150", "6DC9C8", "FFC0C2", "F7E9E3"], ["E3D9CA", "95A792", "596C68", "403F48"], ["303841", "3A4750", "00ADB5", "EEEEEE"], ["FFDEDE", "F7F3CE", "C5ECBE", "4797B1"], ["F6F5F5", "E3E3E3", "3BB4C1", "048998"], ["39065A", "6A0572", "9A0F98", "EA0599"], ["0F1021", "D01257", "FB90B7", "FFCEE4"], ["29C6CD", "F6E4C4", "FEA386", "F19584"], ["6B0848", "A40A3C", "EC610A", "FFC300"], ["F12B6B", "FF467E", "FD94B4", "F6C7C7"], ["FFA3AC", "00043C", "005D6C", "00C9B1"], ["FC345C", "49BEB7", "AFFFDF", "EAFFF7"], ["F2FCFC", "BDF1F6", "8FBAF3", "0245A3"], ["FAFAF6", "00FFF0", "00D1FF", "3D6CB9"], ["F9ECEC", "F0D9DA", "C8D9EB", "ECF2F9"], ["020438", "284184", "1F8EA3", "00EAFF"], ["E4EDDB", "307672", "144D53", "1A3C40"], ["F64662", "C61951", "741938", "56132A"], ["FFE6EB", "FFCDCD", "6A65D8", "1D2786"], ["F4F9F4", "C4E3CB", "8AAE92", "616161"], ["FFB400", "FFFBE0", "2994B2", "474744"], ["45EBA5", "21ABA5", "1D566E", "163A5F"], ["D5FDFF", "9DE5FF", "ACA8FF", "AC73FF"], ["EFF0F4", "74DBEF", "0074E4", "264E86"], ["C7FFFF", "FBEEFF", "EBC6FF", "7E80FF"], ["560764", "913175", "DD5B82", "FE9797"], ["FF4D4D", "FF8364", "FDB87D", "FFE8D5"], ["E4F1FE", "8DC6FF", "22313F", "34495E"], ["27323A", "435055", "29A19C", "A3F7BF"], ["FFABE5", "C7F5FF", "D89FFF", "F6FCAE"], ["FAFAFA", "FFE9E3", "C4C1E0", "7C73E6"], ["F76262", "216583", "65C0BA", "CFFDF8"], ["F0FFF3", "C6F1E7", "70ACB1", "59606D"], ["0F3057", "00587A", "008891", "E7E7DE"], ["6C567B", "C06C84", "F67280", "F8B195"], ["FFFE9F", "FFD480", "FCA180", "F56262"], ["E9E2D0", "EA9085", "D45D79", "6E5773"], ["FF9898", "CF455C", "971549", "470031"], ["EB586F", "D8E9F0", "4AA0D5", "454553"], ["FDA403", "E8751A", "C51350", "8A1253"], ["283149", "404B69", "00818A", "DBEDF3"], ["18587A", "FC624D", "FCA7A7", "FFD6D6"], ["BC5148", "FEF8E6", "7BCECC", "3090A1"], ["F2E9D0", "EACEB4", "E79E85", "BB5A5A"], ["F8FCFB", "C9FDD7", "79D1C3", "6892D5"], ["00AD7C", "52D681", "B5FF7D", "FFF8B5"], ["111F4D", "F2F4F7", "E43A19", "020205"], ["FDFDC4", "FFE8CF", "FFDEDE", "CCFFEC"], ["FAE3E3", "B7B7B7", "137083", "3D0240"], ["FCF5EE", "FBE8E7", "F7DDDE", "FFC4D0"], ["EDA1C1", "FAB2AC", "BEE4D2", "D7F8F7"], ["F38181", "FCE38A", "D6F7AD", "95E1D3"], ["2FC5CC", "6DF1CC", "E3FFC3", "FF89C0"], ["FFFFC1", "FFD2A5", "D38CAD", "8A79AF"], ["294A66", "0B3846", "FFBBBB", "FCD2C2"], ["143A52", "6E828A", "CDE3EB", "E3EFF3"], ["F5E1DA", "F1F1F1", "40A798", "476269"], ["222831", "393E46", "0092CA", "EEEEEE"], ["F23557", "F0D43A", "22B2DA", "3B4A6B"], ["511E78", "8B2F97", "CF56A1", "FCB2BF"], ["29D2E4", "13829B", "FCC29A", "FDE9C9"], ["2D4059", "FFB400", "F6F6F6", "EA5455"], ["FF5959", "FFAD5A", "4F9DA6", "1A0841"], ["F0ECE2", "DFD3C3", "C7B198", "596E79"], ["E8ECF1", "B5CFD8", "7393A7", "6C737E"], ["D9F9F4", "9CD9DE", "86C1D4", "5A92AF"], ["2C2D34", "E94822", "F2910A", "EFD510"], ["11CBD7", "9FEED1", "FFF6A2", "F60C86"], ["FD9191", "FDDD8A", "F5FC9E", "9EFCB4"], ["FF5335", "DFE0D4", "3E92A3", "353940"], ["E6F8F6", "A0F6D2", "72DFD0", "03414D"], ["0E2431", "FC3A52", "F9B248", "E8D5B7"], ["303841", "3A4750", "F6C90E", "EEEEEE"], ["F70776", "C3195D", "680747", "141010"], ["F9F8ED", "F4E7D3", "0881A3", "1F4E5F"], ["581845", "900C3F", "C70039", "FF5733"], ["D3F6D1", "A7D7C5", "74B49B", "5C8D89"], ["EA5959", "F98B60", "FFC057", "FFE084"], ["34374C", "2C2E3E", "EE2B47", "F6F6F6"], ["343434", "2D4059", "EA5455", "FDE9C9"], ["F5EFE3", "E6E7E5", "F7D3BA", "A6AA9C"], ["0278AE", "51DACF", "9EF5CF", "E8FFC1"], ["F0BEBE", "5EA3A6", "3A718C", "FFFFDF"], ["6BD5E1", "FFD98E", "FFB677", "FF8364"], ["323643", "606470", "93DEFF", "F7F7F7"], ["015051", "04837B", "01A7A3", "04F2D5"], ["F5E1DA", "F1F1F1", "40A798", "476268"], ["FAFAFA", "FF6699", "C54C82", "512E67"], ["DAEBEE", "B6D7DE", "FCEDDA", "FF5126"], ["BBE9DB", "AECCC6", "9BA6A5", "757A79"], ["083358", "0F4471", "FC3C3C", "F6F6F6"], ["E0FFCD", "FDFFCD", "FFEBBB", "FFCAB0"], ["FFDFD3", "FEC8D8", "D291BC", "957DAD"], ["194769", "F6F6E9", "D7EEF2", "F2855E"], ["73F7DD", "2CC4CB", "1972A4", "2E3A87"], ["36D1C4", "A0EECC", "FFF2BE", "F6318C"], ["F5F5C6", "7DA87B", "326765", "27253D"], ["E2EFF1", "B6D5E1", "65799B", "555273"], ["13334C", "005792", "F6F6E9", "FD5F00"], ["B80257", "DD356E", "FC7FB6", "FFBBE1"], ["233142", "36506C", "A5DEF1", "EBF7FD"], ["EF7B7B", "FCF3CA", "C4EADA", "919190"], ["E7F5F2", "F9C7CF", "12776F", "0F4137"], ["CABFAB", "DFD8C8", "41444B", "52575D"], ["D7AEF3", "94F6F2", "F7F680", "FBD0F5"], ["EFF0F4", "D3D6DB", "415F9D", "233B6E"], ["FF4545", "FF9867", "FFBF87", "FFEDB2"], ["FF6473", "757882", "5CC1B3", "6EF7C8"], ["2F1B41", "872341", "BE3144", "F05941"], ["F7F7F7", "393E46", "5C636E", "F8B500"], ["FFD6B6", "EA7362", "B74242", "5C2626"], ["F3F3F3", "FFDD67", "FFCD38", "4A4A4A"], ["071E3D", "1F4287", "278EA5", "21E6C1"], ["BFF4ED", "280F34", "E41655", "B30753"], ["005874", "1C819E", "E6E6D4", "FFBE00"], ["970747", "FEF4E8", "1989AC", "283E56"], ["155E63", "76B39D", "F9F8EB", "EAE7E7"], ["E01171", "AB0E86", "59057B", "0F0766"], ["364F6B", "3FC1C9", "FCE38A", "FC5185"], ["3E1E68", "583C87", "E45A84", "FFACAC"], ["118DF0", "0E2F56", "FF304F", "ECECDA"], ["3B0944", "5F1854", "A12559", "F1BBD5"], ["302939", "50595C", "E99B9B", "FFD8D8"], ["F7F4E3", "D2E1C8", "FEE4A6", "F9C4AA"], ["D3D6DB", "3A4750", "303841", "BE3144"], ["F9F3E6", "E2DCD5", "E8AA8C", "5E616A"], ["F0EEC9", "9EE6CF", "50C9BA", "4BA2AC"], ["280B45", "61105E", "C84771", "FFE98A"], ["233142", "455D7A", "F95959", "FACF5A"], ["062743", "113A5D", "FF7A8A", "F9F9F9"], ["D2F6FC", "A9D2FF", "7984EE", "6730EC"], ["D8DFE2", "71ADB5", "176D81", "0D3446"], ["FAF6E9", "ECE8D9", "FFFDF6", "494949"], ["222831", "393E46", "FD7014", "EEEEEE"], ["FF006C", "D62B70", "973961", "623448"], ["ABEDD8", "46CDCF", "0081C6", "48466D"], ["000000", "3E3636", "D72323", "F5EDED"], ["ECF0F1", "33CCCC", "2980B9", "2C3E50"], ["C4AFF0", "FFFEEC", "64D7D6", "5782BB"], ["F8D5F0", "58D5D3", "41A4C3", "3F4B83"], ["2C3E50", "34495E", "ECF0F1", "BDC3C7"], ["9BB899", "FCCEAA", "F5827D", "EA4961"], ["FAFAFA", "C7EEFF", "0077C0", "1D242B"], ["83FFE1", "7045FF", "C768FF", "FFADED"], ["1D3E53", "254B62", "476D7C", "77ABB7"], ["FFF6FB", "FFBEE3", "FC5BB6", "FF0592"], ["525252", "414141", "313131", "EC625F"], ["35013F", "561050", "951556", "E9B5D2"], ["CBF9DA", "3DD2CC", "3E6B89", "122D42"]], window.METADATA = {}, V = (a, b) => { console.log(`${a} : ${b}`), window.METADATA[a] = b }, 0 | 2 * R() ? (C.fillStyle = "white", V("background", "white")) : (C.fillStyle = "black", V("background", "black")), C.fillRect(0, 0, W, W), C.globalAlpha = .5; function B(x, y, u, v, l, m, n, o, p) { return { x, y, u, v, l, m, n, o, p } }; D = _ => R() * W, E = _ => W / 100 - R() * W / 50, G = (a, b) => 0 > a || a > W ? -b : b, w = 10 + R() * 32 | 0, V("wisp number", w), f = Array.from({ length: w }, _ => new B(D(), D(), D(), D(), E(), E(), E(), E(), 0)), c = .01 > R(), V("monochrome", c), c ? p = 0 : (p = 0 | P.length * R(), V("wisp palette", p)); for (i of f) i.p = `#${P[p][0 | 4 * R()]}`; q = .1 * (0 | 90 * R()) + .5, V("wisp line spacing", parseFloat(q).toFixed(1)), .5 > R() ? (C.lineWidth = W / 1e3, V("wisp line width", "thick")) : (C.lineWidth = W / 1e4, V("wisp line width", "thin")); for (t = 100 | 1e3 * R(), V("wisp length", t), g = 0; 0 | g < t; g++)for (i of f) i.x += i.l / q, i.y += i.m / q, i.u += i.n / q, i.v += i.o / q, i.l = G(i.x, i.l), i.m = G(i.y, i.m), i.n = G(i.u, i.n), i.o = G(i.v, i.o), C.beginPath(), C.strokeStyle = i.p, C.moveTo(i.x, i.y), C.lineTo(i.u, i.v), C.stroke(), C.globalAlpha = .2; for (a = 0 | 6 * R(), V("circle layers", a + 1), k = 0; k <= a; k++)for (I = M.sin, O = M.cos, U = 2 * M.PI, B = () => R() * U, D = (d, e, b) => d + e * O(b), E = (d, e, b) => d + e * I(b), n = .01 * (0 | 50 * R()) + .1, V(`circle inc ${k + 1}`, parseFloat(n).toFixed(2)), q = (0 | 5 * R()) + 1, V(`circle cycles ${k + 1}`, q), r = W / (2 + (0 | 8 * R())), V(`circle group ${k + 1}`, `1/${M.ceil(W / r)}`), w = W / (1 + (0 | 16 * R())), V(`circle radius ${k + 1}`, `1/${M.ceil(W / w)}`), p = c ? 0 : 0 | P.length * R(), V(`circle palette ${k + 1}`, p), h = 100 + (0 | 1e4 * R()), V(`circle line width ${k + 1}`, M.ceil(W / (W / (3 * h)))), i = 0; q > i; i += n)for (C.strokeStyle = stroke = `#${P[p][0 | 4 * R()]}`, x = W / 2 + r * O(U * i), y = W / 2 + r * I(U * i), j = 0; j < h; j++)u = B(), v = B(), C.lineWidth = W / (3 * h), C.beginPath(), C.moveTo(D(x, w, u), E(y, w, u)), C.lineTo(D(x, w, v), E(y, w, v)), C.stroke() }, Z()</script>