Skip to content

Instantly share code, notes, and snippets.

@mping
Last active May 13, 2019
Embed
What would you like to do?
geojson > svg through d3
const json = {
"routes": [{
"legs": [{
"summary": "Avenida Infante Dom Henrique, Autoestrada do Norte",
"weight": 11481.1,
"duration": 10976.2,
"steps": [{
"intersections": [{
"out": 0,
"entry": [true],
"bearings": [73],
"location": [-9.136778, 38.708199]
}],
"driving_side": "right",
"geometry": "gegkFzowv@AIE]O}@CICGAGGKCGEECEAA",
"mode": "driving",
"maneuver": {
"bearing_after": 73,
"bearing_before": 0,
"location": [-9.136778, 38.708199],
"modifier": "right",
"type": "depart"
},
"weight": 55.1,
"duration": 23.1,
"name": "Praça do Comércio",
"distance": 79
}, {
"intersections": [{
"out": 3,
"in": 2,
"entry": [false, false, false, true],
"bearings": [60, 165, 240, 345],
"location": [-9.135967, 38.708493]
}, {
"out": 3,
"in": 1,
"entry": [false, false, false, true],
"bearings": [75, 165, 255, 345],
"location": [-9.136177, 38.709023]
}],
"driving_side": "right",
"geometry": "aggkFxjwv@[H}@VOF_AVMD",
"mode": "driving",
"maneuver": {
"bearing_after": 341,
"bearing_before": 57,
"location": [-9.135967, 38.708493],
"modifier": "left",
"type": "turn"
},
"weight": 73.1,
"duration": 36.7,
"name": "Rua da Prata",
"distance": 107
}, {
"intersections": [{
"out": 0,
"in": 1,
"entry": [true, false, false, true],
"bearings": [75, 165, 255, 345],
"location": [-9.136327, 38.709413]
}],
"driving_side": "right",
"geometry": "ylgkF`mwv@ACAMa@eC?EAG",
"mode": "driving",
"maneuver": {
"bearing_after": 71,
"bearing_before": 343,
"location": [-9.136327, 38.709413],
"modifier": "right",
"type": "turn"
},
"weight": 48.8,
"duration": 24.8,
"name": "Rua de São Julião",
"distance": 75.1
}, {
"intersections": [{
"out": 1,
"in": 2,
"entry": [true, true, false, false],
"bearings": [75, 165, 255, 345],
"location": [-9.135501, 38.709614]
}, {
"out": 1,
"in": 3,
"entry": [false, true, true, false],
"bearings": [75, 165, 255, 345],
"location": [-9.135338, 38.709227]
}],
"driving_side": "right",
"geometry": "angkFzgwv@|@YLEbAYLEHAB?DA",
"mode": "driving",
"maneuver": {
"bearing_after": 160,
"bearing_before": 71,
"location": [-9.135501, 38.709614],
"modifier": "right",
"type": "turn"
},
"weight": 98.69999999999999,
"duration": 44.7,
"name": "Rua dos Fanqueiros",
"distance": 103.9
}, {
"intersections": [{
"out": 1,
"in": 0,
"entry": [false, true, false],
"bearings": [0, 90, 270],
"location": [-9.135164, 38.70872]
}, {
"out": 0,
"in": 1,
"entry": [true, false, true],
"bearings": [90, 270, 345],
"location": [-9.134633, 38.708726]
}],
"driving_side": "right",
"geometry": "ohgkFvewv@AiBAeE",
"mode": "driving",
"maneuver": {
"bearing_after": 88,
"bearing_before": 175,
"location": [-9.135164, 38.70872],
"modifier": "left",
"type": "end of road"
},
"weight": 37.3,
"duration": 36.5,
"name": "Rua da Alfândega",
"distance": 131.9
}, {
"intersections": [{
"out": 1,
"in": 2,
"entry": [true, true, false],
"bearings": [90, 135, 270],
"location": [-9.133644, 38.708735]
}],
"driving_side": "right",
"geometry": "shgkFf|vv@LQRELEb@K|@Uv@U\\I",
"mode": "driving",
"maneuver": {
"bearing_after": 133,
"bearing_before": 88,
"location": [-9.133644, 38.708735],
"modifier": "right",
"type": "turn"
},
"weight": 95.4,
"duration": 43.8,
"name": "Campo das Cebolas",
"distance": 136.5
}, {
"intersections": [{
"out": 0,
"in": 3,
"entry": [true, false, false, false],
"bearings": [60, 165, 225, 345],
"location": [-9.13316, 38.707581]
}, {
"out": 0,
"in": 1,
"entry": [true, false, false],
"bearings": [45, 225, 315],
"location": [-9.128586, 38.709809]
}, {
"out": 0,
"in": 1,
"entry": [true, false, false],
"bearings": [75, 225, 330],
"location": [-9.127098, 38.710864]
}, {
"out": 0,
"in": 1,
"entry": [true, false, true],
"bearings": [60, 240, 330],
"location": [-9.125266, 38.711668]
}, {
"lanes": [{
"valid": false,
"indications": ["left"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["none"]
}],
"out": 1,
"in": 2,
"entry": [true, true, false],
"bearings": [45, 60, 240],
"location": [-9.124433, 38.712066]
}, {
"out": 0,
"in": 2,
"entry": [true, true, false, true],
"bearings": [45, 135, 225, 315],
"location": [-9.121303, 38.714635]
}, {
"lanes": [{
"valid": false,
"indications": ["left"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}],
"out": 0,
"in": 1,
"entry": [true, false, false, true],
"bearings": [30, 210, 285, 330],
"location": [-9.116233, 38.719465]
}, {
"lanes": [{
"valid": true,
"indications": ["left"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}],
"out": 0,
"in": 1,
"entry": [true, false, false],
"bearings": [30, 210, 300],
"location": [-9.111535, 38.724886]
}, {
"lanes": [{
"valid": false,
"indications": ["left"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}],
"out": 0,
"in": 1,
"entry": [true, false, true],
"bearings": [30, 210, 300],
"location": [-9.111473, 38.724954]
}, {
"out": 0,
"in": 1,
"entry": [true, false, false],
"bearings": [15, 195, 255],
"location": [-9.103572, 38.735944]
}, {
"out": 1,
"in": 2,
"entry": [true, true, false],
"bearings": [10, 19, 197],
"location": [-9.103081, 38.737302]
}, {
"out": 0,
"in": 1,
"entry": [true, false, false],
"bearings": [45, 210, 300],
"location": [-9.100221, 38.742002]
}, {
"out": 0,
"in": 2,
"entry": [true, true, false],
"bearings": [30, 60, 225],
"location": [-9.100068, 38.742152]
}, {
"out": 0,
"in": 2,
"entry": [true, false, false],
"bearings": [30, 180, 210],
"location": [-9.099817, 38.742439]
}],
"driving_side": "right",
"geometry": "kagkFfyvv@KYcAyCqBgGe@sAgA}CiAaC[g@g@y@cA}AoAiBS]a@u@GMI_@Um@a@iA_BuEOc@IYu@iB[y@Wq@aAsA[]m@q@i@i@cE}EaAeAQSo@u@yHmIa@i@aBkBmDyDy@{@k@m@_A_AqBeBQQgCsBeEgDmEyDsC}B]YaG}Ey@q@g@e@IEKMc@_@_@[eEiDwAsAa@g@kGiJwC{CoC{BcCcBoG_EwCsAcAY_@OgBe@uKiBg@IGAQEMCo@Mg@QiCo@m@QyAe@{Ai@oB{@eIgEwBiAi@W_Aq@oAeAMMQQKKSSWQMKYUoAUYGsBg@M@GL",
"mode": "driving",
"maneuver": {
"bearing_after": 59,
"bearing_before": 163,
"location": [-9.13316, 38.707581],
"modifier": "left",
"type": "turn"
},
"weight": 658.1,
"duration": 539.9999999999999,
"name": "Avenida Infante Dom Henrique",
"distance": 5128
}, {
"intersections": [{
"out": 2,
"in": 1,
"entry": [true, false, true],
"bearings": [15, 135, 240],
"location": [-9.099436, 38.743793]
}, {
"out": 2,
"in": 0,
"entry": [false, true, true],
"bearings": [75, 210, 285],
"location": [-9.099563, 38.743772]
}, {
"out": 3,
"in": 1,
"entry": [true, false, true, true],
"bearings": [15, 105, 195, 285],
"location": [-9.101248, 38.744258]
}, {
"out": 2,
"in": 1,
"entry": [true, false, true],
"bearings": [0, 105, 285],
"location": [-9.10144, 38.744313]
}, {
"classes": ["tunnel"],
"out": 1,
"in": 0,
"entry": [false, true],
"bearings": [135, 315],
"location": [-9.103317, 38.744961]
}, {
"out": 1,
"in": 0,
"entry": [false, true],
"bearings": [135, 315],
"location": [-9.103388, 38.745014]
}, {
"classes": ["tunnel"],
"out": 1,
"in": 0,
"entry": [false, true],
"bearings": [135, 315],
"location": [-9.103417, 38.745036]
}, {
"out": 1,
"in": 0,
"entry": [false, true],
"bearings": [135, 315],
"location": [-9.103552, 38.745141]
}, {
"classes": ["tunnel"],
"out": 1,
"in": 0,
"entry": [false, true],
"bearings": [135, 315],
"location": [-9.103577, 38.745161]
}, {
"out": 1,
"in": 0,
"entry": [false, true],
"bearings": [135, 315],
"location": [-9.10368, 38.745246]
}, {
"classes": ["tunnel"],
"out": 1,
"in": 0,
"entry": [false, true],
"bearings": [135, 315],
"location": [-9.103698, 38.74526]
}, {
"out": 1,
"in": 0,
"entry": [false, true],
"bearings": [135, 315],
"location": [-9.103805, 38.745351]
}, {
"out": 2,
"in": 1,
"entry": [true, false, true],
"bearings": [105, 135, 330],
"location": [-9.10403, 38.745567]
}, {
"out": 2,
"in": 1,
"entry": [true, false, true],
"bearings": [75, 165, 345],
"location": [-9.104669, 38.746797]
}],
"driving_side": "right",
"geometry": "ucnkFnfpv@ALDHET{AzHId@Qz@UjAk@vC_@`AMTILEDILIJCDQRABQTk@j@cAr@_A^qBj@aATyBd@aCRgCE_@Em@Ga@G[C",
"mode": "driving",
"maneuver": {
"bearing_after": 243,
"bearing_before": 319,
"location": [-9.099436, 38.743793],
"modifier": "slight left",
"type": "end of road"
},
"weight": 109.5,
"duration": 108.60000000000001,
"name": "Avenida Infante Dom Henrique",
"distance": 940.4
}, {
"intersections": [{
"out": 0,
"in": 1,
"entry": [true, false, false],
"bearings": [45, 195, 240],
"location": [-9.104908, 38.749774]
}, {
"out": 0,
"in": 2,
"entry": [true, true, false],
"bearings": [30, 90, 225],
"location": [-9.104836, 38.749846]
}, {
"out": 2,
"in": 1,
"entry": [false, false, true],
"bearings": [105, 180, 345],
"location": [-9.104796, 38.750021]
}],
"driving_side": "right",
"geometry": "aiokFthqv@OMIEKCK@I@",
"mode": "driving",
"destinations": "Norte, Sul, Ponte Vasco da Gama",
"maneuver": {
"exit": 2,
"bearing_after": 36,
"bearing_before": 8,
"location": [-9.104908, 38.749774],
"modifier": "slight right",
"type": "roundabout"
},
"weight": 6.9,
"duration": 5.1,
"name": "Avenida Infante Dom Henrique",
"distance": 36.2
}, {
"intersections": [{
"out": 0,
"in": 1,
"entry": [true, false, true],
"bearings": [30, 165, 330],
"location": [-9.104813, 38.750073]
}, {
"lanes": [{
"valid": false,
"indications": ["left"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}],
"out": 0,
"in": 1,
"entry": [true, false, false, true],
"bearings": [15, 195, 285, 315],
"location": [-9.103993, 38.751691]
}],
"driving_side": "right",
"geometry": "}jokF`hqv@[WIGk@YGC{Ae@_@MwAe@UKOEkHmCmA_@",
"mode": "driving",
"destinations": "Norte, Sul, Ponte Vasco da Gama",
"maneuver": {
"exit": 2,
"bearing_after": 35,
"bearing_before": 344,
"location": [-9.104813, 38.750073],
"modifier": "right",
"type": "exit roundabout"
},
"weight": 49.8,
"duration": 37.3,
"name": "Avenida Infante Dom Henrique",
"distance": 427.1
}, {
"intersections": [{
"out": 0,
"in": 3,
"entry": [true, true, true, false],
"bearings": [0, 15, 90, 195],
"location": [-9.103085, 38.753659]
}, {
"classes": ["tunnel"],
"out": 0,
"in": 1,
"entry": [true, false],
"bearings": [0, 180],
"location": [-9.103011, 38.755324]
}, {
"out": 0,
"in": 1,
"entry": [true, false],
"bearings": [0, 180],
"location": [-9.103119, 38.75627]
}, {
"out": 0,
"in": 2,
"entry": [true, false, false],
"bearings": [0, 165, 180],
"location": [-9.103216, 38.757704]
}, {
"out": 0,
"in": 2,
"entry": [true, true, false],
"bearings": [0, 90, 180],
"location": [-9.103279, 38.758384]
}, {
"out": 0,
"in": 2,
"entry": [true, true, false],
"bearings": [0, 90, 180],
"location": [-9.103415, 38.759747]
}],
"driving_side": "right",
"geometry": "kapkFh}pv@w@Gq@IaAGcA?{AH}DToEPmA@gCJuCNgADs@DmBHw@D",
"mode": "driving",
"destinations": "Norte, Sul (Ponte Vasco da Gama), Estação Oriente, Parque das Nações",
"maneuver": {
"bearing_after": 5,
"bearing_before": 16,
"location": [-9.103085, 38.753659],
"modifier": "slight left",
"type": "fork"
},
"weight": 50.699999999999996,
"duration": 50.3,
"name": "Avenida Infante Dom Henrique",
"distance": 772.7
}, {
"intersections": [{
"out": 2,
"in": 1,
"entry": [true, false, true],
"bearings": [0, 180, 345],
"location": [-9.103503, 38.760584]
}, {
"classes": ["tunnel"],
"out": 0,
"in": 1,
"entry": [true, false],
"bearings": [0, 180],
"location": [-9.103774, 38.762703]
}, {
"out": 0,
"in": 1,
"entry": [true, false],
"bearings": [0, 180],
"location": [-9.103819, 38.763229]
}, {
"out": 2,
"in": 1,
"entry": [true, false, true],
"bearings": [1, 176, 356],
"location": [-9.10401, 38.765175]
}],
"driving_side": "right",
"geometry": "slqkFz_qv@k@J{Jh@iBHeKd@iCJ{Or@kJh@eA@",
"mode": "driving",
"maneuver": {
"bearing_after": 348,
"bearing_before": 354,
"location": [-9.103503, 38.760584],
"modifier": "slight left",
"type": "fork"
},
"weight": 70.8,
"duration": 70.7,
"name": "Avenida Infante Dom Henrique",
"distance": 1133
}, {
"intersections": [{
"out": 0,
"in": 2,
"entry": [true, true, false],
"bearings": [0, 15, 180],
"location": [-9.104552, 38.770736]
}, {
"classes": ["tunnel"],
"out": 1,
"in": 0,
"entry": [false, true],
"bearings": [180, 345],
"location": [-9.104766, 38.773055]
}, {
"classes": ["tunnel"],
"out": 2,
"in": 1,
"entry": [false, false, true],
"bearings": [150, 165, 345],
"location": [-9.104903, 38.773497]
}],
"driving_side": "right",
"geometry": "clskFlfqv@oMj@wAX_Bn@_Bh@g@Fq@F",
"mode": "driving",
"destinations": "IC 17 CRIL, A1 Norte, A2 Sul, Ponte Vasco da Gama",
"maneuver": {
"bearing_after": 355,
"bearing_before": 357,
"location": [-9.104552, 38.770736],
"modifier": "slight left",
"type": "fork"
},
"weight": 31.4,
"duration": 31.2,
"name": "Avenida Infante Dom Henrique",
"distance": 474.1
}, {
"intersections": [{
"out": 0,
"in": 1,
"entry": [true, false],
"bearings": [0, 180],
"location": [-9.105429, 38.774914]
}, {
"out": 0,
"in": 2,
"entry": [true, false, false],
"bearings": [7, 175, 183],
"location": [-9.105319, 38.778447]
}],
"driving_side": "right",
"geometry": "eftkF|kqv@mA?cAA}DCoEC}@Ci@A{@EeGe@cAE_@?_@?y@Do@FkAL",
"mode": "driving",
"maneuver": {
"bearing_after": 358,
"bearing_before": 352,
"location": [-9.105429, 38.774914],
"modifier": "straight",
"type": "new name"
},
"ref": "IC 2; A 30",
"weight": 43.3,
"duration": 37,
"name": "",
"distance": 715.4
}, {
"intersections": [{
"classes": ["motorway"],
"out": 0,
"in": 1,
"entry": [true, false, true],
"bearings": [15, 165, 345],
"location": [-9.105237, 38.781328]
}],
"driving_side": "right",
"geometry": "inukFvjqv@gAKUEYG]G[IWGUCO?U@YDQFSJQNEFOTQVa@x@Sb@MRQ\\MRMPIJQPWRm@Z[N",
"mode": "driving",
"destinations": "Norte, Oeste, Sul (Ponte Vasco da Gama), CRIL",
"maneuver": {
"bearing_after": 7,
"bearing_before": 351,
"location": [-9.105237, 38.781328],
"modifier": "slight right",
"type": "off ramp"
},
"weight": 27.8,
"duration": 27.8,
"name": "",
"distance": 413.1
}, {
"intersections": [{
"classes": ["motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["slight right"]
}],
"out": 2,
"in": 1,
"entry": [true, false, true],
"bearings": [0, 150, 345],
"location": [-9.106827, 38.784448]
}],
"driving_side": "right",
"geometry": "yavkFttqv@WJm@R}@ZwAh@{CdA]RQLQRMTKZ",
"mode": "driving",
"destinations": "Norte, Oeste, CRIL",
"maneuver": {
"bearing_after": 338,
"bearing_before": 334,
"location": [-9.106827, 38.784448],
"modifier": "slight left",
"type": "fork"
},
"weight": 17.3,
"duration": 16.7,
"name": "",
"distance": 292.3
}, {
"intersections": [{
"classes": ["motorway"],
"out": 1,
"in": 0,
"entry": [false, true, true],
"bearings": [120, 285, 300],
"location": [-9.10821, 38.786793]
}],
"driving_side": "right",
"geometry": "mpvkFh}qv@Ir@SrDUvA_@pA",
"mode": "driving",
"destinations": "A 1: Norte, 2ª Circular",
"maneuver": {
"bearing_after": 278,
"bearing_before": 299,
"location": [-9.10821, 38.786793],
"modifier": "slight left",
"type": "fork"
},
"weight": 11,
"duration": 10.9,
"name": "",
"distance": 182.2
}, {
"distance": 437.2,
"name": "",
"ref": "A 12",
"maneuver": {
"bearing_after": 307,
"bearing_before": 296,
"location": [-9.110224, 38.78721],
"modifier": "straight",
"type": "new name"
},
"destinations": "A 1: Norte, 2ª Circular, Aeroporto",
"weight": 25.4,
"mode": "driving",
"geometry": "asvkFzirv@sBxD_@j@]f@QV]b@OTUXWXUPYPSHg@L}@Hq@Do@PSHSLQJKH",
"intersections": [{
"classes": ["motorway"],
"out": 2,
"in": 0,
"entry": [false, false, true],
"bearings": [117, 127, 309],
"location": [-9.110224, 38.78721]
}],
"duration": 25.3,
"driving_side": "right"
}, {
"intersections": [{
"classes": ["motorway"],
"lanes": [{
"valid": false,
"indications": ["slight left"]
}, {
"valid": true,
"indications": ["slight right"]
}],
"out": 2,
"in": 0,
"entry": [false, true, true],
"bearings": [150, 315, 330],
"location": [-9.112936, 38.790336]
}, {
"classes": ["motorway"],
"out": 0,
"in": 1,
"entry": [true, false, false],
"bearings": [30, 195, 210],
"location": [-9.113302, 38.7921]
}],
"driving_side": "right",
"geometry": "sfwkFzzrv@y@l@YXYR[N[D[B[A_@E]Ia@Ma@Mq@[}BmAkAg@_@MYGYC",
"mode": "driving",
"destinations": "A 1: Norte, Alverca",
"maneuver": {
"bearing_after": 327,
"bearing_before": 327,
"location": [-9.112936, 38.790336],
"modifier": "slight right",
"type": "fork"
},
"weight": 29.2,
"duration": 22.4,
"name": "",
"distance": 415
}, {
"intersections": [{
"classes": ["motorway"],
"out": 0,
"in": 1,
"entry": [true, false, false],
"bearings": [30, 180, 210],
"location": [-9.112439, 38.793783]
}, {
"classes": ["motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["right"]
}],
"out": 0,
"in": 2,
"entry": [true, true, false],
"bearings": [30, 45, 210],
"location": [-9.090652, 38.846263]
}, {
"classes": ["motorway"],
"out": 0,
"in": 2,
"entry": [true, false, false],
"bearings": [30, 195, 210],
"location": [-9.086048, 38.852469]
}, {
"classes": ["motorway"],
"out": 0,
"in": 2,
"entry": [true, true, false],
"bearings": [60, 75, 240],
"location": [-9.055561, 38.886803]
}, {
"classes": ["toll", "motorway"],
"out": 0,
"in": 1,
"entry": [true, false],
"bearings": [45, 240],
"location": [-9.054472, 38.887422]
}, {
"classes": ["toll", "motorway"],
"out": 0,
"in": 2,
"entry": [true, false, false],
"bearings": [30, 195, 210],
"location": [-9.049638, 38.892398]
}, {
"classes": ["toll", "motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["right"]
}],
"out": 0,
"in": 2,
"entry": [true, true, false],
"bearings": [30, 45, 210],
"location": [-9.048652, 38.89386]
}, {
"classes": ["toll", "motorway"],
"out": 0,
"in": 2,
"entry": [true, false, false],
"bearings": [30, 195, 210],
"location": [-9.047729, 38.895376]
}, {
"classes": ["toll", "motorway"],
"out": 0,
"in": 2,
"entry": [true, false, false],
"bearings": [30, 195, 210],
"location": [-9.001176, 38.940308]
}, {
"classes": ["toll", "motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["slight right"]
}],
"out": 0,
"in": 2,
"entry": [true, true, false],
"bearings": [45, 60, 225],
"location": [-8.980403, 38.971399]
}, {
"classes": ["toll", "motorway"],
"out": 0,
"in": 2,
"entry": [true, false, false],
"bearings": [30, 195, 210],
"location": [-8.978356, 38.973852]
}, {
"classes": ["toll", "motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["right"]
}],
"out": 0,
"in": 2,
"entry": [true, true, false],
"bearings": [0, 15, 180],
"location": [-8.966941, 39.004057]
}, {
"classes": ["toll", "motorway"],
"out": 0,
"in": 2,
"entry": [true, false, false],
"bearings": [0, 165, 180],
"location": [-8.966716, 39.007142]
}, {
"classes": ["toll", "motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["right"]
}],
"out": 0,
"in": 2,
"entry": [true, true, false],
"bearings": [0, 15, 180],
"location": [-8.966407, 39.011008]
}, {
"classes": ["toll", "motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["right"]
}],
"out": 0,
"in": 2,
"entry": [true, true, false],
"bearings": [0, 15, 180],
"location": [-8.96605, 39.015465]
}, {
"classes": ["toll", "motorway"],
"out": 0,
"in": 2,
"entry": [true, false, false],
"bearings": [15, 180, 195],
"location": [-8.961199, 39.029568]
}, {
"classes": ["toll", "motorway"],
"out": 0,
"in": 2,
"entry": [true, true, false],
"bearings": [45, 60, 225],
"location": [-8.910321, 39.121356]
}, {
"classes": ["toll", "motorway"],
"out": 0,
"in": 2,
"entry": [true, false, false],
"bearings": [45, 210, 225],
"location": [-8.906286, 39.124126]
}, {
"classes": ["toll", "motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["right"]
}],
"out": 0,
"in": 2,
"entry": [true, true, false],
"bearings": [45, 60, 225],
"location": [-8.890913, 39.138735]
}, {
"classes": ["toll", "motorway"],
"out": 0,
"in": 2,
"entry": [true, false, false],
"bearings": [45, 210, 225],
"location": [-8.888371, 39.1407]
}, {
"classes": ["toll", "motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["slight right"]
}],
"out": 0,
"in": 2,
"entry": [true, true, false],
"bearings": [60, 75, 240],
"location": [-8.790797, 39.20407]
}, {
"classes": ["toll", "motorway"],
"out": 0,
"in": 1,
"entry": [true, false, false],
"bearings": [45, 225, 240],
"location": [-8.786892, 39.206253]
}, {
"classes": ["toll", "motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["right"]
}],
"out": 0,
"in": 2,
"entry": [true, true, false],
"bearings": [26, 36, 205],
"location": [-8.735378, 39.257105]
}, {
"classes": ["toll", "motorway"],
"out": 0,
"in": 2,
"entry": [true, false, false],
"bearings": [30, 195, 210],
"location": [-8.733015, 39.260356]
}, {
"classes": ["toll", "motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["right"]
}],
"out": 0,
"in": 2,
"entry": [true, true, false],
"bearings": [44, 52, 221],
"location": [-8.728529, 39.264861]
}, {
"classes": ["toll", "motorway"],
"out": 0,
"in": 2,
"entry": [true, false, false],
"bearings": [60, 225, 240],
"location": [-8.718232, 39.271132]
}, {
"classes": ["toll", "motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["slight right"]
}],
"out": 2,
"in": 1,
"entry": [true, false, true],
"bearings": [0, 150, 330],
"location": [-8.638055, 39.390131]
}, {
"classes": ["toll", "motorway"],
"out": 0,
"in": 2,
"entry": [true, false, false],
"bearings": [0, 150, 180],
"location": [-8.63927, 39.393943]
}, {
"classes": ["toll", "motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["slight right"]
}],
"out": 1,
"in": 0,
"entry": [false, true, true],
"bearings": [150, 330, 345],
"location": [-8.630021, 39.475341]
}, {
"classes": ["toll", "motorway"],
"out": 2,
"in": 1,
"entry": [false, false, true],
"bearings": [135, 150, 330],
"location": [-8.632738, 39.478685]
}, {
"classes": ["toll", "motorway"],
"out": 0,
"in": 2,
"entry": [true, true, false],
"bearings": [45, 60, 225],
"location": [-8.656572, 39.553369]
}, {
"classes": ["toll", "motorway"],
"out": 0,
"in": 2,
"entry": [true, false, false],
"bearings": [46, 225, 229],
"location": [-8.654586, 39.554784]
}, {
"classes": ["toll", "motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["slight right"]
}],
"out": 1,
"in": 0,
"entry": [false, true, true],
"bearings": [135, 315, 330],
"location": [-8.692923, 39.622216]
}, {
"classes": ["toll", "motorway"],
"out": 2,
"in": 1,
"entry": [false, false, true],
"bearings": [135, 150, 330],
"location": [-8.696233, 39.626043]
}, {
"classes": ["toll", "motorway"],
"out": 2,
"in": 1,
"entry": [true, false, true],
"bearings": [0, 150, 330],
"location": [-8.709478, 39.711272]
}, {
"classes": ["toll", "motorway"],
"out": 2,
"in": 1,
"entry": [false, false, true],
"bearings": [150, 154, 334],
"location": [-8.711423, 39.714393]
}, {
"classes": ["toll", "motorway"],
"out": 1,
"in": 0,
"entry": [false, true, true],
"bearings": [106, 285, 291],
"location": [-8.737318, 39.739797]
}, {
"classes": ["toll", "motorway"],
"out": 2,
"in": 1,
"entry": [false, false, true],
"bearings": [116, 120, 301],
"location": [-8.741692, 39.741085]
}, {
"classes": ["toll", "motorway"],
"out": 0,
"in": 2,
"entry": [true, true, false],
"bearings": [13, 19, 191],
"location": [-8.679946, 39.937288]
}, {
"classes": ["toll", "motorway"],
"out": 0,
"in": 1,
"entry": [true, false, false],
"bearings": [45, 210, 225],
"location": [-8.677138, 39.941754]
}, {
"classes": ["toll", "motorway"],
"out": 0,
"in": 2,
"entry": [true, true, false],
"bearings": [45, 51, 225],
"location": [-8.577967, 40.039962]
}, {
"classes": ["toll", "motorway"],
"out": 0,
"in": 2,
"entry": [true, false, false],
"bearings": [30, 210, 225],
"location": [-8.573983, 40.042941]
}, {
"classes": ["toll", "motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["right"]
}],
"out": 0,
"in": 2,
"entry": [true, true, false],
"bearings": [15, 30, 210],
"location": [-8.496681, 40.130776]
}, {
"classes": ["toll", "motorway"],
"out": 0,
"in": 2,
"entry": [true, false, false],
"bearings": [0, 165, 180],
"location": [-8.49589, 40.134734]
}, {
"classes": ["toll", "motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["right"]
}],
"out": 2,
"in": 1,
"entry": [true, false, true],
"bearings": [15, 165, 345],
"location": [-8.487995, 40.199888]
}, {
"classes": ["toll", "motorway"],
"out": 0,
"in": 2,
"entry": [true, false, false],
"bearings": [0, 165, 180],
"location": [-8.488873, 40.203724]
}, {
"classes": ["toll", "motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["right"]
}],
"out": 0,
"in": 2,
"entry": [true, true, false],
"bearings": [15, 30, 195],
"location": [-8.482955, 40.271041]
}, {
"classes": ["toll", "motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["right"]
}],
"out": 0,
"in": 2,
"entry": [true, true, false],
"bearings": [30, 45, 210],
"location": [-8.481081, 40.273926]
}, {
"classes": ["toll", "motorway"],
"out": 0,
"in": 2,
"entry": [true, false, false],
"bearings": [30, 195, 210],
"location": [-8.479189, 40.276261]
}, {
"classes": ["toll", "motorway"],
"out": 2,
"in": 1,
"entry": [true, false, true],
"bearings": [3, 179, 355],
"location": [-8.492602, 40.330074]
}, {
"classes": ["toll", "motorway"],
"out": 2,
"in": 1,
"entry": [false, false, true],
"bearings": [150, 165, 345],
"location": [-8.493631, 40.334757]
}, {
"classes": ["toll", "motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["right"]
}],
"out": 0,
"in": 2,
"entry": [true, true, false],
"bearings": [0, 15, 180],
"location": [-8.493465, 40.372507]
}, {
"classes": ["toll", "motorway"],
"out": 0,
"in": 2,
"entry": [true, false, false],
"bearings": [9, 181, 187],
"location": [-8.49304, 40.376077]
}, {
"classes": ["toll", "motorway"],
"out": 0,
"in": 2,
"entry": [true, true, false],
"bearings": [15, 30, 195],
"location": [-8.560397, 40.548628]
}, {
"classes": ["toll", "motorway"],
"out": 2,
"in": 1,
"entry": [false, false, true],
"bearings": [174, 181, 355],
"location": [-8.559812, 40.552426]
}, {
"classes": ["toll", "motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["right"]
}],
"out": 0,
"in": 2,
"entry": [true, true, false],
"bearings": [0, 15, 180],
"location": [-8.560302, 40.568421]
}, {
"classes": ["toll", "motorway"],
"out": 2,
"in": 1,
"entry": [false, false, true],
"bearings": [165, 180, 345],
"location": [-8.56044, 40.571567]
}, {
"classes": ["toll", "motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["right"]
}],
"out": 2,
"in": 1,
"entry": [true, false, true],
"bearings": [0, 165, 345],
"location": [-8.522237, 40.692413]
}, {
"classes": ["toll", "motorway"],
"out": 0,
"in": 2,
"entry": [true, false, false],
"bearings": [0, 150, 180],
"location": [-8.52285, 40.695242]
}, {
"classes": ["toll", "motorway"],
"out": 1,
"in": 0,
"entry": [false, true, true],
"bearings": [150, 330, 345],
"location": [-8.533993, 40.752499]
}, {
"classes": ["toll", "motorway"],
"out": 2,
"in": 1,
"entry": [false, false, true],
"bearings": [148, 154, 334],
"location": [-8.536699, 40.756645]
}, {
"classes": ["toll", "motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight", "right"]
}, {
"valid": false,
"indications": ["right"]
}],
"out": 2,
"in": 1,
"entry": [true, false, true],
"bearings": [15, 165, 345],
"location": [-8.543644, 40.778839]
}, {
"classes": ["toll", "motorway"],
"out": 2,
"in": 1,
"entry": [false, false, true],
"bearings": [135, 165, 345],
"location": [-8.544518, 40.781925]
}, {
"classes": ["toll", "motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight", "right"]
}, {
"valid": false,
"indications": ["right"]
}],
"out": 2,
"in": 1,
"entry": [true, false, true],
"bearings": [0, 180, 345],
"location": [-8.567884, 40.925292]
}, {
"classes": ["toll", "motorway"],
"out": 2,
"in": 1,
"entry": [false, false, true],
"bearings": [150, 165, 345],
"location": [-8.57003, 40.93133]
}, {
"classes": ["toll", "motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight", "right"]
}, {
"valid": false,
"indications": ["right"]
}],
"out": 2,
"in": 1,
"entry": [true, false, true],
"bearings": [7, 181, 359],
"location": [-8.582249, 41.006245]
}, {
"classes": ["motorway"],
"out": 0,
"in": 1,
"entry": [true, false],
"bearings": [15, 195],
"location": [-8.58118, 41.017833]
}, {
"classes": ["motorway"],
"out": 0,
"in": 2,
"entry": [true, false, false],
"bearings": [15, 180, 195],
"location": [-8.580923, 41.018696]
}, {
"classes": ["motorway"],
"out": 2,
"in": 1,
"entry": [false, false, true],
"bearings": [163, 170, 347],
"location": [-8.571305, 41.049141]
}, {
"classes": ["motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["right"]
}],
"out": 2,
"in": 1,
"entry": [true, false, true],
"bearings": [0, 165, 345],
"location": [-8.581529, 41.06675]
}, {
"classes": ["motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["straight", "right"]
}],
"out": 0,
"in": 2,
"entry": [true, true, false],
"bearings": [15, 45, 195],
"location": [-8.580962, 41.072651]
}],
"driving_side": "right",
"geometry": "c|wkFvwrv@gAk@_@Q}DsByNuHeAi@qFsCwMaHuMaHuM}GqAm@oAk@aCcAkCcAiAc@wE_B{C_AmA]mA[sA]oAY}@SiB_@kB]wE{@kCi@mASok@sJyAWsJaBca@aHyr@{LmFqAeEwAmEkBqLmH_JiGkRgMmRoMeGeEeBgAuAw@uBiAgB{@sBw@uBu@uBq@mOwEuHgCcGyB}DaCsCcCsC_D}BoDaBoDwC{HkCiIqCiGeCuEkEqFwCuC}AiAmSmMqQcLyFyDyA}@eDuBwKoHkDsCcDcDoCgDcCuDuBeEyBaF{ByEoEaFaIaIy@y@mBoB_F}DiAy@cHeEy@a@uFuCiCuAwQsJaIgEeEmCeCqB}AoA{CiD{DiFeE_HiAkBgAoBoWgd@{Xsf@iCgE{@}AmJ_P_A}AkGeJ}KqOsLeOkD}DmDoC_DaBkCiAiEaBsLgFsCqAgC{A_CsBoCoCiIsJqC{CkDoC{DcCkUiN}@i@_CwAcAu@cCsBqAsAwCyDcHsJeBqB_AaA}AsA_BmAmDsBoEeBkFiAiF_@iFCcDAkE[}EcA_Bk@{Ao@sBoAqAeAwE}DsDeFiCoDg@w@iBqCqDoEcAeAgCqBwDsBcDmAyBe@{AWyGs@gBYgBa@eBg@aBk@sC{AeAs@eB{AcAeA}AwBuCqDyDyDmE{CaBaAgGiDsMcH{MqG}RyIk_@iNmOyEqNgDgLmBqLuAwE]}G]yBK}Ja@oGW{L_@kDKwDOmCIoBIwBGwEQqI[aDKgK_@qEQ}COuEa@gFw@gB_@cCm@kFeBwCoAgEmBoAi@iB{@}Aq@o@Wi@UeC{@e@O{Ae@cFiAgAUmAUiAS_BYwCg@aCe@{A]_EiAyEcByE_CkEgCmDaCkE{D}D_EmTwUkH{GqGcFoLuHaGyD{E_DcDeCmDiDsEiEyDwCoDmBmDuAmE}@{C_@{EUwIc@uEo@oDu@eNmDiIwBkDsAeEeCqDaD_DuDiDeEmCiCqCuB_FiCqEsAeB]c@GaCUkMq@{Jq@iG{@{GqAoFqAgI{BqGkBeEaAgE]mFAuDXsEt@mE~AcDfBcH~D_F|ByE`BgFlA{Fv@mKh@yJPuHGqGU}Fo@yFkBaEwBsEeEiDqEsCyFcBcFiBiJiBgJiC_H_EkI{CgHkCiI{BuI}AsEm@uAwA}CmAmB}IwLoAsBw@oAc@w@{BkEmD{GeD{EyAaB_EmEkHmIwGeJuF}IeDgFkDmE{A_BqFmFwAcAiHyEyDmCoDoCcCuB{B{BoBuB_@_@y@_AY[gEuFeBgCyA}BKOu@oA_DwEuB_CsBqBkCqB{H_FgG{DkFcEsGcHcEyFeEoHyDwIgDuJ{AgFsC_IwDkIgEmHsGoI}HiJkFuGmEcHuD}GyHgQgEyIiDkGaHsJ_JuKaEgFcGwJ}BwEk@mAkFuLuK}XsFgMwDeHcEoH}FgI{G_JqM_N{LmKgNmM{A{AoGgHmHyJmEuG{G}L{EaKqE_LkDeKoDeMu@aDQs@iA}EcHs]_EcQaEiOaBkFkDcKaAkCqCgHeDwHgDgHeBmDgAqBwB}DuC_FeEsGcJoMoLmNsEwE_D}CkF{EiJuHeKmHoLgHcLyFsLaFgXwJ{HiDgHqEaGsFgGsHyEgIqCoGmDcLyBiK}Ee\\mC_Ls@sB}AcEoAiCwBoDqAiBwBkCoBkBmB_B{CuBeG}C_IoDaMuFqGyC}DgBkEoB_Bs@eHeD{BiAyAu@iAm@wA}@iC_B_C}A_Ao@gAw@uAeAgCsBcA}@yCmCsDsDaBcBeBqBaDwDuCyDcAwAaD_FeBsCu@uAcEmHoAgCmC_GkBwEgBwEwAiEg@yAmAaE_AeDeCiJ}CaMuCiK_BeFeD_K_BeFo@sBc@}AiAkE}BaKsAuG{AsGgAwDaAyC}@sB_AyByBmDkBmC_CoCwDiDcE{CuCyAiDiAwBc@oCm@eR_D}G}AgC}@gA_@aGcCuAs@q@_@uC}AwDiCgDkC_DqCaDkD_FqFo@y@k@q@eDyDwFuF{DaDi@_@eF_DgFwCiF}CeFgDkG{EcEuDoFsFwMaP{@eAkCyC}BcCyFsFcFuE{D}CsE{Co@c@cJuFsJuFyDgCy\\}U}EsD}E}CsCaBaDwAcDiAcDw@iCe@{C]eUgBmEg@yEy@eDy@gFaBmDyAiEwBsFoDgDiCkDcDqCsCaKiMiEeGkIkLgG{H_I}IaFwFkCeDmBmCqCqEqFqJgCyDqBaCyBuB}C_CcDeBkE}AkDu@}D]uDG_Rz@eHL}IA}IDkGXgFh@sE`AuBh@aDfAsGbDuHbFySrQgF|DmC|A{BjA_Bv@s@ZqC`A}Ab@gFdAeD`@gAF}FPyECqE[yHeAiUgFyF_A_Gg@sFWqISiEYuC[oEw@kEgAyDsAgV}KgIyCsGaB{GoAyQwC}FoAcFyA}LuEoHeCmD_AwEcAoG{@cCS}CQyFCkDDiEToE`@{Dj@_GnAyOrEsJjCuH|AwFz@mF`@{EXyHRuFCsFSaF]sGy@wK_BkKiA}Ho@kG]aGe@gEa@iEg@gGm@aEMmC@qCJyBPoDj@wBb@sDbAgCbAkAh@_B~@gBdAu@f@gDlCwFbFsBnB{FhFmAbAuBbBoM~J}ClCy@|@kDrE{C|EsClHaF|PkDlIwErH}FnGwK~FeJfD_CjAuCpB_A~@{AtAkCjDaCdE}AzDeAtDcFpR}BpGaDlHeF`JwKnM}DvFgCzE{HxUoBnEmEtG{FrEkFxBqE`AeFRwEWqFqA_NkEyD{@}SaDgEcB_DwBiDcDeD}FwAsEsAoGKgAm@uGaBeLkC_IkF{HoGuEyFmB{Ga@uFb@gSnF_JlAsKNaL_A{KcCoIkD}HqEaKmJwCaEcDwEuBsDmAgB_CcD}C{CkBwAkBiAsBaAsBu@kCm@iC_@wCMwC?uDXmDp@iLxCsGhAsBRwBLmCFqINqIXoEb@gEv@oEjAgE~AgD`B_DlBoCpBgCzByDvDsDzDsDzD}DnDgE`DqErCo@^qKvFkK`GwKjH{K`HiHzDmHpDeKpEmKdE{GzCkDnBaBdA_BjA{D`DkDfDcDrDwU~YgLlL_G|EsRpOgHxH_GnI{H|L{@tAuBnCeBxBwA`BsDpDiCxBkBvAkBpAmC|AwE~BiCdAiC|@}HnBeIjAwH^sIFmJ@iFJkGZ_G`@gDDuFYcFmAuD}AiF}CaFiCcEoAcEm@kGMwEPqFTiGFuEYiEq@gEmAyD_BqEqCsGwE{FkE_HmEiIqFkEiDiGwEmIwEeAe@iBq@uAe@cBc@iK_CiHiBwLgD_HiAoGMmF`@mFlAuEnBwErCsEnDcHjFeJ~FiG|CkGfDuE`DaGfEuEvDsEnD{FnD}GlC}EtBmBfAqErDmC`DqB`DyBtEcDjHmDvHiDzFcGxHmFxEyFpDqIvDeEnBu@\\mGjDkHxDm@Z[NoFbCOHsMhFsAf@iHnB_IhBmNxCiFbBoFpCmExD_ErFeCbFuDnK_DnJcD`I{EhIsClDaHfH_GpFaErE}AhCgBjDgB`Fu@xCg@bCu@fEQlAu@fG[jBi@rCo@pCg@jBm@bBs@rBq@tAq@tAuAvB}AvBsArA_B~A_BhAcCvAcBx@oDnAoG|AgMdDaDdAsA`@qAZuB^wBPy@Du@@oB?_F_@yCs@qC_AmDcB{FuDyEwCiF}BwEgA{Iy@qKk@cRe@kJc@_Jm@eFo@gASyBe@{EsBaEmC_DwCoGgH{EqE{E{CmEgB}FuAcF_@}FBuHGgFSgEg@kFsAmEoBiE{CaD}CuDaF_G}JoFeIgDiDoE{CcE}ByDyBsE}CoFwDyC}BmCoByCaBmBy@}C}@kDs@sE_@_C?eERiIv@uGRsFGuDS_Es@kEgAmD_BwCiBwDgCuDoC}EkDaDgBgEuA{Ew@gDOeEDuEn@yDhAkBv@}ErCyGpEwAv@cDtAwCp@yEh@{EB}Dc@_E}@aGoB_GuBwFcBmHeByGoAaIiAsHk@wEq@kDwAkDkBaCeBoBkBeCuCaD}DeEqE_EuD_F}DwEoDoDaCkFgDmEeC_GiC}FgCyFkBcHsBeI_BwHiA_FaAwJoC}Bs@qDmA_CcAmCaAaCgA}DqB_DiBgDuBwE}Cq@g@sB{AkDuC{CoCqDsDeDoDeD_E{DeF}BuCk@k@aDaDkDiC_EwBoF_BmFq@kEIkEJeFh@eFp@kHx@cFXyEBwDK}Ee@iE_AuG_CmEyBuCeBwD_C_DyBoDyBuDkBwEcBqE_AeD[wAGoFC{EBsGR{CBwEQsDu@{C_AgDwAgCmAiE}BgFkCwEeBqFaBoEaAyDg@_DYgDOeCCgGLwLh@uGRmGE_DU_De@c@GGAiB_@iCw@uB{@mB}@cAk@wEiDgCiC_CiCcCyC_AqAoBoCaEiFkDyDiBeBoCqBwDuBoDqAuCu@oEs@{O}AyE_AaDgAwC{AmBoAy@m@cC{BiBuBgBcCmGaK}BcD{BiCmCgCeCkBqKwGwCuBwCoCaCwCqB{CgBsDyA_EoAgEiDgPoBeIyCsKcDoKs[ydAaG{QoBeFuCwFcCmDuDgEkEyDaMeI_DcCcCgCoBaC}BmDmHiNyBeDgCeDoDkDqCuBcDsB}IqEkCaBkBsAgC}BsJaK_CsBgEwCeC{AuCmAeEuAwGiBuCgAkCiAyCeBuBwAcCoByBuBaJgKuEkEgD{Bq@]sAk@iAi@wCaAeJcC_Bk@w@_@sBcA}CsBiB{AyB}BsI{KoFcGgEgEqG{FoH{FuHaFqHeEaJcEsGsC}F{CwFeDcDyBwGcFqC_CaCyBeDcD_DiDoC{CoBmCwAmBiA}Aw@iAsCeEyBmDqAsBqAmBiB}BQOuCqCcDcC_E}BoKuE}CcB}B_BsCeC}BcCaCcDmB}CeBiD}A_EeC}H_D{JuBwF_CyFcF{KqCmFkGiKcFmHaCqDkCeEmBeDyFgKcBmC}ByCiDmD_D_CuCcBcH}CaEgByCgBqCwBgCaC}EkFkCeC{DoCoDkBuE}AuE}@{E]yCAsCHuF`@qBHwBDwBIsBOgCg@{C}@oB_AaB_A_BcAuA}@uBmAcB{@qAo@{Ac@yAa@iB_@uASyAKyAEaBCiBBeBHeBJ}BNoBDiCCcFc@qCk@mC_AuCoAmCiBg@]oG_GmDaDiEsC_DsAmDmAmE_AqEc@uLi@}Ea@{E}@sFiBoFaCoGiEwCiC_@_@aA_A_EaFuCcEmD{EiC_DgBuB_CiCa@c@qBqBQQsDuDqCeDwB_Ds@iAgBgD{@qBq@{Ak@_Bi@gBk@oBs@cDa@oBc@uC[qCWaC[qEQ{CUwEUaD_@eDc@kCg@_Cs@iCw@_CcA_CcAoBy@{Aw@iAgBuBeCuBuAaAoBkAWOs@]aHsBi@IqAQ{BSkAAoDFmBD_@@{EGqD]cB_@qC_AgCoAaFsCkDgByEcBgEgAoEq@qG_@cGBwEXoFl@aDx@}DjAoEpAwCdA}FnAqC^iE^gCNoADwD@iBCuBOiDe@qEk@{EaAwEgAwGkAiGg@wG?eHh@sFhAeGrAyDz@iFf@qDDiGc@{E_AsEyAcE{AaHeC_Es@aFk@oFc@sGqAkFeC{DkCi@g@gAcAaG_FeF_CqDgAqDg@kDa@{DQuEEqD@gET_DVgAN}@PmCb@cCf@m@Ns@L_Cd@iCh@SByC`@kDd@yCPI@wCJ_DDgDCcFe@mGy@kEu@uGsAoIuAcFm@gDScEKaFGkHNmJVoHNoGFyF?{FAkFEaGOqIQoCG_FQaBA{CEeD?iFL}EZsHhAwAPaEf@mFhA_Fv@iBTgBLgBFwA@aBAyAEoAIgAKwBUoEi@wEm@qEo@kFWwEQeECmEJkC?uDGoAGqAMoBa@uAc@uAc@cAa@qAu@aBeA}AiAyBiBsEyCaF_CeGeB{Dk@aFYgDBmDT_Ff@{AJ}AFgD@kDUqDm@mBe@}@_@cCkAmAu@][eDsCiBuA{BgB}BeBmBuAyBmAi@[sBeAyAk@iBo@uD}@sEi@kFCoF^qHhBqE|ByDxCsClCaEfFiExE}EtDgE~BgH|CaHvBwDr@yFv@eEPuF?yH?cFH_FZcEn@iDt@aEjA_ExAkGzBqFdBcFjAwB\\uBVwEZoETmGLyFViD\\kCd@sEbA_FzA}FbB}EjAmDv@yEn@kD\\eEF_EPmEDuFJyE@wEVmBPw@HeDb@mDn@wEdA{FbBwEtAqD~@qFbAeEb@kEVc@@iA?sEAgEY{DYsAQmGu@uGe@gCKsFAiJDwDK{E]sEo@oE{@sFkAkGuA}E{@{Ek@uE[cFGaFHeFX}J`AoIx@}BNoJ`@iBBsBAaA?}DMuEUmBOgEa@uBWuCg@oGuA}F}AuIyCyG}BiF}AaHaB}HiAiHk@oIKsIRgE\\oEj@uNvCoMfCkNfAuLJyOp@cMzB_LxD}JrEaPjG{PdEqL~B}IpBuMzE_J`EeKhGyKxIoL|LaLvNk@t@eElFcJpLyJxKaKtHuJ`FiKfD{M~B_Nh@wPLmOd@iIr@iIhAiHvA_JvBoLxCiLfCgNfBcPr@qPUgNMeHNqGXqFh@oFt@qEz@oEdAkF~AcFhBkGlCwEfCaFxCcGfEwFjE{FfEqBlAuBhAqCjAqC~@{Bl@yBd@{BZaCT{Qp@kCPeD`@yCh@kD|@iDhAqDzAkDjByDdCqDxC_DzCsCfDoCtDyDvGgBvDyDxIsBvE_C~E_CjE}DlGcEtFiD~DyFnF_BvAyFdE{ClBaExBmEnBwFpByErAeIlBeH`BeHrB}FtBcGjC}C`B{CdBcHrEcGlEeExCsAx@oCrAaDfA_Dp@}DZiEB}EYoB]kBe@sJ}CkBk@qDq@gDg@yBOwBGkDCuDRsEf@mB^iCd@sM~AyBNwI`@sHFoCE}CCuCUiGi@aKiA{ASuAK_@EcBA{ACoDDeGZoCZ{EbAiAV{EdAiB\\cBRuCNoBBwDIqE]uB]kLsCeDo@kEo@uDWyE?}ETyG|@uFv@qF^qD@mESuEm@kEeAkEaBeDcBaDyBwCcCcDmDsEiGyDmFaF_G}DqDsEmD{CkBsDkB{FcCuAi@aFwBmE}B{ByA{DyCeByAsDyD{I_KoFsFgFwEeF}DaGgEwD_CiEeCyFsC}FgCwEeBoFgB_Bi@YKiEwByBuA{BeBeBeBoB{BqDqFcJkN}E}FaGiFaEsCsFyCuDyAoFmBcLmD_Cy@gDyAiC{A_EqCeBkAyBaBwDeCiCqAyCiAwBi@eCe@wCc@aBKqBCqC?aEBeBEsBK}B]wCo@sBu@sBcAwBuAeEgD_C_BsAu@eAg@eAa@}Ag@iCg@yASqCQuBCsCNuANkAReCn@}@XqGxCiEdBkLdFsEzBwEjB_D~@kDr@gEd@kDTsCD{BC}CKoCYiC]gFaA{Ce@mC[wCOgC?{CToCd@iCp@yB|@}@^_A`@eIjDuAh@iDnAcCz@cEfAmBb@yAZ}@Pa@HqBb@mDd@oD^eBNmFVmEJiG?mEMeIg@wKoAaFo@}Ek@{D_@mEWmEOuEAsOd@sN`AeNj@wKFqLUqQWqNNkJb@qL`AqIfAuLrB_MzCsMbEwIfDmF`C{LhGkLfHiEzCmCpB{LxIcJvF}BvAmHbEqK`Ga@T}IdFwKfGgQvJoEbCiE`C{DfBgCz@aARe@JyDb@aCFiB?aDMiIa@eHSkJCyCF_ADwBDmDPkCZ}Dl@cHnAgCp@aDv@qFhBiFxByFfCeH`DoGfCcGjBgGlAiHv@cIRcKUk\\qBe`@mCwGOwKFyKh@iIjAyHxAkJ~Bu]|McKbDsJ|BaHnAsJhAgLj@gMh@sRDaM^mI|@iHdB{OlFmGjAgG\\{DGqEi@kFsAcMeEcHsAiGSsFXuDj@yBn@mNvFmPjFeLnCaLhBsNpA}Or@}Rj@kL^aGb@sGtAwFfCeFdEqCfDqFvHoDvDkExCeFzBqI~AoIr@yJNsHWcIq@cIqAiJsAaJkAeJQyKXqSfB}Ip@iERgDHwIDcGE_GKsCIoCGaHOwGCsL\\uGj@]JYDmDf@gDl@cDt@mD~@sA^cKnD{LpFaHbDmHlCcEpAaEbAiInAoIr@aKJwCKiFk@qG}AwEuAoBc@qB[qBSqBKwLM}DWmEs@uBm@kBq@eE{BwDwCiCiCmC{BaC_B_CeAkEuAG?sB]aBQiBGeBA}BJwBVsB`@uBn@oBv@mBbAyAbAmA~@gDbDoAlAuAlA{AdAcBbAwHdDoDlBeF~DgFxEmExByF~AgJhAwB`@sBj@sBv@qBbAcFfDaD~CiDfFuElIkE|F_GfFqFjCyEjAyEVeGC{FeA{EgBiHqCqGgA_Jk@yCOsC]yGaAeIcAq@GkF]eDEcFDqBHsBJuHn@sHd@gBDaCG}C]eDg@qCy@i@Qc@MqC{@u@UuAc@kDo@mDs@oAUa@IiAUmCyA_DeCcBgBsBmCiB{CoCmEmBkC_CeCoHeGaCmB_Ai@eAo@aDsAwBo@uB_@{BUaDImCBcGb@iBBkBEkCQmB[yEyAwEyB}EgBgFcAaFQkFVwDn@yJtBmEn@yFL}CDsCVcBV{AX}Ah@iBv@aBbAm@Zu@h@_BxAuD`E}DjGaEhEmEbDgD|AgEdAsHjA_JlBsOlF_Bh@iFnB{DrAuAd@iBb@sATiFRaB?kDUsDk@kBe@eEwAmEcB",
"mode": "driving",
"maneuver": {
"bearing_after": 25,
"bearing_before": 5,
"location": [-9.112439, 38.793783],
"modifier": "slight left",
"type": "merge"
},
"ref": "A 1",
"weight": 8606.199999999997,
"duration": 8602.000000000002,
"name": "Autoestrada do Norte",
"distance": 290535
}, {
"intersections": [{
"classes": ["motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["right"]
}, {
"valid": false,
"indications": ["right"]
}],
"out": 0,
"in": 2,
"entry": [true, true, false],
"bearings": [15, 30, 195],
"location": [-8.580459, 41.073682]
}, {
"classes": ["motorway"],
"out": 0,
"in": 2,
"entry": [true, false, false],
"bearings": [30, 195, 210],
"location": [-8.577354, 41.077717]
}, {
"classes": ["motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["right"]
}],
"out": 2,
"in": 1,
"entry": [true, false, true],
"bearings": [5, 179, 356],
"location": [-8.575316, 41.083207]
}, {
"classes": ["motorway"],
"out": 0,
"in": 2,
"entry": [true, false, false],
"bearings": [0, 165, 180],
"location": [-8.575718, 41.086893]
}, {
"classes": ["motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["right"]
}],
"out": 0,
"in": 2,
"entry": [true, true, false],
"bearings": [0, 15, 180],
"location": [-8.575707, 41.08843]
}, {
"classes": ["motorway"],
"out": 0,
"in": 2,
"entry": [true, false, false],
"bearings": [15, 180, 195],
"location": [-8.574438, 41.091607]
}, {
"classes": ["motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight", "right"]
}],
"out": 0,
"in": 2,
"entry": [true, true, false],
"bearings": [30, 60, 210],
"location": [-8.571976, 41.098632]
}, {
"classes": ["motorway"],
"out": 0,
"in": 1,
"entry": [true, false, false],
"bearings": [19, 197, 200],
"location": [-8.566281, 41.104786]
}, {
"classes": ["motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight", "right"]
}],
"out": 1,
"in": 0,
"entry": [false, true, true],
"bearings": [135, 315, 330],
"location": [-8.578053, 41.135428]
}],
"driving_side": "right",
"geometry": "oeuyFzzjs@i@MWOoDyBqG_FkByAwD{CcBsA}DaCiAg@gEwAgB]oDa@wDCq@@S@mADqShAcADeB@iBG_@AaAKe@GsAU{CaA_E_BaA_@a@QeE{Am@S}E}A{Dq@aK{AwCk@}C_Au@c@{@g@{BiBmB}BgHyKiAwAmAoAoB{Ay@i@eDsAyCgAiBq@}@[o@SWI_@KwAWeAKmAIoA?oAFaAJ}@N[FwBr@q@Z_CtAqGzFiCxBqCfCuBhBqC`CuBhBo@h@q@d@kAj@iAd@m@PWHYFgAPuAJgBL_CL_CLq@Dw@HwCd@}RjEiGpAu@ReDz@aBj@iBv@qGlCqAh@k@Ri@LsAV]D[Bg@FcBJwCRyCRUBW@SBS@SDUBQBODQDUDUHUFQFQHMFOFSJULMHOJOJMJOJMLOLSPKL_@`@KLKNMPY`@U`@S`@cApBMTKRKPKNMRORKLKLMNKLKJOLOLQLQLOJQHOHQHUJUHUFIB",
"mode": "driving",
"maneuver": {
"bearing_after": 12,
"bearing_before": 19,
"location": [-8.580459, 41.073682],
"modifier": "slight left",
"type": "fork"
},
"ref": "IP 1; A 20",
"weight": 287.79999999999995,
"duration": 287.2,
"name": "",
"distance": 7769.9
}, {
"intersections": [{
"classes": ["motorway"],
"out": 1,
"in": 0,
"entry": [false, true],
"bearings": [165, 345],
"location": [-8.580551, 41.137753]
}, {
"classes": ["motorway"],
"out": 0,
"in": 2,
"entry": [true, false, false],
"bearings": [0, 150, 180],
"location": [-8.580703, 41.138688]
}, {
"classes": ["motorway"],
"out": 0,
"in": 1,
"entry": [true, false],
"bearings": [0, 180],
"location": [-8.580979, 41.145269]
}, {
"classes": ["motorway"],
"out": 0,
"in": 1,
"entry": [true, false],
"bearings": [15, 195],
"location": [-8.580788, 41.146635]
}, {
"classes": ["motorway"],
"out": 0,
"in": 1,
"entry": [true, false],
"bearings": [30, 210],
"location": [-8.580502, 41.147155]
}, {
"classes": ["motorway"],
"out": 0,
"in": 2,
"entry": [true, false, false],
"bearings": [23, 209, 213],
"location": [-8.579148, 41.148683]
}, {
"classes": ["motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["slight right"]
}],
"out": 2,
"in": 1,
"entry": [true, false, true],
"bearings": [6, 182, 355],
"location": [-8.578781, 41.149836]
}, {
"classes": ["motorway"],
"out": 1,
"in": 0,
"entry": [false, true],
"bearings": [180, 345],
"location": [-8.578815, 41.15013]
}, {
"classes": ["motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight", "slight right"]
}],
"out": 2,
"in": 1,
"entry": [false, false, true],
"bearings": [120, 135, 315],
"location": [-8.580176, 41.152076]
}, {
"classes": ["motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["slight right"]
}],
"out": 1,
"in": 0,
"entry": [false, true, true],
"bearings": [135, 315, 330],
"location": [-8.580662, 41.152473]
}, {
"classes": ["motorway"],
"out": 0,
"in": 2,
"entry": [true, false, false],
"bearings": [0, 165, 180],
"location": [-8.582997, 41.156772]
}],
"driving_side": "right",
"geometry": "}uazFl{js@KBMBIBSBOBQBU@SBw@?iA@}D@gU\\sITuB?iAGqA]s@Ys@_@_@[_FkEo@e@}@a@_AWg@Ia@C_@Ag@DQ@k@Hk@He@Nc@Rs@b@q@j@}BfCu@`AW\\uBlCo@p@aBxAsA|@y@`@}Aj@qAXmAPwAFoBEIAu@Ew@OsBc@qEsAcJiCyEuAaAM",
"mode": "driving",
"maneuver": {
"bearing_after": 344,
"bearing_before": 343,
"location": [-8.580551, 41.137753],
"modifier": "straight",
"type": "new name"
},
"ref": "IP1; A20",
"weight": 131.6,
"duration": 131.1,
"name": "",
"distance": 2894.4
}, {
"intersections": [{
"classes": ["motorway"],
"out": 0,
"in": 1,
"entry": [true, false],
"bearings": [0, 195],
"location": [-8.58109, 41.162202]
}, {
"classes": ["motorway"],
"out": 2,
"in": 1,
"entry": [true, false, true],
"bearings": [15, 180, 345],
"location": [-8.581058, 41.162607]
}, {
"classes": ["motorway"],
"out": 2,
"in": 0,
"entry": [false, false, true],
"bearings": [150, 165, 330],
"location": [-8.582343, 41.165323]
}, {
"classes": ["motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["right"]
}],
"out": 1,
"in": 0,
"entry": [false, true, true],
"bearings": [120, 300, 315],
"location": [-8.586669, 41.166966]
}, {
"classes": ["motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["right"]
}],
"out": 1,
"in": 0,
"entry": [false, true, true],
"bearings": [120, 300, 345],
"location": [-8.588505, 41.167963]
}, {
"classes": ["motorway"],
"out": 2,
"in": 1,
"entry": [false, false, true],
"bearings": [105, 135, 315],
"location": [-8.589606, 41.168596]
}, {
"classes": ["motorway"],
"lanes": [{
"valid": true,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["right"]
}],
"out": 1,
"in": 0,
"entry": [false, true, true],
"bearings": [135, 300, 315],
"location": [-8.593887, 41.171353]
}, {
"classes": ["motorway"],
"out": 2,
"in": 1,
"entry": [false, false, true],
"bearings": [70, 82, 254],
"location": [-8.597097, 41.171784]
}],
"driving_side": "right",
"geometry": "wnfzFx~js@m@Cc@Ae@Fk@H_@JwAh@sIvD[P]T[Vy@`A_@n@[r@Sh@Qr@Mr@Gh@Eh@EpBAf@GvAOjA[vA}@xBy@dBmAnCkBxDS`@y@~Ai@fAaBzCkBdDmAtBwBpDm@dAc@dA[v@U|@M~@E^A`@AbA@`AD`ADz@H~@VlB^bDTjBR`CBp@BhA?n@A|@",
"mode": "driving",
"maneuver": {
"bearing_after": 2,
"bearing_before": 8,
"location": [-8.58109, 41.162202],
"modifier": "straight",
"type": "new name"
},
"ref": "IC 23; A 20",
"weight": 138.60000000000002,
"duration": 131.2,
"name": "",
"distance": 2177.9
}, {
"intersections": [{
"classes": ["motorway"],
"lanes": [{
"valid": false,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["straight"]
}, {
"valid": false,
"indications": ["straight"]
}, {
"valid": true,
"indications": ["right"]
}],
"out": 2,
"in": 0,
"entry": [false, true, true],
"bearings": [90, 270, 285],
"location": [-8.600832, 41.171263]
}],
"driving_side": "right",
"geometry": "kghzFdzns@YxAQ`AQt@Kd@Ip@KnAGjA",
"mode": "driving",
"destinations": "Porto, Paranhos, Hospital",
"maneuver": {
"bearing_after": 291,
"bearing_before": 271,
"location": [-8.600832, 41.171263],
"modifier": "slight right",
"type": "off ramp"
},
"weight": 13.1,
"duration": 12.9,
"name": "",
"distance": 199.7
}, {
"intersections": [{
"classes": ["motorway"],
"out": 2,
"in": 0,
"entry": [false, true, true],
"bearings": [105, 285, 300],
"location": [-8.603104, 41.171781]
}, {
"out": 0,
"in": 2,
"entry": [true, false, false],
"bearings": [120, 285, 330],
"location": [-8.604757, 41.172179]
}],
"driving_side": "right",
"geometry": "sjhzFjhos@MZSd@UXaAx@a@\\]\\Q\\G`@?XBTLXNNRFLBPCLGLOPOVw@DGFGJEHEDAF?D?F@",
"mode": "driving",
"destinations": "Porto",
"maneuver": {
"bearing_after": 302,
"bearing_before": 278,
"location": [-8.603104, 41.171781],
"modifier": "slight right",
"type": "fork"
},
"weight": 34.9,
"duration": 34.2,
"name": "",
"distance": 339.3
}, {
"intersections": [{
"out": 1,
"in": 0,
"entry": [false, true],
"bearings": [15, 210],
"location": [-8.604339, 41.171743]
}, {
"out": 2,
"in": 0,
"entry": [false, true, true, false],
"bearings": [30, 75, 210, 300],
"location": [-8.604937, 41.170977]
}, {
"out": 1,
"in": 0,
"entry": [false, true, false],
"bearings": [0, 180, 315],
"location": [-8.606506, 41.168022]
}],
"driving_side": "right",
"geometry": "kjhzFbpos@fCfBNN~AjA|AhAf@^hAz@LHp@f@XHRBb@BlCBjA?pEDZ@",
"mode": "driving",
"maneuver": {
"bearing_after": 209,
"bearing_before": 192,
"location": [-8.604339, 41.171743],
"modifier": "straight",
"type": "new name"
},
"weight": 133.9,
"duration": 106.19999999999999,
"name": "Rua de Faria Guimarães",
"distance": 637
}, {
"intersections": [{
"out": 3,
"in": 0,
"entry": [false, false, true, true],
"bearings": [0, 150, 180, 270],
"location": [-8.606551, 41.16645]
}],
"driving_side": "right",
"geometry": "iigzF|}os@AXEdA",
"mode": "driving",
"maneuver": {
"bearing_after": 275,
"bearing_before": 181,
"location": [-8.606551, 41.16645],
"modifier": "right",
"type": "turn"
},
"weight": 7.9,
"duration": 7.6,
"name": "Rua do Covelo",
"distance": 39.9
}, {
"intersections": [{
"out": 1,
"in": 0,
"entry": [false, true, true],
"bearings": [90, 270, 285],
"location": [-8.607025, 41.16649]
}],
"driving_side": "right",
"geometry": "qigzF|`ps@@H?J?NAXANBDD@jCJDBDB@HC~C",
"mode": "driving",
"maneuver": {
"bearing_after": 262,
"bearing_before": 275,
"location": [-8.607025, 41.16649],
"modifier": "slight left",
"type": "fork"
},
"weight": 71.4,
"duration": 39.3,
"name": "Rua Doutor Adriano de Paiva",
"distance": 197.8
}, {
"intersections": [{
"out": 1,
"in": 0,
"entry": [false, true, false],
"bearings": [90, 180, 270],
"location": [-8.608421, 41.165701]
}],
"driving_side": "right",
"geometry": "sdgzFrips@zFN",
"mode": "driving",
"maneuver": {
"bearing_after": 181,
"bearing_before": 271,
"location": [-8.608421, 41.165701],
"modifier": "left",
"type": "turn"
},
"weight": 42.2,
"duration": 42.1,
"name": "Rua Joaquim Kopke",
"distance": 140.2
}, {
"intersections": [{
"out": 2,
"in": 0,
"entry": [false, true, true, false],
"bearings": [0, 90, 180, 270],
"location": [-8.608501, 41.164442]
}],
"driving_side": "right",
"geometry": "w|fzFbjps@L?X@N@JBlBl@BBz@VFBlCx@",
"mode": "driving",
"maneuver": {
"bearing_after": 180,
"bearing_before": 181,
"location": [-8.608501, 41.164442],
"modifier": "straight",
"type": "new name"
},
"weight": 77.4,
"duration": 65.1,
"name": "Rua Cantor Zeca Afonso",
"distance": 227.8
}, {
"intersections": [{
"out": 2,
"in": 0,
"entry": [false, false, true, true],
"bearings": [15, 105, 195, 285],
"location": [-8.609223, 41.162476]
}, {
"out": 2,
"in": 0,
"entry": [false, true, true, false],
"bearings": [15, 105, 195, 285],
"location": [-8.609597, 41.161466]
}],
"driving_side": "right",
"geometry": "opfzFrnps@tDbARFTBpBp@dAN",
"mode": "driving",
"maneuver": {
"bearing_after": 195,
"bearing_before": 196,
"location": [-8.609223, 41.162476],
"modifier": "straight",
"type": "new name"
},
"weight": 73.19999999999999,
"duration": 60.7,
"name": "Rua de São Brás",
"distance": 234.8
}, {
"intersections": [{
"out": 2,
"in": 0,
"entry": [false, false, true, true, true],
"bearings": [15, 105, 165, 225, 285],
"location": [-8.609951, 41.160441]
}, {
"out": 1,
"in": 0,
"entry": [false, true, false],
"bearings": [0, 180, 285],
"location": [-8.609944, 41.158732]
}, {
"out": 2,
"in": 0,
"entry": [false, false, true],
"bearings": [0, 60, 180],
"location": [-8.609979, 41.15748]
}, {
"out": 2,
"in": 0,
"entry": [false, true, true, false],
"bearings": [0, 75, 180, 255],
"location": [-8.609984, 41.157254]
}, {
"out": 2,
"in": 0,
"entry": [false, false, true, true],
"bearings": [0, 45, 180, 225],
"location": [-8.610008, 41.155675]
}, {
"out": 2,
"in": 0,
"entry": [false, false, true, true],
"bearings": [0, 90, 180, 270],
"location": [-8.610018, 41.155197]
}, {
"out": 2,
"in": 0,
"entry": [false, true, true],
"bearings": [0, 165, 180],
"location": [-8.610043, 41.15433]
}, {
"out": 2,
"in": 0,
"entry": [false, false, true, true],
"bearings": [0, 90, 180, 270],
"location": [-8.610057, 41.15362]
}, {
"out": 1,
"in": 0,
"entry": [false, true, false],
"bearings": [0, 180, 270],
"location": [-8.610057, 41.153503]
}, {
"out": 2,
"in": 0,
"entry": [false, false, true],
"bearings": [1, 174, 187],
"location": [-8.61004, 41.152263]
}],
"driving_side": "right",
"geometry": "wcfzFdsps@VEnHBL?xFF\\?N?xHD~A@lDBvA@Z?X@V?z@?HEpD@j@FP@RH",
"mode": "driving",
"maneuver": {
"bearing_after": 168,
"bearing_before": 188,
"location": [-8.609951, 41.160441],
"modifier": "straight",
"type": "turn"
},
"weight": 183,
"duration": 182.3,
"name": "Rua de Camões",
"distance": 957.7
}, {
"intersections": [{
"out": 2,
"in": 0,
"entry": [false, false, true, false],
"bearings": [0, 120, 210, 315],
"location": [-8.610143, 41.151849]
}],
"driving_side": "right",
"geometry": "andzFjtps@~AhAr@f@\\VJFNBNAXA",
"mode": "driving",
"maneuver": {
"bearing_after": 209,
"bearing_before": 187,
"location": [-8.610143, 41.151849],
"modifier": "slight right",
"type": "new name"
},
"weight": 23.2,
"duration": 23,
"name": "Rua Heróis e Mártires de Angola",
"distance": 154.2
}, {
"intersections": [{
"out": 1,
"in": 0,
"entry": [false, true, true],
"bearings": [0, 180, 225],
"location": [-8.610867, 41.15061]
}, {
"out": 1,
"in": 0,
"entry": [false, true, true],
"bearings": [0, 180, 225],
"location": [-8.611213, 41.149423]
}],
"driving_side": "right",
"geometry": "ifdzF|xps@VCH?H@JBv@j@JFTLJBHBH?z@GXA",
"mode": "driving",
"maneuver": {
"bearing_after": 177,
"bearing_before": 174,
"location": [-8.610867, 41.15061],
"modifier": "straight",
"type": "new name"
},
"weight": 94.6,
"duration": 35.9,
"name": "Rua do Clube dos Fenianos",
"distance": 155.3
}, {
"intersections": [{
"out": 2,
"in": 0,
"entry": [false, false, true, true],
"bearings": [0, 30, 105, 180],
"location": [-8.6112, 41.149287]
}],
"driving_side": "right",
"geometry": "a~czF~zps@@K@UDg@",
"mode": "driving",
"maneuver": {
"bearing_after": 98,
"bearing_before": 175,
"location": [-8.6112, 41.149287],
"modifier": "left",
"type": "turn"
},
"weight": 22.5,
"duration": 22.5,
"name": "Praça General Humberto Delgado",
"distance": 31.3
}, {
"intersections": [{
"in": 0,
"entry": [true],
"bearings": [279],
"location": [-8.610831, 41.149244]
}],
"driving_side": "right",
"geometry": "w}czFtxps@",
"mode": "driving",
"maneuver": {
"bearing_after": 0,
"bearing_before": 99,
"location": [-8.610831, 41.149244],
"modifier": "left",
"type": "arrive"
},
"weight": 0,
"duration": 0,
"name": "Praça General Humberto Delgado",
"distance": 0
}],
"distance": 318692.1
}],
"weight_name": "routability",
"weight": 11481.1,
"duration": 10976.2,
"distance": 318692.1
}, {
"legs": [{
"summary": "Autoestrada do Oeste, A 17",
"weight": 12713.5,
"duration": 12156.9,
"steps": [{
"intersections": [{
"out": 0,
"entry": [true],
"bearings": [73],
"location": [-9.136778, 38.708199]
}],
"driving_side": "right",
"geometry": "gegkFzowv@AIE]O}@CICGAGGKCGEECEAA",
"mode": "driving",
"maneuver": {
"bearing_after": 73,
"bearing_before": 0,
"location": [-9.136778, 38.708199],
"modifier": "right",
"type": "depart"
},
"weight": 55.1,
"duration": 23.1,
"name": "Praça do Comércio",
"distance": 79
}, {
"intersections": [{
"out": 3,
"in": 2,
"entry": [false, false, false, true],
"bearings": [60, 165, 240, 345],
"location": [-9.135967, 38.708493]
}, {
"out": 3,
"in": 1,
"entry": [false, false, false, true],
"bearings": [75, 165, 255, 345],
"location": [-9.136177, 38.709023]
}],
"driving_side": "right",
"geometry": "aggkFxjwv@[H}@VOF_AVMD",
"mode": "driving",
"maneuver": {
"bearing_after": 341,
"bearing_before": 57,
"location": [-9.135967, 38.708493],
"modifier": "left",
"type": "turn"
},
"weight": 73.1,
"duration": 36.7,
"name": "Rua da Prata",
"distance": 107
}, {
"intersections": [{
"out": 0,
"in": 1,
"entry": [true, false, false, true],
"bearings": [75, 165, 255, 345],
"location": [-9.136327, 38.709413]
}],
"driving_side": "right",
"geometry": "ylgkF`mwv@ACAMa@eC?EAG",
"mode": "driving",
"maneuver": {
"bearing_after": 71,
"bearing_before": 343,
"location": [-9.136327, 38.709413],
"modifier": "right",
"type": "turn"
},
"weight": 48.8,
"duration": 24.8,
"name": "Rua de São Julião",
"distance": 75.1
}, {
"intersections": [{
"out": 1,
"in": 2,
"entry": [true, true, false, false],
"bearings": [75, 165, 255, 345],
"location": [-9.135501, 38.709614]
}, {
"out": 1,
"in": 3,
"entry": [false, true, true, false],
"bearings": [75, 165, 255, 345],
"location": [-9.135338, 38.709227]
}],
"driving_side": "right",
"geometry": "angkFzgwv@|@YLEbAYLEHAB?DA",
"mode": "driving",
"maneuver": {
"bearing_after": 160,
"bearing_before": 71,
"location": [-9.135501, 38.709614],
"modifier": "right",
"type": "turn"
},
"weight": 98.69999999999999,
"duration": 44.7,
"name": "Rua dos Fanqueiros",
"distance": 103.9
}, {
"intersections": [{
"out": 1,
"in": 0,
"entry": [false, true,