let F=['serif','sans-serif','monospace','cursive','fantasy'],C=[],S='',Q='';function setup(){createCanvas(500,500);textFont(random(F));textAlign(CENTER,CENTER);noStroke();Q=setup+'\n'+draw;print(Q);S=Q.repeat(80);C=Array.from({length:450},(_,i)=>({x:i*73%540-20,y:floor(i*73/540)*21+10,s:random(13,56),c:random(55,255),d:i}));}function draw(){background(0);C.filter(p=>frameCount>p.d).map((p,i)=>{let t=min((frameCount-p.d)/12,1),z=sin(t*HALF_PI)*1.25-t*.25;fill(p.c);textSize(p.s*z);text(S.slice(i*8%S.length,i*8%S.length+8),p.x,p.y)})}