static A varyBackgroundWithBoxes(A s, int w, int h) { s = cloneThroughStructure(s); if (oneIn(10)) s.background = varyColor(s.background); else if (tossCoin()) replaceRandomElement(s.boxes, randomBox()); else varyBoxWithColor(random(s.boxes), w, h); ret s; }