docs: @Override
    public int read() throws IOException
    {
      for(;;) {
        if(bytesBuffer.hasRemaining()) {
          return bytesBuffer.get() & 0xFF;
        }
        else {
          fillBytesBuffer();
          if(endOfInput && !bytesBuffer.hasRemaining()) {
            return EOF;
          }
        }
      }
    }