{% extends "skeleton.html" -%} {% block title -%} Tor Relays {% endblock -%} {% block body -%}

{% block header -%} {% endblock -%}

{% block description -%} {% endblock -%}

{% if is_index -%} {% set relay_list = relays.json['relay_subset'][:500] -%} {% else -%} {% set relay_list = relays.json['relay_subset'] -%} {% endif -%} {% for relay in relay_list -%} {% if relay['observed_bandwidth'] > 1000000 -%} {% set obs_bandwidth = '%s %s'|format((relay['observed_bandwidth'] / 1000000)|round(2, 'common'), 'MB/s') -%} {% else -%} {% set obs_bandwidth = '%s %s'|format((relay['observed_bandwidth'] / 1000)| round(2, 'common'), 'KB/s') -%} {% endif -%} {% if relay['running'] -%} {% else -%} {% endif -%} {% if relay['effective_family']|length > 1 -%} {% else -%} {% endif -%} {% if key != 'contact' -%} {% if relay['contact'] -%} {% else -%} {% endif -%} {% else -%} {% endif -%} {% if relay['as'] -%} {% if key != 'as' -%} {% else -%} {% endif -%} {% else -%} {% endif -%} {% if relay['as_name'] -%} {% else -%} {% endif -%} {% if relay['country'] -%} {% if key != 'country' -%} {% else -%} {% endif -%} {% else -%} {% endif -%} {% if key != 'platform' -%} {% else -%} {% endif -%} {% if key != 'first_seen' -%} {% else -%} {% endif -%} {% endfor -%}
Nickname Contact Bandwidth IP Address AS Number AS Name Country Platform Flags First Seen
{{ relay['nickname']|truncate(8)|escape }} ({{ relay['effective_family']| length }}) {{ relay['nickname']|truncate(10)|escape }} {{ relay['contact_md5'][0:8] }} none {{ relay['contact_md5'][0:8] }} {{ obs_bandwidth }} {{ relay['or_addresses'][0].split(':', 1)[0]|escape }} {{ relay['as']|escape }} {{ relay['as']|escape }}Unknown {{ relay['as_name']|escape|truncate(length=20) }} Unknown {{ relay['country_name']|escape }} {{ relay['country_name']|escape }} X {{ relay['platform']|truncate(length=10)|escape }} {{ relay['platform']|truncate(length=10)|escape }} {% for flag in relay['flags'] -%} {% if flag != 'StaleDesc' -%} {{ flag|escape }} {% endif -%} {% endfor -%} {{ relay['first_seen'].split(' ', 1)[0]|escape }} {{ relay['first_seen'].split(' ', 1)[0]|escape }}
{% endblock -%}