{"ScriptPreparationCode":"var data = [];\r\nfor (var i = 0; i \u003C 100000; i\u002B\u002B) {\r\n data.push({\r\n counter: i\r\n });\r\n}\r\n\r\nvar condition = {\r\n field: {\r\n comparator: \u0022IS_TIMERANGE\u0022\r\n }\r\n};\r\n\r\nvar propertyCell = {\r\n condition: {\r\n field: {\r\n comparator: \u0022IS_TIMERANGE\u0022,\r\n end: [{\r\n value: 1\r\n }]\r\n }\r\n }\r\n};\r\n\r\nfunction isOdd(num) {\r\n return num % 2 === 1;\r\n}\r\n\r\nfunction square(num) {\r\n return num * num;\r\n}\r\n\r\nfunction lessThanThreeDigits(num) {\r\n return num.toString().length \u003C 3;\r\n}\r\n\r\nvar expected = data.map(o =\u003E o.counter).filter(isOdd).map(square).filter(lessThanThreeDigits);","TestCases":[{"Name":"regular javascript","Code":"const result = new Array();\r\n\r\nfor (var i = 0; i \u003C data.length; i\u002B\u002B) {\r\n const counter = data[i].counter;\r\n \r\n const propertyValue = propertyCell.condition.field.end[0].value;\r\n \r\n if (isOdd(counter \u002B propertyValue)){\r\n const r = square(counter);\r\n if (lessThanThreeDigits(r)) {\r\n result.push(r);\r\n }\r\n }\r\n}","IsDeferred":false},{"Name":"ramda","Code":"const result = new Array();\r\n\r\nfor (var i = 0; i \u003C data.length; i\u002B\u002B) {\r\n const counter = R.propOr(\u0022\u0022, \u0022counter\u0022, data);\r\n const propertyValueLast = R.last(R.pathOr([], [\u0022condition\u0022, \u0022field\u0022, \u0022end\u0022], propertyCell));\r\n const propertyValue = R.prop(\u0022value\u0022, propertyValueLast);\r\n \r\n if (isOdd(counter \u002B propertyValue)){\r\n const r = square(counter);\r\n if (lessThanThreeDigits(r)) {\r\n result.push(r);\r\n }\r\n }\r\n}","IsDeferred":false}]}