int size = 1000000;
HuffmanParamsCalculator cal = new HuffmanParamsCalculator();
cal.add(ReadTag.nameType3BytesToInt("OQ", 'Z'), size);
cal.add(ReadTag.nameType3BytesToInt("X0", 'C'), size);
cal.add(ReadTag.nameType3BytesToInt("X0", 'c'), size);
cal.add(ReadTag.nameType3BytesToInt("X0", 's'), size);
cal.add(ReadTag.nameType3BytesToInt("X1", 'C'), size);
cal.add(ReadTag.nameType3BytesToInt("X1", 'c'), size);
cal.add(ReadTag.nameType3BytesToInt("X1", 's'), size);
cal.add(ReadTag.nameType3BytesToInt("XA", 'Z'), size);
cal.add(ReadTag.nameType3BytesToInt("XC", 'c'), size);
cal.add(ReadTag.nameType3BytesToInt("XT", 'A'), size);
cal.add(ReadTag.nameType3BytesToInt("OP", 'i'), size);
cal.add(ReadTag.nameType3BytesToInt("OC", 'Z'), size);
cal.add(ReadTag.nameType3BytesToInt("BQ", 'Z'), size);
cal.add(ReadTag.nameType3BytesToInt("AM", 'c'), size);
cal.calculate();
HuffmanIntHelper helper = new HuffmanIntHelper(cal.values(), cal.bitLens());
for (int b : cal.values()) {
helper.write(bos, b);
for (int b : cal.values()) {
int v = helper.read(bis);
if (v != b) {