{
 "run_id": "rc_9c9537ab",
 "variant_id": "underpass_j09",
 "corridor_id": "lingampally_lakdikapul",
 "time": {
  "window": "2026-07",
  "minutes": 15,
  "label": "July 2026 average, 6 am-11 pm"
 },
 "interventions": [
  {
   "junction_id": "j09",
   "kind": "underpass",
   "params": {
    "lanes": 2,
    "length_m": 600
   }
  }
 ],
 "journey": {
  "total_s": 3546,
  "distance_m": 21611,
  "tomtom_total_s": 3365,
  "legs": [
   {
    "from_id": "A_lingampally",
    "to_id": "j01",
    "from_name": "Lingampally (Old Bombay Rd, route start)",
    "to_name": "Nallagandla Rd jn",
    "distance_m": 2074,
    "time_s": 437,
    "speed_kmh": 17.1,
    "tomtom_time_s": 437,
    "time_s_sd": 35.8
   },
   {
    "from_id": "j01",
    "to_id": "j02",
    "from_name": "Nallagandla Rd jn",
    "to_name": "ISB Rd / DLF jn",
    "distance_m": 5231,
    "time_s": 799,
    "speed_kmh": 23.6,
    "tomtom_time_s": 801,
    "time_s_sd": 72.9
   },
   {
    "from_id": "j02",
    "to_id": "j03",
    "from_name": "ISB Rd / DLF jn",
    "to_name": "Gachibowli Circle",
    "distance_m": 1341,
    "time_s": 232,
    "speed_kmh": 20.8,
    "tomtom_time_s": 232,
    "time_s_sd": 17.9
   },
   {
    "from_id": "j03",
    "to_id": "j04",
    "from_name": "Gachibowli Circle",
    "to_name": "Biodiversity jn (flyover)",
    "distance_m": 1499,
    "time_s": 175,
    "speed_kmh": 30.8,
    "tomtom_time_s": 175,
    "time_s_sd": 16.4
   },
   {
    "from_id": "j04",
    "to_id": "j05",
    "from_name": "Biodiversity jn (flyover)",
    "to_name": "Khajaguda X Roads",
    "distance_m": 986,
    "time_s": 129,
    "speed_kmh": 27.5,
    "tomtom_time_s": 138,
    "time_s_sd": 16.9
   },
   {
    "from_id": "j05",
    "to_id": "j06",
    "from_name": "Khajaguda X Roads",
    "to_name": "Narne Rd jn Shaikpet",
    "distance_m": 1591,
    "time_s": 169,
    "speed_kmh": 33.8,
    "tomtom_time_s": 172,
    "time_s_sd": 12.8
   },
   {
    "from_id": "j06",
    "to_id": "j07",
    "from_name": "Narne Rd jn Shaikpet",
    "to_name": "Tolichowki",
    "distance_m": 2805,
    "time_s": 275,
    "speed_kmh": 36.6,
    "tomtom_time_s": 280,
    "time_s_sd": 21.0
   },
   {
    "from_id": "j07",
    "to_id": "j08",
    "from_name": "Tolichowki",
    "to_name": "Nanal Nagar jn",
    "distance_m": 1308,
    "time_s": 513,
    "speed_kmh": 9.2,
    "tomtom_time_s": 232,
    "time_s_sd": 267.6
   },
   {
    "from_id": "j08",
    "to_id": "j09",
    "from_name": "Nanal Nagar jn",
    "to_name": "Rethibowli jn",
    "distance_m": 340,
    "time_s": 32,
    "speed_kmh": 38.0,
    "tomtom_time_s": 58,
    "time_s_sd": 4.4
   },
   {
    "from_id": "j09",
    "to_id": "j10",
    "from_name": "Rethibowli jn",
    "to_name": "NMDC / Masab Tank Rd",
    "distance_m": 2155,
    "time_s": 385,
    "speed_kmh": 20.2,
    "tomtom_time_s": 433,
    "time_s_sd": 32.3
   },
   {
    "from_id": "j10",
    "to_id": "j11",
    "from_name": "NMDC / Masab Tank Rd",
    "to_name": "Masab Tank",
    "distance_m": 878,
    "time_s": 136,
    "speed_kmh": 23.2,
    "tomtom_time_s": 140,
    "time_s_sd": 22.2
   },
   {
    "from_id": "j11",
    "to_id": "B_lakdikapul",
    "from_name": "Masab Tank",
    "to_name": "Lakdikapul",
    "distance_m": 1403,
    "time_s": 264,
    "speed_kmh": 19.2,
    "tomtom_time_s": 267,
    "time_s_sd": 24.3
   }
  ],
  "total_s_sd": 274.3,
  "total_s_se": 70.9,
  "total_s_se_probes": 50.1,
  "run_to_run_sd_s": 50.2,
  "probe_trips": 30
 },
 "junctions": [
  {
   "id": "j01",
   "name": "Nallagandla Rd jn",
   "lat": 17.4795,
   "lon": 78.31992,
   "avg_delay_s": 10.5,
   "max_queue_m": 59,
   "vehicles": 2466
  },
  {
   "id": "j02",
   "name": "ISB Rd / DLF jn",
   "lat": 17.44527,
   "lon": 78.35255,
   "avg_delay_s": 7.2,
   "max_queue_m": 72,
   "vehicles": 3415
  },
  {
   "id": "j03",
   "name": "Gachibowli Circle",
   "lat": 17.43887,
   "lon": 78.36373,
   "avg_delay_s": 100.4,
   "max_queue_m": 150,
   "vehicles": 3143
  },
  {
   "id": "j04",
   "name": "Biodiversity jn (flyover)",
   "lat": 17.42909,
   "lon": 78.37452,
   "avg_delay_s": 9.8,
   "max_queue_m": 68,
   "vehicles": 2959
  },
  {
   "id": "j05",
   "name": "Khajaguda X Roads",
   "lat": 17.42266,
   "lon": 78.38211,
   "avg_delay_s": 8.4,
   "max_queue_m": 61,
   "vehicles": 3980
  },
  {
   "id": "j06",
   "name": "Narne Rd jn Shaikpet",
   "lat": 17.41412,
   "lon": 78.39443,
   "avg_delay_s": 15.9,
   "max_queue_m": 31,
   "vehicles": 1429
  },
  {
   "id": "j07",
   "name": "Tolichowki",
   "lat": 17.39894,
   "lon": 78.41542,
   "avg_delay_s": 24.5,
   "max_queue_m": 62,
   "vehicles": 1021
  },
  {
   "id": "j08",
   "name": "Nanal Nagar jn",
   "lat": 17.39597,
   "lon": 78.42776,
   "avg_delay_s": 24.4,
   "max_queue_m": 150,
   "vehicles": 3046
  },
  {
   "id": "j09",
   "name": "Rethibowli jn",
   "lat": 17.39598,
   "lon": 78.43171,
   "avg_delay_s": 16.4,
   "max_queue_m": 24,
   "vehicles": 570
  },
  {
   "id": "j10",
   "name": "NMDC / Masab Tank Rd",
   "lat": 17.39948,
   "lon": 78.45039,
   "avg_delay_s": 7.2,
   "max_queue_m": 46,
   "vehicles": 3698
  },
  {
   "id": "j11",
   "name": "Masab Tank",
   "lat": 17.40352,
   "lon": 78.45639,
   "avg_delay_s": 3.8,
   "max_queue_m": 23,
   "vehicles": 2045
  }
 ],
 "warnings": [],
 "inputs": {
  "counts_source": "estimated",
  "label": "estimated",
  "volume_scale": 1.0,
  "cross_traffic": {
   "j01": {
    "approaches": 1,
    "vph": 400,
    "label": "assumed",
    "roads": [
     {
      "road": "Old Bombay Road",
      "edge": "472153852",
      "enters_on": "472153852",
      "vph": 400,
      "label": "assumed",
      "split": {
       "fwd": 0.786,
       "rev": 0.214,
       "cross": 0.0
      },
      "split_source": "assumed",
      "kind": "arm",
      "turns_vph": {
       "L": 120,
       "S": 220,
       "R": 60,
       "U": 0
      },
      "tomtom_vph": 400
     }
    ],
    "tomtom": "not at this junction"
   },
   "j02": {
    "approaches": 3,
    "vph": 1312,
    "label": "estimated",
    "roads": [
     {
      "road": "ISB Road",
      "edge": "211221856#1",
      "enters_on": "211221856#0",
      "vph": 450,
      "label": "assumed",
      "split": {
       "fwd": 0.333,
       "rev": 0.667,
       "cross": 0.0
      },
      "split_source": "assumed",
      "kind": "arm",
      "turns_vph": {
       "L": 135,
       "S": 248,
       "R": 68,
       "U": 0
      },
      "tomtom_vph": 450
     },
     {
      "road": "ISB Road East Bound",
      "edge": "472147467",
      "enters_on": "211221856#0",
      "vph": 800,
      "label": "estimated",
      "split": {
       "fwd": 0.0,
       "rev": 1.0,
       "cross": 0.0
      },
      "split_source": "estimated (TomTom turn ratios, 4117 probes)",
      "kind": "arm",
      "turns_vph": {
       "L": 799,
       "S": 1,
       "R": 0,
       "U": 0
      },
      "tomtom_vph": 2762
     },
     {
      "road": "Old Bombay Road",
      "edge": "157046148#1",
      "enters_on": "378344583",
      "vph": 62,
      "label": "estimated",
      "split": {
       "fwd": 0.0,
       "rev": 0.0,
       "cross": 1.0
      },
      "split_source": "estimated (TomTom turn ratios, 2323 probes)",
      "kind": "corridor top-up",
      "turns_vph": {
       "L": 3,
       "R": 58,
       "U": 0,
       "S": 0
      },
      "tomtom_vph": 3152,
      "arriving_vph": 1215
     },
     {
      "road": "Old Bombay Road",
      "edge": "472147469#2",
      "enters_on": "472147469#2",
      "vph": 0,
      "label": "estimated",
      "split": {
       "fwd": 0.0,
       "rev": 0.0,
       "cross": 0.0
      },
      "split_source": "estimated (TomTom turn ratios, 14421 probes)",
      "kind": "corridor top-up",
      "turns_vph": {},
      "tomtom_vph": 4112,
      "arriving_vph": 2361
     }
    ],
    "tomtom": "used"
   },
   "j03": {
    "approaches": 7,
    "vph": 4435,
    "label": "estimated",
    "roads": [
     {
      "road": "Gachibowli - Miyapur Highway",
      "edge": "1190308702",
      "enters_on": "1190308702",
      "vph": 999,
      "label": "estimated",
      "split": {
       "fwd": 0.0,
       "rev": 0.499,
       "cross": 0.501
      },
      "split_source": "estimated (TomTom turn ratios, 155 probes)",
      "kind": "arm",
      "turns_vph": {
       "L": 0,
       "S": 0,
       "R": 997,
       "U": 2
      },
      "tomtom_vph": 2467
     },
     {
      "road": "Gachibowli - Miyapur Highway",
      "edge": "1250765019#0",
      "enters_on": "1032557395",
      "vph": 400,
      "label": "assumed",
      "split": {
       "fwd": 0.0,
       "rev": 0.0,
       "cross": 1.0
      },
      "split_source": "assumed",
      "kind": "arm",
      "turns_vph": {
       "L": 120,
       "S": 220,
       "R": 60,
       "U": 0
      },
      "tomtom_vph": 400
     },
     {
      "road": "Outer Ring Road",
      "edge": "1250844117#0",
      "enters_on": "378333807",
      "vph": 603,
      "label": "estimated",
      "split": {
       "fwd": 0.0,
       "rev": 0.499,
       "cross": 0.501
      },
      "split_source": "estimated (TomTom turn ratios, 3587 probes)",
      "kind": "arm",
      "turns_vph": {
       "L": 602,
       "S": 0,
       "R": 0,
       "U": 1
      },
      "tomtom_vph": 1489
     },
     {
      "road": "",
      "edge": "1271881319",
      "enters_on": "378333807",
      "vph": 200,
      "label": "assumed",
      "split": {
       "fwd": 0.15,
       "rev": 0.15,
       "cross": 0.7
      },
      "split_source": "assumed",
      "kind": "arm",
      "turns_vph": {
       "L": 60,
       "S": 110,
       "R": 30,
       "U": 0
      },
      "tomtom_vph": 200
     },
     {
      "road": "Old Bombay Road",
      "edge": "1544022149",
      "enters_on": "313359707",
      "vph": 887,
      "label": "estimated",
      "split": {
       "fwd": 0.0,
       "rev": 0.116,
       "cross": 0.884
      },
      "split_source": "estimated (TomTom turn ratios, 4616 probes)",
      "kind": "arm",
      "turns_vph": {
       "L": 664,
       "S": 0,
       "R": 121,
       "U": 103
      },
      "tomtom_vph": 2191
     },
     {
      "road": "",
      "edge": "213741922",
      "enters_on": "378333807",
      "vph": 200,
      "label": "assumed",
      "split": {
       "fwd": 0.15,
       "rev": 0.15,
       "cross": 0.7
      },
      "split_source": "assumed",
      "kind": "arm",
      "turns_vph": {
       "L": 60,
       "S": 110,
       "R": 30,
       "U": 0
      },
      "tomtom_vph": 200
     },
     {
      "road": "Old Bombay Highway",
      "edge": "378333808#0",
      "enters_on": "313359749#0",
      "vph": 1146,
      "label": "estimated",
      "split": {
       "fwd": 0.0,
       "rev": 0.16,
       "cross": 0.84
      },
      "split_source": "estimated (TomTom turn ratios, 12799 probes)",
      "kind": "arm",
      "turns_vph": {
       "L": 19,
       "S": 183,
       "R": 944,
       "U": 0
      },
      "tomtom_vph": 2828
     }
    ],
    "tomtom": "used"
   },
   "j04": {
    "approaches": 4,
    "vph": 2543,
    "label": "estimated",
    "roads": [
     {
      "road": "Hi Tech City Main Road",
      "edge": "1032456292#0",
      "enters_on": "1032456294",
      "vph": 450,
      "label": "assumed",
      "split": {
       "fwd": 0.0,
       "rev": 0.0,
       "cross": 1.0
      },
      "split_source": "assumed",
      "kind": "arm",
      "turns_vph": {
       "L": 135,
       "S": 248,
       "R": 68,
       "U": 0
      },
      "tomtom_vph": 450
     },
     {
      "road": "Gachibowli Road East Bound",
      "edge": "28847506#2",
      "enters_on": "313363624",
      "vph": 207,
      "label": "estimated",
      "split": {
       "fwd": 0.0,
       "rev": 0.0,
       "cross": 1.0
      },
      "split_source": "estimated (TomTom turn ratios, 27226 probes); through traffic 81% on the flyover (measured)",
      "kind": "arm",
      "turns_vph": {
       "L": 66,
       "S": 139,
       "R": 0,
       "U": 2
      },
      "tomtom_vph": 5354
     },
     {
      "road": "Hi Tech City Main Road",
      "edge": "313209564#2",
      "enters_on": "313209564#0",
      "vph": 1200,
      "label": "estimated",
      "split": {
       "fwd": 0.0,
       "rev": 1.0,
       "cross": 0.0
      },
      "split_source": "estimated (TomTom turn ratios, 11777 probes)",
      "kind": "arm",
      "turns_vph": {
       "L": 724,
       "S": 0,
       "R": 476,
       "U": 0
      },
      "tomtom_vph": 4160
     },
     {
      "road": "Gachibowli Road East Bound",
      "edge": "313363624",
      "enters_on": "906111927",
      "vph": 686,
      "label": "estimated",
      "split": {
       "fwd": 1.0,
       "rev": 0.0,
       "cross": 0.0
      },
      "split_source": "on the flyover: straight on",
      "kind": "corridor top-up (flyover)",
      "turns_vph": {
       "S": 686
      },
      "tomtom_vph": 5354,
      "arriving_vph": 1482
     },
     {
      "road": "Old Bombay Highway",
      "edge": "313364728#0",
      "enters_on": "313364728#0",
      "vph": 0,
      "label": "estimated",
      "split": {
       "fwd": 0.0,
       "rev": 0.0,
       "cross": 0.0
      },
      "split_source": "estimated (TomTom turn ratios, 10110 probes)",
      "kind": "corridor top-up",
      "turns_vph": {},
      "tomtom_vph": 2370,
      "arriving_vph": 1806
     }
    ],
    "tomtom": "used"
   },
   "j05": {
    "approaches": 1,
    "vph": 400,
    "label": "assumed",
    "roads": [
     {
      "road": "Khajaguda Nanakramguda road",
      "edge": "861160016",
      "enters_on": "117032403",
      "vph": 400,
      "label": "assumed",
      "split": {
       "fwd": 0.647,
       "rev": 0.353,
       "cross": 0.0
      },
      "split_source": "assumed",
      "kind": "arm",
      "turns_vph": {
       "L": 120,
       "S": 220,
       "R": 60,
       "U": 0
      },
      "tomtom_vph": 400
     }
    ],
    "tomtom": "not at this junction"
   },
   "j06": {
    "approaches": 3,
    "vph": 1300,
    "label": "estimated",
    "roads": [
     {
      "road": "Old Bombay Road",
      "edge": "313364729#2",
      "enters_on": "313364729#0",
      "vph": 450,
      "label": "assumed",
      "split": {
       "fwd": 0.0,
       "rev": 0.0,
       "cross": 1.0
      },
      "split_source": "assumed",
      "kind": "arm",
      "turns_vph": {
       "L": 135,
       "S": 248,
       "R": 68,
       "U": 0
      },
      "tomtom_vph": 450
     },
     {
      "road": "Old Bombay Highway",
      "edge": "313366033",
      "enters_on": "759786511#5",
      "vph": 450,
      "label": "assumed",
      "split": {
       "fwd": 0.0,
       "rev": 1.0,
       "cross": 0.0
      },
      "split_source": "assumed",
      "kind": "arm",
      "turns_vph": {
       "L": 135,
       "S": 248,
       "R": 68,
       "U": 0
      },
      "tomtom_vph": 450
     },
     {
      "road": "Narne Road",
      "edge": "471759399#0",
      "enters_on": "471759399#0",
      "vph": 400,
      "label": "assumed",
      "split": {
       "fwd": 0.0,
       "rev": 0.0,
       "cross": 1.0
      },
      "split_source": "assumed",
      "kind": "arm",
      "turns_vph": {
       "L": 120,
       "S": 220,
       "R": 60,
       "U": 0
      },
      "tomtom_vph": 400
     },
     {
      "road": "Mumbai Road East Bound",
      "edge": "1311233183",
      "enters_on": "1311233183",
      "vph": 0,
      "label": "estimated",
      "split": {
       "fwd": 0.0,
       "rev": 0.0,
       "cross": 0.0
      },
      "split_source": "on the flyover: straight on",
      "kind": "corridor top-up (flyover)",
      "turns_vph": {},
      "tomtom_vph": 2699,
      "arriving_vph": 1474
     },
     {
      "road": "Mumbai Road North Bound",
      "edge": "1311972348",
      "enters_on": "1311972348",
      "vph": 0,
      "label": "estimated",
      "split": {
       "fwd": 0.0,
       "rev": 0.0,
       "cross": 0.0
      },
      "split_source": "on the flyover: straight on",
      "kind": "corridor top-up (flyover)",
      "turns_vph": {},
      "tomtom_vph": 2637,
      "arriving_vph": 1714
     }
    ],
    "tomtom": "not at this junction"
   },
   "j07": {
    "approaches": 5,
    "vph": 1241,
    "label": "estimated",
    "roads": [
     {
      "road": "Mumbai Road North Bound",
      "edge": "-1124108400",
      "enters_on": "-281276621",
      "vph": 98,
      "label": "estimated",
      "split": {
       "fwd": 0.033,
       "rev": 0.338,
       "cross": 0.629
      },
      "split_source": "estimated (TomTom turn ratios, 1300 probes)",
      "kind": "arm",
      "turns_vph": {
       "L": 32,
       "S": 33,
       "R": 26,
       "U": 6
      },
      "tomtom_vph": 243
     },
     {
      "road": "Abdul Waheed Khan Marg",
      "edge": "-1152308056",
      "enters_on": "-1152308056",
      "vph": 166,
      "label": "estimated",
      "split": {
       "fwd": 0.15,
       "rev": 0.15,
       "cross": 0.7
      },
      "split_source": "assumed",
      "kind": "arm",
      "turns_vph": {
       "L": 50,
       "S": 92,
       "R": 25,
       "U": 0
      },
      "tomtom_vph": 411
     },
     {
      "road": "Hakimpet Road South Bound",
      "edge": "1208987932#0",
      "enters_on": "1208987932#0",
      "vph": 301,
      "label": "estimated",
      "split": {
       "fwd": 0.409,
       "rev": 0.18,
       "cross": 0.411
      },
      "split_source": "estimated (TomTom turn ratios, 3425 probes)",
      "kind": "arm",
      "turns_vph": {
       "L": 246,
       "S": 0,
       "R": 54,
       "U": 1
      },
      "tomtom_vph": 742
     },
     {
      "road": "Tolichowki Road",
      "edge": "693067124#1",
      "enters_on": "728941829#1",
      "vph": 322,
      "label": "estimated",
      "split": {
       "fwd": 0.0,
       "rev": 0.042,
       "cross": 0.958
      },
      "split_source": "estimated (TomTom turn ratios, 33625 probes); through traffic 81% on the flyover (measured)",
      "kind": "arm",
      "turns_vph": {
       "L": 20,
       "S": 277,
       "R": 26,
       "U": 0
      },
      "tomtom_vph": 3714
     },
     {
      "road": "Tolichowki Road",
      "edge": "728941839#0",
      "enters_on": "728941839#0",
      "vph": 354,
      "label": "estimated",
      "split": {
       "fwd": 0.966,
       "rev": 0.001,
       "cross": 0.033
      },
      "split_source": "estimated (TomTom turn ratios, 47385 probes)",
      "kind": "arm",
      "turns_vph": {
       "L": 2,
       "S": 342,
       "R": 10,
       "U": 0
      },
      "tomtom_vph": 874
     },
     {
      "road": "Mumbai Road West Bound",
      "edge": "728941829#1",
      "enters_on": "728941829#1",
      "vph": 0,
      "label": "estimated",
      "split": {
       "fwd": 0.0,
       "rev": 0.0,
       "cross": 0.0
      },
      "split_source": "on the flyover: straight on",
      "kind": "corridor top-up (flyover)",
      "turns_vph": {},
      "tomtom_vph": 3714,
      "arriving_vph": 2036
     }
    ],
    "tomtom": "used"
   },
   "j08": {
    "approaches": 2,
    "vph": 861,
    "label": "estimated",
    "roads": [
     {
      "road": "NH163 North Bound",
      "edge": "309189799",
      "enters_on": "309189807#0",
      "vph": 637,
      "label": "estimated",
      "split": {
       "fwd": 0.633,
       "rev": 0.367,
       "cross": 0.0
      },
      "split_source": "estimated (TomTom turn ratios, 7094 probes)",
      "kind": "arm",
      "turns_vph": {
       "L": 234,
       "S": 0,
       "R": 403,
       "U": 0
      },
      "tomtom_vph": 1574
     },
     {
      "road": "Old Bombay Highway",
      "edge": "28131038#1",
      "enters_on": "28131038#0",
      "vph": 224,
      "label": "estimated",
      "split": {
       "fwd": 0.025,
       "rev": 0.0,
       "cross": 0.975
      },
      "split_source": "estimated (TomTom turn ratios, 22288 probes)",
      "kind": "corridor top-up",
      "turns_vph": {
       "L": 0,
       "R": 218,
       "U": 0,
       "S": 6
      },
      "tomtom_vph": 4770,
      "arriving_vph": 1708
     },
     {
      "road": "Mehdipatnam Road West Bound",
      "edge": "315417462#5",
      "enters_on": "315417462#5",
      "vph": 0,
      "label": "estimated",
      "split": {
       "fwd": 0.0,
       "rev": 0.0,
       "cross": 0.0
      },
      "split_source": "on the flyover: straight on",
      "kind": "corridor top-up (flyover)",
      "turns_vph": {},
      "tomtom_vph": 3108,
      "arriving_vph": 1665
     }
    ],
    "tomtom": "used"
   },
   "j09": {
    "approaches": 3,
    "vph": 680,
    "label": "estimated",
    "roads": [
     {
      "road": "Inner Ring Road",
      "edge": "1109179959#0",
      "enters_on": "1109179959#0",
      "vph": 400,
      "label": "assumed",
      "split": {
       "fwd": 0.0,
       "rev": 0.0,
       "cross": 1.0
      },
      "split_source": "assumed",
      "kind": "arm",
      "turns_vph": {
       "L": 120,
       "S": 220,
       "R": 60,
       "U": 0
      },
      "tomtom_vph": 400
     },
     {
      "road": "Inner Ring Road",
      "edge": "207472304#0",
      "enters_on": "1298044479#0",
      "vph": 48,
      "label": "estimated",
      "split": {
       "fwd": 0.333,
       "rev": 0.0,
       "cross": 0.667
      },
      "split_source": "assumed",
      "kind": "arm",
      "turns_vph": {
       "L": 14,
       "S": 27,
       "R": 7,
       "U": 0
      },
      "tomtom_vph": 119
     },
     {
      "road": "Mumbai Road East Bound",
      "edge": "562832903#0",
      "enters_on": "562832903#0",
      "vph": 0,
      "label": "estimated",
      "split": {
       "fwd": 0.0,
       "rev": 0.0,
       "cross": 0.0
      },
      "split_source": "on the flyover: straight on",
      "kind": "corridor top-up (flyover)",
      "turns_vph": {},
      "tomtom_vph": 4063,
      "arriving_vph": 2335
     },
     {
      "road": "Golkonda Road",
      "edge": "393419596",
      "enters_on": "315417462#5",
      "vph": 232,
      "label": "estimated",
      "split": {
       "fwd": 0.0,
       "rev": 0.0,
       "cross": 1.0
      },
      "split_source": "estimated (TomTom turn ratios, 14829 probes)",
      "kind": "corridor top-up",
      "turns_vph": {
       "L": 232,
       "R": 0,
       "U": 0,
       "S": 0
      },
      "tomtom_vph": 3574,
      "arriving_vph": 1215
     }
    ],
    "tomtom": "used"
   },
   "j10": {
    "approaches": 2,
    "vph": 848,
    "label": "estimated",
    "roads": [
     {
      "road": "Masab Tank Road",
      "edge": "28197087#1",
      "enters_on": "207472309#0",
      "vph": 450,
      "label": "assumed",
      "split": {
       "fwd": 0.0,
       "rev": 1.0,
       "cross": 0.0
      },
      "split_source": "assumed",
      "kind": "arm",
      "turns_vph": {
       "L": 135,
       "S": 248,
       "R": 68,
       "U": 0
      },
      "tomtom_vph": 450
     },
     {
      "road": "Golkonda Road",
      "edge": "313512532#2",
      "enters_on": "314222544#2",
      "vph": 398,
      "label": "estimated",
      "split": {
       "fwd": 0.0,
       "rev": 0.0,
       "cross": 1.0
      },
      "split_source": "estimated (TomTom turn ratios, 37345 probes)",
      "kind": "corridor top-up",
      "turns_vph": {
       "L": 398,
       "R": 0,
       "U": 0,
       "S": 0
      },
      "tomtom_vph": 4023,
      "arriving_vph": 1231
     },
     {
      "road": "Masab Tank Flyover",
      "edge": "393419597",
      "enters_on": "393419597",
      "vph": 0,
      "label": "estimated",
      "split": {
       "fwd": 0.0,
       "rev": 0.0,
       "cross": 0.0
      },
      "split_source": "estimated (TomTom turn ratios, 44530 probes)",
      "kind": "corridor top-up",
      "turns_vph": {},
      "tomtom_vph": 1570,
      "arriving_vph": 1215
     }
    ],
    "tomtom": "used"
   },
   "j11": {
    "approaches": 1,
    "vph": 450,
    "label": "assumed",
    "roads": [
     {
      "road": "Masab Tank Road",
      "edge": "309194767#1",
      "enters_on": "314359205#0",
      "vph": 450,
      "label": "assumed",
      "split": {
       "fwd": 1.0,
       "rev": 0.0,
       "cross": 0.0
      },
      "split_source": "assumed",
      "kind": "arm",
      "turns_vph": {
       "L": 135,
       "S": 248,
       "R": 68,
       "U": 0
      },
      "tomtom_vph": 450
     }
    ],
    "tomtom": "none"
   }
  },
  "through_vph": 1215,
  "through_vph_by_direction": {
   "A->B": 1215,
   "B->A": 1215
  },
  "cross_vph_per_approach": 450,
  "corridor_volumes": [
   {
    "junction_id": "j02",
    "direction": "A->B",
    "road": "Professor C R Rao Road East Bound",
    "edge": "157046148#1",
    "tomtom_vph": 3152,
    "sim_vph": 1248,
    "tomtom_delay_s": 20.1,
    "sim_delay_s": 3.4,
    "label": "estimated"
   },
   {
    "junction_id": "j02",
    "direction": "B->A",
    "road": "Gachibowli Road West Bound",
    "edge": "313363619#2",
    "tomtom_vph": 4112,
    "sim_vph": 1744,
    "tomtom_delay_s": 9.4,
    "sim_delay_s": 26.8,
    "label": "estimated"
   },
   {
    "junction_id": "j04",
    "direction": "A->B",
    "road": "Gachibowli Road East Bound",
    "edge": "313363624",
    "tomtom_vph": 5354,
    "sim_vph": 2164,
    "tomtom_delay_s": 7.6,
    "sim_delay_s": null,
    "label": "estimated"
   },
   {
    "junction_id": "j04",
    "direction": "B->A",
    "road": "Gachibowli Road North Bound",
    "edge": "313364728#0",
    "tomtom_vph": 2370,
    "sim_vph": 2356,
    "tomtom_delay_s": 2.9,
    "sim_delay_s": null,
    "label": "estimated"
   },
   {
    "junction_id": "j06",
    "direction": "A->B",
    "road": "Mumbai Road East Bound",
    "edge": "1311233183",
    "tomtom_vph": 2699,
    "sim_vph": 1552,
    "tomtom_delay_s": 27.6,
    "sim_delay_s": null,
    "label": "estimated"
   },
   {
    "junction_id": "j06",
    "direction": "B->A",
    "road": "Mumbai Road North Bound",
    "edge": "1311972348",
    "tomtom_vph": 2637,
    "sim_vph": 1564,
    "tomtom_delay_s": 3.2,
    "sim_delay_s": null,
    "label": "estimated"
   },
   {
    "junction_id": "j07",
    "direction": "B->A",
    "road": "Mumbai Road West Bound",
    "edge": "728941829#1",
    "tomtom_vph": 3714,
    "sim_vph": 1848,
    "tomtom_delay_s": 5.9,
    "sim_delay_s": null,
    "label": "estimated"
   },
   {
    "junction_id": "j08",
    "direction": "A->B",
    "road": "Mumbai Road East Bound",
    "edge": "28131038#0",
    "tomtom_vph": 4770,
    "sim_vph": 2020,
    "tomtom_delay_s": 26.6,
    "sim_delay_s": 230.1,
    "label": "estimated"
   },
   {
    "junction_id": "j08",
    "direction": "B->A",
    "road": "Mehdipatnam Road West Bound",
    "edge": "315417462#5",
    "tomtom_vph": 3108,
    "sim_vph": 1988,
    "tomtom_delay_s": 40.7,
    "sim_delay_s": 11.7,
    "label": "estimated"
   },
   {
    "junction_id": "j09",
    "direction": "A->B",
    "road": "Mumbai Road East Bound",
    "edge": "562832903#0",
    "tomtom_vph": 4063,
    "sim_vph": 2196,
    "tomtom_delay_s": 78.4,
    "sim_delay_s": null,
    "label": "estimated"
   },
   {
    "junction_id": "j09",
    "direction": "B->A",
    "road": "Mehdipatnam Road West Bound",
    "edge": "315417462#7",
    "tomtom_vph": 3574,
    "sim_vph": 232,
    "tomtom_delay_s": 30.9,
    "sim_delay_s": null,
    "label": "estimated"
   },
   {
    "junction_id": "j10",
    "direction": "A->B",
    "road": "Mehdipatnam Road East Bound",
    "edge": "313512532#2",
    "tomtom_vph": 4023,
    "sim_vph": 1652,
    "tomtom_delay_s": 30.1,
    "sim_delay_s": null,
    "label": "estimated"
   },
   {
    "junction_id": "j10",
    "direction": "B->A",
    "road": "SH4 West Bound",
    "edge": "393419597",
    "tomtom_vph": 1570,
    "sim_vph": 1316,
    "tomtom_delay_s": 55.7,
    "sim_delay_s": null,
    "label": "estimated"
   }
  ],
  "sources": [
   {
    "input": "leg travel times (calibration target)",
    "label": "counted",
    "source": "TomTom Traffic Stats job 10051304: probe vehicles, July 2026 every day 06:00-23:00"
   },
   {
    "input": "traffic on every arm of every junction at j02, j03, j04, j06, j07, j08, j09, j10",
    "label": "estimated",
    "source": "TomTom Junction Analytics (model estimates from probe data), mean over 2026-10-09T16:54 .. 2026-10-09T23:53 (minutes within 06-23 h) x cross_scale; corridor approaches topped up only by the shortfall to TomTom's volume (traffic already arriving counted first)"
   },
   {
    "input": "where each arm's traffic goes (turn shares)",
    "label": "estimated",
    "source": "TomTom Junction Analytics turn ratios (left/straight/right/U by angle, probe-weighted) where at least 10 probes back them; elsewhere L 30%, S 55%, R 15%, U 0% (assumed)"
   },
   {
    "input": "arms without TomTom (j01, j05: TomTom's areas are elsewhere; j11: none; side streets)",
    "label": "assumed",
    "source": "200 veh/h per lane, at most 450 veh/h per arm"
   },
   {
    "input": "through traffic taking a flyover",
    "label": "measured",
    "source": "81% (docs/driver-behaviour.md s1)"
   },
   {
    "input": "end-to-end corridor volume",
    "label": "calibrated",
    "source": "set so the corridor approaches at the TomTom junctions carry TomTom's volume (inputs.corridor_volumes)"
   },
   {
    "input": "speed cap per leg (side friction: bus stops, parking, pedestrians, autos)",
    "label": "calibrated",
    "source": "set so the probe cars' leg times match TomTom's"
   },
   {
    "input": "signal plans",
    "label": "assumed",
    "source": "docs/driver-behaviour.md s5: 4 s amber, free left in every phase; main x minor junctions: corridor both ways, a 12 s protected right-turn phase, then the side road, 120 s cycle, corridor >= 65% of the green; big junctions (): one approach at a time, 150 s cycle (corridor_net.signal_plans)"
   },
   {
    "input": "corridor green share where calibrated",
    "label": "calibrated",
    "source": "j02 80%, j08 75%, j09 65%"
   },
   {
    "input": "vehicle mix",
    "label": "assumed",
    "source": "two_wheeler 47%, auto 19%, car 27%, bus 4%, truck 3%; fast riders: 30% of two-wheelers, 50% of autos (docs/driver-behaviour.md s2 table)"
   },
   {
    "input": "driver behaviour (sizes, speeds, gaps, reaction times, amber/red running, box blocking, giving way)",
    "label": "assumed",
    "source": "docs/driver-behaviour.md s2-s7 (VEHICLES); capacity x1.35 via following headways (tau, minGap / 1.55, estimated); imperfection calibrated (spec 0.5): 0.2, fast riders 0.24. With the spec's 0.5 the Nanal Nagar section (j07-j09, near capacity) varied 278-404 s between seeds (sd ~70 s: a variant-vs-baseline comparison there would carry about +-3 min of noise). At 0.2, on the calibrated model (seeds 2-4): section sd 9-27 s, whole trip sd 50 s; paired variant-minus-baseline at the same seed, measured at seeds 2, 3, 4: flyover j08 -3.1 / -3.1 / -2.7 min (sd 0.25 min), heavy rain +2.2 / +3.3 / +3.6 min (sd 0.7 min): a one-junction change is beyond noise above about +-0.5 min, a change to every leg (rain) above about +-1.5 min; side-street traffic forces in below 5 m/s (50%, estimated); lateral behaviour (filtering, weaving) and creeping past the stop line not modelled (non-sublane model)"
   },
   {
    "input": "joining traffic",
    "label": "assumed",
    "source": "drives 2 km along the corridor, then turns off"
   },
   {
    "input": "junction delay on the corridor's approaches (calibration target)",
    "label": "estimated",
    "source": "TomTom Junction Analytics, mean over 2026-10-09T16:54 .. 2026-10-09T23:53 (evening); capped at each leg's all-day time above 50 km/h free flow (inputs.corridor_volumes: tomtom_delay_s vs sim_delay_s)"
   },
   {
    "input": "traffic at Lakdikapul (B)",
    "label": "assumed",
    "source": "disperses before the last ~130 m (a 5-into-2-lane give-way merge); only probe cars drive on"
   }
  ],
  "calibrated_to": "TomTom Traffic Stats job 10051304, July 2026 06:00-23:00, leg speeds",
  "speeds_source": "counted (TomTom probe data)",
  "probes_arrived": 30,
  "teleports": 22,
  "vehicles_loaded": 29836,
  "vehicles_not_inserted": 1593,
  "sections": [
   {
    "from": "A_lingampally",
    "to": "j01",
    "sim_seconds": 2700,
    "probes": 30
   },
   {
    "from": "j01",
    "to": "j02",
    "sim_seconds": 3127,
    "probes": 30
   },
   {
    "from": "j02",
    "to": "j04",
    "sim_seconds": 2700,
    "probes": 30
   },
   {
    "from": "j04",
    "to": "j07",
    "sim_seconds": 2773,
    "probes": 30
   },
   {
    "from": "j07",
    "to": "j09",
    "sim_seconds": 2700,
    "probes": 30
   },
   {
    "from": "j09",
    "to": "B_lakdikapul",
    "sim_seconds": 3260,
    "probes": 30
   }
  ],
  "sim_seconds": 3260,
  "wall_seconds": 35.7,
  "templates": [
   "underpass"
  ]
 },
 "frames_path": "/Users/chetanagarwal/apty/projects/hackathon-team-e-cityrehearsal/sim/out/corridor/rc_9c9537ab/frames.jsonl",
 "frames_window": {
  "from_s": 900,
  "to_s": 1200,
  "step_s": 4,
  "from_min": 5.0,
  "minutes": 5.0,
  "warmup_s": 600,
  "sim_minutes_total": 15,
  "period_from_s": 600,
  "period_to_s": 1500,
  "max_minutes": 10,
  "note": "frames t is simulation seconds; the window can start anywhere from 0 to sim_minutes_total - minutes after warm-up"
 },
 "roads_path": "/Users/chetanagarwal/apty/projects/hackathon-team-e-cityrehearsal/sim/out/corridor/rc_9c9537ab/roads.geojson",
 "probe_tracks_path": "/Users/chetanagarwal/apty/projects/hackathon-team-e-cityrehearsal/sim/out/corridor/rc_9c9537ab/probes.json",
 "probe_tracks": {
  "trips": {
   "A->B": 30,
   "B->A": 30
  },
  "incomplete": {
   "A->B": 0,
   "B->A": 0
  },
  "points": 15612,
  "bytes": 1194737
 }
}