Removed F macro -- saved 9 characters.

- #define F(n)b>>=n;g-=n;
- #define L(n)({w(g<n){j=getchar();b|=j<<g;g+=8;}j=b&((1<<n)-1);F(n);j;})
- if(g%8>0)F(g%8);

+ #define L(n)({w(g<n){j=getchar();b|=j<<g;g+=8;}j=b&((1<<n)-1);b>>=n;g-=n;j;})
+ n=g%8;if(n>0){b>>n;g-=n;}

Also fixed a nasty bug when aligning input bits before decoding BTYPE=00.

if(g%8>0)F(g%8);

F expands to two statements so it would have been interpreted as

if(g%8>0)b>>g%8;
g-=g%8;

which works only because all test files needed alignment.

The correct code is

n=g%8;if(n>0){b>>=n;g-=n;}