{"ScriptPreparationCode":"let ctx = (typeof OffscreenCanvas === \u0027function\u0027 ? new OffscreenCanvas(150, 300) : document.createElement(\u0027canvas\u0027))\r\n .getContext(\u00272d\u0027)\r\nlet translate = 10\r\nlet scale = 30\r\nlet rotation = 1/3\r\nfunction doStuff() {\r\n // Change some stuff...\r\n ctx.translate(translate, translate)\r\n ctx.scale(scale, scale)\r\n ctx.rotate(rotation)\r\n}","TestCases":[{"Name":"Save","Code":"ctx.save()\r\ndoStuff()\r\nctx.arc(0,0,30,0,6)\r\nctx.restore()","IsDeferred":false},{"Name":"Undo","Code":"doStuff()\r\nctx.arc(0,0,30,0,6)\r\nctx.rotate(-rotation)\r\nctx.scale(1/scale,1/scale)\r\nctx.translate(-translate,-translate)","IsDeferred":false}]}