int bchTypeNumber(int data) { int d = data << 12; while (d.bitLength >= 13) { d ^= _g18 << (d.bitLength - 13); } return (data << 12) | d; }