code: public static Polygon fromOuterInner(@NonNull LineString outer, @Nullable LineString... inner) {
      isLinearRing(outer);
      List<List<Point>> coordinates = new ArrayList<>();
      coordinates.add(outer.coordinates());
      // If inner rings are set to null, return early.
      if (inner == null) {
        return new Polygon(TYPE, null, coordinates);
      }
      for (LineString lineString : inner) {
        isLinearRing(lineString);
        coordinates.add(lineString.coordinates());
      }
      return new Polygon(TYPE, null, coordinates);
    }
docs: Create a new instance of this class by passing in an outer {@link LineString} and optionally
  one or more inner LineStrings. Each of these LineStrings should follow the linear ring rules.
  <p>
  Note that if a LineString breaks one of the linear ring rules, a {@link RuntimeException} will
  be thrown.
  
  @param outer a LineString which defines the outer perimeter of the polygon
  @param inner one or more LineStrings representing holes inside the outer perimeter
  @return a new instance of this class defined by the values passed inside this static factory
  method
  @since 3.0.0