+ if (res == 0)
+ {
+ if (*abits < *bbits) res = -1;
+ if (*abits > *bbits) res = 1;
+ }
+ if (*abits)
+ {
+ if (alow == (unsigned int)-1)
+ {
+ alow = i * 8;
+ if (!(*abits & 0x01)) alow++;
+ if (!(*abits & 0x02)) alow++;
+ if (!(*abits & 0x04)) alow++;
+ if (!(*abits & 0x08)) alow++;
+ if (!(*abits & 0x10)) alow++;
+ if (!(*abits & 0x20)) alow++;
+ if (!(*abits & 0x40)) alow++;
+ }
+ ahigh = i * 8 + 7;
+ if (!(*abits & 0x80)) ahigh++;
+ if (!(*abits & 0x40)) ahigh++;
+ if (!(*abits & 0x20)) ahigh++;
+ if (!(*abits & 0x10)) ahigh++;
+ if (!(*abits & 0x08)) ahigh++;
+ if (!(*abits & 0x04)) ahigh++;
+ if (!(*abits & 0x02)) ahigh++;
+ }
+ if (*bbits)
+ {
+ if (blow == (unsigned int)-1)
+ {
+ blow = i * 8;
+ if (!(*bbits & 0x01)) blow++;
+ if (!(*bbits & 0x02)) blow++;
+ if (!(*bbits & 0x04)) blow++;
+ if (!(*bbits & 0x08)) blow++;
+ if (!(*bbits & 0x10)) blow++;
+ if (!(*bbits & 0x20)) blow++;
+ if (!(*bbits & 0x40)) blow++;
+ }
+ bhigh = i * 8 + 7;
+ if (!(*bbits & 0x80)) bhigh++;
+ if (!(*bbits & 0x40)) bhigh++;
+ if (!(*bbits & 0x20)) bhigh++;
+ if (!(*bbits & 0x10)) bhigh++;
+ if (!(*bbits & 0x08)) bhigh++;
+ if (!(*bbits & 0x04)) bhigh++;
+ if (!(*bbits & 0x02)) bhigh++;
+ }