{"ScriptPreparationCode":"function ctor() {\r\n \tvar obj = { a: { a: 5 }, b: { b: 5 }, c: { c: 6 }, d: 5, e: [Math.random(), Math.random()] }; \r\n \treturn obj;\r\n}","TestCases":[{"Name":"setting null","Code":"var objects = [];\r\nfor (var i = 0; i \u003C 1000; i\u002B\u002B) {\r\n\tobjects[i] = ctor();\r\n}\r\nvar obj = objects[Math.floor(Math.random() * 1000)];\r\nwindow.leak = obj.a \u002B obj.b \u002B obj.c \u002B obj.d \u002B obj.e;\r\nfor (var i = 0; i \u003C 1000; i\u002B\u002B) {\r\n \tobj.a = null;\r\n \tobj.b = null;\r\n \tobj.c = null;\r\n \tobj.d = null;\r\n \tobj.e = null;\r\n}","IsDeferred":false},{"Name":"setting undefined","Code":"var objects = [];\r\nfor (var i = 0; i \u003C 1000; i\u002B\u002B) {\r\n\tobjects[i] = ctor();\r\n}\r\nvar obj = objects[Math.floor(Math.random() * 1000)];\r\nwindow.leak = obj.a \u002B obj.b \u002B obj.c \u002B obj.d \u002B obj.e;\r\nfor (var i = 0; i \u003C 1000; i\u002B\u002B) {\r\n \tobj.a = void 0;\r\n \tobj.b = void 0;\r\n \tobj.c = void 0;\r\n \tobj.d = void 0;\r\n \tobj.e = void 0;\r\n}","IsDeferred":false}]}