### Question:
DetermineCommonAncestorTask extends AbstractEthTask<BlockHeader> { @VisibleForTesting static int calculateSkipInterval(final long range, final int headerRequestSize) { return Math.max(0, Math.toIntExact(range / (headerRequestSize - 1) - 1) - 1); } private  DetermineCommonAncestorTask(
      final ProtocolSchedule protocolSchedule,
      final ProtocolContext protocolContext,
      final EthContext ethContext,
      final EthPeer peer,
      final int headerRequestSize,
      final MetricsSystem metricsSystem); static DetermineCommonAncestorTask create(
      final ProtocolSchedule protocolSchedule,
      final ProtocolContext protocolContext,
      final EthContext ethContext,
      final EthPeer peer,
      final int headerRequestSize,
      final MetricsSystem metricsSystem);  }### Answer:
@Test public void calculateSkipInterval() { final long maximumPossibleCommonAncestorNumber = 100; final long minimumPossibleCommonAncestorNumber = 0; final int headerRequestSize = 10; final long range = maximumPossibleCommonAncestorNumber - minimumPossibleCommonAncestorNumber; final int skipInterval = DetermineCommonAncestorTask.calculateSkipInterval(range, headerRequestSize); final int count = DetermineCommonAncestorTask.calculateCount(range, skipInterval); assertThat(count).isEqualTo(11); assertThat(skipInterval).isEqualTo(9); }