{"ScriptPreparationCode":"// intial data\r\nvar source = {a:1,b:1,c:1,d:1,e:1,f:1,g:1,h:{a:-1,b:1,c:1,d:1,e:1,f:1,g:1}};","TestCases":[{"Name":"Lodash","Code":"var result = _.cloneDeep(source);\r\n \r\n // adding checking to prevent compiler optimization\r\n if (result.h.a != -1) throw new Error(\u0027Object not clonned\u0027);\r\n result.h.a = Math.random();","IsDeferred":false},{"Name":"Ramda without relying on currying or composition","Code":"var result = R.clone(source);\r\n \r\n // adding checking to prevent compiler optimization\r\n if (result.h.a != -1) throw new Error(\u0027Object not clonned\u0027);\r\n result.h.a = Math.random();","IsDeferred":false},{"Name":"Fast Clone","Code":"var CloneFactory = FastClone.factory(source);\r\nvar result = new CloneFactory(source);\r\n\r\n// adding checking to prevent compiler optimization\r\n if (result.h.a != -1) throw new Error(\u0027Object not clonned\u0027);\r\n result.h.a = Math.random();","IsDeferred":false}]}