| equals(Object) |   | 84% |   | 60% | 4 | 6 | 3 | 11 | 0 | 1 |
| _exhaustiveEquals(AssociationImpl, AssociationImpl) |   | 96% |   | 90% | 1 | 6 | 1 | 14 | 0 | 1 |
| _appendRecursivelyUpTo(StringBuilder, int) |   | 96% |   | 87% | 1 | 5 | 1 | 14 | 0 | 1 |
| lambda$keySet$1(LinkedValueSet, LinkedValueSet) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| put(Object, Object) |  | 100% |   | 93% | 1 | 9 | 0 | 25 | 0 | 1 |
| putIfAbsent(Object, Object) |  | 100% |   | 92% | 1 | 8 | 0 | 20 | 0 | 1 |
| remove(Object) |  | 100% |   | 80% | 4 | 11 | 0 | 26 | 0 | 1 |
| _recursiveEquals(AssociationImpl.Node, AssociationImpl.Node, Class) |  | 100% |   | 90% | 2 | 12 | 0 | 10 | 0 | 1 |
| hashCode() |  | 100% |  | 100% | 0 | 3 | 0 | 12 | 0 | 1 |
| toString() |  | 100% |  | 100% | 0 | 2 | 0 | 11 | 0 | 1 |
| LinkedAssociation(Class, AssociationImpl, Object, Object) |  | 100% |  | 100% | 0 | 2 | 0 | 7 | 0 | 1 |
| keySet() |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| clear() |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| values() |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| LinkedAssociation(Class, Class) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| spliterator() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| get(Object) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| lambda$keySet$0(LinkedValueSet, Pair) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| containsKey(Object) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| iterator() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| size() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| keyType() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| valueType() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| isLinked() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| isSorted() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |