{"ScriptPreparationCode":"var obj = { a:1 }\r\n\r\nfunction setNumber(key, value) {\r\n obj[key] = value;\r\n}\r\n\r\nfunction setCall(key, getValue) {\r\n obj[key] = getValue(obj);\r\n}\r\n\r\nfunction setTypecheck(key, value) {\r\n obj[key] = typeof value === \u0022number\u0022 ? value : value(obj);\r\n}\r\n\r\nfunction getValue() {\r\n return 100;\r\n}","TestCases":[{"Name":"setNumber","Code":"setNumber(\u0022a\u0022, 100);","IsDeferred":false},{"Name":"setCall","Code":"setCall(\u0022a\u0022, getValue);","IsDeferred":false},{"Name":"setTypecheck(num)","Code":"setTypecheck(\u0022a\u0022, 100);","IsDeferred":false},{"Name":"setTypecheck(call)","Code":"setTypecheck(\u0022a\u0022, getValue);","IsDeferred":false}]}