{
  "network": "METRO_LISBOA",
  "version": "2026-09-26",
  "license": "ODbL-1.0",
  "attribution": [
    "UnderLX (ODbL)",
    "© OpenStreetMap contributors (ODbL)",
    "Metropolitano de Lisboa"
  ],
  "excludedFromLicense": {
    "fields": [
      "stations[].exits[].accessTitle"
    ],
    "source": "Metropolitano de Lisboa, E.P.E. (metrolisboa.pt)",
    "note": "Access names as published by Metropolitano de Lisboa. They are not part of what Trilho licenses under the ODbL."
  },
  "stations": [
    {
      "name": "Aeroporto",
      "exits": [
        {
          "id": "ap-aeroporto-de-lisboa-terminal-1-chegadas-lift",
          "lobby": null,
          "streets": [
            "Aeroporto de Lisboa (Terminal 1 - Chegadas)",
            "Aeroporto de Lisboa (Terminal 1 - Partidas)"
          ],
          "type": "LIFT",
          "lat": 38.76845,
          "lon": -9.12848,
          "accessTitle": null,
          "sources": [
            "underlx",
            "osm"
          ]
        },
        {
          "id": "ap-aeroporto-de-lisboa-terminal-1-chegadas-lift-2",
          "lobby": null,
          "streets": [
            "Aeroporto de Lisboa (Terminal 1 - Chegadas)"
          ],
          "type": "LIFT",
          "lat": 38.769054,
          "lon": -9.128443,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ap-aeroporto-de-lisboa-terminal-1-chegadas-stairs",
          "lobby": null,
          "streets": [
            "Aeroporto de Lisboa (Terminal 1 - Chegadas)"
          ],
          "type": "STAIRS",
          "lat": 38.768615,
          "lon": -9.128537,
          "accessTitle": null,
          "sources": [
            "underlx",
            "osm"
          ]
        },
        {
          "id": "ap-aeroporto-de-lisboa-terminal-1-chegadas-stairs-2",
          "lobby": null,
          "streets": [
            "Aeroporto de Lisboa (Terminal 1 - Chegadas)"
          ],
          "type": "STAIRS",
          "lat": 38.768691,
          "lon": -9.128029,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Vermelha",
          "towards": "Aeroporto",
          "exitId": "ap-aeroporto-de-lisboa-terminal-1-chegadas-lift",
          "position": "MIDDLE",
          "confidence": "SEED_LOBBY",
          "basis": "exit 13 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "Aeroporto",
          "exitId": "ap-aeroporto-de-lisboa-terminal-1-chegadas-lift-2",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 25 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m; 68 m off to the side — weak)"
        },
        {
          "line": "Vermelha",
          "towards": "Aeroporto",
          "exitId": "ap-aeroporto-de-lisboa-terminal-1-chegadas-stairs-2",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 34 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        }
      ]
    },
    {
      "name": "Alameda",
      "exits": [
        {
          "id": "am-alameda-dom-afonso-henriques-stairs",
          "lobby": "Central",
          "streets": [
            "Alameda Dom Afonso Henriques",
            "Rua Carlos Mardel"
          ],
          "type": "STAIRS",
          "lat": 38.736646,
          "lon": -9.132759,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "am-alameda-dom-afonso-henriques-stairs-2",
          "lobby": "Central",
          "streets": [
            "Alameda Dom Afonso Henriques"
          ],
          "type": "STAIRS",
          "lat": 38.736699,
          "lon": -9.131903,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "am-alameda-dom-afonso-henriques-lift",
          "lobby": "Norte",
          "streets": [
            "Alameda Dom Afonso Henriques"
          ],
          "type": "LIFT",
          "lat": 38.737299,
          "lon": -9.133576,
          "accessTitle": "Elevador",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "am-alameda-dom-afonso-henriques-stairs-3",
          "lobby": "Norte",
          "streets": [
            "Alameda Dom Afonso Henriques",
            "Avenida Guerra Junqueiro"
          ],
          "type": "STAIRS",
          "lat": 38.737576,
          "lon": -9.134033,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "am-alameda-dom-afonso-henriques-stairs-4",
          "lobby": "Norte",
          "streets": [
            "Alameda Dom Afonso Henriques"
          ],
          "type": "STAIRS",
          "lat": 38.737614,
          "lon": -9.133529,
          "accessTitle": "Acesso 4",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "am-avenida-almirante-reis-stairs",
          "lobby": "Norte",
          "streets": [
            "Avenida Almirante Reis",
            "Alameda Dom Afonso Henriques"
          ],
          "type": "STAIRS",
          "lat": 38.7372,
          "lon": -9.133622,
          "accessTitle": "Acesso 6",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "am-avenida-almirante-reis-stairs-2",
          "lobby": "Norte",
          "streets": [
            "Avenida Almirante Reis",
            "Alameda Dom Afonso Henriques"
          ],
          "type": "STAIRS",
          "lat": 38.737233,
          "lon": -9.134022,
          "accessTitle": "Acesso 5",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "am-avenida-almirante-reis-stairs-3",
          "lobby": "Norte",
          "streets": [
            "Avenida Almirante Reis"
          ],
          "type": "STAIRS",
          "lat": 38.737738,
          "lon": -9.133687,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "am-avenida-almirante-reis-stairs-4",
          "lobby": "Norte",
          "streets": [
            "Avenida Almirante Reis"
          ],
          "type": "STAIRS",
          "lat": 38.737768,
          "lon": -9.133887,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "am-alameda-dom-afonso-henriques-lift",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (7 exits) centroid 57 m behind the platform centre along travel direction (OSM platform 116 m)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "am-alameda-dom-afonso-henriques-stairs-3",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (7 exits) centroid 57 m behind the platform centre along travel direction (OSM platform 116 m)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "am-alameda-dom-afonso-henriques-stairs-4",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (7 exits) centroid 57 m behind the platform centre along travel direction (OSM platform 116 m)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "am-avenida-almirante-reis-stairs",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (7 exits) centroid 57 m behind the platform centre along travel direction (OSM platform 116 m)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "am-avenida-almirante-reis-stairs-2",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (7 exits) centroid 57 m behind the platform centre along travel direction (OSM platform 116 m)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "am-avenida-almirante-reis-stairs-3",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (7 exits) centroid 57 m behind the platform centre along travel direction (OSM platform 116 m)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "am-avenida-almirante-reis-stairs-4",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (7 exits) centroid 57 m behind the platform centre along travel direction (OSM platform 116 m)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "am-alameda-dom-afonso-henriques-lift",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (7 exits) centroid 57 m ahead of the platform centre along travel direction (OSM platform 116 m)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "am-alameda-dom-afonso-henriques-stairs-3",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (7 exits) centroid 57 m ahead of the platform centre along travel direction (OSM platform 116 m)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "am-alameda-dom-afonso-henriques-stairs-4",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (7 exits) centroid 57 m ahead of the platform centre along travel direction (OSM platform 116 m)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "am-avenida-almirante-reis-stairs",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (7 exits) centroid 57 m ahead of the platform centre along travel direction (OSM platform 116 m)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "am-avenida-almirante-reis-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (7 exits) centroid 57 m ahead of the platform centre along travel direction (OSM platform 116 m)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "am-avenida-almirante-reis-stairs-3",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (7 exits) centroid 57 m ahead of the platform centre along travel direction (OSM platform 116 m)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "am-avenida-almirante-reis-stairs-4",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (7 exits) centroid 57 m ahead of the platform centre along travel direction (OSM platform 116 m)"
        },
        {
          "line": "Vermelha",
          "towards": "Aeroporto",
          "exitId": "am-alameda-dom-afonso-henriques-stairs",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Central (2 exits) centroid 4 m ahead of the platform centre along travel direction (OSM platform 136 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Vermelha",
          "towards": "Aeroporto",
          "exitId": "am-alameda-dom-afonso-henriques-stairs-2",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Central (2 exits) centroid 4 m ahead of the platform centre along travel direction (OSM platform 136 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Vermelha",
          "towards": "São Sebastião",
          "exitId": "am-alameda-dom-afonso-henriques-stairs",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Central (2 exits) centroid 3 m behind the platform centre along travel direction (OSM platform 136 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Vermelha",
          "towards": "São Sebastião",
          "exitId": "am-alameda-dom-afonso-henriques-stairs-2",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Central (2 exits) centroid 3 m behind the platform centre along travel direction (OSM platform 136 m — longer than a 6-car train, check where it stops)"
        }
      ]
    },
    {
      "name": "Alfornelos",
      "exits": [
        {
          "id": "af-praca-teofilo-braga-lift",
          "lobby": null,
          "streets": [
            "Praça Teófilo Braga"
          ],
          "type": "LIFT",
          "lat": 38.760625,
          "lon": -9.204468,
          "accessTitle": "Elevador",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "af-praca-teofilo-braga-stairs",
          "lobby": null,
          "streets": [
            "Praça Teófilo Braga",
            "Rua Adriano Correia de Oliveira"
          ],
          "type": "STAIRS",
          "lat": 38.759887,
          "lon": -9.204639,
          "accessTitle": "Acesso 4",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "af-praca-teofilo-braga-stairs-2",
          "lobby": null,
          "streets": [
            "Praça Teófilo Braga"
          ],
          "type": "STAIRS",
          "lat": 38.759944,
          "lon": -9.204181,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "af-praca-teofilo-braga-stairs-3",
          "lobby": null,
          "streets": [
            "Praça Teófilo Braga"
          ],
          "type": "STAIRS",
          "lat": 38.760645,
          "lon": -9.20467,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "af-praca-teofilo-braga-stairs-4",
          "lobby": null,
          "streets": [
            "Praça Teófilo Braga"
          ],
          "type": "STAIRS",
          "lat": 38.760763,
          "lon": -9.204419,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "af-praca-teofilo-braga-lift",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 2 m ahead of the platform centre along travel direction (OSM platform 113 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "af-praca-teofilo-braga-stairs",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 5 m behind the platform centre along travel direction (OSM platform 113 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "af-praca-teofilo-braga-stairs-2",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 42 m behind the platform centre along travel direction (OSM platform 113 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "af-praca-teofilo-braga-stairs-3",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 20 m ahead of the platform centre along travel direction (OSM platform 113 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "af-praca-teofilo-braga-stairs-4",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 2 m ahead of the platform centre along travel direction (OSM platform 113 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "af-praca-teofilo-braga-lift",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 5 m behind the platform centre along travel direction (OSM platform 108 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "af-praca-teofilo-braga-stairs",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 3 m ahead of the platform centre along travel direction (OSM platform 108 m; 63 m off to the side — weak)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "af-praca-teofilo-braga-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 40 m ahead of the platform centre along travel direction (OSM platform 108 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "af-praca-teofilo-braga-stairs-3",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 23 m behind the platform centre along travel direction (OSM platform 108 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "af-praca-teofilo-braga-stairs-4",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 5 m behind the platform centre along travel direction (OSM platform 108 m)"
        }
      ]
    },
    {
      "name": "Alto dos Moinhos",
      "exits": [
        {
          "id": "ah-rua-joao-de-freitas-branco-stairs",
          "lobby": null,
          "streets": [
            "Rua João de Freitas Branco",
            "Rua Ernâni Lopes",
            "Rua Abílio Mendes"
          ],
          "type": "STAIRS",
          "lat": 38.749568,
          "lon": -9.17991,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ah-rua-joao-de-freitas-branco-stairs-2",
          "lobby": null,
          "streets": [
            "Rua João de Freitas Branco",
            "Rua Ernâni Lopes"
          ],
          "type": "STAIRS",
          "lat": 38.749599,
          "lon": -9.180277,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "ah-rua-joao-de-freitas-branco-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 27 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "ah-rua-joao-de-freitas-branco-stairs-2",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 27 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        }
      ]
    },
    {
      "name": "Alvalade",
      "exits": [
        {
          "id": "al-avenida-de-roma-lift",
          "lobby": "Norte",
          "streets": [
            "Avenida de Roma"
          ],
          "type": "LIFT",
          "lat": 38.753834,
          "lon": -9.144207,
          "accessTitle": null,
          "sources": [
            "underlx",
            "osm"
          ]
        },
        {
          "id": "al-avenida-de-roma-stairs-3",
          "lobby": "Norte",
          "streets": [
            "Avenida de Roma"
          ],
          "type": "STAIRS",
          "lat": 38.75384,
          "lon": -9.144545,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "al-avenida-de-roma-stairs-4",
          "lobby": "Norte",
          "streets": [
            "Avenida de Roma"
          ],
          "type": "STAIRS",
          "lat": 38.753923,
          "lon": -9.144269,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "al-centro-comercial-alvalade",
          "lobby": "Norte",
          "streets": [
            "Centro Comercial Alvalade"
          ],
          "type": "STAIRS",
          "lat": 38.753644,
          "lon": -9.144763,
          "accessTitle": null,
          "sources": [
            "underlx"
          ]
        },
        {
          "id": "al-praca-de-alvalade",
          "lobby": "Norte",
          "streets": [
            "Praça de Alvalade",
            "Avenida da Igreja"
          ],
          "type": "STAIRS",
          "lat": 38.753462,
          "lon": -9.143872,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "al-avenida-de-roma-stairs",
          "lobby": "Sul",
          "streets": [
            "Avenida de Roma"
          ],
          "type": "STAIRS",
          "lat": 38.752345,
          "lon": -9.14375,
          "accessTitle": "Acesso 5",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "al-avenida-de-roma-stairs-2",
          "lobby": "Sul",
          "streets": [
            "Avenida de Roma"
          ],
          "type": "STAIRS",
          "lat": 38.752442,
          "lon": -9.143452,
          "accessTitle": "Acesso 4",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "al-avenida-de-roma-lift",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (5 exits) centroid 75 m behind the platform centre along travel direction (OSM platform 177 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "al-avenida-de-roma-stairs",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (2 exits) centroid 88 m ahead of the platform centre along travel direction (OSM platform 177 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "al-avenida-de-roma-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (2 exits) centroid 88 m ahead of the platform centre along travel direction (OSM platform 177 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "al-avenida-de-roma-stairs-3",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (5 exits) centroid 75 m behind the platform centre along travel direction (OSM platform 177 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "al-avenida-de-roma-stairs-4",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (5 exits) centroid 75 m behind the platform centre along travel direction (OSM platform 177 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "al-centro-comercial-alvalade",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (5 exits) centroid 75 m behind the platform centre along travel direction (OSM platform 177 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "al-praca-de-alvalade",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (5 exits) centroid 75 m behind the platform centre along travel direction (OSM platform 177 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "al-avenida-de-roma-lift",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (5 exits) centroid 75 m ahead of the platform centre along travel direction (OSM platform 177 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "al-avenida-de-roma-stairs",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (2 exits) centroid 88 m behind the platform centre along travel direction (OSM platform 177 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "al-avenida-de-roma-stairs-2",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (2 exits) centroid 88 m behind the platform centre along travel direction (OSM platform 177 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "al-avenida-de-roma-stairs-3",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (5 exits) centroid 75 m ahead of the platform centre along travel direction (OSM platform 177 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "al-avenida-de-roma-stairs-4",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (5 exits) centroid 75 m ahead of the platform centre along travel direction (OSM platform 177 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "al-centro-comercial-alvalade",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (5 exits) centroid 75 m ahead of the platform centre along travel direction (OSM platform 177 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "al-praca-de-alvalade",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (5 exits) centroid 75 m ahead of the platform centre along travel direction (OSM platform 177 m — longer than a 6-car train, check where it stops)"
        }
      ]
    },
    {
      "name": "Amadora Este",
      "exits": [
        {
          "id": "as-praca-de-sao-silvestre-escalator",
          "lobby": null,
          "streets": [
            "Praça de São Silvestre",
            "Estrada dos Salgados"
          ],
          "type": "ESCALATOR",
          "lat": 38.758241,
          "lon": -9.21792,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "as-praca-de-sao-silvestre-escalator-2",
          "lobby": null,
          "streets": [
            "Praça de São Silvestre"
          ],
          "type": "ESCALATOR",
          "lat": 38.758763,
          "lon": -9.218314,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "as-praca-de-sao-silvestre-lift",
          "lobby": null,
          "streets": [
            "Praça de São Silvestre",
            "Estrada dos Salgados"
          ],
          "type": "LIFT",
          "lat": 38.758315,
          "lon": -9.21821,
          "accessTitle": "Elevador",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "as-praca-de-sao-silvestre-stairs",
          "lobby": null,
          "streets": [
            "Praça de São Silvestre"
          ],
          "type": "STAIRS",
          "lat": 38.758412,
          "lon": -9.2191,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "as-praca-de-sao-silvestre-escalator",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 22 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "as-praca-de-sao-silvestre-escalator-2",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 20 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "as-praca-de-sao-silvestre-stairs",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 59 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "as-praca-de-sao-silvestre-escalator",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 21 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "as-praca-de-sao-silvestre-escalator-2",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 19 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "as-praca-de-sao-silvestre-stairs",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 59 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        }
      ]
    },
    {
      "name": "Ameixoeira",
      "exits": [
        {
          "id": "ax-azinhaga-da-cidade-lift",
          "lobby": null,
          "streets": [
            "Azinhaga da Cidade",
            "Rua Jorge de Sena"
          ],
          "type": "LIFT",
          "lat": 38.779659,
          "lon": -9.159745,
          "accessTitle": "Elevador",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ax-azinhaga-da-cidade-stairs",
          "lobby": null,
          "streets": [
            "Azinhaga da Cidade",
            "Rua Jorge de Sena"
          ],
          "type": "STAIRS",
          "lat": 38.77945,
          "lon": -9.159486,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ax-azinhaga-da-cidade-stairs-2",
          "lobby": null,
          "streets": [
            "Azinhaga da Cidade",
            "Rua Jorge de Sena"
          ],
          "type": "STAIRS",
          "lat": 38.779836,
          "lon": -9.159599,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ax-azinhaga-da-cidade-stairs-3",
          "lobby": null,
          "streets": [
            "Azinhaga da Cidade",
            "Rua Jorge de Sena"
          ],
          "type": "STAIRS",
          "lat": 38.779849,
          "lon": -9.159976,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "ax-azinhaga-da-cidade-lift",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 34 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "ax-azinhaga-da-cidade-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 42 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "ax-azinhaga-da-cidade-stairs-3",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 62 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "ax-azinhaga-da-cidade-lift",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 36 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "ax-azinhaga-da-cidade-stairs-2",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 44 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "ax-azinhaga-da-cidade-stairs-3",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 65 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        }
      ]
    },
    {
      "name": "Anjos",
      "exits": [
        {
          "id": "an-avenida-almirante-reis-stairs-3",
          "lobby": "Norte",
          "streets": [
            "Avenida Almirante Reis",
            "Rua Frei Francisco Foreiro"
          ],
          "type": "STAIRS",
          "lat": 38.727832,
          "lon": -9.134881,
          "accessTitle": "Acesso norte poente",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "an-avenida-almirante-reis-stairs-4",
          "lobby": "Norte",
          "streets": [
            "Avenida Almirante Reis",
            "Rua Frei Francisco Foreiro"
          ],
          "type": "STAIRS",
          "lat": 38.727842,
          "lon": -9.134691,
          "accessTitle": "Acesso norte nascente",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "an-avenida-almirante-reis-stairs",
          "lobby": "Sul",
          "streets": [
            "Avenida Almirante Reis",
            "Rua de Angola"
          ],
          "type": "STAIRS",
          "lat": 38.726126,
          "lon": -9.134835,
          "accessTitle": "Acesso sul poente",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "an-avenida-almirante-reis-stairs-2",
          "lobby": "Sul",
          "streets": [
            "Avenida Almirante Reis",
            "Rua Febo Moniz"
          ],
          "type": "STAIRS",
          "lat": 38.726146,
          "lon": -9.135037,
          "accessTitle": "Acesso sul nascente",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "an-avenida-almirante-reis-stairs",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (2 exits) centroid 93 m ahead of the platform centre along travel direction (OSM platform 176 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "an-avenida-almirante-reis-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (2 exits) centroid 93 m ahead of the platform centre along travel direction (OSM platform 176 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "an-avenida-almirante-reis-stairs-3",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (2 exits) centroid 97 m behind the platform centre along travel direction (OSM platform 176 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "an-avenida-almirante-reis-stairs-4",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (2 exits) centroid 97 m behind the platform centre along travel direction (OSM platform 176 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "an-avenida-almirante-reis-stairs",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (2 exits) centroid 93 m behind the platform centre along travel direction (OSM platform 176 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "an-avenida-almirante-reis-stairs-2",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (2 exits) centroid 93 m behind the platform centre along travel direction (OSM platform 176 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "an-avenida-almirante-reis-stairs-3",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (2 exits) centroid 97 m ahead of the platform centre along travel direction (OSM platform 176 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "an-avenida-almirante-reis-stairs-4",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (2 exits) centroid 97 m ahead of the platform centre along travel direction (OSM platform 176 m — longer than a 6-car train, check where it stops)"
        }
      ]
    },
    {
      "name": "Areeiro",
      "exits": [
        {
          "id": "ae-avenida-padre-manuel-da-nobrega-stairs",
          "lobby": "Norte",
          "streets": [
            "Avenida Padre Manuel da Nóbrega"
          ],
          "type": "STAIRS",
          "lat": 38.742927,
          "lon": -9.133679,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ae-avenida-padre-manuel-da-nobrega-stairs-2",
          "lobby": "Norte",
          "streets": [
            "Avenida Padre Manuel da Nóbrega"
          ],
          "type": "STAIRS",
          "lat": 38.742981,
          "lon": -9.133496,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ae-praca-francisco-sa-carneiro-lift",
          "lobby": "Norte",
          "streets": [
            "Praça Francisco Sá Carneiro",
            "Avenida Padre Manuel da Nóbrega",
            "Avenida Almirante Gago Coutinho"
          ],
          "type": "LIFT",
          "lat": 38.742776,
          "lon": -9.133348,
          "accessTitle": "Acesso 4",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ae-praca-francisco-sa-carneiro-stairs-3",
          "lobby": "Norte",
          "streets": [
            "Praça Francisco Sá Carneiro",
            "Avenida João XXI"
          ],
          "type": "STAIRS",
          "lat": 38.742592,
          "lon": -9.133788,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ae-praca-francisco-sa-carneiro-stairs",
          "lobby": "Sul",
          "streets": [
            "Praça Francisco Sá Carneiro",
            "Avenida Almirante Reis",
            "Avenida João XXI"
          ],
          "type": "STAIRS",
          "lat": 38.741908,
          "lon": -9.132996,
          "accessTitle": "Acesso 6",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ae-praca-francisco-sa-carneiro-stairs-2",
          "lobby": "Sul",
          "streets": [
            "Praça Francisco Sá Carneiro",
            "Avenida Almirante Reis",
            "Avenida Afonso Costa"
          ],
          "type": "STAIRS",
          "lat": 38.741934,
          "lon": -9.133737,
          "accessTitle": "Acesso 5",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "ae-avenida-padre-manuel-da-nobrega-stairs",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (4 exits) centroid 73 m behind the platform centre along travel direction (OSM platform 121 m)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "ae-avenida-padre-manuel-da-nobrega-stairs-2",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (4 exits) centroid 73 m behind the platform centre along travel direction (OSM platform 121 m)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "ae-praca-francisco-sa-carneiro-lift",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (4 exits) centroid 73 m behind the platform centre along travel direction (OSM platform 121 m)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "ae-praca-francisco-sa-carneiro-stairs",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (2 exits) centroid 28 m ahead of the platform centre along travel direction (OSM platform 121 m)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "ae-praca-francisco-sa-carneiro-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (2 exits) centroid 28 m ahead of the platform centre along travel direction (OSM platform 121 m)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "ae-praca-francisco-sa-carneiro-stairs-3",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (4 exits) centroid 73 m behind the platform centre along travel direction (OSM platform 121 m)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "ae-avenida-padre-manuel-da-nobrega-stairs",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (4 exits) centroid 73 m ahead of the platform centre along travel direction (OSM platform 121 m)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "ae-avenida-padre-manuel-da-nobrega-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (4 exits) centroid 73 m ahead of the platform centre along travel direction (OSM platform 121 m)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "ae-praca-francisco-sa-carneiro-lift",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (4 exits) centroid 73 m ahead of the platform centre along travel direction (OSM platform 121 m)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "ae-praca-francisco-sa-carneiro-stairs",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (2 exits) centroid 28 m behind the platform centre along travel direction (OSM platform 121 m)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "ae-praca-francisco-sa-carneiro-stairs-2",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (2 exits) centroid 28 m behind the platform centre along travel direction (OSM platform 121 m)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "ae-praca-francisco-sa-carneiro-stairs-3",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (4 exits) centroid 73 m ahead of the platform centre along travel direction (OSM platform 121 m)"
        }
      ]
    },
    {
      "name": "Arroios",
      "exits": [
        {
          "id": "ar-praca-do-chile-lift",
          "lobby": "Norte",
          "streets": [
            "Praça do Chile",
            "Avenida Almirante Reis",
            "Rua António Pereira Carrilho"
          ],
          "type": "LIFT",
          "lat": 38.733454,
          "lon": -9.134395,
          "accessTitle": "Elevador",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ar-praca-do-chile-stairs",
          "lobby": "Norte",
          "streets": [
            "Praça do Chile",
            "Avenida Almirante Reis",
            "Rua Morais Soares"
          ],
          "type": "STAIRS",
          "lat": 38.733415,
          "lon": -9.133995,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ar-praca-do-chile-stairs-2",
          "lobby": "Norte",
          "streets": [
            "Praça do Chile",
            "Avenida Almirante Reis",
            "Rua António Pereira Carrilho"
          ],
          "type": "STAIRS",
          "lat": 38.73343,
          "lon": -9.13443,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ar-avenida-almirante-reis-stairs",
          "lobby": "Sul",
          "streets": [
            "Avenida Almirante Reis"
          ],
          "type": "STAIRS",
          "lat": 38.731922,
          "lon": -9.134278,
          "accessTitle": "Acesso 4",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ar-avenida-almirante-reis-stairs-2",
          "lobby": "Sul",
          "streets": [
            "Avenida Almirante Reis"
          ],
          "type": "STAIRS",
          "lat": 38.73194,
          "lon": -9.134468,
          "accessTitle": "Acesso 5",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "ar-avenida-almirante-reis-stairs",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (2 exits) centroid 86 m ahead of the platform centre along travel direction (OSM platform 146 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "ar-avenida-almirante-reis-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (2 exits) centroid 86 m ahead of the platform centre along travel direction (OSM platform 146 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "ar-praca-do-chile-lift",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (3 exits) centroid 81 m behind the platform centre along travel direction (OSM platform 146 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "ar-praca-do-chile-stairs",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (3 exits) centroid 81 m behind the platform centre along travel direction (OSM platform 146 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "ar-praca-do-chile-stairs-2",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (3 exits) centroid 81 m behind the platform centre along travel direction (OSM platform 146 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "ar-avenida-almirante-reis-stairs",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (2 exits) centroid 86 m behind the platform centre along travel direction (OSM platform 146 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "ar-avenida-almirante-reis-stairs-2",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (2 exits) centroid 86 m behind the platform centre along travel direction (OSM platform 146 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "ar-praca-do-chile-lift",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (3 exits) centroid 81 m ahead of the platform centre along travel direction (OSM platform 146 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "ar-praca-do-chile-stairs",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (3 exits) centroid 81 m ahead of the platform centre along travel direction (OSM platform 146 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "ar-praca-do-chile-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (3 exits) centroid 81 m ahead of the platform centre along travel direction (OSM platform 146 m — longer than a 6-car train, check where it stops)"
        }
      ]
    },
    {
      "name": "Avenida",
      "exits": [
        {
          "id": "av-avenida-da-liberdade-stairs-3",
          "lobby": "Norte",
          "streets": [
            "Avenida da Liberdade"
          ],
          "type": "STAIRS",
          "lat": 38.720119,
          "lon": -9.145765,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "av-avenida-da-liberdade-stairs-4",
          "lobby": "Norte",
          "streets": [
            "Avenida da Liberdade",
            "Rua Manuel Jesus Coelho",
            "Rua de Santa Marta",
            "Rua de São José"
          ],
          "type": "STAIRS",
          "lat": 38.72016,
          "lon": -9.145271,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "av-avenida-da-liberdade-stairs",
          "lobby": "Sul",
          "streets": [
            "Avenida da Liberdade"
          ],
          "type": "STAIRS",
          "lat": 38.718735,
          "lon": -9.144649,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "av-avenida-da-liberdade-stairs-2",
          "lobby": "Sul",
          "streets": [
            "Avenida da Liberdade",
            "Rua das Pretas",
            "Rua de São José"
          ],
          "type": "STAIRS",
          "lat": 38.719037,
          "lon": -9.144289,
          "accessTitle": "Acesso 4",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "av-avenida-da-liberdade-stairs",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (2 exits) centroid 30 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "av-avenida-da-liberdade-stairs-2",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (2 exits) centroid 30 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "av-avenida-da-liberdade-stairs-3",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (2 exits) centroid 137 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "av-avenida-da-liberdade-stairs-4",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (2 exits) centroid 137 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "av-avenida-da-liberdade-stairs",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (2 exits) centroid 30 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "av-avenida-da-liberdade-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (2 exits) centroid 30 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "av-avenida-da-liberdade-stairs-3",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (2 exits) centroid 137 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "av-avenida-da-liberdade-stairs-4",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (2 exits) centroid 137 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        }
      ]
    },
    {
      "name": "Baixa / Chiado",
      "exits": [
        {
          "id": "bc-rua-do-crucifixo",
          "lobby": "Baixa",
          "streets": [
            "Rua do Crucifixo",
            "Rua da Vitória"
          ],
          "type": "ESCALATOR",
          "lat": 38.71065,
          "lon": -9.139095,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "bc-largo-do-chiado",
          "lobby": "Chiado",
          "streets": [
            "Largo do Chiado",
            "Rua Garrett",
            "Rua Nova da Trindade",
            "Rua Paiva de Andrada"
          ],
          "type": "ESCALATOR",
          "lat": 38.710527,
          "lon": -9.142072,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": []
    },
    {
      "name": "Bela Vista",
      "exits": [
        {
          "id": "bv-avenida-do-santo-contestavel-ramp",
          "lobby": null,
          "streets": [
            "Avenida do Santo Contestável"
          ],
          "type": "RAMP",
          "lat": 38.747597,
          "lon": -9.117282,
          "accessTitle": "Acesso encerrado",
          "sources": [
            "underlx",
            "metrolisboa"
          ]
        },
        {
          "id": "bv-avenida-do-santo-contestavel-stairs",
          "lobby": null,
          "streets": [
            "Avenida do Santo Contestável"
          ],
          "type": "STAIRS",
          "lat": 38.747434,
          "lon": -9.116671,
          "accessTitle": "Acesso encerrado",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "bv-avenida-do-santo-contestavel-stairs-2",
          "lobby": null,
          "streets": [
            "Avenida do Santo Contestável"
          ],
          "type": "STAIRS",
          "lat": 38.747753,
          "lon": -9.116742,
          "accessTitle": "Acesso encerrado",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "bv-avenida-francisco-salgado-zenha-stairs",
          "lobby": null,
          "streets": [
            "Avenida Francisco Salgado Zenha",
            "Avenida da Ucrânia"
          ],
          "type": "STAIRS",
          "lat": 38.747806,
          "lon": -9.11831,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "bv-avenida-francisco-salgado-zenha-stairs-2",
          "lobby": null,
          "streets": [
            "Avenida Francisco Salgado Zenha",
            "Avenida da Ucrânia"
          ],
          "type": "STAIRS",
          "lat": 38.747822,
          "lon": -9.118552,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Vermelha",
          "towards": "Aeroporto",
          "exitId": "bv-avenida-do-santo-contestavel-ramp",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 20 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "Aeroporto",
          "exitId": "bv-avenida-do-santo-contestavel-stairs",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 26 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m; 84 m off to the side — weak)"
        },
        {
          "line": "Vermelha",
          "towards": "Aeroporto",
          "exitId": "bv-avenida-do-santo-contestavel-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 55 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "São Sebastião",
          "exitId": "bv-avenida-do-santo-contestavel-ramp",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 20 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "São Sebastião",
          "exitId": "bv-avenida-do-santo-contestavel-stairs",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 26 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m; 81 m off to the side — weak)"
        },
        {
          "line": "Vermelha",
          "towards": "São Sebastião",
          "exitId": "bv-avenida-do-santo-contestavel-stairs-2",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 55 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        }
      ]
    },
    {
      "name": "Cabo Ruivo",
      "exits": [
        {
          "id": "cr-avenida-de-padua-lift",
          "lobby": "Nascente",
          "streets": [
            "Avenida de Pádua",
            "Avenida Infante Dom Henrique"
          ],
          "type": "LIFT",
          "lat": 38.763056,
          "lon": -9.104168,
          "accessTitle": "Elevador",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "cr-avenida-de-padua-stairs-2",
          "lobby": "Nascente",
          "streets": [
            "Avenida de Pádua",
            "Avenida Infante Dom Henrique"
          ],
          "type": "STAIRS",
          "lat": 38.763242,
          "lon": -9.104066,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "cr-avenida-de-padua-stairs",
          "lobby": "Poente",
          "streets": [
            "Avenida de Pádua"
          ],
          "type": "STAIRS",
          "lat": 38.762863,
          "lon": -9.106499,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa"
          ]
        }
      ],
      "positions": [
        {
          "line": "Vermelha",
          "towards": "Aeroporto",
          "exitId": "cr-avenida-de-padua-stairs",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Poente (1 exits) centroid 182 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "São Sebastião",
          "exitId": "cr-avenida-de-padua-stairs",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Poente (1 exits) centroid 180 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        }
      ]
    },
    {
      "name": "Cais do Sodré",
      "exits": [
        {
          "id": "cs-avenida-24-de-julho-escalator",
          "lobby": null,
          "streets": [
            "Avenida 24 de Julho"
          ],
          "type": "ESCALATOR",
          "lat": 38.706093,
          "lon": -9.145043,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "cs-avenida-24-de-julho-lift",
          "lobby": null,
          "streets": [
            "Avenida 24 de Julho"
          ],
          "type": "LIFT",
          "lat": 38.706007,
          "lon": -9.145042,
          "accessTitle": "Elevador",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "cs-estacao-ferroviaria-do-cais-do-sodre-escalator",
          "lobby": null,
          "streets": [
            "Estação Ferroviária do Cais do Sodré",
            "Terminal Fluvial do Cais do Sodré"
          ],
          "type": "ESCALATOR",
          "lat": 38.705844,
          "lon": -9.144772,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "cs-estacao-ferroviaria-do-cais-do-sodre-escalator-2",
          "lobby": null,
          "streets": [
            "Estação Ferroviária do Cais do Sodré"
          ],
          "type": "ESCALATOR",
          "lat": 38.706078,
          "lon": -9.14587,
          "accessTitle": null,
          "sources": [
            "underlx",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "cs-avenida-24-de-julho-escalator",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 155 m behind the platform centre along travel direction (OSM platform 105 m)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "cs-avenida-24-de-julho-lift",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 155 m behind the platform centre along travel direction (OSM platform 105 m)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "cs-estacao-ferroviaria-do-cais-do-sodre-escalator",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 179 m behind the platform centre along travel direction (OSM platform 105 m)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "cs-estacao-ferroviaria-do-cais-do-sodre-escalator-2",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 83 m behind the platform centre along travel direction (OSM platform 105 m)"
        }
      ]
    },
    {
      "name": "Campo Grande",
      "exits": [
        {
          "id": "cg-estrada-de-telheiras-ramp",
          "lobby": null,
          "streets": [
            "Estrada de Telheiras",
            "Terminal Rodoviário"
          ],
          "type": "RAMP",
          "lat": 38.760376,
          "lon": -9.157983,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "cg-estrada-de-telheiras-stairs",
          "lobby": null,
          "streets": [
            "Estrada de Telheiras",
            "Terminal Rodoviário"
          ],
          "type": "STAIRS",
          "lat": 38.760486,
          "lon": -9.158442,
          "accessTitle": null,
          "sources": [
            "underlx"
          ]
        },
        {
          "id": "cg-estrada-de-telheiras-stairs-2",
          "lobby": null,
          "streets": [
            "Estrada de Telheiras",
            "Terminal Rodoviário"
          ],
          "type": "STAIRS",
          "lat": 38.760492,
          "lon": -9.157749,
          "accessTitle": null,
          "sources": [
            "underlx"
          ]
        },
        {
          "id": "cg-estrada-de-telheiras-stairs-3",
          "lobby": null,
          "streets": [
            "Estrada de Telheiras",
            "Terminal Rodoviário"
          ],
          "type": "STAIRS",
          "lat": 38.760776,
          "lon": -9.15839,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa"
          ]
        },
        {
          "id": "cg-faculdade-de-ciencias-escalator",
          "lobby": null,
          "streets": [
            "Faculdade de Ciências",
            "Universidade Lusófona"
          ],
          "type": "ESCALATOR",
          "lat": 38.759926,
          "lon": -9.157768,
          "accessTitle": null,
          "sources": [
            "underlx",
            "osm"
          ]
        },
        {
          "id": "cg-faculdade-de-ciencias-stairs",
          "lobby": null,
          "streets": [
            "Faculdade de Ciências",
            "Universidade Lusófona"
          ],
          "type": "STAIRS",
          "lat": 38.759978,
          "lon": -9.15788,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "cg-faculdade-de-ciencias-stairs-2",
          "lobby": null,
          "streets": [
            "Faculdade de Ciências",
            "Universidade Lusófona"
          ],
          "type": "STAIRS",
          "lat": 38.760031,
          "lon": -9.1578,
          "accessTitle": null,
          "sources": [
            "underlx",
            "osm"
          ]
        },
        {
          "id": "cg-faculdade-de-ciencias-stairs-3",
          "lobby": null,
          "streets": [
            "Faculdade de Ciências",
            "Universidade Lusófona"
          ],
          "type": "STAIRS",
          "lat": 38.760032,
          "lon": -9.157687,
          "accessTitle": null,
          "sources": [
            "underlx",
            "osm"
          ]
        },
        {
          "id": "cg-rua-cipriano-dourado",
          "lobby": null,
          "streets": [
            "Rua Cipriano Dourado",
            "Rua Actor António Silva",
            "Terminal Rodoviário"
          ],
          "type": "STAIRS",
          "lat": 38.760708,
          "lon": -9.156824,
          "accessTitle": "Acesso 4",
          "sources": [
            "underlx",
            "metrolisboa"
          ]
        }
      ],
      "positions": [
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "cg-estrada-de-telheiras-ramp",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 0 m ahead of the platform centre along travel direction (OSM platform 106 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "cg-estrada-de-telheiras-stairs",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 31 m behind the platform centre along travel direction (OSM platform 106 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "cg-estrada-de-telheiras-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 24 m ahead of the platform centre along travel direction (OSM platform 106 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "cg-estrada-de-telheiras-stairs-3",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 14 m behind the platform centre along travel direction (OSM platform 106 m; 61 m off to the side — weak)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "cg-rua-cipriano-dourado",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 107 m ahead of the platform centre along travel direction (OSM platform 106 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "cg-estrada-de-telheiras-ramp",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 0 m behind the platform centre along travel direction (OSM platform 106 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "cg-estrada-de-telheiras-stairs",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 31 m ahead of the platform centre along travel direction (OSM platform 106 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "cg-estrada-de-telheiras-stairs-2",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 24 m behind the platform centre along travel direction (OSM platform 106 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "cg-estrada-de-telheiras-stairs-3",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 14 m ahead of the platform centre along travel direction (OSM platform 106 m; 76 m off to the side — weak)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "cg-rua-cipriano-dourado",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 107 m behind the platform centre along travel direction (OSM platform 106 m)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "cg-estrada-de-telheiras-stairs",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 32 m behind the platform centre along travel direction (OSM platform 106 m)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "cg-estrada-de-telheiras-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 24 m ahead of the platform centre along travel direction (OSM platform 106 m)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "cg-faculdade-de-ciencias-escalator",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 3 m behind the platform centre along travel direction (OSM platform 106 m)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "cg-faculdade-de-ciencias-stairs",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 9 m behind the platform centre along travel direction (OSM platform 106 m)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "cg-faculdade-de-ciencias-stairs-2",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 1 m behind the platform centre along travel direction (OSM platform 106 m)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "cg-faculdade-de-ciencias-stairs-3",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 8 m ahead of the platform centre along travel direction (OSM platform 106 m)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "cg-rua-cipriano-dourado",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 107 m ahead of the platform centre along travel direction (OSM platform 106 m)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "cg-estrada-de-telheiras-stairs",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 32 m ahead of the platform centre along travel direction (OSM platform 106 m; 70 m off to the side — weak)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "cg-estrada-de-telheiras-stairs-2",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 24 m behind the platform centre along travel direction (OSM platform 106 m)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "cg-faculdade-de-ciencias-escalator",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 3 m ahead of the platform centre along travel direction (OSM platform 106 m)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "cg-faculdade-de-ciencias-stairs",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 9 m ahead of the platform centre along travel direction (OSM platform 106 m)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "cg-faculdade-de-ciencias-stairs-2",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 1 m ahead of the platform centre along travel direction (OSM platform 106 m)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "cg-faculdade-de-ciencias-stairs-3",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 8 m behind the platform centre along travel direction (OSM platform 106 m)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "cg-rua-cipriano-dourado",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 107 m behind the platform centre along travel direction (OSM platform 106 m)"
        }
      ]
    },
    {
      "name": "Campo Pequeno",
      "exits": [
        {
          "id": "cp-avenida-da-republica-stairs-3",
          "lobby": "Norte",
          "streets": [
            "Avenida da República",
            "Avenida de Berna"
          ],
          "type": "STAIRS",
          "lat": 38.741504,
          "lon": -9.147024,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "cp-avenida-da-republica-stairs-4",
          "lobby": "Norte",
          "streets": [
            "Avenida da República",
            "Avenida de Berna"
          ],
          "type": "STAIRS",
          "lat": 38.741593,
          "lon": -9.146409,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "cp-centro-comercial-do-campo-pequeno",
          "lobby": "Norte",
          "streets": [
            "Centro Comercial do Campo Pequeno"
          ],
          "type": "STAIRS",
          "lat": 38.742244,
          "lon": -9.146084,
          "accessTitle": "Acesso 5",
          "sources": [
            "underlx",
            "metrolisboa"
          ]
        },
        {
          "id": "cp-avenida-da-republica-stairs",
          "lobby": "Sul",
          "streets": [
            "Avenida da República",
            "Avenida Barbosa du Bocage",
            "Avenida Elias Garcia"
          ],
          "type": "STAIRS",
          "lat": 38.739984,
          "lon": -9.146661,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "cp-avenida-da-republica-stairs-2",
          "lobby": "Sul",
          "streets": [
            "Avenida da República",
            "Avenida Barbosa du Bocage",
            "Avenida Elias Garcia"
          ],
          "type": "STAIRS",
          "lat": 38.74009,
          "lon": -9.146058,
          "accessTitle": "Acesso 4",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "cp-avenida-da-republica-stairs",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (2 exits) centroid 125 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "cp-avenida-da-republica-stairs-2",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (2 exits) centroid 125 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "cp-avenida-da-republica-stairs-3",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (3 exits) centroid 68 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "cp-avenida-da-republica-stairs-4",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (3 exits) centroid 68 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "cp-centro-comercial-do-campo-pequeno",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (3 exits) centroid 68 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "cp-avenida-da-republica-stairs",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (2 exits) centroid 124 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "cp-avenida-da-republica-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (2 exits) centroid 124 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "cp-avenida-da-republica-stairs-3",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (3 exits) centroid 69 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "cp-avenida-da-republica-stairs-4",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (3 exits) centroid 69 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "cp-centro-comercial-do-campo-pequeno",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (3 exits) centroid 69 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        }
      ]
    },
    {
      "name": "Carnide",
      "exits": [
        {
          "id": "ca-avenida-marechal-teixeira-rebelo-lift",
          "lobby": null,
          "streets": [
            "Avenida Marechal Teixeira Rebelo",
            "Rua Guiomar Torresão",
            "Estrada da Correia"
          ],
          "type": "LIFT",
          "lat": 38.759004,
          "lon": -9.192506,
          "accessTitle": "Elevador",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ca-avenida-marechal-teixeira-rebelo-stairs",
          "lobby": null,
          "streets": [
            "Avenida Marechal Teixeira Rebelo",
            "Rua Guiomar Torresão"
          ],
          "type": "STAIRS",
          "lat": 38.758767,
          "lon": -9.192684,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ca-avenida-marechal-teixeira-rebelo-stairs-2",
          "lobby": null,
          "streets": [
            "Avenida Marechal Teixeira Rebelo",
            "Estrada da Correia"
          ],
          "type": "STAIRS",
          "lat": 38.759334,
          "lon": -9.192261,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ca-avenida-marechal-teixeira-rebelo-stairs-3",
          "lobby": null,
          "streets": [
            "Avenida Marechal Teixeira Rebelo",
            "Estrada da Correia"
          ],
          "type": "STAIRS",
          "lat": 38.759371,
          "lon": -9.192723,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "ca-avenida-marechal-teixeira-rebelo-lift",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 34 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "ca-avenida-marechal-teixeira-rebelo-stairs",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 46 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "ca-avenida-marechal-teixeira-rebelo-stairs-2",
          "position": "MIDDLE",
          "confidence": "SEED_LOBBY",
          "basis": "exit 16 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "ca-avenida-marechal-teixeira-rebelo-stairs-3",
          "position": "MIDDLE",
          "confidence": "SEED_LOBBY",
          "basis": "exit 11 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "ca-avenida-marechal-teixeira-rebelo-lift",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 28 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "ca-avenida-marechal-teixeira-rebelo-stairs",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 41 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "ca-avenida-marechal-teixeira-rebelo-stairs-2",
          "position": "MIDDLE",
          "confidence": "SEED_LOBBY",
          "basis": "exit 10 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "ca-avenida-marechal-teixeira-rebelo-stairs-3",
          "position": "MIDDLE",
          "confidence": "SEED_LOBBY",
          "basis": "exit 16 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        }
      ]
    },
    {
      "name": "Chelas",
      "exits": [
        {
          "id": "ch-avenida-doutor-augusto-de-castro-lift",
          "lobby": null,
          "streets": [
            "Avenida Doutor Augusto de Castro"
          ],
          "type": "LIFT",
          "lat": 38.754819,
          "lon": -9.11361,
          "accessTitle": "Elevador",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ch-avenida-doutor-augusto-de-castro-stairs",
          "lobby": null,
          "streets": [
            "Avenida Doutor Augusto de Castro",
            "Rua Actriz Palmira Bastos"
          ],
          "type": "STAIRS",
          "lat": 38.754426,
          "lon": -9.113741,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ch-avenida-doutor-augusto-de-castro-stairs-2",
          "lobby": null,
          "streets": [
            "Avenida Doutor Augusto de Castro",
            "Rua Engenheiro Rodrigues de Carvalho"
          ],
          "type": "STAIRS",
          "lat": 38.75526,
          "lon": -9.114117,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ch-avenida-doutor-augusto-de-castro-stairs-3",
          "lobby": null,
          "streets": [
            "Avenida Doutor Augusto de Castro",
            "Rua Conselheiro Emídio Navarro"
          ],
          "type": "STAIRS",
          "lat": 38.7557,
          "lon": -9.11392,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Vermelha",
          "towards": "Aeroporto",
          "exitId": "ch-avenida-doutor-augusto-de-castro-stairs",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 37 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "Aeroporto",
          "exitId": "ch-avenida-doutor-augusto-de-castro-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 38 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "Aeroporto",
          "exitId": "ch-avenida-doutor-augusto-de-castro-stairs-3",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 90 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "São Sebastião",
          "exitId": "ch-avenida-doutor-augusto-de-castro-stairs",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 38 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "São Sebastião",
          "exitId": "ch-avenida-doutor-augusto-de-castro-stairs-2",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 38 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "São Sebastião",
          "exitId": "ch-avenida-doutor-augusto-de-castro-stairs-3",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 89 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        }
      ]
    },
    {
      "name": "Cidade Universitária",
      "exits": [
        {
          "id": "cu-alameda-da-universidade",
          "lobby": null,
          "streets": [
            "Alameda da Universidade",
            "Avenida Professor Gama Pinto"
          ],
          "type": "STAIRS",
          "lat": 38.751921,
          "lon": -9.158632,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "cu-avenida-professor-gama-pinto-lift",
          "lobby": null,
          "streets": [
            "Avenida Professor Gama Pinto"
          ],
          "type": "LIFT",
          "lat": 38.75136,
          "lon": -9.159324,
          "accessTitle": "Elevador",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "cu-avenida-professor-gama-pinto-stairs",
          "lobby": null,
          "streets": [
            "Avenida Professor Gama Pinto",
            "Avenida Professor Egas Moniz"
          ],
          "type": "STAIRS",
          "lat": 38.750895,
          "lon": -9.15903,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "cu-avenida-professor-gama-pinto-stairs-2",
          "lobby": null,
          "streets": [
            "Avenida Professor Gama Pinto"
          ],
          "type": "STAIRS",
          "lat": 38.751196,
          "lon": -9.159306,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "cu-alameda-da-universidade",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 18 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m; 60 m off to the side — weak)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "cu-avenida-professor-gama-pinto-stairs",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 61 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "cu-avenida-professor-gama-pinto-stairs-2",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 20 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "cu-alameda-da-universidade",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 19 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "cu-avenida-professor-gama-pinto-stairs",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 60 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "cu-avenida-professor-gama-pinto-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 19 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        }
      ]
    },
    {
      "name": "Colégio Militar/Luz",
      "exits": [
        {
          "id": "cm-centro-comercial-colombo",
          "lobby": null,
          "streets": [
            "Centro Comercial Colombo"
          ],
          "type": "STAIRS",
          "lat": 38.753476,
          "lon": -9.188751,
          "accessTitle": null,
          "sources": [
            "underlx",
            "osm"
          ]
        },
        {
          "id": "cm-largo-da-revista-militar-stairs",
          "lobby": null,
          "streets": [
            "Largo da Revista Militar",
            "Terminal Rodoviário"
          ],
          "type": "STAIRS",
          "lat": 38.752809,
          "lon": -9.189993,
          "accessTitle": null,
          "sources": [
            "underlx"
          ]
        },
        {
          "id": "cm-largo-da-revista-militar-stairs-2",
          "lobby": null,
          "streets": [
            "Largo da Revista Militar",
            "Avenida do Colégio Militar"
          ],
          "type": "STAIRS",
          "lat": 38.752941,
          "lon": -9.188934,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "cm-largo-da-revista-militar-stairs-3",
          "lobby": null,
          "streets": [
            "Largo da Revista Militar",
            "Terminal Rodoviário"
          ],
          "type": "STAIRS",
          "lat": 38.753004,
          "lon": -9.18981,
          "accessTitle": null,
          "sources": [
            "underlx",
            "osm"
          ]
        },
        {
          "id": "cm-largo-da-revista-militar-stairs-4",
          "lobby": null,
          "streets": [
            "Largo da Revista Militar"
          ],
          "type": "STAIRS",
          "lat": 38.7534,
          "lon": -9.189778,
          "accessTitle": null,
          "sources": [
            "underlx",
            "osm"
          ]
        },
        {
          "id": "cm-rua-galileu-galilei-stairs",
          "lobby": null,
          "streets": [
            "Rua Galileu Galilei",
            "Avenida do Colégio Militar"
          ],
          "type": "STAIRS",
          "lat": 38.753325,
          "lon": -9.188616,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "cm-rua-galileu-galilei-stairs-2",
          "lobby": null,
          "streets": [
            "Rua Galileu Galilei"
          ],
          "type": "STAIRS",
          "lat": 38.753781,
          "lon": -9.189439,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "cm-centro-comercial-colombo",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 26 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "cm-largo-da-revista-militar-stairs-2",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 56 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "cm-largo-da-revista-militar-stairs-4",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 32 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "cm-rua-galileu-galilei-stairs",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 46 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "cm-rua-galileu-galilei-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 40 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "cm-centro-comercial-colombo",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 27 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "cm-largo-da-revista-militar-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 57 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "cm-largo-da-revista-militar-stairs-4",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 31 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "cm-rua-galileu-galilei-stairs",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 47 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "cm-rua-galileu-galilei-stairs-2",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 39 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        }
      ]
    },
    {
      "name": "Encarnação",
      "exits": [
        {
          "id": "en-rua-general-silva-freire-lift",
          "lobby": null,
          "streets": [
            "Rua General Silva Freire"
          ],
          "type": "LIFT",
          "lat": 38.77484,
          "lon": -9.11516,
          "accessTitle": "Elevador",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "en-rua-general-silva-freire-stairs",
          "lobby": null,
          "streets": [
            "Rua General Silva Freire",
            "Rua Capitão Tenente Oliveira e Carmo"
          ],
          "type": "STAIRS",
          "lat": 38.77475,
          "lon": -9.114846,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "en-rua-general-silva-freire-stairs-2",
          "lobby": null,
          "streets": [
            "Rua General Silva Freire"
          ],
          "type": "STAIRS",
          "lat": 38.774904,
          "lon": -9.115723,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "en-rua-general-silva-freire-stairs-3",
          "lobby": null,
          "streets": [
            "Rua General Silva Freire"
          ],
          "type": "STAIRS",
          "lat": 38.775257,
          "lon": -9.115887,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Vermelha",
          "towards": "Aeroporto",
          "exitId": "en-rua-general-silva-freire-lift",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 21 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "Aeroporto",
          "exitId": "en-rua-general-silva-freire-stairs",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 44 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "Aeroporto",
          "exitId": "en-rua-general-silva-freire-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 23 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "Aeroporto",
          "exitId": "en-rua-general-silva-freire-stairs-3",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 25 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "São Sebastião",
          "exitId": "en-rua-general-silva-freire-lift",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 22 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "São Sebastião",
          "exitId": "en-rua-general-silva-freire-stairs",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 45 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "São Sebastião",
          "exitId": "en-rua-general-silva-freire-stairs-2",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 22 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "São Sebastião",
          "exitId": "en-rua-general-silva-freire-stairs-3",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 24 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        }
      ]
    },
    {
      "name": "Entre Campos",
      "exits": [
        {
          "id": "ec-avenida-da-republica-stairs-6",
          "lobby": "Norte",
          "streets": [
            "Avenida da República",
            "Avenida das Forças Armadas"
          ],
          "type": "STAIRS",
          "lat": 38.747828,
          "lon": -9.148587,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ec-jardim-do-campo-grande",
          "lobby": "Norte",
          "streets": [
            "Jardim do Campo Grande",
            "Avenida das Forças Armadas"
          ],
          "type": "STAIRS",
          "lat": 38.748531,
          "lon": -9.149037,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ec-avenida-da-republica-lift",
          "lobby": "Sul",
          "streets": [
            "Avenida da República"
          ],
          "type": "LIFT",
          "lat": 38.746209,
          "lon": -9.148247,
          "accessTitle": "Elevador",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ec-avenida-da-republica-stairs",
          "lobby": "Sul",
          "streets": [
            "Avenida da República"
          ],
          "type": "STAIRS",
          "lat": 38.7452,
          "lon": -9.148041,
          "accessTitle": "Acesso 8",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ec-avenida-da-republica-stairs-2",
          "lobby": "Sul",
          "streets": [
            "Avenida da República"
          ],
          "type": "STAIRS",
          "lat": 38.745905,
          "lon": -9.148203,
          "accessTitle": "Acesso 6",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ec-avenida-da-republica-stairs-3",
          "lobby": "Sul",
          "streets": [
            "Avenida da República",
            "Rua José Carlos dos Santos"
          ],
          "type": "STAIRS",
          "lat": 38.746106,
          "lon": -9.14754,
          "accessTitle": "Acesso 7",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ec-avenida-da-republica-stairs-4",
          "lobby": "Sul",
          "streets": [
            "Avenida da República"
          ],
          "type": "STAIRS",
          "lat": 38.746353,
          "lon": -9.148288,
          "accessTitle": "Acesso 4",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ec-avenida-da-republica-stairs-5",
          "lobby": "Sul",
          "streets": [
            "Avenida da República",
            "Rua José Carlos dos Santos"
          ],
          "type": "STAIRS",
          "lat": 38.746553,
          "lon": -9.147639,
          "accessTitle": "Acesso 5",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ec-estacao-ferroviaria-de-entrecampos",
          "lobby": "Sul",
          "streets": [
            "Estação Ferroviária de Entrecampos"
          ],
          "type": "ESCALATOR",
          "lat": 38.744913,
          "lon": -9.148102,
          "accessTitle": "Acesso 9",
          "sources": [
            "underlx",
            "metrolisboa"
          ]
        }
      ],
      "positions": [
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "ec-avenida-da-republica-lift",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (7 exits) centroid 107 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "ec-avenida-da-republica-stairs",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (7 exits) centroid 107 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "ec-avenida-da-republica-stairs-2",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (7 exits) centroid 107 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "ec-avenida-da-republica-stairs-3",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (7 exits) centroid 107 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "ec-avenida-da-republica-stairs-4",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (7 exits) centroid 107 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "ec-avenida-da-republica-stairs-5",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (7 exits) centroid 107 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "ec-avenida-da-republica-stairs-6",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (2 exits) centroid 132 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "ec-estacao-ferroviaria-de-entrecampos",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (7 exits) centroid 107 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "ec-jardim-do-campo-grande",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (2 exits) centroid 132 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "ec-avenida-da-republica-lift",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (7 exits) centroid 105 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "ec-avenida-da-republica-stairs",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (7 exits) centroid 105 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "ec-avenida-da-republica-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (7 exits) centroid 105 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "ec-avenida-da-republica-stairs-3",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (7 exits) centroid 105 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "ec-avenida-da-republica-stairs-4",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (7 exits) centroid 105 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "ec-avenida-da-republica-stairs-5",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (7 exits) centroid 105 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "ec-avenida-da-republica-stairs-6",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (2 exits) centroid 133 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "ec-estacao-ferroviaria-de-entrecampos",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (7 exits) centroid 105 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "ec-jardim-do-campo-grande",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (2 exits) centroid 133 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        }
      ]
    },
    {
      "name": "Intendente",
      "exits": [
        {
          "id": "in-avenida-almirante-reis-stairs-5",
          "lobby": "Norte",
          "streets": [
            "Avenida Almirante Reis",
            "Rua Luís Pinto Moitinho",
            "Rua Maria Andrade"
          ],
          "type": "STAIRS",
          "lat": 38.723914,
          "lon": -9.135092,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "in-avenida-almirante-reis-stairs-6",
          "lobby": "Norte",
          "streets": [
            "Avenida Almirante Reis"
          ],
          "type": "STAIRS",
          "lat": 38.723924,
          "lon": -9.135276,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "in-avenida-almirante-reis-stairs",
          "lobby": "Sul",
          "streets": [
            "Avenida Almirante Reis",
            "Rua dos Anjos",
            "Rua Andrade"
          ],
          "type": "STAIRS",
          "lat": 38.722225,
          "lon": -9.13522,
          "accessTitle": "Acesso 5",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "in-avenida-almirante-reis-stairs-2",
          "lobby": "Sul",
          "streets": [
            "Avenida Almirante Reis"
          ],
          "type": "STAIRS",
          "lat": 38.72244,
          "lon": -9.13541,
          "accessTitle": "Acesso 6",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "in-avenida-almirante-reis-stairs-3",
          "lobby": "Sul",
          "streets": [
            "Avenida Almirante Reis",
            "Rua Andrade"
          ],
          "type": "STAIRS",
          "lat": 38.722897,
          "lon": -9.135164,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "in-avenida-almirante-reis-stairs-4",
          "lobby": "Sul",
          "streets": [
            "Avenida Almirante Reis",
            "Rua dos Anjos"
          ],
          "type": "STAIRS",
          "lat": 38.723074,
          "lon": -9.13535,
          "accessTitle": "Acesso 4",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "in-avenida-almirante-reis-stairs",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (4 exits) centroid 57 m ahead of the platform centre along travel direction (OSM platform 155 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "in-avenida-almirante-reis-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (4 exits) centroid 57 m ahead of the platform centre along travel direction (OSM platform 155 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "in-avenida-almirante-reis-stairs-3",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (4 exits) centroid 57 m ahead of the platform centre along travel direction (OSM platform 155 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "in-avenida-almirante-reis-stairs-4",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (4 exits) centroid 57 m ahead of the platform centre along travel direction (OSM platform 155 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "in-avenida-almirante-reis-stairs-5",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (2 exits) centroid 83 m behind the platform centre along travel direction (OSM platform 155 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "in-avenida-almirante-reis-stairs-6",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (2 exits) centroid 83 m behind the platform centre along travel direction (OSM platform 155 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "in-avenida-almirante-reis-stairs",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (4 exits) centroid 57 m behind the platform centre along travel direction (OSM platform 155 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "in-avenida-almirante-reis-stairs-2",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (4 exits) centroid 57 m behind the platform centre along travel direction (OSM platform 155 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "in-avenida-almirante-reis-stairs-3",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (4 exits) centroid 57 m behind the platform centre along travel direction (OSM platform 155 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "in-avenida-almirante-reis-stairs-4",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (4 exits) centroid 57 m behind the platform centre along travel direction (OSM platform 155 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "in-avenida-almirante-reis-stairs-5",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (2 exits) centroid 83 m ahead of the platform centre along travel direction (OSM platform 155 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "in-avenida-almirante-reis-stairs-6",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (2 exits) centroid 83 m ahead of the platform centre along travel direction (OSM platform 155 m — longer than a 6-car train, check where it stops)"
        }
      ]
    },
    {
      "name": "Jardim Zoológico",
      "exits": [
        {
          "id": "jz-avenida-das-forcas-armadas",
          "lobby": "Norte",
          "streets": [
            "Avenida das Forças Armadas",
            "Rua Professor Lima Basto"
          ],
          "type": "STAIRS",
          "lat": 38.741518,
          "lon": -9.167974,
          "accessTitle": "Acesso 4",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "jz-praca-marechal-humberto-delgado-stairs",
          "lobby": "Norte",
          "streets": [
            "Praça Marechal Humberto Delgado"
          ],
          "type": "STAIRS",
          "lat": 38.741917,
          "lon": -9.169117,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "jz-praca-marechal-humberto-delgado-stairs-2",
          "lobby": "Norte",
          "streets": [
            "Praça Marechal Humberto Delgado",
            "Estrada de Benfica"
          ],
          "type": "STAIRS",
          "lat": 38.741995,
          "lon": -9.169368,
          "accessTitle": null,
          "sources": [
            "underlx",
            "osm"
          ]
        },
        {
          "id": "jz-praca-marechal-humberto-delgado-stairs-3",
          "lobby": "Norte",
          "streets": [
            "Praça Marechal Humberto Delgado",
            "Avenida das Forças Armadas"
          ],
          "type": "STAIRS",
          "lat": 38.742211,
          "lon": -9.168651,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "jz-avenida-columbano-bordalo-pinheiro",
          "lobby": "Sul",
          "streets": [
            "Avenida Columbano Bordalo Pinheiro"
          ],
          "type": "STAIRS",
          "lat": 38.740316,
          "lon": -9.167086,
          "accessTitle": "Acesso 6",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "jz-estacao-ferroviaria-de-sete-rios",
          "lobby": "Sul",
          "streets": [
            "Estação Ferroviária de Sete Rios"
          ],
          "type": "ESCALATOR",
          "lat": 38.74031,
          "lon": -9.166836,
          "accessTitle": "Acesso 5",
          "sources": [
            "underlx",
            "metrolisboa"
          ]
        },
        {
          "id": "jz-rua-professor-lima-basto",
          "lobby": "Sul",
          "streets": [
            "Rua Professor Lima Basto",
            "Terminal Rodoviário"
          ],
          "type": "STAIRS",
          "lat": 38.740505,
          "lon": -9.16639,
          "accessTitle": null,
          "sources": [
            "underlx"
          ]
        }
      ],
      "positions": [
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "jz-avenida-columbano-bordalo-pinheiro",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (3 exits) centroid 266 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "jz-avenida-das-forcas-armadas",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (4 exits) centroid 22 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "jz-estacao-ferroviaria-de-sete-rios",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (3 exits) centroid 266 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "jz-praca-marechal-humberto-delgado-stairs",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (4 exits) centroid 22 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "jz-praca-marechal-humberto-delgado-stairs-2",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (4 exits) centroid 22 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "jz-praca-marechal-humberto-delgado-stairs-3",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (4 exits) centroid 22 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "jz-rua-professor-lima-basto",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (3 exits) centroid 266 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "jz-avenida-columbano-bordalo-pinheiro",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (3 exits) centroid 266 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "jz-avenida-das-forcas-armadas",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (4 exits) centroid 22 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "jz-estacao-ferroviaria-de-sete-rios",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (3 exits) centroid 266 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "jz-praca-marechal-humberto-delgado-stairs",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (4 exits) centroid 22 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "jz-praca-marechal-humberto-delgado-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (4 exits) centroid 22 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "jz-praca-marechal-humberto-delgado-stairs-3",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (4 exits) centroid 22 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "jz-rua-professor-lima-basto",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (3 exits) centroid 266 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        }
      ]
    },
    {
      "name": "Laranjeiras",
      "exits": [
        {
          "id": "la-rua-xavier-de-araujo-stairs",
          "lobby": null,
          "streets": [
            "Rua Xavier de Araújo"
          ],
          "type": "STAIRS",
          "lat": 38.748203,
          "lon": -9.17284,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "la-rua-xavier-de-araujo-stairs-2",
          "lobby": null,
          "streets": [
            "Rua Xavier de Araújo"
          ],
          "type": "STAIRS",
          "lat": 38.7484,
          "lon": -9.173016,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "la-rua-xavier-de-araujo-stairs-3",
          "lobby": null,
          "streets": [
            "Rua Xavier de Araújo",
            "Estrada da Luz"
          ],
          "type": "STAIRS",
          "lat": 38.748487,
          "lon": -9.172329,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "la-rua-xavier-de-araujo-stairs",
          "position": "MIDDLE",
          "confidence": "SEED_LOBBY",
          "basis": "exit 16 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "la-rua-xavier-de-araujo-stairs-3",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 30 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "la-rua-xavier-de-araujo-stairs",
          "position": "MIDDLE",
          "confidence": "SEED_LOBBY",
          "basis": "exit 16 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "la-rua-xavier-de-araujo-stairs-3",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 30 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        }
      ]
    },
    {
      "name": "Lumiar",
      "exits": [
        {
          "id": "lu-estrada-da-torre-stairs",
          "lobby": "Norte",
          "streets": [
            "Estrada da Torre"
          ],
          "type": "STAIRS",
          "lat": 38.774139,
          "lon": -9.159875,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "lu-estrada-da-torre-stairs-2",
          "lobby": "Norte",
          "streets": [
            "Estrada da Torre"
          ],
          "type": "STAIRS",
          "lat": 38.774304,
          "lon": -9.159618,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "lu-largo-republica-da-turquia",
          "lobby": "Norte",
          "streets": [
            "Largo República da Turquia"
          ],
          "type": "LIFT",
          "lat": 38.773792,
          "lon": -9.159646,
          "accessTitle": "Elevador",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "lu-rua-cordeiro-ferreira-stairs",
          "lobby": "Sul",
          "streets": [
            "Rua Cordeiro Ferreira",
            "Rua República do Paraguai"
          ],
          "type": "STAIRS",
          "lat": 38.772628,
          "lon": -9.160113,
          "accessTitle": "Acesso 5",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "lu-rua-cordeiro-ferreira-stairs-2",
          "lobby": "Sul",
          "streets": [
            "Rua Cordeiro Ferreira",
            "Largo República da Turquia"
          ],
          "type": "STAIRS",
          "lat": 38.772807,
          "lon": -9.159554,
          "accessTitle": "Acesso 4",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "lu-rua-cordeiro-ferreira-stairs-3",
          "lobby": "Sul",
          "streets": [
            "Rua Cordeiro Ferreira",
            "Rua República do Paraguai"
          ],
          "type": "STAIRS",
          "lat": 38.772867,
          "lon": -9.159957,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "lu-estrada-da-torre-stairs",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (3 exits) centroid 82 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "lu-estrada-da-torre-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (3 exits) centroid 82 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "lu-largo-republica-da-turquia",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (3 exits) centroid 82 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "lu-rua-cordeiro-ferreira-stairs",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (3 exits) centroid 55 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "lu-rua-cordeiro-ferreira-stairs-2",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (3 exits) centroid 55 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "lu-rua-cordeiro-ferreira-stairs-3",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (3 exits) centroid 55 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "lu-estrada-da-torre-stairs",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (3 exits) centroid 81 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "lu-estrada-da-torre-stairs-2",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (3 exits) centroid 81 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "lu-largo-republica-da-turquia",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (3 exits) centroid 81 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "lu-rua-cordeiro-ferreira-stairs",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (3 exits) centroid 55 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "lu-rua-cordeiro-ferreira-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (3 exits) centroid 55 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "lu-rua-cordeiro-ferreira-stairs-3",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (3 exits) centroid 55 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        }
      ]
    },
    {
      "name": "Marquês de Pombal",
      "exits": [
        {
          "id": "mp-praca-marques-de-pombal-lift",
          "lobby": "Norte",
          "streets": [
            "Praça Marquês de Pombal",
            "Rua Braamcamp",
            "Avenida da Liberdade"
          ],
          "type": "LIFT",
          "lat": 38.72454,
          "lon": -9.149824,
          "accessTitle": "Elevador",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "mp-praca-marques-de-pombal-stairs",
          "lobby": "Norte",
          "streets": [
            "Praça Marquês de Pombal",
            "Rua Braamcamp",
            "Avenida da Liberdade"
          ],
          "type": "STAIRS",
          "lat": 38.724611,
          "lon": -9.149922,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "mp-praca-marques-de-pombal-stairs-2",
          "lobby": "Norte",
          "streets": [
            "Praça Marquês de Pombal",
            "Rua Joaquim António Augusto de Aguiar",
            "Rua Braamcamp"
          ],
          "type": "STAIRS",
          "lat": 38.724891,
          "lon": -9.150742,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "mp-praca-marques-de-pombal-stairs-3",
          "lobby": "Norte",
          "streets": [
            "Praça Marquês de Pombal",
            "Avenida Duque de Loulé",
            "Avenida da Liberdade"
          ],
          "type": "STAIRS",
          "lat": 38.725106,
          "lon": -9.149117,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "mp-avenida-da-liberdade-stairs",
          "lobby": "Sul",
          "streets": [
            "Avenida da Liberdade",
            "Rua Alexandre Herculano"
          ],
          "type": "STAIRS",
          "lat": 38.723519,
          "lon": -9.148837,
          "accessTitle": "Acesso 4",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "mp-avenida-da-liberdade-stairs-2",
          "lobby": "Sul",
          "streets": [
            "Avenida da Liberdade",
            "Rua Alexandre Herculano"
          ],
          "type": "STAIRS",
          "lat": 38.723776,
          "lon": -9.148302,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "mp-praca-marques-de-pombal-lift",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (2 exits) centroid 2 m ahead of the platform centre along travel direction (OSM platform 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "mp-praca-marques-de-pombal-stairs-2",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (2 exits) centroid 2 m ahead of the platform centre along travel direction (OSM platform 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "mp-praca-marques-de-pombal-lift",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (2 exits) centroid 3 m behind the platform centre along travel direction (OSM platform 107 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "mp-praca-marques-de-pombal-stairs-2",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (2 exits) centroid 3 m behind the platform centre along travel direction (OSM platform 107 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "mp-avenida-da-liberdade-stairs",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (2 exits) centroid 61 m behind the platform centre along travel direction (OSM platform 88 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "mp-avenida-da-liberdade-stairs-2",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (2 exits) centroid 61 m behind the platform centre along travel direction (OSM platform 88 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "mp-praca-marques-de-pombal-lift",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (3 exits) centroid 87 m ahead of the platform centre along travel direction (OSM platform 88 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "mp-praca-marques-de-pombal-stairs",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (3 exits) centroid 87 m ahead of the platform centre along travel direction (OSM platform 88 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "mp-praca-marques-de-pombal-stairs-3",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (3 exits) centroid 87 m ahead of the platform centre along travel direction (OSM platform 88 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "mp-avenida-da-liberdade-stairs",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (2 exits) centroid 62 m ahead of the platform centre along travel direction (OSM platform 86 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "mp-avenida-da-liberdade-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (2 exits) centroid 62 m ahead of the platform centre along travel direction (OSM platform 86 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "mp-praca-marques-de-pombal-lift",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (3 exits) centroid 87 m behind the platform centre along travel direction (OSM platform 86 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "mp-praca-marques-de-pombal-stairs",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (3 exits) centroid 87 m behind the platform centre along travel direction (OSM platform 86 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "mp-praca-marques-de-pombal-stairs-3",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (3 exits) centroid 87 m behind the platform centre along travel direction (OSM platform 86 m)"
        }
      ]
    },
    {
      "name": "Martim Moniz",
      "exits": [
        {
          "id": "mm-centro-comercial-da-mouraria",
          "lobby": null,
          "streets": [
            "Centro Comercial da Mouraria"
          ],
          "type": "STAIRS",
          "lat": 38.716915,
          "lon": -9.135549,
          "accessTitle": null,
          "sources": [
            "underlx",
            "osm"
          ]
        },
        {
          "id": "mm-praca-do-martim-moniz-stairs",
          "lobby": null,
          "streets": [
            "Praça do Martim Moniz"
          ],
          "type": "STAIRS",
          "lat": 38.716799,
          "lon": -9.135711,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "mm-praca-do-martim-moniz-stairs-2",
          "lobby": null,
          "streets": [
            "Praça do Martim Moniz",
            "Rua José António Serrano",
            "Rua de São Lázaro"
          ],
          "type": "STAIRS",
          "lat": 38.71689,
          "lon": -9.136393,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "mm-centro-comercial-da-mouraria",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 76 m ahead of the platform centre along travel direction (OSM platform 105 m)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "mm-praca-do-martim-moniz-stairs",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 90 m ahead of the platform centre along travel direction (OSM platform 105 m)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "mm-praca-do-martim-moniz-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 84 m ahead of the platform centre along travel direction (OSM platform 105 m)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "mm-centro-comercial-da-mouraria",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 76 m behind the platform centre along travel direction (OSM platform 105 m)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "mm-praca-do-martim-moniz-stairs",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 90 m behind the platform centre along travel direction (OSM platform 105 m)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "mm-praca-do-martim-moniz-stairs-2",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 84 m behind the platform centre along travel direction (OSM platform 105 m)"
        }
      ]
    },
    {
      "name": "Moscavide",
      "exits": [
        {
          "id": "mo-rua-1-de-maio-stairs",
          "lobby": null,
          "streets": [
            "Rua 1º de Maio",
            "Rua Almirante Gago Coutinho"
          ],
          "type": "STAIRS",
          "lat": 38.775071,
          "lon": -9.1031,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "mo-rua-1-de-maio-stairs-2",
          "lobby": null,
          "streets": [
            "Rua 1º de Maio"
          ],
          "type": "STAIRS",
          "lat": 38.775093,
          "lon": -9.102813,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "mo-rua-joao-pinto-ribeiro-lift",
          "lobby": null,
          "streets": [
            "Rua João Pinto Ribeiro"
          ],
          "type": "LIFT",
          "lat": 38.774682,
          "lon": -9.102958,
          "accessTitle": "Elevador",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "mo-rua-joao-pinto-ribeiro-stairs",
          "lobby": null,
          "streets": [
            "Rua João Pinto Ribeiro"
          ],
          "type": "STAIRS",
          "lat": 38.774642,
          "lon": -9.103068,
          "accessTitle": "Acesso 4",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "mo-rua-joao-pinto-ribeiro-stairs-2",
          "lobby": null,
          "streets": [
            "Rua João Pinto Ribeiro"
          ],
          "type": "STAIRS",
          "lat": 38.774659,
          "lon": -9.102779,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Vermelha",
          "towards": "Aeroporto",
          "exitId": "mo-rua-1-de-maio-stairs",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 18 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "Aeroporto",
          "exitId": "mo-rua-joao-pinto-ribeiro-lift",
          "position": "MIDDLE",
          "confidence": "SEED_LOBBY",
          "basis": "exit 15 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "Aeroporto",
          "exitId": "mo-rua-joao-pinto-ribeiro-stairs-2",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 30 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "São Sebastião",
          "exitId": "mo-rua-1-de-maio-stairs",
          "position": "MIDDLE",
          "confidence": "SEED_LOBBY",
          "basis": "exit 16 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "São Sebastião",
          "exitId": "mo-rua-joao-pinto-ribeiro-lift",
          "position": "MIDDLE",
          "confidence": "SEED_LOBBY",
          "basis": "exit 17 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "São Sebastião",
          "exitId": "mo-rua-joao-pinto-ribeiro-stairs",
          "position": "MIDDLE",
          "confidence": "SEED_LOBBY",
          "basis": "exit 11 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "São Sebastião",
          "exitId": "mo-rua-joao-pinto-ribeiro-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 32 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        }
      ]
    },
    {
      "name": "Odivelas",
      "exits": [
        {
          "id": "od-rua-camilo-castelo-branco",
          "lobby": "Inferior",
          "streets": [
            "Rua Camilo Castelo Branco",
            "Rua Almeida Garrett"
          ],
          "type": "RAMP",
          "lat": 38.793014,
          "lon": -9.172508,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "od-rua-doutor-egas-moniz-ramp",
          "lobby": "Superior",
          "streets": [
            "Rua Doutor Egas Moniz",
            "Rua José Monteiro"
          ],
          "type": "RAMP",
          "lat": 38.793266,
          "lon": -9.173144,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "od-rua-doutor-egas-moniz-ramp-2",
          "lobby": "Superior",
          "streets": [
            "Rua Doutor Egas Moniz"
          ],
          "type": "RAMP",
          "lat": 38.793534,
          "lon": -9.173021,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "od-rua-camilo-castelo-branco",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Inferior (1 exits) centroid 32 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "od-rua-doutor-egas-moniz-ramp",
          "position": "MIDDLE",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Superior (2 exits) centroid 16 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "od-rua-doutor-egas-moniz-ramp-2",
          "position": "MIDDLE",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Superior (2 exits) centroid 16 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        }
      ]
    },
    {
      "name": "Olaias",
      "exits": [
        {
          "id": "ol-avenida-engenheiro-arantes-e-oliveira-lift",
          "lobby": null,
          "streets": [
            "Avenida Engenheiro Arantes e Oliveira",
            "Rua de Olivença"
          ],
          "type": "LIFT",
          "lat": 38.739573,
          "lon": -9.123596,
          "accessTitle": "Elevador",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ol-avenida-engenheiro-arantes-e-oliveira-stairs",
          "lobby": null,
          "streets": [
            "Avenida Engenheiro Arantes e Oliveira",
            "Rua de Olivença",
            "Rua Aquiles Machado"
          ],
          "type": "STAIRS",
          "lat": 38.739156,
          "lon": -9.123613,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ol-avenida-engenheiro-arantes-e-oliveira-stairs-2",
          "lobby": null,
          "streets": [
            "Avenida Engenheiro Arantes e Oliveira",
            "Avenida Carlos Pinhão"
          ],
          "type": "STAIRS",
          "lat": 38.740087,
          "lon": -9.124077,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Vermelha",
          "towards": "Aeroporto",
          "exitId": "ol-avenida-engenheiro-arantes-e-oliveira-lift",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 30 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "Aeroporto",
          "exitId": "ol-avenida-engenheiro-arantes-e-oliveira-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 35 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "São Sebastião",
          "exitId": "ol-avenida-engenheiro-arantes-e-oliveira-lift",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 32 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "São Sebastião",
          "exitId": "ol-avenida-engenheiro-arantes-e-oliveira-stairs-2",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 38 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        }
      ]
    },
    {
      "name": "Olivais",
      "exits": [
        {
          "id": "os-avenida-cidade-de-luanda",
          "lobby": null,
          "streets": [
            "Avenida Cidade de Luanda"
          ],
          "type": "STAIRS",
          "lat": 38.761074,
          "lon": -9.11131,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "os-rua-cidade-de-bissau-lift",
          "lobby": null,
          "streets": [
            "Rua Cidade de Bissau",
            "Avenida Cidade de Luanda"
          ],
          "type": "LIFT",
          "lat": 38.760505,
          "lon": -9.112118,
          "accessTitle": "Elevador",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "os-rua-cidade-de-bissau-stairs",
          "lobby": null,
          "streets": [
            "Rua Cidade de Bissau"
          ],
          "type": "STAIRS",
          "lat": 38.760251,
          "lon": -9.111926,
          "accessTitle": "Acesso encerrado",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "os-rua-cidade-de-bissau-stairs-2",
          "lobby": null,
          "streets": [
            "Rua Cidade de Bissau",
            "Avenida Cidade de Luanda"
          ],
          "type": "STAIRS",
          "lat": 38.760771,
          "lon": -9.112204,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "os-rua-cidade-de-bissau-stairs-3",
          "lobby": null,
          "streets": [
            "Rua Cidade de Bissau",
            "Avenida Cidade de Luanda"
          ],
          "type": "STAIRS",
          "lat": 38.761323,
          "lon": -9.112035,
          "accessTitle": "Acesso encerrado",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Vermelha",
          "towards": "Aeroporto",
          "exitId": "os-avenida-cidade-de-luanda",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 80 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "Aeroporto",
          "exitId": "os-rua-cidade-de-bissau-lift",
          "position": "MIDDLE",
          "confidence": "SEED_LOBBY",
          "basis": "exit 14 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "Aeroporto",
          "exitId": "os-rua-cidade-de-bissau-stairs",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 23 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "Aeroporto",
          "exitId": "os-rua-cidade-de-bissau-stairs-3",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 55 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "São Sebastião",
          "exitId": "os-avenida-cidade-de-luanda",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 79 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "São Sebastião",
          "exitId": "os-rua-cidade-de-bissau-lift",
          "position": "MIDDLE",
          "confidence": "SEED_LOBBY",
          "basis": "exit 15 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "São Sebastião",
          "exitId": "os-rua-cidade-de-bissau-stairs",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 24 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "São Sebastião",
          "exitId": "os-rua-cidade-de-bissau-stairs-3",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 54 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        }
      ]
    },
    {
      "name": "Oriente",
      "exits": [
        {
          "id": "or-estacao-ferroviaria-do-oriente-escalator",
          "lobby": null,
          "streets": [
            "Estação Ferroviária do Oriente",
            "Centro Comercial Vasco da Gama",
            "Avenida Dom João II"
          ],
          "type": "ESCALATOR",
          "lat": 38.767851,
          "lon": -9.099255,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa"
          ]
        },
        {
          "id": "or-estacao-ferroviaria-do-oriente-lift",
          "lobby": null,
          "streets": [
            "Estação Ferroviária do Oriente",
            "Centro Comercial Vasco da Gama",
            "Avenida Dom João II"
          ],
          "type": "LIFT",
          "lat": 38.767867,
          "lon": -9.099446,
          "accessTitle": null,
          "sources": [
            "underlx",
            "osm"
          ]
        },
        {
          "id": "or-terminal-rodoviario-do-oriente-escalator",
          "lobby": null,
          "streets": [
            "Terminal Rodoviário do Oriente",
            "Avenida de Berlim",
            "Avenida Aquilino Ribeiro Machado"
          ],
          "type": "ESCALATOR",
          "lat": 38.767888,
          "lon": -9.099956,
          "accessTitle": null,
          "sources": [
            "underlx"
          ]
        },
        {
          "id": "or-terminal-rodoviario-do-oriente-lift",
          "lobby": null,
          "streets": [
            "Terminal Rodoviário do Oriente",
            "Avenida de Berlim",
            "Avenida Aquilino Ribeiro Machado"
          ],
          "type": "LIFT",
          "lat": 38.76788,
          "lon": -9.099781,
          "accessTitle": null,
          "sources": [
            "underlx"
          ]
        }
      ],
      "positions": []
    },
    {
      "name": "Parque",
      "exits": [
        {
          "id": "pa-avenida-antonio-augusto-de-aguiar",
          "lobby": null,
          "streets": [
            "Avenida António Augusto de Aguiar",
            "Rua Eugénio dos Santos",
            "Avenida Sidónio Pais"
          ],
          "type": "STAIRS",
          "lat": 38.729725,
          "lon": -9.150285,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "pa-avenida-antonio-augusto-de-aguiar",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 23 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "pa-avenida-antonio-augusto-de-aguiar",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 197 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        }
      ]
    },
    {
      "name": "Picoas",
      "exits": [
        {
          "id": "pi-avenida-fontes-pereira-de-melo-stairs-3",
          "lobby": "Norte",
          "streets": [
            "Avenida Fontes Pereira de Melo",
            "Rua Tomás Ribeiro"
          ],
          "type": "STAIRS",
          "lat": 38.730635,
          "lon": -9.146454,
          "accessTitle": "Acesso 5",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "pi-avenida-fontes-pereira-de-melo-stairs-4",
          "lobby": "Norte",
          "streets": [
            "Avenida Fontes Pereira de Melo",
            "Rua Tomás Ribeiro"
          ],
          "type": "STAIRS",
          "lat": 38.730843,
          "lon": -9.146976,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "pi-avenida-fontes-pereira-de-melo-stairs-5",
          "lobby": "Norte",
          "streets": [
            "Avenida Fontes Pereira de Melo"
          ],
          "type": "STAIRS",
          "lat": 38.73089,
          "lon": -9.146061,
          "accessTitle": "Acesso 4",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "pi-avenida-fontes-pereira-de-melo-stairs-6",
          "lobby": "Norte",
          "streets": [
            "Avenida Fontes Pereira de Melo"
          ],
          "type": "STAIRS",
          "lat": 38.730984,
          "lon": -9.146128,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "pi-avenida-fontes-pereira-de-melo-stairs-7",
          "lobby": "Norte",
          "streets": [
            "Avenida Fontes Pereira de Melo",
            "Rua Tomás Ribeiro"
          ],
          "type": "STAIRS",
          "lat": 38.731026,
          "lon": -9.147065,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "pi-avenida-fontes-pereira-de-melo-stairs",
          "lobby": "Sul",
          "streets": [
            "Avenida Fontes Pereira de Melo",
            "Rua Andrade Corvo"
          ],
          "type": "STAIRS",
          "lat": 38.729905,
          "lon": -9.146931,
          "accessTitle": "Acesso 6",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "pi-avenida-fontes-pereira-de-melo-stairs-2",
          "lobby": "Sul",
          "streets": [
            "Avenida Fontes Pereira de Melo",
            "Rua Andrade Corvo"
          ],
          "type": "STAIRS",
          "lat": 38.730084,
          "lon": -9.14741,
          "accessTitle": "Acesso 7",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "pi-avenida-fontes-pereira-de-melo-stairs",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (2 exits) centroid 44 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "pi-avenida-fontes-pereira-de-melo-stairs-2",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (2 exits) centroid 44 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "pi-avenida-fontes-pereira-de-melo-stairs-3",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (5 exits) centroid 67 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "pi-avenida-fontes-pereira-de-melo-stairs-4",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (5 exits) centroid 67 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "pi-avenida-fontes-pereira-de-melo-stairs-5",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (5 exits) centroid 67 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "pi-avenida-fontes-pereira-de-melo-stairs-6",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (5 exits) centroid 67 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "pi-avenida-fontes-pereira-de-melo-stairs-7",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (5 exits) centroid 67 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "pi-avenida-fontes-pereira-de-melo-stairs",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (2 exits) centroid 44 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "pi-avenida-fontes-pereira-de-melo-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (2 exits) centroid 44 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "pi-avenida-fontes-pereira-de-melo-stairs-3",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (5 exits) centroid 67 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "pi-avenida-fontes-pereira-de-melo-stairs-4",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (5 exits) centroid 67 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "pi-avenida-fontes-pereira-de-melo-stairs-5",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (5 exits) centroid 67 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "pi-avenida-fontes-pereira-de-melo-stairs-6",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (5 exits) centroid 67 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "pi-avenida-fontes-pereira-de-melo-stairs-7",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (5 exits) centroid 67 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        }
      ]
    },
    {
      "name": "Pontinha",
      "exits": [
        {
          "id": "po-estrada-militar-ramp",
          "lobby": null,
          "streets": [
            "Estrada Militar",
            "Terminal Rodoviário"
          ],
          "type": "RAMP",
          "lat": 38.762026,
          "lon": -9.196751,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "po-estrada-militar-ramp-2",
          "lobby": null,
          "streets": [
            "Estrada Militar",
            "Terminal Rodoviário"
          ],
          "type": "RAMP",
          "lat": 38.762361,
          "lon": -9.196915,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "po-estrada-militar-ramp",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 0 m ahead of the platform centre along travel direction (OSM platform 150 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "po-estrada-militar-ramp-2",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 1 m ahead of the platform centre along travel direction (OSM platform 150 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "po-estrada-militar-ramp",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 0 m ahead of the platform centre along travel direction (OSM platform 150 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "po-estrada-militar-ramp-2",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 1 m behind the platform centre along travel direction (OSM platform 150 m — longer than a 6-car train, check where it stops)"
        }
      ]
    },
    {
      "name": "Praça de Espanha",
      "exits": [
        {
          "id": "pe-avenida-columbano-bordalo-pinheiro-stairs",
          "lobby": "Norte",
          "streets": [
            "Avenida Columbano Bordalo Pinheiro"
          ],
          "type": "STAIRS",
          "lat": 38.737781,
          "lon": -9.159997,
          "accessTitle": "Acesso 4",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "pe-avenida-columbano-bordalo-pinheiro-stairs-2",
          "lobby": "Norte",
          "streets": [
            "Avenida Columbano Bordalo Pinheiro",
            "Rua Professor Lima Basto"
          ],
          "type": "STAIRS",
          "lat": 38.73802,
          "lon": -9.160218,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "pe-parque-goncalo-ribeiro-telles-stairs",
          "lobby": "Sul",
          "streets": [
            "Parque Gonçalo Ribeiro Telles",
            "Avenida Calouste Gulbenkian"
          ],
          "type": "STAIRS",
          "lat": 38.737461,
          "lon": -9.158485,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "pe-parque-goncalo-ribeiro-telles-stairs-2",
          "lobby": "Sul",
          "streets": [
            "Parque Gonçalo Ribeiro Telles",
            "Avenida Columbano Bordalo Pinheiro"
          ],
          "type": "STAIRS",
          "lat": 38.737987,
          "lon": -9.158828,
          "accessTitle": null,
          "sources": [
            "underlx",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "pe-avenida-columbano-bordalo-pinheiro-stairs",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (2 exits) centroid 76 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "pe-avenida-columbano-bordalo-pinheiro-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (2 exits) centroid 76 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "pe-parque-goncalo-ribeiro-telles-stairs",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (2 exits) centroid 41 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "pe-parque-goncalo-ribeiro-telles-stairs-2",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (2 exits) centroid 41 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "pe-avenida-columbano-bordalo-pinheiro-stairs",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (2 exits) centroid 76 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "pe-avenida-columbano-bordalo-pinheiro-stairs-2",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (2 exits) centroid 76 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "pe-parque-goncalo-ribeiro-telles-stairs",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (2 exits) centroid 41 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "pe-parque-goncalo-ribeiro-telles-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (2 exits) centroid 41 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        }
      ]
    },
    {
      "name": "Quinta das Conchas",
      "exits": [
        {
          "id": "qc-rua-luis-pastor-de-macedo-lift",
          "lobby": "Norte",
          "streets": [
            "Rua Luís Pastor de Macedo"
          ],
          "type": "LIFT",
          "lat": 38.767294,
          "lon": -9.155632,
          "accessTitle": "Elevador",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "qc-rua-luis-pastor-de-macedo-stairs",
          "lobby": "Norte",
          "streets": [
            "Rua Luís Pastor de Macedo"
          ],
          "type": "STAIRS",
          "lat": 38.767241,
          "lon": -9.155828,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "qc-rua-tobis-portuguesa-stairs-2",
          "lobby": "Norte",
          "streets": [
            "Rua Tobis Portuguesa",
            "Rua Luís Pastor de Macedo"
          ],
          "type": "STAIRS",
          "lat": 38.767979,
          "lon": -9.155602,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "qc-rua-tobis-portuguesa-stairs",
          "lobby": "Sul",
          "streets": [
            "Rua Tobis Portuguesa",
            "Rua Luís Pastor de Macedo",
            "Avenida Maria Helena Vieira da Silva"
          ],
          "type": "STAIRS",
          "lat": 38.767088,
          "lon": -9.15533,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "qc-rua-luis-pastor-de-macedo-lift",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (3 exits) centroid 22 m ahead of the platform centre along travel direction (OSM platform 106 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "qc-rua-luis-pastor-de-macedo-stairs",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (3 exits) centroid 22 m ahead of the platform centre along travel direction (OSM platform 106 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "qc-rua-tobis-portuguesa-stairs",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (1 exits) centroid 27 m behind the platform centre along travel direction (OSM platform 106 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "qc-rua-tobis-portuguesa-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (3 exits) centroid 22 m ahead of the platform centre along travel direction (OSM platform 106 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "qc-rua-luis-pastor-de-macedo-lift",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (3 exits) centroid 23 m behind the platform centre along travel direction (OSM platform 106 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "qc-rua-luis-pastor-de-macedo-stairs",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (3 exits) centroid 23 m behind the platform centre along travel direction (OSM platform 106 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "qc-rua-tobis-portuguesa-stairs",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (1 exits) centroid 28 m ahead of the platform centre along travel direction (OSM platform 106 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "qc-rua-tobis-portuguesa-stairs-2",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (3 exits) centroid 23 m behind the platform centre along travel direction (OSM platform 106 m)"
        }
      ]
    },
    {
      "name": "Rato",
      "exits": [
        {
          "id": "ra-largo-do-rato-lift",
          "lobby": null,
          "streets": [
            "Largo do Rato"
          ],
          "type": "LIFT",
          "lat": 38.720334,
          "lon": -9.154681,
          "accessTitle": "Elevador",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ra-largo-do-rato-stairs",
          "lobby": null,
          "streets": [
            "Largo do Rato",
            "Rua do Salitre",
            "Rua Alexandre Herculano",
            "Rua da Escola Politécnica"
          ],
          "type": "STAIRS",
          "lat": 38.720097,
          "lon": -9.15403,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ra-largo-do-rato-stairs-2",
          "lobby": null,
          "streets": [
            "Largo do Rato",
            "Rua das Amoreiras",
            "Avenida Álvares Cabral",
            "Rua de São Bento"
          ],
          "type": "STAIRS",
          "lat": 38.72015,
          "lon": -9.155698,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "ra-largo-do-rato-lift",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 31 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "ra-largo-do-rato-stairs",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "exit 34 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "ra-largo-do-rato-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 29 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m; 70 m off to the side — weak)"
        }
      ]
    },
    {
      "name": "Reboleira",
      "exits": [
        {
          "id": "rb-estacao-ferroviaria-da-reboleira",
          "lobby": null,
          "streets": [
            "Estação Ferroviária da Reboleira",
            "Rua das Indústrias"
          ],
          "type": "ESCALATOR",
          "lat": 38.751322,
          "lon": -9.223614,
          "accessTitle": "Acesso 4",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "rb-rua-das-industrias-lift",
          "lobby": null,
          "streets": [
            "Rua das Indústrias"
          ],
          "type": "LIFT",
          "lat": 38.751882,
          "lon": -9.224068,
          "accessTitle": "Elevador",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "rb-rua-das-industrias-stairs",
          "lobby": null,
          "streets": [
            "Rua das Indústrias"
          ],
          "type": "STAIRS",
          "lat": 38.751639,
          "lon": -9.223722,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "rb-rua-das-industrias-stairs-2",
          "lobby": null,
          "streets": [
            "Rua das Indústrias",
            "Rua Vítor Alves"
          ],
          "type": "STAIRS",
          "lat": 38.752273,
          "lon": -9.224763,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "rb-rua-das-industrias-stairs-3",
          "lobby": null,
          "streets": [
            "Rua das Indústrias",
            "Rua Vítor Alves"
          ],
          "type": "STAIRS",
          "lat": 38.752423,
          "lon": -9.224662,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "rb-estacao-ferroviaria-da-reboleira",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 60 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "rb-rua-das-industrias-lift",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 28 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "rb-rua-das-industrias-stairs",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 35 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "rb-rua-das-industrias-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 23 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        }
      ]
    },
    {
      "name": "Restauradores",
      "exits": [
        {
          "id": "re-avenida-da-liberdade-lift",
          "lobby": "Norte",
          "streets": [
            "Avenida da Liberdade",
            "Praça dos Restauradores",
            "Calçada da Glória",
            "Bairro Alto"
          ],
          "type": "LIFT",
          "lat": 38.716482,
          "lon": -9.142541,
          "accessTitle": "Elevador",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "re-avenida-da-liberdade-stairs",
          "lobby": "Norte",
          "streets": [
            "Avenida da Liberdade",
            "Praça dos Restauradores",
            "Calçada da Glória",
            "Bairro Alto"
          ],
          "type": "STAIRS",
          "lat": 38.716499,
          "lon": -9.142718,
          "accessTitle": "Acesso 5",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "re-avenida-da-liberdade-stairs-2",
          "lobby": "Norte",
          "streets": [
            "Avenida da Liberdade",
            "Praça dos Restauradores"
          ],
          "type": "STAIRS",
          "lat": 38.716549,
          "lon": -9.142559,
          "accessTitle": "Acesso 6",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "re-estacao-ferroviaria-do-rossio",
          "lobby": "Sul",
          "streets": [
            "Estação Ferroviária do Rossio"
          ],
          "type": "ESCALATOR",
          "lat": 38.715282,
          "lon": -9.142515,
          "accessTitle": null,
          "sources": [
            "underlx"
          ]
        },
        {
          "id": "re-praca-dos-restauradores-stairs",
          "lobby": "Sul",
          "streets": [
            "Praça dos Restauradores",
            "Rua 1º de Dezembro"
          ],
          "type": "STAIRS",
          "lat": 38.715095,
          "lon": -9.141348,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "re-praca-dos-restauradores-stairs-2",
          "lobby": "Sul",
          "streets": [
            "Praça dos Restauradores"
          ],
          "type": "STAIRS",
          "lat": 38.715131,
          "lon": -9.141589,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "re-praca-dos-restauradores-stairs-3",
          "lobby": "Sul",
          "streets": [
            "Praça dos Restauradores",
            "Rua 1º de Dezembro"
          ],
          "type": "STAIRS",
          "lat": 38.715285,
          "lon": -9.141018,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "re-praca-dos-restauradores-stairs-4",
          "lobby": "Sul",
          "streets": [
            "Praça dos Restauradores"
          ],
          "type": "STAIRS",
          "lat": 38.71534,
          "lon": -9.141864,
          "accessTitle": null,
          "sources": [
            "underlx",
            "osm"
          ]
        },
        {
          "id": "re-praca-dos-restauradores-stairs-5",
          "lobby": "Sul",
          "streets": [
            "Praça dos Restauradores"
          ],
          "type": "STAIRS",
          "lat": 38.715432,
          "lon": -9.140985,
          "accessTitle": "Acesso 4",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "re-avenida-da-liberdade-lift",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (3 exits) centroid 62 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "re-avenida-da-liberdade-stairs",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (3 exits) centroid 62 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "re-avenida-da-liberdade-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (3 exits) centroid 62 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "re-estacao-ferroviaria-do-rossio",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (6 exits) centroid 103 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "re-praca-dos-restauradores-stairs",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (6 exits) centroid 103 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "re-praca-dos-restauradores-stairs-2",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (6 exits) centroid 103 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "re-praca-dos-restauradores-stairs-3",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (6 exits) centroid 103 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "re-praca-dos-restauradores-stairs-4",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (6 exits) centroid 103 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "re-praca-dos-restauradores-stairs-5",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (6 exits) centroid 103 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "re-avenida-da-liberdade-lift",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (3 exits) centroid 62 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "re-avenida-da-liberdade-stairs",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (3 exits) centroid 62 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "re-avenida-da-liberdade-stairs-2",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (3 exits) centroid 62 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "re-estacao-ferroviaria-do-rossio",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (6 exits) centroid 104 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "re-praca-dos-restauradores-stairs",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (6 exits) centroid 104 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "re-praca-dos-restauradores-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (6 exits) centroid 104 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "re-praca-dos-restauradores-stairs-3",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (6 exits) centroid 104 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "re-praca-dos-restauradores-stairs-4",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (6 exits) centroid 104 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "re-praca-dos-restauradores-stairs-5",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (6 exits) centroid 104 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        }
      ]
    },
    {
      "name": "Roma",
      "exits": [
        {
          "id": "rm-avenida-de-roma-stairs-3",
          "lobby": "Norte",
          "streets": [
            "Avenida de Roma"
          ],
          "type": "STAIRS",
          "lat": 38.748354,
          "lon": -9.141567,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "rm-avenida-de-roma-stairs-4",
          "lobby": "Norte",
          "streets": [
            "Avenida de Roma"
          ],
          "type": "STAIRS",
          "lat": 38.748425,
          "lon": -9.141298,
          "accessTitle": "Acesso 4",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "rm-avenida-de-roma-stairs-5",
          "lobby": "Norte",
          "streets": [
            "Avenida de Roma",
            "Avenida dos Estados Unidos da América"
          ],
          "type": "STAIRS",
          "lat": 38.748839,
          "lon": -9.141872,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "rm-avenida-de-roma-stairs-6",
          "lobby": "Norte",
          "streets": [
            "Avenida de Roma",
            "Avenida dos Estados Unidos da América"
          ],
          "type": "STAIRS",
          "lat": 38.748942,
          "lon": -9.141465,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "rm-avenida-de-roma-lift",
          "lobby": "Sul",
          "streets": [
            "Avenida de Roma"
          ],
          "type": "LIFT",
          "lat": 38.74728,
          "lon": -9.141007,
          "accessTitle": "Elevador",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "rm-avenida-de-roma-stairs",
          "lobby": "Sul",
          "streets": [
            "Avenida de Roma",
            "Rua Frei Amador Arrais",
            "Rua Conde Sabugosa"
          ],
          "type": "STAIRS",
          "lat": 38.747106,
          "lon": -9.140926,
          "accessTitle": "Acesso 5",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "rm-avenida-de-roma-stairs-2",
          "lobby": "Sul",
          "streets": [
            "Avenida de Roma",
            "Rua Frei Amador Arrais",
            "Rua Conde Sabugosa"
          ],
          "type": "STAIRS",
          "lat": 38.747198,
          "lon": -9.140628,
          "accessTitle": "Acesso 6",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "rm-avenida-de-roma-lift",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (3 exits) centroid 94 m ahead of the platform centre along travel direction (OSM platform 156 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "rm-avenida-de-roma-stairs",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (3 exits) centroid 94 m ahead of the platform centre along travel direction (OSM platform 156 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "rm-avenida-de-roma-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (3 exits) centroid 94 m ahead of the platform centre along travel direction (OSM platform 156 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "rm-avenida-de-roma-stairs-3",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (4 exits) centroid 78 m behind the platform centre along travel direction (OSM platform 156 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "rm-avenida-de-roma-stairs-4",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (4 exits) centroid 78 m behind the platform centre along travel direction (OSM platform 156 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "rm-avenida-de-roma-stairs-5",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (4 exits) centroid 78 m behind the platform centre along travel direction (OSM platform 156 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "rm-avenida-de-roma-stairs-6",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (4 exits) centroid 78 m behind the platform centre along travel direction (OSM platform 156 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "rm-avenida-de-roma-lift",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (3 exits) centroid 94 m behind the platform centre along travel direction (OSM platform 155 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "rm-avenida-de-roma-stairs",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (3 exits) centroid 94 m behind the platform centre along travel direction (OSM platform 155 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "rm-avenida-de-roma-stairs-2",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (3 exits) centroid 94 m behind the platform centre along travel direction (OSM platform 155 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "rm-avenida-de-roma-stairs-3",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (4 exits) centroid 77 m ahead of the platform centre along travel direction (OSM platform 155 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "rm-avenida-de-roma-stairs-4",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (4 exits) centroid 77 m ahead of the platform centre along travel direction (OSM platform 155 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "rm-avenida-de-roma-stairs-5",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (4 exits) centroid 77 m ahead of the platform centre along travel direction (OSM platform 155 m — longer than a 6-car train, check where it stops)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "rm-avenida-de-roma-stairs-6",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (4 exits) centroid 77 m ahead of the platform centre along travel direction (OSM platform 155 m — longer than a 6-car train, check where it stops)"
        }
      ]
    },
    {
      "name": "Rossio",
      "exits": [
        {
          "id": "ro-praca-da-figueira-stairs-2",
          "lobby": "Nascente",
          "streets": [
            "Praça da Figueira"
          ],
          "type": "STAIRS",
          "lat": 38.714185,
          "lon": -9.137568,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ro-praca-da-figueira-lift",
          "lobby": "Poente",
          "streets": [
            "Praça da Figueira"
          ],
          "type": "LIFT",
          "lat": 38.713841,
          "lon": -9.13841,
          "accessTitle": "Elevador",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ro-praca-da-figueira-stairs",
          "lobby": "Poente",
          "streets": [
            "Praça da Figueira"
          ],
          "type": "STAIRS",
          "lat": 38.714022,
          "lon": -9.138402,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ro-praca-dom-pedro-iv-rossio-stairs",
          "lobby": "Poente",
          "streets": [
            "Praça Dom Pedro IV (Rossio)"
          ],
          "type": "STAIRS",
          "lat": 38.713802,
          "lon": -9.138895,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ro-praca-dom-pedro-iv-rossio-stairs-2",
          "lobby": "Poente",
          "streets": [
            "Praça Dom Pedro IV (Rossio)"
          ],
          "type": "STAIRS",
          "lat": 38.714011,
          "lon": -9.138971,
          "accessTitle": "Acesso 4",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "ro-praca-da-figueira-lift",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Poente (4 exits) centroid 66 m ahead of the platform centre along travel direction (OSM platform 110 m)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "ro-praca-da-figueira-stairs",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Poente (4 exits) centroid 66 m ahead of the platform centre along travel direction (OSM platform 110 m)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "ro-praca-da-figueira-stairs-2",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Nascente (1 exits) centroid 34 m behind the platform centre along travel direction (OSM platform 110 m)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "ro-praca-dom-pedro-iv-rossio-stairs",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Poente (4 exits) centroid 66 m ahead of the platform centre along travel direction (OSM platform 110 m)"
        },
        {
          "line": "Verde",
          "towards": "Cais do Sodré",
          "exitId": "ro-praca-dom-pedro-iv-rossio-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Poente (4 exits) centroid 66 m ahead of the platform centre along travel direction (OSM platform 110 m)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "ro-praca-da-figueira-lift",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Poente (4 exits) centroid 67 m behind the platform centre along travel direction (OSM platform 110 m)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "ro-praca-da-figueira-stairs",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Poente (4 exits) centroid 67 m behind the platform centre along travel direction (OSM platform 110 m)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "ro-praca-da-figueira-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Nascente (1 exits) centroid 33 m ahead of the platform centre along travel direction (OSM platform 110 m)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "ro-praca-dom-pedro-iv-rossio-stairs",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Poente (4 exits) centroid 67 m behind the platform centre along travel direction (OSM platform 110 m)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "ro-praca-dom-pedro-iv-rossio-stairs-2",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Poente (4 exits) centroid 67 m behind the platform centre along travel direction (OSM platform 110 m)"
        }
      ]
    },
    {
      "name": "Saldanha",
      "exits": [
        {
          "id": "sa-avenida-duque-de-avila-stairs",
          "lobby": "Este",
          "streets": [
            "Avenida Duque de Ávila"
          ],
          "type": "STAIRS",
          "lat": 38.735344,
          "lon": -9.142896,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "sa-avenida-duque-de-avila-stairs-2",
          "lobby": "Este",
          "streets": [
            "Avenida Duque de Ávila"
          ],
          "type": "STAIRS",
          "lat": 38.735356,
          "lon": -9.142441,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "sa-avenida-da-republica-lift",
          "lobby": "Norte",
          "streets": [
            "Avenida da República",
            "Avenida Duque de Ávila"
          ],
          "type": "LIFT",
          "lat": 38.734974,
          "lon": -9.144827,
          "accessTitle": "Elevador",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "sa-avenida-da-republica-stairs",
          "lobby": "Norte",
          "streets": [
            "Avenida da República"
          ],
          "type": "STAIRS",
          "lat": 38.73473,
          "lon": -9.145388,
          "accessTitle": "Acesso 5",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "sa-avenida-da-republica-stairs-2",
          "lobby": "Norte",
          "streets": [
            "Avenida da República",
            "Avenida Duque de Ávila"
          ],
          "type": "STAIRS",
          "lat": 38.734844,
          "lon": -9.144796,
          "accessTitle": null,
          "sources": [
            "underlx",
            "osm"
          ]
        },
        {
          "id": "sa-avenida-da-republica-stairs-3",
          "lobby": "Norte",
          "streets": [
            "Avenida da República"
          ],
          "type": "STAIRS",
          "lat": 38.734845,
          "lon": -9.145414,
          "accessTitle": "Acesso 4",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "sa-avenida-da-republica-stairs-4",
          "lobby": "Norte",
          "streets": [
            "Avenida da República",
            "Avenida João Crisóstomo",
            "Avenida Duque de Ávila"
          ],
          "type": "STAIRS",
          "lat": 38.735364,
          "lon": -9.145528,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "sa-avenida-da-republica-stairs-5",
          "lobby": "Norte",
          "streets": [
            "Avenida da República",
            "Avenida Duque de Ávila"
          ],
          "type": "STAIRS",
          "lat": 38.735413,
          "lon": -9.144934,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "sa-avenida-da-republica-stairs-6",
          "lobby": "Norte",
          "streets": [
            "Avenida da República",
            "Avenida João Crisóstomo"
          ],
          "type": "STAIRS",
          "lat": 38.73559,
          "lon": -9.144974,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "sa-praca-duque-de-saldanha-stairs",
          "lobby": "Sul",
          "streets": [
            "Praça Duque de Saldanha",
            "Avenida Praia da Vitória",
            "Avenida Fontes Pereira de Melo",
            "Rua das Picoas"
          ],
          "type": "STAIRS",
          "lat": 38.733826,
          "lon": -9.145574,
          "accessTitle": "Acesso 6",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "sa-praca-duque-de-saldanha-stairs-2",
          "lobby": "Sul",
          "streets": [
            "Praça Duque de Saldanha",
            "Avenida Praia da Vitória",
            "Avenida Defensores de Chaves",
            "Avenida Casal Ribeiro"
          ],
          "type": "STAIRS",
          "lat": 38.734031,
          "lon": -9.144167,
          "accessTitle": "Acesso 7",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "sa-avenida-da-republica-lift",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (7 exits) centroid 30 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "sa-avenida-da-republica-stairs",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (7 exits) centroid 30 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "sa-avenida-da-republica-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (7 exits) centroid 30 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "sa-avenida-da-republica-stairs-3",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (7 exits) centroid 30 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "sa-avenida-da-republica-stairs-4",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (7 exits) centroid 30 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "sa-avenida-da-republica-stairs-5",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (7 exits) centroid 30 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "sa-avenida-da-republica-stairs-6",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (7 exits) centroid 30 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "sa-praca-duque-de-saldanha-stairs",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (2 exits) centroid 102 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "sa-praca-duque-de-saldanha-stairs-2",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (2 exits) centroid 102 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "sa-avenida-da-republica-lift",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (7 exits) centroid 30 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "sa-avenida-da-republica-stairs",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (7 exits) centroid 30 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "sa-avenida-da-republica-stairs-2",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (7 exits) centroid 30 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "sa-avenida-da-republica-stairs-3",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (7 exits) centroid 30 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "sa-avenida-da-republica-stairs-4",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (7 exits) centroid 30 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "sa-avenida-da-republica-stairs-5",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (7 exits) centroid 30 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "sa-avenida-da-republica-stairs-6",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (7 exits) centroid 30 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "sa-praca-duque-de-saldanha-stairs",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (2 exits) centroid 102 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "sa-praca-duque-de-saldanha-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (2 exits) centroid 102 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "Aeroporto",
          "exitId": "sa-avenida-duque-de-avila-stairs",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Este (2 exits) centroid 146 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "Aeroporto",
          "exitId": "sa-avenida-duque-de-avila-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Este (2 exits) centroid 146 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "São Sebastião",
          "exitId": "sa-avenida-duque-de-avila-stairs",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Este (2 exits) centroid 146 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "São Sebastião",
          "exitId": "sa-avenida-duque-de-avila-stairs-2",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Este (2 exits) centroid 146 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        }
      ]
    },
    {
      "name": "Santa Apolónia",
      "exits": [
        {
          "id": "sp-avenida-infante-dom-henrique-lift",
          "lobby": null,
          "streets": [
            "Avenida Infante Dom Henrique",
            "Estação Ferroviária de Santa Apolónia"
          ],
          "type": "LIFT",
          "lat": 38.713905,
          "lon": -9.122531,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "sp-avenida-infante-dom-henrique-stairs",
          "lobby": null,
          "streets": [
            "Avenida Infante Dom Henrique"
          ],
          "type": "STAIRS",
          "lat": 38.713466,
          "lon": -9.12241,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "sp-avenida-infante-dom-henrique-stairs-2",
          "lobby": null,
          "streets": [
            "Avenida Infante Dom Henrique"
          ],
          "type": "STAIRS",
          "lat": 38.713706,
          "lon": -9.122149,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "sp-avenida-infante-dom-henrique-lift",
          "position": "MIDDLE",
          "confidence": "SEED_LOBBY",
          "basis": "exit 10 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "sp-avenida-infante-dom-henrique-stairs",
          "position": "MIDDLE",
          "confidence": "SEED_LOBBY",
          "basis": "exit 11 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "sp-avenida-infante-dom-henrique-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "exit 23 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        }
      ]
    },
    {
      "name": "São Sebastião",
      "exits": [
        {
          "id": "ss-avenida-duque-de-avila-stairs",
          "lobby": "Este",
          "streets": [
            "Avenida Duque de Ávila",
            "Rua Marquês Sá da Bandeira",
            "Rua Marquês da Fronteira",
            "Rua Pinheiro Chagas"
          ],
          "type": "STAIRS",
          "lat": 38.735062,
          "lon": -9.151854,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ss-avenida-duque-de-avila-stairs-2",
          "lobby": "Este",
          "streets": [
            "Avenida Duque de Ávila"
          ],
          "type": "STAIRS",
          "lat": 38.735094,
          "lon": -9.150894,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ss-avenida-antonio-augusto-de-aguiar-lift",
          "lobby": "Norte",
          "streets": [
            "Avenida António Augusto de Aguiar",
            "Avenida Ressano Garcia"
          ],
          "type": "LIFT",
          "lat": 38.734566,
          "lon": -9.15435,
          "accessTitle": "Elevador",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ss-avenida-antonio-augusto-de-aguiar-stairs-2",
          "lobby": "Norte",
          "streets": [
            "Avenida António Augusto de Aguiar"
          ],
          "type": "STAIRS",
          "lat": 38.7348,
          "lon": -9.15418,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ss-avenida-ressano-garcia",
          "lobby": "Norte",
          "streets": [
            "Avenida Ressano Garcia",
            "Bairro Azul"
          ],
          "type": "STAIRS",
          "lat": 38.734562,
          "lon": -9.154518,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ss-el-corte-ingles-escalator-2",
          "lobby": "Norte",
          "streets": [
            "El Corte Inglés"
          ],
          "type": "ESCALATOR",
          "lat": 38.733851,
          "lon": -9.15393,
          "accessTitle": null,
          "sources": [
            "underlx",
            "osm"
          ]
        },
        {
          "id": "ss-rua-marques-da-fronteira",
          "lobby": "Norte",
          "streets": [
            "Rua Marquês da Fronteira",
            "Rua Fialho de Almeida"
          ],
          "type": "STAIRS",
          "lat": 38.734242,
          "lon": -9.15452,
          "accessTitle": "Acesso 4",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ss-avenida-antonio-augusto-de-aguiar-stairs",
          "lobby": "Sul",
          "streets": [
            "Avenida António Augusto de Aguiar",
            "Rua Carlos Testa"
          ],
          "type": "STAIRS",
          "lat": 38.733419,
          "lon": -9.152612,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "ss-el-corte-ingles-escalator",
          "lobby": "Sul",
          "streets": [
            "El Corte Inglés"
          ],
          "type": "ESCALATOR",
          "lat": 38.733145,
          "lon": -9.153232,
          "accessTitle": null,
          "sources": [
            "underlx",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "ss-avenida-antonio-augusto-de-aguiar-lift",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (5 exits) centroid 78 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "ss-avenida-antonio-augusto-de-aguiar-stairs",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (2 exits) centroid 94 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "ss-avenida-antonio-augusto-de-aguiar-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (5 exits) centroid 78 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "ss-avenida-ressano-garcia",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (5 exits) centroid 78 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "ss-el-corte-ingles-escalator",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (2 exits) centroid 94 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "ss-el-corte-ingles-escalator-2",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (5 exits) centroid 78 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "ss-rua-marques-da-fronteira",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (5 exits) centroid 78 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "ss-avenida-antonio-augusto-de-aguiar-lift",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (5 exits) centroid 78 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "ss-avenida-antonio-augusto-de-aguiar-stairs",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (2 exits) centroid 94 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "ss-avenida-antonio-augusto-de-aguiar-stairs-2",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (5 exits) centroid 78 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "ss-avenida-ressano-garcia",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (5 exits) centroid 78 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "ss-el-corte-ingles-escalator",
          "position": "FRONT",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Sul (2 exits) centroid 94 m ahead of the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "ss-el-corte-ingles-escalator-2",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (5 exits) centroid 78 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "ss-rua-marques-da-fronteira",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Norte (5 exits) centroid 78 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "São Sebastião",
          "exitId": "ss-avenida-duque-de-avila-stairs",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Este (2 exits) centroid 147 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        },
        {
          "line": "Vermelha",
          "towards": "São Sebastião",
          "exitId": "ss-avenida-duque-de-avila-stairs-2",
          "position": "BACK",
          "confidence": "SEED_LOBBY",
          "basis": "lobby Este (2 exits) centroid 147 m behind the OSM stop position along travel direction (no OSM platform; assumed 105 m)"
        }
      ]
    },
    {
      "name": "Senhor Roubado",
      "exits": [
        {
          "id": "sr-rua-do-senhor-roubado",
          "lobby": "Norte",
          "streets": [
            "Rua do Senhor Roubado",
            "Terminal Rodoviário"
          ],
          "type": "ESCALATOR",
          "lat": 38.785807,
          "lon": -9.171886,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "sr-terminal-rodoviario",
          "lobby": "Sul",
          "streets": [
            "Terminal Rodoviário"
          ],
          "type": "ESCALATOR",
          "lat": 38.785456,
          "lon": -9.17174,
          "accessTitle": "Acesso 4",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "sr-rua-do-senhor-roubado",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (1 exits) centroid 19 m ahead of the platform centre along travel direction (OSM platform 109 m)"
        },
        {
          "line": "Amarela",
          "towards": "Odivelas",
          "exitId": "sr-terminal-rodoviario",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (1 exits) centroid 22 m behind the platform centre along travel direction (OSM platform 109 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "sr-rua-do-senhor-roubado",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Norte (1 exits) centroid 19 m behind the platform centre along travel direction (OSM platform 109 m)"
        },
        {
          "line": "Amarela",
          "towards": "Rato",
          "exitId": "sr-terminal-rodoviario",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "lobby Sul (1 exits) centroid 22 m ahead of the platform centre along travel direction (OSM platform 109 m)"
        }
      ]
    },
    {
      "name": "Telheiras",
      "exits": [
        {
          "id": "te-estrada-de-telheiras",
          "lobby": null,
          "streets": [
            "Estrada de Telheiras"
          ],
          "type": "ESCALATOR",
          "lat": 38.759856,
          "lon": -9.166896,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "te-jardim-professor-francisco-caldeira-cabral-escalator",
          "lobby": null,
          "streets": [
            "Jardim Professor Francisco Caldeira Cabral",
            "Rua Professor Francisco Gentil",
            "Praça Professor Rodrigues Lapa"
          ],
          "type": "ESCALATOR",
          "lat": 38.760304,
          "lon": -9.166037,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "te-jardim-professor-francisco-caldeira-cabral-lift",
          "lobby": null,
          "streets": [
            "Jardim Professor Francisco Caldeira Cabral"
          ],
          "type": "LIFT",
          "lat": 38.760177,
          "lon": -9.16635,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "te-estrada-de-telheiras",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 39 m ahead of the platform centre along travel direction (OSM platform 107 m)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "te-jardim-professor-francisco-caldeira-cabral-escalator",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 27 m behind the platform centre along travel direction (OSM platform 107 m)"
        },
        {
          "line": "Verde",
          "towards": "Telheiras",
          "exitId": "te-jardim-professor-francisco-caldeira-cabral-lift",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 2 m behind the platform centre along travel direction (OSM platform 107 m)"
        }
      ]
    },
    {
      "name": "Terreiro do Paço",
      "exits": [
        {
          "id": "tp-avenida-infante-dom-henrique-lift",
          "lobby": null,
          "streets": [
            "Avenida Infante Dom Henrique"
          ],
          "type": "LIFT",
          "lat": 38.707119,
          "lon": -9.134189,
          "accessTitle": "Elevador",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "tp-avenida-infante-dom-henrique-stairs",
          "lobby": null,
          "streets": [
            "Avenida Infante Dom Henrique"
          ],
          "type": "STAIRS",
          "lat": 38.70662,
          "lon": -9.13481,
          "accessTitle": "Acesso 2",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "tp-avenida-infante-dom-henrique-stairs-2",
          "lobby": null,
          "streets": [
            "Avenida Infante Dom Henrique",
            "Rua dos Arameiros"
          ],
          "type": "STAIRS",
          "lat": 38.707195,
          "lon": -9.133295,
          "accessTitle": "Acesso 1",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "tp-praca-do-comercio",
          "lobby": null,
          "streets": [
            "Praça do Comércio"
          ],
          "type": "STAIRS",
          "lat": 38.707545,
          "lon": -9.135435,
          "accessTitle": "Acesso 3",
          "sources": [
            "underlx",
            "metrolisboa",
            "osm"
          ]
        },
        {
          "id": "tp-terminal-fluvial-do-terreiro-do-paco",
          "lobby": null,
          "streets": [
            "Terminal Fluvial do Terreiro do Paço"
          ],
          "type": "ESCALATOR",
          "lat": 38.706907,
          "lon": -9.133563,
          "accessTitle": null,
          "sources": [
            "underlx",
            "osm"
          ]
        }
      ],
      "positions": [
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "tp-avenida-infante-dom-henrique-lift",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 16 m behind the platform centre along travel direction (OSM platform 108 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "tp-avenida-infante-dom-henrique-stairs",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 57 m ahead of the platform centre along travel direction (OSM platform 108 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "tp-avenida-infante-dom-henrique-stairs-2",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 89 m behind the platform centre along travel direction (OSM platform 108 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "tp-praca-do-comercio",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 59 m ahead of the platform centre along travel direction (OSM platform 108 m)"
        },
        {
          "line": "Azul",
          "towards": "Reboleira",
          "exitId": "tp-terminal-fluvial-do-terreiro-do-paco",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 54 m behind the platform centre along travel direction (OSM platform 108 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "tp-avenida-infante-dom-henrique-lift",
          "position": "MIDDLE",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 17 m ahead of the platform centre along travel direction (OSM platform 108 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "tp-avenida-infante-dom-henrique-stairs",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 56 m behind the platform centre along travel direction (OSM platform 108 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "tp-avenida-infante-dom-henrique-stairs-2",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 90 m ahead of the platform centre along travel direction (OSM platform 108 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "tp-praca-do-comercio",
          "position": "BACK",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 59 m behind the platform centre along travel direction (OSM platform 108 m)"
        },
        {
          "line": "Azul",
          "towards": "Santa Apolónia",
          "exitId": "tp-terminal-fluvial-do-terreiro-do-paco",
          "position": "FRONT",
          "confidence": "SEED_GEOMETRY",
          "basis": "exit 55 m ahead of the platform centre along travel direction (OSM platform 108 m)"
        }
      ]
    }
  ]
}
