code_t
int most = (((code_t)left << (g.max - len)) - syms) /
(((code_t)1 << (g.max - len)) - 1);
int most = (((code_t)left << (g.max - len)) - syms) /
(((code_t)1 << (g.max - len)) - 1);
for (code_t word = 1; word; word <<= 1)
if (g.max > bits || (code_t)(syms - 2) >= ((code_t)-1 >> (g.max - 1))) {
if ((code_t)(syms - 1) > ((code_t)1 << g.max) - 1) {
if ((code_t)syms < ((code_t)1 << (g.root + 1)))