{"ScriptPreparationCode":"const a = { a: \u0027oh\u0027, b: \u0027my\u0027, c: { a: \u0027a\u0027, b: { c: \u0027c\u0027 } } };\r\nconst b = { c: { b: { d: \u0027a\u0027 }, c: { d: \u0027d\u0027 } } };\r\nconst c = {\r\n foo: { bar: 3 },\r\n array: [{\r\n does: \u0027work\u0027,\r\n too: [ 1, 2, 3 ]\r\n }]\r\n}\r\nconst d = {\r\n foo: { baz: 4 },\r\n quux: 5,\r\n array: [{\r\n does: \u0027work\u0027,\r\n too: [ 4, 5, 6 ]\r\n }, {\r\n really: \u0027yes\u0027\r\n }]\r\n}\r\nconst objects = { a, b, c, d }\r\nwindow.OBJECTS = objects;","TestCases":[{"Name":"lodash merge","Code":"const one = _.merge({}, OBJECTS.a, OBJECTS.b);\r\nconst two = _.merge({}, OBJECTS.c, OBJECTS.d);","IsDeferred":false},{"Name":"deepmerge","Code":"const one = deepmerge({}, OBJECTS.a, OBJECTS.b);\r\nconst two = deepmerge({}, OBJECTS.c, OBJECTS.d);","IsDeferred":false},{"Name":"deepmerge-ts","Code":"const one = deepmergeTs({}, OBJECTS.a, OBJECTS.b);\r\nconst two = deepmergeTs({}, OBJECTS.c, OBJECTS.d);","IsDeferred":false},{"Name":" fastify deepmerge","Code":"const _merge = deepmergeFastify();\r\nconst one = deepmergeFastify({}, OBJECTS.a, OBJECTS.b);\r\nconst two = deepmergeFastify({}, OBJECTS.c, OBJECTS.d);","IsDeferred":false},{"Name":"fastify deepmerge, with \u0027all: true\u0027","Code":"const _merge = deepmergeFastify({ all: true });\r\nconst one = _merge({}, OBJECTS.a, OBJECTS.b);\r\nconst two = _merge({}, OBJECTS.c, OBJECTS.d);","IsDeferred":false},{"Name":"just-extend","Code":"const one = justExtend(true, {}, OBJECTS.a, OBJECTS.b);\r\nconst two = justExtend(true, {}, OBJECTS.c, OBJECTS.d);","IsDeferred":false}]}