Is this implementing the same logic that's in #847? I got the impression that in that case the points and bounds were both serialised separately when they contained strings, rather than pulling out the first and last as extremes. In other words, a first/last ```new_bounds``` array is meaningless in the case of strings.