here we're creating a new object. Since it could be quite large, I wonder if we could not change directly `records` instead.