public void write(byte[] buf, int off, int len) throws IOException
public synchronized void write(byte[] buf, int off, int len) throws IOException
  public void write(byte[] buf, int off, int len) throws IOException  {    crc.update(buf, off, len);    super.write(buf, off, len);  }