Finishes 015, which is another pass at grouping data via JS