public static synchronized byte[] compress(byte[] source, int off, int len) {
    try {
      DEFLATER.reset();
      DEFLATER.setDictionary(PRESET_BUF);
      try {
        try (DeflaterOutputStream output = new DeflaterOutputStream(OUTPUT, DEFLATER)) {
          output.write(source, off, len);
        }
      }
      catch (IOException e) {
        return source;
      }
      return OUTPUT.toByteArray();
    }
    finally {
      OUTPUT.reset();
    }

  }
public static synchronized byte[] compress(byte[] source, int off, int len)