code: public void store (@Nonnull @WillNotClose final OutputStream aOS, @Nullable final String sComments) throws IOException
    {
      _store (new NonBlockingBufferedWriter (new OutputStreamWriter (aOS, StandardCharsets.ISO_8859_1)), sComments, true);
    }
docs: Writes this property list (key and element pairs) in this
  <code>Properties</code> table to the output stream in a format suitable for
  loading into a <code>Properties</code> table using the
  {@link #load(InputStream) load(InputStream)} method.
  <p>
  Properties from the defaults table of this <code>Properties</code> table
  (if any) are <i>not</i> written out by this method.
  <p>
  This method outputs the comments, properties keys and values in the same
  format as specified in {@link #store(java.io.Writer, java.lang.String)
  store(Writer)}, with the following differences:
  <ul>
  <li>The stream is written using the ISO 8859-1 character encoding.
  <li>Characters not in Latin-1 in the comments are written as
  <code>&#92;u</code><i>xxxx</i> for their appropriate unicode hexadecimal
  value <i>xxxx</i>.
  <li>Characters less than <code>&#92;u0020</code> and characters greater
  than <code>&#92;u007E</code> in property keys or values are written as
  <code>&#92;u</code><i>xxxx</i> for the appropriate hexadecimal value
  <i>xxxx</i>.
  </ul>
  <p>
  After the entries have been written, the output stream is flushed. The
  output stream remains open after this method returns.
  <p>
  
  @param aOS
  an output stream.
  @param sComments
  a description of the property list.
  @exception IOException
  if writing this property list to the specified output stream
  throws an <tt>IOException</tt>.
  @exception ClassCastException
  if this <code>Properties</code> object contains any keys or
  values that are not <code>Strings</code>.
  @exception NullPointerException
  if <code>out</code> is null.
  @since 1.2