private int calculateTurnBasedDelay(final BlockHeader parentHeader) {
    final CliqueProposerSelector proposerSelector = new CliqueProposerSelector(validatorProvider);
    final Address nextProposer = proposerSelector.selectProposerForNextBlock(parentHeader);

    if (nextProposer.equals(localNodeAddress)) {
      return 0;
    }
    return calculatorOutOfTurnDelay(validatorProvider.getValidatorsAfterBlock(parentHeader));
  }
Instantiates a new Clique block scheduler.

@param clock the clock
@param validatorProvider the validator provider
@param localNodeAddress the local node address
@param forksSchedule the transitions
consensus/clique/src/main/java/org/hyperledger/besu/consensus/clique/blockcreation/CliqueBlockScheduler.java