Packet #1572361 Success

TRACEROUTE_APP packet from testπŸ—ΌπŸŒπŸŒž (test) to Seta (πŸ„)

9
Total Receptions
9
Unique Gateways
4
Hop Count
74
Payload Bytes
Packet Information
Database ID: 1572361
Mesh Packet ID: 0xd713ba4b
Used for correlation across gateways
Timestamp: 2025-06-22 20:08:43 UTC
From Node: testπŸ—ΌπŸŒπŸŒž (test)
To Node: Seta (πŸ„)
Success: Processed
Protocol: TRACEROUTE_APP
Port: 70
Gateway: Wake Up, Neo...πŸ“‘ (NEO)
Channel: LongFast
RSSI: -103 dBm
SNR: -9.75 dBm
Hop Info: 4/4 hops
Start: 4, Limit: 0
Payload Data
Protocol: TRACEROUTE_APP
Size: 74 bytes
Decoded: Yes
Decoded Data:
Route Information
Route Path: Seta (πŸ„) β†’ testπŸ—ΌπŸŒπŸŒž (test)
Hop Count: 1 hops
Status: Forward incomplete, Return in progress
SNR Towards: 0.0 dB -3.25 dB
Return Path: Venturada2πŸ—ΌπŸŒβ˜€οΈ (Vb2) β†’ Sierra norte Madrid ⛰️ (SNM) β†’ dB sky (dBs) β†’ Solar Gateway (SLGT)
SNR Back: 5.25 dB -0.75 dB -8.0 dB -8.0 dB
Route Visualization
Loading...

Loading route map...

Map shows the geographic path if nodes have shared location data.
Traceroute Steps
Hop From Node To Node Distance SNR (dB) Direction Analysis
1 Seta (πŸ„) Seta (πŸ„) 0 m 0.0 dB Origin Hops
2 Seta (πŸ„) testπŸ—ΌπŸŒπŸŒž (test) 53.46 km -3.25 dB Relay Hops
3 testπŸ—ΌπŸŒπŸŒž (test) testπŸ—ΌπŸŒπŸŒž (test) 0 m Unknown Relay Hops
Traceroute incomplete - Final destination not reached
Return Path Steps
Total Forward Distance
53.46 km
Total Return Distance
37.17 km
Combined Traceroute Graph
Controls: Drag nodes to rearrange β€’ Mouse wheel to zoom β€’ Click and drag background to pan β€’ Hover for details
Loading graph...

Building graph...

Legend & Paths
Nodes
πŸ”„ Router Node
πŸ“‘ Gateway Node
πŸš€ Source Node
🎯 Target Node
Connections
RF Link
Gateway Connection
Direct Reception (0 hops)
Packet Paths
Loading paths...
Raw Packet Analysis
Complete field breakdown and MQTT privacy/exposure analysis
Packet Structure
MQTT Packet Flow:
ServiceEnvelope (MQTT layer) β†’ MeshPacket (Mesh layer) β†’ Decoded Payload (Application data)
Total Size:74 bytes
Gateway:!a2e17690
Channel:LongFast
Payload Type:TRACEROUTE_APP
Hop Count:4 / 4
Privacy Summary
Exposure Level:
Direct Message
Privacy Features:
βœ“ Direct LoRa transmission (not via MQTT)
βœ“ Targeted to specific node
+ 1 more...
Exposure Risks:
⚠ Default channel - no encryption
⚠ Packet visible to MQTT subscribers
+ 2 more...
MQTT ServiceEnvelope Fields

MQTT ServiceEnvelope contains the MeshPacket plus routing metadata

FieldValue
gateway_id !a2e17690
Node ID format
channel_id LongFast
Default public channel
packet MeshPacket (74 bytes)
Contains the actual mesh network packet
MeshPacket Fields

Core mesh packet with routing and payload information

FieldValueType
from 2956716640
Source node ID
uint32
to 2687838084
Target node ID
uint32
decoded.portnum 70
TRACEROUTE_APP
enum
decoded.payload_length 74 bytes size
hop_limit Not set uint32
hop_start 4
Initial hop limit
uint32
hops_taken 4
Calculated: hop_start - hop_limit
derived
rx_rssi -103.0 dBm
Signal strength at gateway
int32
rx_snr -9.75 dB
Signal quality at gateway
float
rx_time 1750622923
Receive timestamp
fixed32
via_mqtt False
Direct LoRa transmission
bool
want_ack False
No ACK requested
bool
priority Not set enum
delayed Not set enum
channel Not set uint32
pki_encrypted False
Standard encryption
bool
next_hop Not set uint32
relay_node 8
Relay node ID
uint32
tx_after Not set uint32
timestamp 1750622923.1738977
Unix timestamp
uint32
MQTT Privacy & Exposure Analysis

