| main(String[]) |  | 0% |  | 0% | 6 | 6 | 25 | 25 | 1 | 1 | 
| onContent(ProductId, String, Content) |   | 84% |   | 50% | 1 | 2 | 1 | 8 | 0 | 1 | 
| close() |  | 0% |  | n/a | 1 | 1 | 2 | 2 | 1 | 1 | 
| ProductDigest(CryptoUtils.Version) |  | 97% |   | 50% | 1 | 2 | 0 | 9 | 0 | 1 | 
| digestProduct(Product, CryptoUtils.Version) |  | 100% |  | n/a | 0 | 1 | 0 | 8 | 0 | 1 | 
| onBeginProduct(ProductId, String) |  | 100% |  | n/a | 0 | 1 | 0 | 4 | 0 | 1 | 
| onLink(ProductId, String, URI) |  | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| onProperty(ProductId, String, String) |  | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| onEndProduct(ProductId) |  | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| static {...} |  | 100% |  | n/a | 0 | 1 | 0 | 2 | 0 | 1 | 
| getDigest() |  | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| onSignatureVersion(ProductId, CryptoUtils.Version) |  | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| onSignature(ProductId, String) |  | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| onSignatureHistory(ProductId, List) |  | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 |