@startuml class "WeightsProbabilityRow" { + nickname: String + fingerprint: String + guard_weight_fraction: f64 + middle_weight_fraction: f64 + exit_weight_fraction: f64 + time: chrono::NaiveDateTime + weights_id: Uuid } class "RelayBandwidthRow" { + fingerprint: String + overload_ratelimits_ratelimit: Option + overload_fd_exhausted_timestamp: Option } class "BridgeBandwidthRow" { + fingerprint: String + overload_ratelimits_ratelimit: Option + overload_fd_exhausted_timestamp: Option } class "RelayDetailsRow" { + nickname: String + fingerprint: String + or_addresses: Option + last_seen: chrono::NaiveDateTime + first_seen: chrono::NaiveDateTime + running: Option + flags: Option + country: Option + country_name: Option + autonomous_system: Option + as_name: Option + verified_host_names: Option + last_restarted: chrono::NaiveDateTime + exit_policy: Option + contact: Option + platform: Option + version: Option + version_status: Option + effective_family: Option + declared_family: Option + last_changed_address_or_port: chrono::NaiveDateTime + diff_or_addresses: Option + unverified_host_names: Option + unreachable_or_addresses: Option + overload_ratelimits_timestamp: Option + overload_ratelimits_ratelimit: Option + overload_ratelimits_burstlimit: Option + overload_ratelimits_read_count: Option + overload_ratelimits_write_count: Option + overload_fd_exhausted_timestamp: Option + overload_general_timestamp: Option + family_digest: Option + advertised_bandwidth: Option + bandwidth: Option + network_weight_fraction: Option + bandwidth_avg: Option + bandwidth_burst: Option + bandwidth_observed: Option + ipv6_default_policy: Option + dir_port: Option + is_hibernating: Option } class "BridgeDetailsRow" { + nickname: String + fingerprint: String + or_addresses: Option + first_seen: chrono::NaiveDateTime + last_seen: chrono::NaiveDateTime + running: Option + flags: Option + last_restarted: chrono::NaiveDateTime + overload_general_timestamp: Option + version: Option + platform: Option + version_status: Option + transport: Option + blocklist: Option + bridgedb_distributor: Option } class "ExitNodeRow" { + nickname: String + fingerprint: String + exit_addresses: String + published: NaiveDateTime } class "RelaySummaryRow" { + nickname: String + fingerprint: String + or_addresses: String + running: Option } class "BridgeSummaryRow" { + nickname: String + fingerprint: String + running: Option } @enduml