Analysis of privacy features and exposure risks when packet is shared via MQTT

Exposure Level: Direct Message
Privacy Features:
  • βœ“ Direct LoRa transmission (not via MQTT)
  • βœ“ Targeted to specific node
  • βœ“ Gateway node ID tracked
Exposure Risks:
  • ⚠ Default channel - no encryption
  • ⚠ Packet visible to MQTT subscribers
  • ⚠ Multi-hop path visible (4 hops)
  • ⚠ RF signal metrics exposed (location inference possible)
MQTT-Specific Fields
Gateway ID: !a2e17690
Signal Metrics: RSSI: -103.0 dBm
SNR: -9.75 dB
Complete Payload Analysis

Detailed breakdown of all payload fields and decoded data

Payload Metadata:
Protocol:TRACEROUTE_APP
Size:74 bytes
Decoded: Yes
Complete Payload Data (JSON):
{ "route_nodes": [ 2687838084, 2956716640 ], "snr_towards": [ 0.0, -3.25 ], "route_back": [ 2687837872, 1129719940, 1128202648, 1754607880 ], "snr_back": [ 5.25, -0.75, -8.0, -8.0 ], "route_node_names": { "2956716640": "testπŸ—ΌπŸŒπŸŒž (test)", "1129719940": "Sierra norte Madrid ⛰️ (SNM)", "2687838084": "Seta (πŸ„)", "1754607880": "Solar Gateway (SLGT)", "2687837872": "Venturada2πŸ—ΌπŸŒβ˜€οΈ (Vb2)", "1128202648": "dB sky (dBs)" }, "traceroute_packet": { "packet_data": { "id": 1572361, "timestamp": 1750622923.1738977, "from_node_id": 2956716640, "to_node_id": 2687838084, "portnum": 70, "portnum_name": "TRACEROUTE_APP", "gateway_id": "!a2e17690", "channel_id": "LongFast", "mesh_packet_id": 3608394315, "rssi": -103, "snr": -9.75, "hop_limit": 0, "hop_start": 4, "payload_length": 74, "processed_successfully": 1, "raw_payload": "0a08842735a060ea3bb0120b00f3ffffffffffffffff011a10b02635a08428564398013f4308319568221f15fdffffffffffffffff01e0ffffffffffffffff01e0ffffffffffffffff01", "via_mqtt": 0, "want_ack": 0, "priority": 0, "delayed": 0, "channel_index": null, "rx_time": 1750622923, "pki_encrypted": 0, "next_hop": 0, "relay_node": 8, "tx_after": 0, "timestamp_str": "2025-06-22 20:08:43", "hop_count": 4, "has_payload": true, "success": 1, "from_node_name": "testπŸ—ΌπŸŒπŸŒž (test)", "to_node_name": "Seta (πŸ„)", "gateway_name": "Wake Up, Neo...πŸ“‘ (NEO)", "gateway_location": { "node_id": 2732684944, "latitude": 40.4488192, "longitude": -3.6962304, "altitude": 710, "timestamp": 1752747297.5793967, "timestamp_str": "2025-07-17 10:14:57", "display_name": "Wake Up, Neo...πŸ“‘", "long_name": "Wake Up, Neo...πŸ“‘", "short_name": "NEO", "hw_model": "STATION_G2" } }, "resolve_names": true, "packet_id": 1572361, "from_node_id": 2956716640, "to_node_id": 2687838084, "timestamp": 1750622923.1738977, "gateway_id": "!a2e17690", "raw_payload": "0a08842735a060ea3bb0120b00f3ffffffffffffffff011a10b02635a08428564398013f4308319568221f15fdffffffffffffffff01e0ffffffffffffffff01e0ffffffffffffffff01", "hop_limit": 0, "hop_start": 4, "from_node_name": "testπŸ—ΌπŸŒπŸŒž (test)", "to_node_name": "Seta (πŸ„)", "route_data": { "route_nodes": [ 2687838084, 2956716640 ], "snr_towards": [ 0.0, -3.25 ], "route_back": [ 2687837872, 1129719940, 1128202648, 1754607880 ], "snr_back": [ 5.25, -0.75, -8.0, -8.0 ] }, "forward_path": { "path_type": "forward_with_return", "node_ids": [ 2687838084, 2687838084, 2956716640, 2956716640 ], "node_names": [ "Seta (πŸ„)", "Seta (πŸ„)", "testπŸ—ΌπŸŒπŸŒž (test)", "testπŸ—ΌπŸŒπŸŒž (test)" ], "snr_values": [ 0.0, -3.25 ], "hops": [ { "hop_number": 1, "from_node_id": 2687838084, "to_node_id": 2687838084, "from_node_name": "Seta (πŸ„)", "to_node_name": "Seta (πŸ„)", "snr": 0.0, "direction": "forward", "is_target_hop": false, "distance_meters": 0.0, "from_location_timestamp": 1750231979.0521843, "to_location_timestamp": 1750231979.0521843, "from_location_age_warning": "from 4.5d ago", "to_location_age_warning": "from 4.5d ago" }, { "hop_number": 2, "from_node_id": 2687838084, "to_node_id": 2956716640, "from_node_name": "Seta (πŸ„)", "to_node_name": "testπŸ—ΌπŸŒπŸŒž (test)", "snr": -3.25, "direction": "forward", "is_target_hop": false, "distance_meters": 53461.26298814062, "from_location_timestamp": 1750231979.0521843, "to_location_timestamp": 1750622038.1734455, "from_location_age_warning": "from 4.5d ago", "to_location_age_warning": "from 0.2h ago" }, { "hop_number": 3, "from_node_id": 2956716640, "to_node_id": 2956716640, "from_node_name": "testπŸ—ΌπŸŒπŸŒž (test)", "to_node_name": "testπŸ—ΌπŸŒπŸŒž (test)", "snr": null, "direction": "forward", "is_target_hop": false, "distance_meters": 0.0, "from_location_timestamp": 1750622038.1734455, "to_location_timestamp": 1750622038.1734455, "from_location_age_warning": "from 0.2h ago", "to_location_age_warning": "from 0.2h ago" } ], "is_complete": false, "total_hops": 3 }, "return_path": { "path_type": "return", "node_ids": [ 2956716640, 2687837872, 1129719940, 1128202648, 1754607880 ], "node_names": [ "testπŸ—ΌπŸŒπŸŒž (test)", "Venturada2πŸ—ΌπŸŒβ˜€οΈ (Vb2)", "Sierra norte Madrid ⛰️ (SNM)", "dB sky (dBs)", "Solar Gateway (SLGT)" ], "snr_values": [ 5.25, -0.75, -8.0, -8.0 ], "hops": [ { "hop_number": 1, "from_node_id": 2956716640, "to_node_id": 2687837872, "from_node_name": "testπŸ—ΌπŸŒπŸŒž (test)", "to_node_name": "Venturada2πŸ—ΌπŸŒβ˜€οΈ (Vb2)", "snr": 5.25, "direction": "return", "is_target_hop": false, "distance_meters": 11597.711553663894, "from_location_timestamp": 1750622038.1734455, "to_location_timestamp": 1750622618.900513, "from_location_age_warning": "from 0.2h ago", "to_location_age_warning": "from 0.1h ago" }, { "hop_number": 2, "from_node_id": 2687837872, "to_node_id": 1129719940, "from_node_name": "Venturada2πŸ—ΌπŸŒβ˜€οΈ (Vb2)", "to_node_name": "Sierra norte Madrid ⛰️ (SNM)", "snr": -0.75, "direction": "return", "is_target_hop": false, "distance_meters": 25572.38711486419, "from_location_timestamp": 1750622618.900513, "to_location_timestamp": 1750620212.2364483, "from_location_age_warning": "from 0.1h ago", "to_location_age_warning": "from 0.8h ago" }, { "hop_number": 3, "from_node_id": 1129719940, "to_node_id": 1128202648, "from_node_name": "Sierra norte Madrid ⛰️ (SNM)", "to_node_name": "dB sky (dBs)", "snr": -8.0, "direction": "return", "is_target_hop": false, "distance_meters": null, "from_location_timestamp": null, "to_location_timestamp": null, "from_location_age_warning": "No location data available", "to_location_age_warning": "No location data available" }, { "hop_number": 4, "from_node_id": 1128202648, "to_node_id": 1754607880, "from_node_name": "dB sky (dBs)", "to_node_name": "Solar Gateway (SLGT)", "snr": -8.0, "direction": "return", "is_target_hop": false, "distance_meters": null, "from_location_timestamp": null, "to_location_timestamp": null, "from_location_age_warning": "No location data available", "to_location_age_warning": "No location data available" } ], "is_complete": false, "total_hops": 4 }, "actual_rf_path": { "path_type": "combined_rf", "node_ids": [ 2687838084, 2956716640, 2687837872, 1129719940, 1128202648, 1754607880 ], "node_names": [ "Seta (πŸ„)", "testπŸ—ΌπŸŒπŸŒž (test)", "Venturada2πŸ—ΌπŸŒβ˜€οΈ (Vb2)", "Sierra norte Madrid ⛰️ (SNM)", "dB sky (dBs)", "Solar Gateway (SLGT)" ], "snr_values": [ 0.0, -3.25, 5.25, -0.75, -8.0, -8.0 ], "hops": [ { "hop_number": 1, "from_node_id": 2687838084, "to_node_id": 2687838084, "from_node_name": "Seta (πŸ„)", "to_node_name": "Seta (πŸ„)", "snr": 0.0, "direction": "forward_rf", "is_target_hop": false, "distance_meters": 0.0, "from_location_timestamp": 1750231979.0521843, "to_location_timestamp": 1750231979.0521843, "from_location_age_warning": "from 4.5d ago", "to_location_age_warning": "from 4.5d ago" }, { "hop_number": 2, "from_node_id": 2687838084, "to_node_id": 2956716640, "from_node_name": "Seta (πŸ„)", "to_node_name": "testπŸ—ΌπŸŒπŸŒž (test)", "snr": -3.25, "direction": "forward_rf", "is_target_hop": false, "distance_meters": 53461.26298814062, "from_location_timestamp": 1750231979.0521843, "to_location_timestamp": 1750622038.1734455, "from_location_age_warning": "from 4.5d ago", "to_location_age_warning": "from 0.2h ago" }, { "hop_number": 3, "from_node_id": 2956716640, "to_node_id": 2687837872, "from_node_name": "testπŸ—ΌπŸŒπŸŒž (test)", "to_node_name": "Venturada2πŸ—ΌπŸŒβ˜€οΈ (Vb2)", "snr": 5.25, "direction": "return_rf", "is_target_hop": false, "distance_meters": 11597.711553663894, "from_location_timestamp": 1750622038.1734455, "to_location_timestamp": 1750622618.900513, "from_location_age_warning": "from 0.2h ago", "to_location_age_warning": "from 0.1h ago" }, { "hop_number": 4, "from_node_id": 2687837872, "to_node_id": 1129719940, "from_node_name": "Venturada2πŸ—ΌπŸŒβ˜€οΈ (Vb2)", "to_node_name": "Sierra norte Madrid ⛰️ (SNM)", "snr": -0.75, "direction": "return_rf", "is_target_hop": false, "distance_meters": 25572.38711486419, "from_location_timestamp": 1750622618.900513, "to_location_timestamp": 1750620212.2364483, "from_location_age_warning": "from 0.1h ago", "to_location_age_warning": "from 0.8h ago" }, { "hop_number": 5, "from_node_id": 1129719940, "to_node_id": 1128202648, "from_node_name": "Sierra norte Madrid ⛰️ (SNM)", "to_node_name": "dB sky (dBs)", "snr": -8.0, "direction": "return_rf", "is_target_hop": false, "distance_meters": null, "from_location_timestamp": null, "to_location_timestamp": null, "from_location_age_warning": "No location data available", "to_location_age_warning": "No location data available" }, { "hop_number": 6, "from_node_id": 1128202648, "to_node_id": 1754607880, "from_node_name": "dB sky (dBs)", "to_node_name": "Solar Gateway (SLGT)", "snr": -8.0, "direction": "return_rf", "is_target_hop": false, "distance_meters": null, "from_location_timestamp": null, "to_location_timestamp": null, "from_location_age_warning": "No location data available", "to_location_age_warning": "No location data available" } ], "is_complete": false, "total_hops": 6 } }, "has_return_path": true, "is_complete": false, "forward_path_display": "Seta (πŸ„) β†’ Seta (πŸ„) β†’ testπŸ—ΌπŸŒπŸŒž (test) β†’ testπŸ—ΌπŸŒπŸŒž (test)", "return_path_display": "testπŸ—ΌπŸŒπŸŒž (test) β†’ Venturada2πŸ—ΌπŸŒβ˜€οΈ (Vb2) β†’ Sierra norte Madrid ⛰️ (SNM) β†’ dB sky (dBs) β†’ Solar Gateway (SLGT)", "actual_rf_path_display": "Seta (πŸ„) β†’ testπŸ—ΌπŸŒπŸŒž (test) β†’ Venturada2πŸ—ΌπŸŒβ˜€οΈ (Vb2) β†’ Sierra norte Madrid ⛰️ (SNM) β†’ dB sky (dBs) β†’ Solar Gateway (SLGT)", "forward_hops": [ { "hop_number": 1, "from_node_id": 2687838084, "to_node_id": 2687838084, "from_node_name": "Seta (πŸ„)", "to_node_name": "Seta (πŸ„)", "snr": 0.0, "direction": "forward", "is_target_hop": false, "distance_meters": 0.0, "from_location_timestamp": 1750231979.0521843, "to_location_timestamp": 1750231979.0521843, "from_location_age_warning": "from 4.5d ago", "to_location_age_warning": "from 4.5d ago" }, { "hop_number": 2, "from_node_id": 2687838084, "to_node_id": 2956716640, "from_node_name": "Seta (πŸ„)", "to_node_name": "testπŸ—ΌπŸŒπŸŒž (test)", "snr": -3.25, "direction": "forward", "is_target_hop": false, "distance_meters": 53461.26298814062, "from_location_timestamp": 1750231979.0521843, "to_location_timestamp": 1750622038.1734455, "from_location_age_warning": "from 4.5d ago", "to_location_age_warning": "from 0.2h ago" }, { "hop_number": 3, "from_node_id": 2956716640, "to_node_id": 2956716640, "from_node_name": "testπŸ—ΌπŸŒπŸŒž (test)", "to_node_name": "testπŸ—ΌπŸŒπŸŒž (test)", "snr": null, "direction": "forward", "is_target_hop": false, "distance_meters": 0.0, "from_location_timestamp": 1750622038.1734455, "to_location_timestamp": 1750622038.1734455, "from_location_age_warning": "from 0.2h ago", "to_location_age_warning": "from 0.2h ago" } ], "return_hops": [ { "hop_number": 1, "from_node_id": 2956716640, "to_node_id": 2687837872, "from_node_name": "testπŸ—ΌπŸŒπŸŒž (test)", "to_node_name": "Venturada2πŸ—ΌπŸŒβ˜€οΈ (Vb2)", "snr": 5.25, "direction": "return", "is_target_hop": false, "distance_meters": 11597.711553663894, "from_location_timestamp": 1750622038.1734455, "to_location_timestamp": 1750622618.900513, "from_location_age_warning": "from 0.2h ago", "to_location_age_warning": "from 0.1h ago" }, { "hop_number": 2, "from_node_id": 2687837872, "to_node_id": 1129719940, "from_node_name": "Venturada2πŸ—ΌπŸŒβ˜€οΈ (Vb2)", "to_node_name": "Sierra norte Madrid ⛰️ (SNM)", "snr": -0.75, "direction": "return", "is_target_hop": false, "distance_meters": 25572.38711486419, "from_location_timestamp": 1750622618.900513, "to_location_timestamp": 1750620212.2364483, "from_location_age_warning": "from 0.1h ago", "to_location_age_warning": "from 0.8h ago" }, { "hop_number": 3, "from_node_id": 1129719940, "to_node_id": 1128202648, "from_node_name": "Sierra norte Madrid ⛰️ (SNM)", "to_node_name": "dB sky (dBs)", "snr": -8.0, "direction": "return", "is_target_hop": false, "distance_meters": null, "from_location_timestamp": null, "to_location_timestamp": null, "from_location_age_warning": "No location data available", "to_location_age_warning": "No location data available" }, { "hop_number": 4, "from_node_id": 1128202648, "to_node_id": 1754607880, "from_node_name": "dB sky (dBs)", "to_node_name": "Solar Gateway (SLGT)", "snr": -8.0, "direction": "return", "is_target_hop": false, "distance_meters": null, "from_location_timestamp": null, "to_location_timestamp": null, "from_location_age_warning": "No location data available", "to_location_age_warning": "No location data available" } ], "total_forward_distance": 53461.26298814062, "total_return_distance": 37170.09866852808 }
Complete Protobuf Decode (JSON)
{ "service_envelope": { "gateway_id": "!a2e17690", "channel_id": "LongFast", "packet": "MeshPacket (see mesh_packet below)" }, "mesh_packet": { "from": 2956716640, "to": 2687838084, "id": 3608394315, "rx_time": 1750622923, "rx_snr": -9.75, "rx_rssi": -103, "hop_limit": 0, "hop_start": 4, "via_mqtt": 0, "want_ack": 0, "priority": 0, "delayed": 0, "channel_index": null, "pki_encrypted": 0, "next_hop": 0, "relay_node": 8, "tx_after": 0, "decoded": { "portnum": 70, "payload": "0a08842735a060ea3bb0120b00f3ffffffffffffffff011a10b02635a08428564398013f4308319568221f15fdffffffffffffffff01e0ffffffffffffffff01e0ffffffffffffffff01", "want_response": null, "dest": null, "source": null, "request_id": null, "reply_id": null, "emoji": null, "parsed_payload": { "route": [ 2687838084, 2956716640 ], "snr_towards": [ 0, -13 ], "route_back": [ 2687837872, 1129719940, 1128202648, 1754607880 ], "snr_back": [ 21, -3, -32, -32 ], "type": "protobuf", "portnum": "TRACEROUTE_APP", "message_class": "RouteDiscovery" } } } }
Raw Packet Data (74 bytes)
0a08842735a060ea3bb0120b00f3ffffffffffffffff011a10b02635a08428564398013f4308319568221f15fdffffffffffffffff01e0ffffffffffffffff01e0ffffffffffffffff01
Hex Analysis:
Size:74 bytes
Format:Protobuf (Protocol Buffers)
Encoding:Binary with varint and length-delimited fields
This is the raw protobuf-encoded payload as received from MQTT. The structure follows the Meshtastic protobuf schema definitions.
All Receptions
All gateways that received this packet
Correlation: Using Mesh Packet ID
Reception Locations
Loading...

Loading reception map...

Map shows gateway locations that received this packet. Hop counts are displayed if available.
Gateway Time Offset RSSI SNR Hops Channel Timestamp Actions
Wake Up, Neo...πŸ“‘ (NEO) Primary 0.000s
Reference
-103.0 dBm -9.75 dB 4 LongFast 2025-06-22 20:08:43 Current
testπŸ—ΌπŸŒπŸŒž (test) -22.652s
Before
Unknown Unknown 0 LongFast 2025-06-22 20:08:20 View
Seta (πŸ„) -19.308s
Before
-110.0 dBm -15.00 dB 0 LongFast 2025-06-22 20:08:23 View
GRN1-BaseπŸ“‘πŸŒ (GRN1) -19.004s
Before
-115.0 dBm -5.25 dB 0 LongFast 2025-06-22 20:08:24 View
SkG@Home πŸ—ΌπŸŒ (SkGH) -15.265s
Before
-125.0 dBm -15.50 dB 1 LongFast 2025-06-22 20:08:27 View
LgnX_1490 (LgnX) -15.082s
Before
-126.0 dBm -15.50 dB 1 LongFast 2025-06-22 20:08:28 View
[TLGO] Base πŸ“‘πŸŒ (TLG0) -12.126s
Before
-111.0 dBm -8.00 dB 2 LongFast 2025-06-22 20:08:31 View
@lazynoda πŸ‘πŸ—ΌπŸŒ (LZNH) -10.795s
Before
-127.0 dBm -16.25 dB 3 LongFast 2025-06-22 20:08:32 View
Mec Rocket Meco (MRM) -2.981s
Before
-128.0 dBm -20.25 dB 3 LongFast 2025-06-22 20:08:40 View
9

Total Receptions

9

Unique Gateways