| TokenMetadata |   | 80% |   | 71% | 73 | 195 | 71 | 481 | 15 | 79 | 0 | 1 |
| ReplicaPlans |   | 68% |   | 50% | 33 | 77 | 50 | 172 | 2 | 29 | 0 | 1 |
| DynamicEndpointSnitch |   | 77% |   | 72% | 27 | 79 | 35 | 162 | 9 | 35 | 0 | 1 |
| ReplicationFactor |   | 41% |   | 22% | 22 | 34 | 16 | 39 | 2 | 14 | 0 | 1 |
| AbstractReplicationStrategy |   | 83% |   | 63% | 22 | 60 | 22 | 130 | 3 | 27 | 0 | 1 |
| InetAddressAndPort |   | 71% |   | 71% | 13 | 44 | 20 | 74 | 6 | 30 | 0 | 1 |
| RangesAtEndpoint |   | 72% |   | 65% | 16 | 48 | 16 | 73 | 6 | 28 | 0 | 1 |
| InetAddressAndPort.Serializer |   | 51% |   | 29% | 10 | 17 | 12 | 33 | 1 | 8 | 0 | 1 |
| ReplicaLayout |   | 60% |   | 28% | 10 | 20 | 17 | 43 | 4 | 13 | 0 | 1 |
| AbstractReplicaCollection.ReplicaList |   | 78% |   | 60% | 13 | 40 | 13 | 49 | 3 | 21 | 0 | 1 |
| ReplicaPlans.new ReplicaPlans.Selector() {...} |  | 13% |  | 16% | 3 | 5 | 13 | 16 | 0 | 2 | 0 | 1 |
| NetworkTopologyStrategy |   | 88% |   | 71% | 17 | 50 | 8 | 104 | 1 | 17 | 0 | 1 |
| ReplicaPlans.new ReplicaPlans.Selector() {...} |   | 61% |   | 44% | 8 | 15 | 9 | 22 | 1 | 6 | 0 | 1 |
| Replica |   | 81% |   | 61% | 12 | 34 | 9 | 47 | 4 | 21 | 0 | 1 |
| EndpointsForToken.Builder |   | 54% |   | 27% | 7 | 12 | 8 | 19 | 1 | 6 | 0 | 1 |
| Replicas |   | 74% |   | 72% | 7 | 20 | 10 | 41 | 2 | 9 | 0 | 1 |
| TokenMetadata.Topology.Builder |   | 84% |   | 58% | 9 | 22 | 11 | 56 | 1 | 10 | 0 | 1 |
| SimpleSeedProvider |   | 71% |   | 58% | 5 | 9 | 12 | 34 | 0 | 3 | 0 | 1 |
| TokenMetadataEvent |  | 0% | | n/a | 3 | 3 | 10 | 10 | 3 | 3 | 1 | 1 |
| EndpointsForRange |   | 78% |   | 71% | 7 | 21 | 5 | 28 | 3 | 14 | 0 | 1 |
| RangesAtEndpoint.Builder |   | 71% |   | 54% | 6 | 13 | 4 | 20 | 1 | 7 | 0 | 1 |
| EndpointsForRange.Builder |   | 69% |   | 54% | 6 | 12 | 4 | 19 | 1 | 6 | 0 | 1 |
| AbstractReplicaCollection.ReplicaMap |   | 83% |   | 80% | 6 | 21 | 6 | 39 | 3 | 11 | 0 | 1 |
| InetAddressAndPort.FwdFrmSerializer |   | 69% |   | 41% | 6 | 10 | 3 | 20 | 0 | 4 | 0 | 1 |
| ReplicaMultimap |   | 70% |  | 0% | 5 | 17 | 5 | 22 | 2 | 14 | 0 | 1 |
| ReplicaLayout.ForRangeRead |  | 24% |  | 0% | 3 | 4 | 4 | 7 | 2 | 3 | 0 | 1 |
| ReplicaLayout.ForTokenRead |  | 16% |  | 0% | 3 | 4 | 4 | 6 | 2 | 3 | 0 | 1 |
| EndpointsForToken |   | 84% |   | 80% | 5 | 24 | 3 | 29 | 3 | 19 | 0 | 1 |
| Endpoints |   | 88% |   | 68% | 7 | 30 | 5 | 40 | 1 | 19 | 0 | 1 |
| ReplicaPlan.ForRead |  | 0% |  | 0% | 4 | 4 | 1 | 1 | 2 | 2 | 1 | 1 |
| ReplicaLayout.ForTokenWrite |   | 69% |  | 75% | 1 | 6 | 4 | 12 | 0 | 4 | 0 | 1 |
| ReplicaPlan.ForWrite |  | 81% |  | 100% | 2 | 14 | 2 | 16 | 2 | 13 | 0 | 1 |
| AbstractReplicaCollection |  | 93% |  | 97% | 4 | 41 | 4 | 64 | 3 | 23 | 0 | 1 |
| SimpleStrategy |  | 91% |   | 70% | 6 | 19 | 2 | 41 | 0 | 9 | 0 | 1 |
| AbstractEndpointSnitch |  | 74% |   | 25% | 4 | 11 | 1 | 9 | 0 | 7 | 0 | 1 |
| ReplicaPlan.SharedForRangeRead | | 40% | | n/a | 1 | 3 | 1 | 3 | 1 | 3 | 0 | 1 |
| EndpointsByReplica | | 25% | | n/a | 1 | 2 | 2 | 4 | 1 | 2 | 0 | 1 |
| PendingRangeMaps |  | 96% |  | 96% | 1 | 25 | 2 | 69 | 0 | 12 | 0 | 1 |
| InOurDc |  | 85% |   | 64% | 7 | 13 | 2 | 17 | 2 | 6 | 0 | 1 |
| ReplicaPlan.AbstractForRead |  | 82% |  | 75% | 2 | 9 | 1 | 8 | 1 | 7 | 0 | 1 |
| ReplicaLayout.ForWrite |  | 75% |   | 66% | 3 | 8 | 1 | 11 | 1 | 5 | 0 | 1 |
| NetworkTopologyStrategy.DatacenterEndpoints |  | 93% |   | 71% | 4 | 11 | 2 | 27 | 0 | 4 | 0 | 1 |
| Replicas.ReplicaCount |  | 79% |   | 66% | 3 | 9 | 2 | 9 | 1 | 6 | 0 | 1 |
| AbstractReplicaCollection.ReplicaList.new Iterator() {...} |  | 92% |   | 80% | 2 | 9 | 0 | 15 | 0 | 4 | 0 | 1 |
| TokenMetadataDiagnostics | | 60% | | 50% | 1 | 4 | 1 | 5 | 0 | 3 | 0 | 1 |
| AbstractReplicaCollection.ReplicaMap.AbstractImmutableSet | | 57% | | n/a | 2 | 4 | 2 | 4 | 2 | 4 | 0 | 1 |
| AbstractReplicaCollection.AsList |  | 75% | | n/a | 1 | 4 | 2 | 8 | 1 | 4 | 0 | 1 |
| SystemReplicas |  | 85% | | 50% | 2 | 6 | 2 | 9 | 1 | 5 | 0 | 1 |
| AbstractReplicaCollection.new Collector() {...} |  | 84% | | n/a | 1 | 7 | 0 | 9 | 1 | 7 | 0 | 1 |
| IEndpointSnitch | | 75% | | n/a | 1 | 5 | 1 | 5 | 1 | 5 | 0 | 1 |
| AbstractReplicaCollection.ReplicaList.new Iterator() {...} |  | 91% |  | 75% | 1 | 5 | 0 | 6 | 0 | 3 | 0 | 1 |
| ReplicaPlan.AbstractReplicaPlan |  | 88% | | 50% | 1 | 7 | 0 | 12 | 0 | 6 | 0 | 1 |
| DynamicEndpointSnitch.new Runnable() {...} | | 60% | | n/a | 1 | 2 | 2 | 3 | 1 | 2 | 0 | 1 |
| AbstractReplicationStrategy.ReplicaCache |  | 97% |   | 80% | 2 | 9 | 1 | 21 | 0 | 4 | 0 | 1 |
| LocalStrategy |  | 97% | | n/a | 1 | 8 | 1 | 13 | 1 | 8 | 0 | 1 |
| AbstractNetworkTopologySnitch |  | 100% |   | 91% | 2 | 14 | 0 | 22 | 0 | 2 | 0 | 1 |
| TokenMetadata.new AbstractIterator() {...} |  | 100% |  | 100% | 0 | 7 | 0 | 12 | 0 | 2 | 0 | 1 |
| TokenMetadata.Topology |  | 100% |  | 100% | 0 | 9 | 0 | 15 | 0 | 8 | 0 | 1 |
| AbstractReplicaCollection.ReplicaList.new Iterator() {...} |  | 100% |  | 100% | 0 | 4 | 0 | 5 | 0 | 3 | 0 | 1 |
| ReplicaMultimap.Builder |  | 100% | | n/a | 0 | 5 | 0 | 11 | 0 | 5 | 0 | 1 |
| ReplicaPlan.ForRangeRead |  | 100% | | n/a | 0 | 4 | 0 | 7 | 0 | 4 | 0 | 1 |
| EndpointsByReplica.Builder |  | 100% | | n/a | 0 | 5 | 0 | 7 | 0 | 5 | 0 | 1 |
| ReplicaCollection.Builder.Conflict |  | 100% | | n/a | 0 | 1 | 0 | 4 | 0 | 1 | 0 | 1 |
| EndpointSnitchInfo |  | 100% | | n/a | 0 | 7 | 0 | 8 | 0 | 7 | 0 | 1 |
| AbstractReplicaCollection.ReplicaMap.KeySet |  | 100% | | n/a | 0 | 4 | 0 | 5 | 0 | 4 | 0 | 1 |
| ReplicaCollection.Builder |  | 100% |  | 100% | 0 | 4 | 0 | 5 | 0 | 3 | 0 | 1 |
| EndpointsByRange.Builder |  | 100% | | n/a | 0 | 4 | 0 | 7 | 0 | 4 | 0 | 1 |
| TokenMetadataEvent.TokenMetadataEventType |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 0 | 1 |
| ReplicaPlan.ForTokenRead |  | 100% | | n/a | 0 | 2 | 0 | 3 | 0 | 2 | 0 | 1 |
| ReplicaPlan.SharedForTokenRead |  | 100% | | n/a | 0 | 3 | 0 | 3 | 0 | 3 | 0 | 1 |
| ReplicaPlan.ForPaxosWrite | | 100% | | n/a | 0 | 2 | 0 | 4 | 0 | 2 | 0 | 1 |
| RangesByEndpoint.Builder | | 100% | | n/a | 0 | 3 | 0 | 5 | 0 | 3 | 0 | 1 |
| EndpointsByRange | | 100% | | n/a | 0 | 2 | 0 | 4 | 0 | 2 | 0 | 1 |
| RangesByEndpoint | | 100% | | n/a | 0 | 2 | 0 | 4 | 0 | 2 | 0 | 1 |
| InOurDc.ReplicaTester | | 100% | | n/a | 0 | 2 | 0 | 3 | 0 | 2 | 0 | 1 |
| InOurDc.EndpointTester | | 100% | | n/a | 0 | 2 | 0 | 3 | 0 | 2 | 0 | 1 |
| AbstractReplicationStrategy.ReplicaHolder | | 100% | | n/a | 0 | 1 | 0 | 4 | 0 | 1 | 0 | 1 |
| SimpleSnitch | | 100% | | n/a | 0 | 5 | 0 | 5 | 0 | 5 | 0 | 1 |
| DynamicEndpointSnitch.new Runnable() {...} | | 100% | | n/a | 0 | 2 | 0 | 3 | 0 | 2 | 0 | 1 |
| ReplicaPlan | | 100% | | n/a | 0 | 2 | 0 | 2 | 0 | 2 | 0 | 1 |
| ReplicaPlans.new ReplicaPlans.Selector() {...} | | 100% | | n/a | 0 | 2 | 0 | 2 | 0 | 2 | 0 | 1 |