    frame->addSpacing(32);
  
    current_widget = new DestinationWidget(this);
    QObject::connect(current_widget, &DestinationWidget::actionClicked, [=]() {
      if (!current_destination) return;
      params.remove("NavDestination");
      updateCurrentRoute();
    });
    frame->addWidget(current_widget);
    frame->addSpacing(32);
 
</s> remove   for (auto &destination : destinations) {
 </s> add  </s> remove     widget->set(destination.get(), false);

    QObject::connect(widget, &QPushButton::clicked, [this, dest = destination->toJson()]() {
 </s> add     widget->set(dest, false);
    QObject::connect(widget, &QPushButton::clicked, [this, dest]() { </s> remove     else if (a->isFavorite()) return true;
    else if (b->isFavorite()) return false;
    return false;
  });
 </s> add     if (dest == current_destination) continue; </s> remove     auto destination = std::make_unique<NavDestination>(doc.object());
    if (current_destination && *destination == *current_destination) return;
    current_destination = std::move(destination);
    current_widget->set(current_destination.get(), true);
 </s> add     current_destination = doc.object();
    current_widget->set(current_destination, true); </s> remove     current_destination.reset(nullptr);
 </s> add     current_destination = {};
    if (current_destination.empty()) return;
    frame->addSpacing(32);
  
    current_widget = new DestinationWidget(this);
    QObject::connect(current_widget, &DestinationWidget::actionClicked, [=]() {
    if (current_destination.empty()) return;
      params.remove("NavDestination");
      updateCurrentRoute();
    });
    frame->addWidget(current_widget);
    frame->addSpacing(32);
keep keep keep keep replace keep keep keep keep keep
 ui/MapSettings: sort location JsonArray inplace (#28886) 
selfdrive/ui/qt/maps/map_settings.cc