class BannerInstructionMilestone extends Milestone {

  @Override
  public boolean isOccurring(RouteProgress previousRouteProgress, RouteProgress routeProgress) {
    RouteLegProgress legProgress = routeProgress.currentLegProgress();
    LegStep currentStep = legProgress.currentStep();
    double stepDistanceRemaining = legProgress.currentStepProgress().distanceRemaining();
    BannerInstructions instructions = routeUtils.findCurrentBannerInstructions(currentStep, stepDistanceRemaining);
    if (shouldBeShown(instructions, stepDistanceRemaining)) {
      this.instructions = instructions;
      return true;
    }
    return false;
  }

    BannerInstructionMilestone(Builder builder);

}