{"ScriptPreparationCode":"function XSmall() {\r\n const result = () =\u003E {};\r\n result.fn1 = () =\u003E {};\r\n result.fn2 = () =\u003E {};\r\n return result;\r\n}\r\n\r\nfunction XSmallTest() {\r\n const r = XSmall();\r\n r();\r\n r.fn1();\r\n r.fn2();\r\n}\r\n\r\nfunction XBig() {\r\n const result = () =\u003E {};\r\n result.fn1 = () =\u003E {};\r\n result.fn2 = () =\u003E {};\r\n result.fn3 = () =\u003E {};\r\n result.fn4 = () =\u003E {};\r\n result.fn5 = () =\u003E {};\r\n result.fn6 = () =\u003E {};\r\n result.fn7 = () =\u003E {};\r\n result.fn8 = () =\u003E {};\r\n result.fn9 = () =\u003E {};\r\n result.fn10 = () =\u003E {};\r\n result.fn11 = () =\u003E {};\r\n result.fn12 = () =\u003E {};\r\n result.fn13 = () =\u003E {};\r\n result.fn14 = () =\u003E {};\r\n result.fn15 = () =\u003E {};\r\n result.fn16 = () =\u003E {};\r\n result.fn17 = () =\u003E {};\r\n result.fn18 = () =\u003E {};\r\n result.fn19 = () =\u003E {};\r\n result.fn20 = () =\u003E {};\r\n result.fn21 = () =\u003E {};\r\n result.fn22 = () =\u003E {};\r\n result.fn23 = () =\u003E {};\r\n result.fn24 = () =\u003E {};\r\n result.fn25 = () =\u003E {};\r\n result.fn26 = () =\u003E {};\r\n result.fn27 = () =\u003E {};\r\n result.fn28 = () =\u003E {};\r\n result.fn29 = () =\u003E {};\r\n result.fn30 = () =\u003E {};\r\n result.fn31 = () =\u003E {};\r\n result.fn32 = () =\u003E {};\r\n result.fn33 = () =\u003E {};\r\n result.fn34 = () =\u003E {};\r\n result.fn35 = () =\u003E {};\r\n result.fn36 = () =\u003E {};\r\n result.fn37 = () =\u003E {};\r\n result.fn38 = () =\u003E {};\r\n result.fn39 = () =\u003E {};\r\n result.fn40 = () =\u003E {};\r\n return result;\r\n}\r\n\r\nfunction XBigTest() {\r\n const r = XBig();\r\n r();\r\n r.fn1();\r\n r.fn2();\r\n}\r\n\r\nconst YSmallPrototype = Object.create({\r\n fn1: () =\u003E {},\r\n fn2: () =\u003E {},\r\n});\r\n\r\nfunction YSmall() {\r\n const result = () =\u003E {};\r\n Object.setPrototypeOf(result, YSmallPrototype);\r\n return result;\r\n}\r\n\r\nfunction YSmallTest() {\r\n const r = YSmall();\r\n r();\r\n r.fn1();\r\n r.fn2();\r\n}\r\n\r\nconst YBigPrototype = Object.create({\r\n fn1: () =\u003E {},\r\n fn2: () =\u003E {},\r\n fn3: () =\u003E {},\r\n fn4: () =\u003E {},\r\n fn5: () =\u003E {},\r\n fn6: () =\u003E {},\r\n fn7: () =\u003E {},\r\n fn8: () =\u003E {},\r\n fn9: () =\u003E {},\r\n fn10: () =\u003E {},\r\n fn11: () =\u003E {},\r\n fn12: () =\u003E {},\r\n fn13: () =\u003E {},\r\n fn14: () =\u003E {},\r\n fn15: () =\u003E {},\r\n fn16: () =\u003E {},\r\n fn17: () =\u003E {},\r\n fn18: () =\u003E {},\r\n fn19: () =\u003E {},\r\n fn20: () =\u003E {},\r\n fn21: () =\u003E {},\r\n fn22: () =\u003E {},\r\n fn23: () =\u003E {},\r\n fn24: () =\u003E {},\r\n fn25: () =\u003E {},\r\n fn26: () =\u003E {},\r\n fn27: () =\u003E {},\r\n fn28: () =\u003E {},\r\n fn29: () =\u003E {},\r\n fn30: () =\u003E {},\r\n fn31: () =\u003E {},\r\n fn32: () =\u003E {},\r\n fn33: () =\u003E {},\r\n fn34: () =\u003E {},\r\n fn35: () =\u003E {},\r\n fn36: () =\u003E {},\r\n fn37: () =\u003E {},\r\n fn38: () =\u003E {},\r\n fn39: () =\u003E {},\r\n fn40: () =\u003E {},\r\n});\r\n\r\nfunction YBig() {\r\n const result = () =\u003E {};\r\n Object.setPrototypeOf(result, YBigPrototype);\r\n return result;\r\n}\r\n\r\nfunction YBigTest() {\r\n const r = YBig();\r\n r();\r\n r.fn1();\r\n r.fn2();\r\n}\r\n","TestCases":[{"Name":"Few Property Assignments","Code":"XSmallTest()","IsDeferred":false},{"Name":"Many Property Assignments","Code":"XBigTest()","IsDeferred":false},{"Name":"Small Prototype","Code":"YSmallTest()","IsDeferred":false},{"Name":"Large Prototype","Code":"YBigTest()","IsDeferred":false}]}