code: public int getInteger(int key) {
          Any3<Boolean, Integer, String> value = data.get(Any2.<Integer, String>left(key));
          if (value == null)
              throw new IllegalArgumentException("missing argument for param " + key);
          return value.get2().orElseThrow(() -> new IllegalArgumentException("expected integer argument for param " + key));
      }
docs: Return the integer value indicated by the given numeric key.
  
  @param key The key of the value to return.
  @return The integer value stored under the given key.
  @throws IllegalArgumentException if the value is absent or not an
  integer.