train: 967407,0,4
Mon Mar 30 15:40:56 2026 2026-03-30T15:40:56Z plat dest scheduled estimated __218983 Stations on the Cranbourne and Pakenham lines will be affected by temporary car park closures and changes to pedestrian access at select times. These impacts are due to works as part of the Level Crossing Removal Project, Car Parks for Commuters program and other maintenance works. ** current, _* Later today, __ in the future Final stop Cranbourne
2 1234 2026-03-30T18:59:00Z 05:59:00 198m4s 11884 no est disruptions 218983
2 1235 2026-03-30T19:01:00Z 06:01:00 200m4s 12004 no est disruptions 218983
2 1236 2026-03-30T19:04:00Z 06:04:00 203m4s 12184 no est disruptions 218983
4 1118 Malvern Station 2026-03-30T19:12:00Z 06:12:00 211m4s 12664 no est disruptions 218983
4 1036 Caulfield Station 2026-03-30T19:15:00Z 06:15:00 214m4s 12844 no est disruptions 218983
2 1034 Carnegie Station 2026-03-30T19:17:00Z 06:17:00 216m4s 12964 no est disruptions 218983
2 1138 Murrumbeena Station 2026-03-30T19:19:00Z 06:19:00 218m4s 13084 no est disruptions 218983
2 1098 Hughesdale Station 2026-03-30T19:20:00Z 06:20:00 219m4s 13144 no est disruptions 218983
2 1150 Oakleigh Station 2026-03-30T19:23:00Z 06:23:00 222m4s 13324 no est disruptions 218983
2 1099 Huntingdale Station 2026-03-30T19:25:00Z 06:25:00 224m4s 13444 no est disruptions 218983
2 1040 Clayton Station 2026-03-30T19:27:00Z 06:27:00 226m4s 13564 no est disruptions 218983
2 1208 Westall Station 2026-03-30T19:31:00Z 06:31:00 230m4s 13804 no est disruptions 218983
2 1183 Springvale Station 2026-03-30T19:34:00Z 06:34:00 233m4s 13984 no est disruptions 218983
2 1172 Sandown Park Station 2026-03-30T19:35:00Z 06:35:00 234m4s 14044 no est disruptions 218983
2 1142 Noble Park Station 2026-03-30T19:38:00Z 06:38:00 237m4s 14224 no est disruptions 218983
2 1215 Yarraman Station 2026-03-30T19:40:00Z 06:40:00 239m4s 14344 no est disruptions 218983
3 1049 Dandenong Station 2026-03-30T19:45:00Z 06:45:00 244m4s 14644 no est disruptions 218983
2 1222 Lynbrook Station 2026-03-30T19:52:00Z 06:52:00 251m4s 15064 no est disruptions 218983
2 1123 Merinda Park Station 2026-03-30T19:55:00Z 06:55:00 254m4s 15244 no est disruptions 218983
2 1045 Cranbourne Station 2026-03-30T19:59:00Z 06:59:00 258m4s 15484 no est disruptions 218983
$perl_scalar = { 'departures' => [ { 'at_platform' => 'false', 'departure_note' => 'via Metro Tunnel', 'departure_sequence' => 1, 'direction_id' => 3, 'disruption_ids' => [ 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967407, 'run_ref' => '967407', 'scheduled_departure_utc' => '2026-03-30T18:59:00Z', 'skipped_stops' => [], 'stop_id' => 1234 }, { 'at_platform' => 'false', 'departure_note' => 'via Metro Tunnel', 'departure_sequence' => 2, 'direction_id' => 3, 'disruption_ids' => [ 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967407, 'run_ref' => '967407', 'scheduled_departure_utc' => '2026-03-30T19:01:00Z', 'skipped_stops' => [], 'stop_id' => 1235 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 3, 'direction_id' => 3, 'disruption_ids' => [ 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967407, 'run_ref' => '967407', 'scheduled_departure_utc' => '2026-03-30T19:04:00Z', 'skipped_stops' => [], 'stop_id' => 1236 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 4, 'direction_id' => 3, 'disruption_ids' => [ 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '4', 'route_id' => 4, 'run_id' => 967407, 'run_ref' => '967407', 'scheduled_departure_utc' => '2026-03-30T19:12:00Z', 'skipped_stops' => [], 'stop_id' => 1118 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 5, 'direction_id' => 3, 'disruption_ids' => [ 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '4', 'route_id' => 4, 'run_id' => 967407, 'run_ref' => '967407', 'scheduled_departure_utc' => '2026-03-30T19:15:00Z', 'skipped_stops' => [], 'stop_id' => 1036 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 6, 'direction_id' => 3, 'disruption_ids' => [ 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967407, 'run_ref' => '967407', 'scheduled_departure_utc' => '2026-03-30T19:17:00Z', 'skipped_stops' => [], 'stop_id' => 1034 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 7, 'direction_id' => 3, 'disruption_ids' => [ 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967407, 'run_ref' => '967407', 'scheduled_departure_utc' => '2026-03-30T19:19:00Z', 'skipped_stops' => [], 'stop_id' => 1138 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 8, 'direction_id' => 3, 'disruption_ids' => [ 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967407, 'run_ref' => '967407', 'scheduled_departure_utc' => '2026-03-30T19:20:00Z', 'skipped_stops' => [], 'stop_id' => 1098 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 9, 'direction_id' => 3, 'disruption_ids' => [ 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967407, 'run_ref' => '967407', 'scheduled_departure_utc' => '2026-03-30T19:23:00Z', 'skipped_stops' => [], 'stop_id' => 1150 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 10, 'direction_id' => 3, 'disruption_ids' => [ 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967407, 'run_ref' => '967407', 'scheduled_departure_utc' => '2026-03-30T19:25:00Z', 'skipped_stops' => [], 'stop_id' => 1099 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 11, 'direction_id' => 3, 'disruption_ids' => [ 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967407, 'run_ref' => '967407', 'scheduled_departure_utc' => '2026-03-30T19:27:00Z', 'skipped_stops' => [], 'stop_id' => 1040 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 12, 'direction_id' => 3, 'disruption_ids' => [ 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967407, 'run_ref' => '967407', 'scheduled_departure_utc' => '2026-03-30T19:31:00Z', 'skipped_stops' => [], 'stop_id' => 1208 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 13, 'direction_id' => 3, 'disruption_ids' => [ 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967407, 'run_ref' => '967407', 'scheduled_departure_utc' => '2026-03-30T19:34:00Z', 'skipped_stops' => [], 'stop_id' => 1183 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 14, 'direction_id' => 3, 'disruption_ids' => [ 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967407, 'run_ref' => '967407', 'scheduled_departure_utc' => '2026-03-30T19:35:00Z', 'skipped_stops' => [], 'stop_id' => 1172 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 15, 'direction_id' => 3, 'disruption_ids' => [ 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967407, 'run_ref' => '967407', 'scheduled_departure_utc' => '2026-03-30T19:38:00Z', 'skipped_stops' => [], 'stop_id' => 1142 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 16, 'direction_id' => 3, 'disruption_ids' => [ 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967407, 'run_ref' => '967407', 'scheduled_departure_utc' => '2026-03-30T19:40:00Z', 'skipped_stops' => [], 'stop_id' => 1215 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 17, 'direction_id' => 3, 'disruption_ids' => [ 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '3', 'route_id' => 4, 'run_id' => 967407, 'run_ref' => '967407', 'scheduled_departure_utc' => '2026-03-30T19:45:00Z', 'skipped_stops' => [], 'stop_id' => 1049 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 18, 'direction_id' => 3, 'disruption_ids' => [ 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967407, 'run_ref' => '967407', 'scheduled_departure_utc' => '2026-03-30T19:52:00Z', 'skipped_stops' => [], 'stop_id' => 1222 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 19, 'direction_id' => 3, 'disruption_ids' => [ 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967407, 'run_ref' => '967407', 'scheduled_departure_utc' => '2026-03-30T19:55:00Z', 'skipped_stops' => [], 'stop_id' => 1123 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 20, 'direction_id' => 3, 'disruption_ids' => [ 218983 ], 'estimated_departure_utc' => undef, 'flags' => 'E', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967407, 'run_ref' => '967407', 'scheduled_departure_utc' => '2026-03-30T19:59:00Z', 'skipped_stops' => [], 'stop_id' => 1045 } ], 'directions' => { '3' => { 'direction_id' => 3, 'direction_name' => 'Cranbourne', 'route_id' => 4, 'route_type' => 0 } }, 'disruptions' => [ { 'colour' => '#ffd500', 'description' => 'Stations on the Cranbourne and Pakenham lines will be affected by temporary car park closures and changes to pedestrian access at select times. These impacts are due to works as part of the Level Crossing Removal Project, Car Parks for Commuters program and other maintenance works.', 'display_on_board' => 'false', 'display_status' => 'false', 'disruption_id' => 218983, 'disruption_status' => 'Current', 'disruption_type' => 'Planned Closure', 'from_date' => '2020-12-14T21:57:00Z', 'last_updated' => '2026-03-28T10:41:14Z', 'published_on' => '2020-12-14T22:10:18Z', 'routes' => [], 'stops' => [], 'title' => 'Cranbourne and Pakenham line stations: Temporary car park closures and changes to pedestrian access until late 2026', 'to_date' => undef, 'url' => 'http://ptv.vic.gov.au/live-travel-updates/article/cranbourne-and-pakenham-line-stations-temporary-car-park-closures-and-changes-to-pedestrian-access-until-2022' } ], 'routes' => { '4' => { 'geopath' => [], 'route_gtfs_id' => '2-CBE', 'route_id' => 4, 'route_name' => 'Cranbourne', 'route_number' => '', 'route_type' => 0 } }, 'runs' => { '967407' => { 'destination_name' => 'Cranbourne', 'direction_id' => 3, 'express_stop_count' => 3, 'externalService' => undef, 'final_stop_id' => 1045, 'geopath' => [], 'interchange' => { 'distributor' => { 'advertised' => 'false', 'destination_name' => 'Town Hall', 'direction_id' => 1, 'route_id' => 4, 'run_ref' => '967430', 'stop_id' => 1235 }, 'feeder' => { 'advertised' => 'true', 'destination_name' => 'Town Hall', 'direction_id' => 1, 'route_id' => 14, 'run_ref' => '990006', 'stop_id' => 1235 } }, 'route_id' => 4, 'route_type' => 0, 'run_id' => 967407, 'run_note' => '', 'run_ref' => '967407', 'run_sequence' => 0, 'status' => 'scheduled', 'vehicle_descriptor' => undef, 'vehicle_position' => undef } }, 'status' => { 'health' => 1, 'version' => '3.0' }, 'stops' => { '1034' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1034, 'stop_landmark' => '', 'stop_latitude' => '-37.88624', 'stop_longitude' => '145.058578', 'stop_name' => 'Carnegie', 'stop_sequence' => 0, 'stop_suburb' => 'Carnegie', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1036' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1036, 'stop_landmark' => '', 'stop_latitude' => '-37.8774567', 'stop_longitude' => '145.042526', 'stop_name' => 'Caulfield', 'stop_sequence' => 0, 'stop_suburb' => 'Caulfield East', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1040' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1040, 'stop_landmark' => '', 'stop_latitude' => '-37.9246826', 'stop_longitude' => '145.120529', 'stop_name' => 'Clayton', 'stop_sequence' => 0, 'stop_suburb' => 'Clayton', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 2' } }, '1045' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1045, 'stop_landmark' => '', 'stop_latitude' => '-38.09954', 'stop_longitude' => '145.2806', 'stop_name' => 'Cranbourne', 'stop_sequence' => 0, 'stop_suburb' => 'Cranbourne', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'true', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 2' } }, '1049' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1049, 'stop_landmark' => '', 'stop_latitude' => '-37.98966', 'stop_longitude' => '145.209061', 'stop_name' => 'Dandenong', 'stop_sequence' => 0, 'stop_suburb' => 'Dandenong', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 2' } }, '1098' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1098, 'stop_landmark' => '', 'stop_latitude' => '-37.89488', 'stop_longitude' => '145.077637', 'stop_name' => 'Hughesdale', 'stop_sequence' => 0, 'stop_suburb' => 'Hughesdale', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1, 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1,Zone 2' } }, '1099' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1099, 'stop_landmark' => '', 'stop_latitude' => '-37.91102', 'stop_longitude' => '145.102371', 'stop_name' => 'Huntingdale', 'stop_sequence' => 0, 'stop_suburb' => 'Oakleigh', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1, 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1,Zone 2' } }, '1118' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1118, 'stop_landmark' => '', 'stop_latitude' => '-37.86625', 'stop_longitude' => '145.0293', 'stop_name' => 'Malvern', 'stop_sequence' => 0, 'stop_suburb' => 'Malvern', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1123' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1123, 'stop_landmark' => '', 'stop_latitude' => '-38.0790024', 'stop_longitude' => '145.2635', 'stop_name' => 'Merinda Park', 'stop_sequence' => 0, 'stop_suburb' => 'Cranbourne North', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 2' } }, '1138' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1138, 'stop_landmark' => '', 'stop_latitude' => '-37.8901978', 'stop_longitude' => '145.067383', 'stop_name' => 'Murrumbeena', 'stop_sequence' => 0, 'stop_suburb' => 'Murrumbeena', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1142' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1142, 'stop_landmark' => '', 'stop_latitude' => '-37.9672356', 'stop_longitude' => '145.176941', 'stop_name' => 'Noble Park', 'stop_sequence' => 0, 'stop_suburb' => 'Noble Park', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'true', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 2' } }, '1150' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1150, 'stop_landmark' => '', 'stop_latitude' => '-37.9003677', 'stop_longitude' => '145.088318', 'stop_name' => 'Oakleigh', 'stop_sequence' => 0, 'stop_suburb' => 'Oakleigh', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1, 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1,Zone 2' } }, '1172' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1172, 'stop_landmark' => '', 'stop_latitude' => '-37.95582', 'stop_longitude' => '145.161926', 'stop_name' => 'Sandown Park', 'stop_sequence' => 0, 'stop_suburb' => 'Springvale', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 2' } }, '1183' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1183, 'stop_landmark' => '', 'stop_latitude' => '-37.9495125', 'stop_longitude' => '145.153458', 'stop_name' => 'Springvale', 'stop_sequence' => 0, 'stop_suburb' => 'Springvale', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 2' } }, '1208' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1208, 'stop_landmark' => '', 'stop_latitude' => '-37.93849', 'stop_longitude' => '145.13884', 'stop_name' => 'Westall', 'stop_sequence' => 0, 'stop_suburb' => 'Clayton South', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 2' } }, '1215' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1215, 'stop_landmark' => '', 'stop_latitude' => '-37.9782524', 'stop_longitude' => '145.1916', 'stop_name' => 'Yarraman', 'stop_sequence' => 0, 'stop_suburb' => 'Noble Park', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 2' } }, '1222' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1222, 'stop_landmark' => 'Lynbrook', 'stop_latitude' => '-38.0573463', 'stop_longitude' => '145.249283', 'stop_name' => 'Lynbrook', 'stop_sequence' => 0, 'stop_suburb' => 'Lynbrook', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'true', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 2' } }, '1234' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1234, 'stop_landmark' => '', 'stop_latitude' => '-37.80805', 'stop_longitude' => '144.96312', 'stop_name' => 'State Library', 'stop_sequence' => 0, 'stop_suburb' => 'Melbourne City', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'true', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1235' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1235, 'stop_landmark' => '', 'stop_latitude' => '-37.8160934', 'stop_longitude' => '144.966827', 'stop_name' => 'Town Hall', 'stop_sequence' => 0, 'stop_suburb' => 'Melbourne City', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'true', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1236' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1236, 'stop_landmark' => '', 'stop_latitude' => '-37.8333244', 'stop_longitude' => '144.9728', 'stop_name' => 'Anzac', 'stop_sequence' => 0, 'stop_suburb' => 'Melbourne City', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'true', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } } } }