-------->
z..zx.....x normal (zz != ee)
e..e value(LEN) value(POSHI+1) 8+b(POSLO) LZ77
e..e 0 (2) 0 (2-256) 8b(POSLO) LZ77
e..e 100 (3) 111111 111111 END of FILE
e..e 101 (4..) 111111 111111 8b(add) 8b(POSLO) DLZ
e..e010 n..ne.....e escape + new esc
e..e011 value(LEN) bytecode Short RLE 2..
e..e011 111..111 8b(LENLO) value(LENHI+1) bytecode Long RLE
(values 64.. not used (may not be available) in bytecode)
e..e011 0 0 RLE=2, rank 1 (saves 11.. bit)
e..e011 0 10 x RLE=2, rank 2-3 (saves 9.. bit)
e..e011 0 11 0xx RLE=2, rank 4-7 (saves 7.. bit)
e..e011 0 11 10xxx RLE=2, rank 8-15 (saves 5.. bit)
e..e011 0 11 110xxxx xxxx RLE=2, not ranked
LZ77, len=2 (pos<=256) saves 4 bits (2-bit escape)
LZ77, len=3 saves 10..1 bits (pos 2..15616)
LZ77, len=4 saves 18..9 bits
LZ77, len=5 saves 24..15 bits
RLE, len=2 saves 11..1(..-5) bits (bytecode rank 1..not ranked)
RLE, len=3 saves 15..2 bits
RLE, len=4 saves 23..10 bits
RLE, len=5 saves 29..16 bits
bs: 3505 LZ reference points, 41535 bytes -> 11.85, i.e. 8.4% referenced
1) Short RLE -> gamma + 1 linear bit -> ivanova.run -29 bytes
2) ?? .. no
esc = RLE, with value 1
e..e01 value(1) n..ne.....e escape + new esc
e..e01 value(LEN) bytecode Short RLE 2..
e..e01 111..111 8b(LENLO) value(LENHI+1) bytecode Long RLE
(values 64.. not used (may not be available) in bytecode)
Value:
Elias Gamma Code rediscovered, just the prefix bits are reversed, plus
there is a length limit (1 bit gained for each value in the last group)
; 0000000 not possible
; 0000001 0 1 -6 bits
; 000001x 10 x 2-3 -4 bits
; 00001xx 110 xx 4-7 -2 bits
; 0001xxx 1110 xxx 8-15 +0 bits
; 001xxxx 11110 xxxx 16-31 +2 bits
; 01xxxxx 111110 xxxxx 32-63 +4 bits
; 1xxxxxx 111111 xxxxxx 64-127 +5 bits