int dbg = _dbg++; WriteStream dbgIn = Vfs.openWrite("file:/tmp/ti" + dbg + ".in"); WriteStream dbgOut = Vfs.openWrite("file:/tmp/ti" + dbg + ".out");
  public Value gzinflate(Env env,                         InputStream data,                         @Optional("0") long length)  {    TempBuffer tempBuf = TempBuffer.allocate();    byte []buffer = tempBuf.getBuffer();    try {      Inflater inflater = new Inflater(true);      boolean isFinished = false;      TempStream out = new TempStream();      int dbg = _dbg++;      WriteStream dbgIn = Vfs.openWrite("file:/tmp/ti" + dbg + ".in");      WriteStream dbgOut = Vfs.openWrite("file:/tmp/ti" + dbg + ".out");      int len;      while (! isFinished) {        if (! isFinished && inflater.needsInput()) {          len = data.read(buffer, 0, buffer.length);          if (len > 0) {	    dbgIn.write(buffer, 0, len);	    dbgIn.flush();	                inflater.setInput(buffer, 0, len);	  }          else            isFinished = true;        }        while ((len = inflater.inflate(buffer, 0, buffer.length)) > 0) {          out.write(buffer, 0, len, false);	  dbgOut.write(buffer, 0, len);	  dbgOut.flush();        }      }      inflater.end();      return new TempBufferStringValue(out.getHead());    } catch (Exception e) {      env.warning(e);      return BooleanValue.FALSE;    } finally {      TempBuffer.free(tempBuf);    }  }