    }
  
    size_t num_msg = recv / 0x10;
    MessageBuilder msg;
    auto canData = msg.initEvent().initCan(num_msg);
  
    // populate message
    for (int i = 0; i < num_msg; i++) {
      if (data[i*4] & 4) {
        // extended
 
</s> remove     auto ps = msg.initEvent().initPandaState();
 </s> add     auto evt = msg.initEvent();
    evt.setValid(panda->comms_healthy);

    auto ps = evt.initPandaState();
  auto evt = msg.initEvent();
  evt.setValid(comms_healthy);
    }
  
    size_t num_msg = recv / 0x10;
    MessageBuilder msg;
  auto evt = msg.initEvent();
  evt.setValid(comms_healthy);
  
    // populate message
    for (int i = 0; i < num_msg; i++) {
      if (data[i*4] & 4) {
        // extended
keep keep keep keep replace keep keep keep keep keep
 boardd: set can and pandaState valid flags (#20899)

* boardd: set can and pandaState valid flags

* add event

* bump cereal

* consistency 
selfdrive/boardd/panda.cc