    float img_alpha = active ? 1.0f : 0.15f;
    ui_draw_circle_image(vg, x, y, size, image, nvgRGBA(0, 0, 0, (255 * bg_alpha)), img_alpha);
  }
  
  static void draw_lead(UIState *s, float d_rel, float v_rel, float y_rel){
    // Draw lead car indicator
    float fillAlpha = 0;
    float speedBuff = 10.;
    float leadBuff = 40.;
    if (d_rel < leadBuff) {
 
</s> remove   float lead_d = scene->lead_d_rel*2.;
 </s> add   float lead_d = scene->lead_data[0].getDRel()*2.; </s> remove     scene.alert_blinkingrate = data.getAlertBlinkingRate();
    if (scene.alert_blinkingrate > 0.) {
 </s> add     float alert_blinkingrate = scene.controls_state.getAlertBlinkingRate();
    if (alert_blinkingrate > 0.) { </s> remove   draw_chevron(s, d_rel, y_rel, 25, nvgRGBA(201, 34, 49, fillAlpha), COLOR_YELLOW);
 </s> add   draw_chevron(s, d_rel, lead.getYRel(), 25, nvgRGBA(201, 34, 49, fillAlpha), COLOR_YELLOW); </s> remove     auto data = event.getControlsState();
 </s> add     scene.controls_state = event.getControlsState();
static void draw_lead(UIState *s, const cereal::RadarState::LeadData::Reader &lead){
    float img_alpha = active ? 1.0f : 0.15f;
    ui_draw_circle_image(vg, x, y, size, image, nvgRGBA(0, 0, 0, (255 * bg_alpha)), img_alpha);
  }
  
static void draw_lead(UIState *s, const cereal::RadarState::LeadData::Reader &lead){
    // Draw lead car indicator
    float fillAlpha = 0;
    float speedBuff = 10.;
    float leadBuff = 40.;
    if (d_rel < leadBuff) {
keep keep keep keep replace keep keep keep keep keep
 ui.cc: remove variables from UIScene, use event::Reader to get data  (#1585)

* use struct to store lead status

* remove white space

* use RadarState::LeadData::Reader

* use reader to get thermal data

* use reader

* continue

* remove variables

reset submodules,fix some errors

reset submodules

revert

* remove s->scene.gps_planner_active

* modify

* cleanup

* done

* resolve conflict

* remove irrelevant comment

* remove white space 
selfdrive/ui/paint.cc