  
  void HomeWindow::updateState(const UIState &s) {
    const SubMaster &sm = *(s.sm);
  
    // switch to the body UI
    if (onroad->isVisible() && sm["carParams"].getCarParams().getCarName() == "body") {
      slayout->setCurrentWidget(body);
    }
  }
  
  void HomeWindow::offroadTransition(bool offroad) {
 
</s> remove     if self.name == "comma body":
      self.row[Column.LONGITUDINAL] = True
 </s> add     if CP.notCar:
      for col in StarColumns:
        self.row[col] = True </s> remove         # body doesn't enable
        if msg.carParams.carName == "body":
 </s> add         if msg.carParams.notCar:
  // switch to the generic robot UI
  if (onroad->isVisible() && sm["carParams"].getCarParams().getNotCar()) {
  
  void HomeWindow::updateState(const UIState &s) {
    const SubMaster &sm = *(s.sm);
  
  // switch to the generic robot UI
  if (onroad->isVisible() && sm["carParams"].getCarParams().getNotCar()) {
  // switch to the generic robot UI
  if (onroad->isVisible() && sm["carParams"].getCarParams().getNotCar()) {
      slayout->setCurrentWidget(body);
    }
  }
  
  void HomeWindow::offroadTransition(bool offroad) {
keep keep keep keep replace replace keep keep keep keep keep
 better support non-car robots (#24106)

* better support non-car robots

* bump cereal

* update refs 
selfdrive/ui/qt/home.cc