| parseCsv(Path) |   | 94% |   | 85% | 2 | 8 | 1 | 21 | 0 | 1 |
| parseInt(String, int) |   | 54% |   | 50% | 1 | 2 | 3 | 5 | 0 | 1 |
| findChangedFields(ScanRecord, ScanRecord) |   | 95% |   | 83% | 2 | 7 | 1 | 17 | 0 | 1 |
| requireField(List, Map, String) |   | 90% |   | 66% | 2 | 4 | 1 | 7 | 0 | 1 |
| parseDouble(String) |   | 75% |  | 100% | 0 | 2 | 2 | 5 | 0 | 1 |
| parseQuotedField(String, int, StringBuilder) |   | 95% |   | 75% | 2 | 5 | 1 | 12 | 0 | 1 |
| getFieldPreserveEmpty(List, Map, String) |   | 92% |   | 83% | 1 | 4 | 0 | 5 | 0 | 1 |
| parseSemicolonListOrNull(List, Map, String) |  | 96% |   | 75% | 1 | 3 | 0 | 5 | 0 | 1 |
| compute(Path, Path) |  | 100% |  | 100% | 0 | 6 | 0 | 28 | 0 | 1 |
| toScanRecord(List, Map) |  | 100% | | n/a | 0 | 1 | 0 | 14 | 0 | 1 |
| parseCsvLine(String) |  | 100% |  | 100% | 0 | 4 | 0 | 16 | 0 | 1 |
| parseSemicolonList(String) |  | 100% |   | 87% | 1 | 5 | 0 | 8 | 0 | 1 |
| getField(List, Map, String) |  | 100% |   | 75% | 2 | 5 | 0 | 5 | 0 | 1 |
| buildMap(List) |  | 100% |  | 100% | 0 | 2 | 0 | 5 | 0 | 1 |
| displayNameEqual(String, String) |  | 100% |  | 100% | 0 | 3 | 0 | 3 | 0 | 1 |
| addIfBothPresentAndChanged(Set, String, Object, Object) |  | 100% |   | 83% | 1 | 4 | 0 | 3 | 0 | 1 |
| parseBoolean(String) |  | 100% |   | 75% | 1 | 3 | 0 | 3 | 0 | 1 |
| tagsEqual(List, List) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| countSecurityRelevant(List) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| key(ScanRecord) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| lambda$countSecurityRelevant$2(ScanRecord) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| loadRecords(Path) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| lambda$compute$1(DeltaEntry) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| lambda$compute$0(DeltaEntry) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |