1@startuml 2 3title Activity diagram sbws relays exclusion (V3BWFile.from_results) 4 5start 6:router_statuses_d; 7while (results.items()?) 8 :line, reason = V3BWLine.from_results(); 9 if (not reason?) then (yes) 10 :bwlines_raw.append(line); 11 else (no) 12 :bw_lines_excluded.append(line); 13 :exclusion_dict[reason] = exclusion_dict.get(reason, 0) + 1; 14 endif 15endwhile 16:header.add_relays_excluded_counters(exclusion_dict); 17if (not bw_lines_raw?) then (yes) 18 :return (header, bw_lines_excluded); 19 stop 20endif 21if (scaling_method == TORFLOW?) then (yes) 22 :bw_lines = cls.bw_torflow_scale(); 23endif 24:return (header, bw_lines + bw_lines_excluded); 25stop 26 27@enduml 28