public Envelope bounds(String key, String description) {
    String input = getArg(key);
    Envelope result = null;
    if ("world".equalsIgnoreCase(input) || "planet".equalsIgnoreCase(input)) {
      result = GeoUtils.WORLD_LAT_LON_BOUNDS;
    } else if (input != null) {
      double[] bounds = Stream.of(input.split("[\\s,]+")).mapToDouble(Double::parseDouble).toArray();
      if (bounds.length != 4) {
        throw new IllegalArgumentException("bounds must have 4 coordinates, got: " + input);
      }
      result = new Envelope(bounds[0], bounds[2], bounds[1], bounds[3]);
    }
    logArgValue(key, description, envelopeToString(result));
    return result;
  }
Returns an {@link Envelope} parsed from {@code key} argument, or null if missing.
<p>
Format: {@code westLng,southLat,eastLng,northLat}

@param key         argument name
@param description argument description
@return An envelope parsed from {@code key} or null if missing
planetiler-core/src/main/java/com/onthegomap/planetiler/config/Arguments.java