-struct huffman_record {
- int16_t symbol;
- uint16_t count;
- uint8_t code_size;
- uint8_t code;
- struct huffman_record *left;
- struct huffman_record *right;
- struct huffman_record *next;
- };
+// zlib configuration
+#define COMPRESS_LEVEL 9 // use best possible compression
+#define COMPRESS_WINDOW_BITS 15 // default = max = 15 for a window of 2^15 = 32KBytes
+#define COMPRESS_MEM_LEVEL 9 // determines the amount of memory allocated during compression. Default = 8.
+/* COMPRESS_STRATEGY can be
+ Z_DEFAULT_STRATEGY (the default),
+ Z_FILTERED (more huffmann, less string matching),
+ Z_HUFFMAN_ONLY (huffman only, no string matching)
+ Z_RLE (distances limited to one)
+ Z_FIXED (prevents the use of dynamic Huffman codes)
+*/
+#define COMPRESS_STRATEGY Z_DEFAULT_STRATEGY
+// zlib tuning parameters:
+#define COMPRESS_GOOD_LENGTH 258
+#define COMPRESS_MAX_LAZY 258
+#define COMPRESS_MAX_NICE_LENGTH 258
+#define COMPRESS_MAX_CHAIN 8192