code: public JsonArray put(int index, Object value) throws JsonException {
          checkIfFrozen();
          while (values.size() <= index) {
              values.add(JSON_NULL);
          }
          values.set(index, wrap(value));
          return this;
      }
docs: Sets the value at {@code index} to {@code value}, null padding this array
  to the required length if necessary. If a value already exists at {@code
  index}, it will be replaced.
  
  @param value a {@link JsonObject}, {@link JsonArray}, String, Boolean,
  Integer, Long, Double, or {@code null}. May
  not be {@link Double#isNaN() NaNs} or {@link Double#isInfinite()
  infinities}.
  @return this array.