      for ii in sorted(self.updated_messages):
        cpt = self.rcp.vl[ii]
  
        if cpt['X_Rel'] > 0.00001:
          self.validCnt[ii] = 0    # reset counter
  
        if cpt['X_Rel'] > 0.00001:
          self.validCnt[ii] += 1
        else:
          self.validCnt[ii] = max(self.validCnt[ii] - 1, 0)
 
</s> remove         self.validCnt[ii] += 1
 </s> add         self.valid_cnt[ii] += 1 </s> remove         self.validCnt[ii] = max(self.validCnt[ii] - 1, 0)
      #print ii, self.validCnt[ii], cpt['VALID'], cpt['X_Rel'], cpt['Angle']
 </s> add         self.valid_cnt[ii] = max(self.valid_cnt[ii] - 1, 0)
      #print ii, self.valid_cnt[ii], cpt['VALID'], cpt['X_Rel'], cpt['Angle'] </s> remove       if self.validCnt[ii] > 0:
 </s> add       if self.valid_cnt[ii] > 0:
        self.valid_cnt[ii] = 0    # reset counter
      for ii in sorted(self.updated_messages):
        cpt = self.rcp.vl[ii]
  
        if cpt['X_Rel'] > 0.00001:
        self.valid_cnt[ii] = 0    # reset counter
  
        if cpt['X_Rel'] > 0.00001:
          self.validCnt[ii] += 1
        else:
          self.validCnt[ii] = max(self.validCnt[ii] - 1, 0)
keep keep keep keep replace keep keep keep keep keep
 Ford: add CADS radar interface (#24296)

* Ford: use FORD_CADS radar dbc

* Ford: CADS radar interface impl

Co-authored-by: ReFil <31960031+ReFil@users.noreply.github.com>

* fixup radar interface for FORD_CADS dbc

* CADS treat different scan indexes as separate points

* Ford: support both Fusion and CADS radars

* Ford: rename radars to DELPHI_ESR and DELPHI_MRR

Co-authored-by: ReFil <31960031+ReFil@users.noreply.github.com> 
selfdrive/car/ford/radar_interface.py