out.count = converter.count;
out.write(work_bytes, 0, converter.count);
  private void writeChars(char[] buf, int offset, int count)    throws IOException  {    while (count > 0)      {	// We must flush if out.count == out.buf.length.	// It is probably a good idea to flush if out.buf is almost full.	// This test is an approximation for "almost full".	if (out.count + count >= out.buf.length)	  {	    out.flush();	    if (out.count != 0)	      throw new IOException("unable to flush output byte buffer");	  }	converter.setOutput(out.buf, out.count);	int converted = converter.write(buf, offset, count);	offset += converted;	count -= converted;	out.count = converter.count;      }  }