p5((s) => {
s.setup = function () {
s.createCanvas(width, height);
s.frameRate(8);
s.textSize(22);
};
s.draw = function () {
s.background(255, 255, 255, 60);
s.noStroke();
s.fill(s.random(150), s.random(150), s.random(150));
let x = 200 * s.sin(s.frameCount * 0.1) + 220;
let y = height - 40;
let source = [0, 0, width, height];
let target = [0, -20, width, height];
s.copy(s, ...source, ...target);
s.text(data.sample().text.slice(0, 100) + "...", x, y);
};
})