| differenceHelper(MerkleTree, MerkleTree, List, MerkleTree.TreeRange) |  | 0% |  | 0% | 20 | 20 | 44 | 44 | 1 | 1 |
| splitHelper(MerkleTree.Node, Token, Token, int, Token) |  | 0% |  | 0% | 7 | 7 | 14 | 14 | 1 | 1 |
| difference(MerkleTree, MerkleTree) |  | 0% |  | 0% | 6 | 6 | 17 | 17 | 1 | 1 |
| findHelper(MerkleTree.Node, Range, Range) |  | 0% |  | 0% | 7 | 7 | 19 | 19 | 1 | 1 |
| estimatedMaxDepthForBytes(IPartitioner, long, int) |  | 0% | | n/a | 1 | 1 | 13 | 13 | 1 | 1 |
| deserialize(DataInputPlus, boolean, int) |  | 0% | | n/a | 1 | 1 | 12 | 12 | 1 | 1 |
| initHelper(Token, Token, int, int) |  | 0% |  | 0% | 4 | 4 | 8 | 8 | 1 | 1 |
| moveOffHeap() |  | 0% |  | 0% | 2 | 2 | 6 | 6 | 1 | 1 |
| serializedSize(int) |  | 0% | | n/a | 1 | 1 | 8 | 8 | 1 | 1 |
| equals(Object) |  | 0% |  | 0% | 8 | 8 | 5 | 5 | 1 | 1 |
| getHelper(MerkleTree.Node, Token, Token, Token) |  | 0% |  | 0% | 4 | 4 | 12 | 12 | 1 | 1 |
| unsafeInvalidateHelper(MerkleTree.Node, Token, Token) |  | 0% |  | 0% | 4 | 4 | 10 | 10 | 1 | 1 |
| serialize(DataOutputPlus, int) |  | 0% | | n/a | 1 | 1 | 8 | 8 | 1 | 1 |
| xor(byte[], byte[]) |  | 0% |  | 0% | 3 | 3 | 5 | 5 | 1 | 1 |
| init() |  | 0% | | n/a | 1 | 1 | 5 | 5 | 1 | 1 |
| xorOntoLeft(byte[], byte[]) |  | 0% |  | 0% | 3 | 3 | 4 | 4 | 1 | 1 |
| ifHashesRange(Range, MerkleTree.Consumer) |  | 0% |  | 0% | 3 | 3 | 7 | 7 | 1 | 1 |
| MerkleTree(MerkleTree.Node, IPartitioner, Range, int, long, long) |  | 0% |  | 0% | 2 | 2 | 9 | 9 | 1 | 1 |
| split(Token) |  | 0% |  | 0% | 2 | 2 | 7 | 7 | 1 | 1 |
| shouldUseOffHeapTrees(IPartitioner, boolean) |  | 0% |  | 0% | 8 | 8 | 5 | 5 | 1 | 1 |
| histogramOfRowSizePerLeaf() |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| histogramOfRowCountPerLeaf() |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| rowCount() |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| allocate(int, IPartitioner) |  | 0% |  | 0% | 2 | 2 | 6 | 6 | 1 | 1 |
| toString() |  | 0% | | n/a | 1 | 1 | 5 | 5 | 1 | 1 |
| fromPointer(int, ByteBuffer, IPartitioner) |  | 0% |  | 0% | 2 | 2 | 1 | 1 | 1 | 1 |
| deserializeTree(DataInputPlus, IPartitioner, int, boolean, int) |  | 0% |  | 0% | 2 | 2 | 3 | 3 | 1 | 1 |
| deserializeOffHeap(DataInputPlus, IPartitioner, int, int) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| tryMoveOffHeap() |  | 0% |  | 0% | 3 | 3 | 3 | 3 | 1 | 1 |
| get(Token) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| release() |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| MerkleTree(IPartitioner, Range, int, long) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| find(Range) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| offHeapBufferSize(int, IPartitioner) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getTempArray(int) |  | 0% |  | 0% | 2 | 2 | 1 | 1 | 1 | 1 |
| unsafeInvalidate(Token) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| static {...} |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| rangeIterator() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| deserialize(DataInputPlus, int) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| hash(Range) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| hashesRange(Range) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| fillInnerHashes() |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| maxsize(long) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| partitioner() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| size() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| maxsize() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| lambda$static$0() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| lambda$hashesRange$1(MerkleTree.Node) | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |