| readBits(BitInputStream, int) |   | 66% |   | 50% | 1 | 2 | 1 | 4 | 0 | 1 |
| static {...} |  | 100% | | n/a | 0 | 1 | 0 | 10 | 0 | 1 |
| populateDynamicTables(BitInputStream, int[], int[]) |  | 100% |   | 91% | 1 | 8 | 0 | 30 | 0 | 1 |
| decode(byte[], int, int) |  | 100% |  | 100% | 0 | 9 | 0 | 19 | 0 | 1 |
| getCodes(int[]) |  | 100% |   | 87% | 1 | 5 | 0 | 14 | 0 | 1 |
| buildTree(int[]) |  | 100% |  | 100% | 0 | 6 | 0 | 15 | 0 | 1 |
| readDynamicTables() |  | 100% | | n/a | 0 | 1 | 0 | 7 | 0 | 1 |
| switchToUncompressedState() |  | 100% |  | 100% | 0 | 2 | 0 | 7 | 0 | 1 |
| nextSymbol(BitInputStream, HuffmanDecoder.BinaryTreeNode) |  | 100% |  | 100% | 0 | 5 | 0 | 6 | 0 | 1 |
| HuffmanDecoder(InputStream) |  | 100% | | n/a | 0 | 1 | 0 | 6 | 0 | 1 |
| close() |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| decode(byte[]) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| readBits(int) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| available() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getBytesRead() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |