public static byte[] uncompress(byte[] src) throws IOException {
byte[] buffer = new byte[1024]; // 1k buffer
ByteArrayInputStream bin = new ByteArrayInputStream(src);
GZIPInputStream gzipIn = new GZIPInputStream(bin);
ByteArrayOutputStream bout = new ByteArrayOutputStream();
while (gzipIn.available() > 0) {
int len = gzipIn.read(buffer);
if (len <= 0) break;
if (len < buffer.length) {
bout.write(buffer, 0, len);
} else {