System.out.printf("Free: %d max: %d total: %d\n", Runtime.getRuntime().freeMemory(), Runtime.getRuntime().maxMemory(), Runtime.getRuntime().totalMemory());
// Decompress
InputStream compIn = new FileInputStream(fout);
ByteArrayOutputStream decompOut = new ByteArrayOutputStream((int) fin.length());
Decoder d = new Decoder();
// Read props
byte[] props = new byte[5];
compIn.read(props);
d.SetDecoderProperties(props);
d.Code(compIn, decompOut, -1);
System.out.printf("Done. Input size %d uncompressed size %d\n", fout.length(), decompOut.size());
} catch(Exception e) {