If I understand the code correctly, the polygon 'next' performs an union operation over all Geometries in the 'current' list, but what I don't really understand (it is the same for the subtract method) it's why 'current' is a list of Geometries and not just a single Geometry. If the idea is the that the final result is a list of Geometries, wouldn't be better just:

```java
public static void merge(ArrayList<Geometry> current, Polygon next) {
      Geometry m = gdxToJts(next);
      current.add(m);
}
```
Maybe I'm missing something.