Program: 101802
Project: 101802
Buggy source:
@EventHandler(priority=EventPriority.LOW,ignoreCancelled=true) public void checkSpeed(PlayerMoveEvent event){
  Player player=event.getPlayer();
  Location from=event.getFrom();
  Location to=event.getTo();
  boolean changed=false;
  if (event.getTo() != event.getFrom()) {
    Distance distance=new Distance(from,to);
    double x=distance.getXDifference();
    double y=distance.getYDifference();
    double z=distance.getZDifference();
    if (checkManager.willCheck(player,CheckType.SPEED) && checkManager.willCheck(player,CheckType.ZOMBE_FLY) && checkManager.willCheck(player,CheckType.FLY)) {
      if (event.getFrom().getY() < event.getTo().getY() && backend.checkYSpeed(player,y)) {
        if (!config.silentMode()) {
          event.setTo(Anticheat.getManager().getUserManager().getUser(player.getName()).getGoodLocation(from.clone()));
        }
        log("String_Node_Str",player,CheckType.SPEED);
        changed=true;
      }
      if (backend.checkXZSpeed(player,x,z)) {
        if (!config.silentMode()) {
          event.setTo(Anticheat.getManager().getUserManager().getUser(player.getName()).getGoodLocation(from.clone()));
        }
        log("String_Node_Str",player,CheckType.SPEED);
        changed=true;
      }
      if ((event.getFrom().getX() != event.getTo().getX() || event.getFrom().getZ() != event.getTo().getZ()) && backend.checkTimer(player)) {
        if (!config.silentMode()) {
          event.setTo(Anticheat.getManager().getUserManager().getUser(player.getName()).getGoodLocation(from.clone()));
        }
        log("String_Node_Str",player,CheckType.SPEED);
        changed=true;
      }
    }
    if (checkManager.willCheck(player,CheckType.WATER_WALK) && backend.checkWaterWalk(player,x,y,z)) {
      if (!config.silentMode()) {
        player.teleport(Anticheat.getManager().getUserManager().getUser(player.getName()).getGoodLocation(player.getLocation().add(0,-1,0)));
      }
      log("String_Node_Str",player,CheckType.WATER_WALK);
      changed=true;
    }
    if (checkManager.willCheck(player,CheckType.SNEAK) && backend.checkSneak(player,x,z)) {
      if (!config.silentMode()) {
        event.setTo(Anticheat.getManager().getUserManager().getUser(player.getName()).getGoodLocation(from.clone()));
        player.setSneaking(false);
      }
      log("String_Node_Str",player,CheckType.SNEAK);
      changed=true;
    }
    if (checkManager.willCheck(player,CheckType.SPIDER) && backend.checkSpider(player,y)) {
      if (!config.silentMode()) {
        event.setTo(Anticheat.getManager().getUserManager().getUser(player.getName()).getGoodLocation(from.clone()));
      }
      log("String_Node_Str",player,CheckType.SPIDER);
      changed=true;
    }
    if (!changed) {
      Anticheat.getManager().getUserManager().getUser(player.getName()).setGoodLocation(event.getFrom());
    }
  }
  Anticheat.getManager().addEvent(event.getEventName(),event.getHandlers().getRegisteredListeners());
}

Fixed version (ground truth):
@EventHandler(priority=EventPriority.LOWEST,ignoreCancelled=true) public void checkSpeed(PlayerMoveEvent event){
  Player player=event.getPlayer();
  Location from=event.getFrom();
  Location to=event.getTo();
  boolean changed=false;
  if (event.getTo() != event.getFrom()) {
    Distance distance=new Distance(from,to);
    double x=distance.getXDifference();
    double y=distance.getYDifference();
    double z=distance.getZDifference();
    if (checkManager.willCheck(player,CheckType.SPEED) && checkManager.willCheck(player,CheckType.ZOMBE_FLY) && checkManager.willCheck(player,CheckType.FLY)) {
      if (event.getFrom().getY() < event.getTo().getY() && backend.checkYSpeed(player,y)) {
        if (!config.silentMode()) {
          event.setTo(Anticheat.getManager().getUserManager().getUser(player.getName()).getGoodLocation(from.clone()));
        }
        log("String_Node_Str",player,CheckType.SPEED);
        changed=true;
      }
      if (backend.checkXZSpeed(player,x,z)) {
        if (!config.silentMode()) {
          event.setTo(Anticheat.getManager().getUserManager().getUser(player.getName()).getGoodLocation(from.clone()));
        }
        log("String_Node_Str",player,CheckType.SPEED);
        changed=true;
      }
      if ((event.getFrom().getX() != event.getTo().getX() || event.getFrom().getZ() != event.getTo().getZ()) && backend.checkTimer(player)) {
        if (!config.silentMode()) {
          event.setTo(Anticheat.getManager().getUserManager().getUser(player.getName()).getGoodLocation(from.clone()));
        }
        log("String_Node_Str",player,CheckType.SPEED);
        changed=true;
      }
    }
    if (checkManager.willCheck(player,CheckType.WATER_WALK) && backend.checkWaterWalk(player,x,y,z)) {
      if (!config.silentMode()) {
        player.teleport(Anticheat.getManager().getUserManager().getUser(player.getName()).getGoodLocation(player.getLocation().add(0,-1,0)));
      }
      log("String_Node_Str",player,CheckType.WATER_WALK);
      changed=true;
    }
    if (checkManager.willCheck(player,CheckType.SNEAK) && backend.checkSneak(player,x,z)) {
      if (!config.silentMode()) {
        event.setTo(Anticheat.getManager().getUserManager().getUser(player.getName()).getGoodLocation(from.clone()));
        player.setSneaking(false);
      }
      log("String_Node_Str",player,CheckType.SNEAK);
      changed=true;
    }
    if (checkManager.willCheck(player,CheckType.SPIDER) && backend.checkSpider(player,y)) {
      if (!config.silentMode()) {
        event.setTo(Anticheat.getManager().getUserManager().getUser(player.getName()).getGoodLocation(from.clone()));
      }
      log("String_Node_Str",player,CheckType.SPIDER);
      changed=true;
    }
    if (!changed) {
      Anticheat.getManager().getUserManager().getUser(player.getName()).setGoodLocation(event.getFrom());
    }
  }
  Anticheat.getManager().addEvent(event.getEventName(),event.getHandlers().getRegisteredListeners());
}