{"ScriptPreparationCode":"var canvasOne = document.getElementById(\u0027canvasOne\u0027);\r\nvar ctxOne = canvasOne.getContext(\u00222d\u0022);\r\n\r\nvar canvasTwo = document.getElementById(\u0027canvasTwo\u0027);\r\nvar ctxTwo = canvasTwo.getContext(\u00222d\u0022);","TestCases":[{"Name":"manual","Code":" ctxOne.beginPath();\r\n ctxOne.moveTo(20, 20);\r\n ctxOne.lineTo(40, 40);\r\n ctxOne.shadowBlur = 20;\r\n ctxOne.shadowOffsetX = 10;\r\n ctxOne.shadowOffsetY = 10;\r\n ctxOne.shadowColor = \u0027#f62459\u0027;\r\n ctxOne.strokeStyle = \u0027#f62459\u0027;\r\n\tctxOne.stroke();\r\n ctxOne.shadowBlur = 0;\r\n ctxOne.shadowOffsetX = 0;\r\n ctxOne.shadowOffsetY = 0;\r\n ctxOne.shadowColor = \u0027rgba(0, 0, 0, 0)\u0027;","IsDeferred":false},{"Name":"save/restore","Code":" ctxTwo.save();\r\n ctxTwo.beginPath();\r\n ctxTwo.moveTo(20, 20);\r\n ctxTwo.lineTo(40, 40);\r\n ctxTwo.shadowBlur = 20;\r\n ctxTwo.shadowOffsetX = 10;\r\n ctxTwo.shadowOffsetY = 10;\r\n ctxTwo.shadowColor = \u0027#f62459\u0027;\r\n ctxTwo.strokeStyle = \u0027#f62459\u0027;\r\n\tctxTwo.stroke();\r\n ctxTwo.restore();","IsDeferred":false}]}