code: public CookieBuilder withValue(String value) {
          Mutils.notNull("value", value);
  
          boolean matches = value.matches("^[0-9A-Za-z!#$%&'()*+\\-./:<=>?@\\[\\]^_`{|}~]*$");
          if (!matches) {
              throw new IllegalArgumentException("A cookie value can only be ASCII characters excluding control characters, whitespace, quotes, commas, semicolons and backslashes. Consider using CookieBuilder.withUrlEncodedValue instead.");
          }
  
          this.value = value;
          return this;
      }
docs: <p>Sets the value of the cookie.</p>
  <p>Note that only a subset of ASCII characters are allowed (any other characters must be encoded).
  Consider using {@link #withUrlEncodedValue(String)} instead if you want to use arbitrary values.</p>
  @param value The value to use for the cookie, which can be any US-ASCII characters excluding CTLs, whitespace,
  double quotes, comma, semicolon, and backslash.
  @return This builder
  @throws IllegalArgumentException If the value contains illegal characters