{"ScriptPreparationCode":"var data = [\r\n {\r\n \u0022property\u0022: {\r\n \u0022attributes\u0022: {\r\n \u0022Division\u0022: \u0022Lease\u0022\r\n }\r\n },\r\n \u0022distance\u0022: 2246.2370543234983\r\n },\r\n {\r\n \u0022property\u0022: {\r\n \u0022attributes\u0022: {\r\n \u0022Division\u0022: \u0022Other\u0022\r\n }\r\n },\r\n \u0022distance\u0022: 1933.140699574846\r\n },\r\n {\r\n \u0022property\u0022: {\r\n \u0022attributes\u0022: {\r\n \u0022Division\u0022: \u0022Somewhere\u0022\r\n }\r\n },\r\n \u0022distance\u0022: 1923.7492555791712\r\n },\r\n {\r\n \u0022property\u0022: {\r\n \u0022attributes\u0022: {\r\n \u0022Division\u0022: \u0022Other\u0022\r\n }\r\n },\r\n \u0022distance\u0022: 1922.1415226358515\r\n },\r\n {\r\n \u0022property\u0022: {\r\n \u0022attributes\u0022: {\r\n \u0022Division\u0022: \u0022Somewhere\u0022\r\n }\r\n },\r\n \u0022distance\u0022: 1960.0063586220126\r\n }\r\n]\r\n\r\n\r\n","TestCases":[{"Name":"grok","Code":"function findSmallestDistance() {\r\n const result = {};\r\n\r\n for (const item of data) {\r\n const division = item.property.attributes.Division;\r\n const distance = item.distance;\r\n\r\n if (result[division]) {\r\n if (distance \u003C result[division].distance) {\r\n result[division].distance = distance;\r\n }\r\n } else {\r\n result[division] = {\r\n division: division,\r\n distance: distance\r\n };\r\n }\r\n }\r\n\r\n return result;\r\n}\r\nfindSmallestDistance();","IsDeferred":false},{"Name":"reduceMethod","Code":"const reduceMethod = ()=\u003E {\r\n const divisions = data.reduce((acc, i) =\u003E {\r\n const {\r\n attributes: { Division }\r\n } = i.property;\r\n if (!acc.has(Division) || acc.get(Division).distance \u003E i.distance) {\r\n acc.set(Division, {\r\n distance: i.distance,\r\n division: Division\r\n });\r\n }\r\n return acc;\r\n }, new Map());\r\nreturn Object.fromEntries(divisions);\r\n}\r\nreduceMethod();","IsDeferred":false}]}