train: 967403,0,4
Mon Mar 30 15:40:54 2026 2026-03-30T15:40:54Z 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:19:00Z 05:19:00 158m6s 9486 no est disruptions 218983
2 1235 2026-03-30T18:21:00Z 05:21:00 160m6s 9606 no est disruptions 218983
2 1236 2026-03-30T18:24:00Z 05:24:00 163m6s 9786 no est disruptions 218983
4 1118 Malvern Station 2026-03-30T18:32:00Z 05:32:00 171m6s 10266 no est disruptions 218983
4 1036 Caulfield Station 2026-03-30T18:35:00Z 05:35:00 174m6s 10446 no est disruptions 218983
2 1034 Carnegie Station 2026-03-30T18:37:00Z 05:37:00 176m6s 10566 no est disruptions 218983
2 1138 Murrumbeena Station 2026-03-30T18:39:00Z 05:39:00 178m6s 10686 no est disruptions 218983
2 1098 Hughesdale Station 2026-03-30T18:40:00Z 05:40:00 179m6s 10746 no est disruptions 218983
2 1150 Oakleigh Station 2026-03-30T18:43:00Z 05:43:00 182m6s 10926 no est disruptions 218983
2 1099 Huntingdale Station 2026-03-30T18:45:00Z 05:45:00 184m6s 11046 no est disruptions 218983
2 1040 Clayton Station 2026-03-30T18:47:00Z 05:47:00 186m6s 11166 no est disruptions 218983
2 1208 Westall Station 2026-03-30T18:51:00Z 05:51:00 190m6s 11406 no est disruptions 218983
2 1183 Springvale Station 2026-03-30T18:54:00Z 05:54:00 193m6s 11586 no est disruptions 218983
2 1172 Sandown Park Station 2026-03-30T18:55:00Z 05:55:00 194m6s 11646 no est disruptions 218983
2 1142 Noble Park Station 2026-03-30T18:58:00Z 05:58:00 197m6s 11826 no est disruptions 218983
2 1215 Yarraman Station 2026-03-30T19:00:00Z 06:00:00 199m6s 11946 no est disruptions 218983
3 1049 Dandenong Station 2026-03-30T19:05:00Z 06:05:00 204m6s 12246 no est disruptions 218983
2 1222 Lynbrook Station 2026-03-30T19:12:00Z 06:12:00 211m6s 12666 no est disruptions 218983
2 1123 Merinda Park Station 2026-03-30T19:15:00Z 06:15:00 214m6s 12846 no est disruptions 218983
2 1045 Cranbourne Station 2026-03-30T19:19:00Z 06:19:00 218m6s 13086 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' => 967403, 'run_ref' => '967403', 'scheduled_departure_utc' => '2026-03-30T18:19: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' => 967403, 'run_ref' => '967403', 'scheduled_departure_utc' => '2026-03-30T18:21: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' => 967403, 'run_ref' => '967403', 'scheduled_departure_utc' => '2026-03-30T18:24: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' => 967403, 'run_ref' => '967403', 'scheduled_departure_utc' => '2026-03-30T18:32: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' => 967403, 'run_ref' => '967403', 'scheduled_departure_utc' => '2026-03-30T18:35: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' => 967403, 'run_ref' => '967403', 'scheduled_departure_utc' => '2026-03-30T18:37: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' => 967403, 'run_ref' => '967403', 'scheduled_departure_utc' => '2026-03-30T18:39: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' => 967403, 'run_ref' => '967403', 'scheduled_departure_utc' => '2026-03-30T18:40: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' => 967403, 'run_ref' => '967403', 'scheduled_departure_utc' => '2026-03-30T18:43: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' => 967403, 'run_ref' => '967403', 'scheduled_departure_utc' => '2026-03-30T18:45: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' => 967403, 'run_ref' => '967403', 'scheduled_departure_utc' => '2026-03-30T18:47: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' => 967403, 'run_ref' => '967403', 'scheduled_departure_utc' => '2026-03-30T18:51: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' => 967403, 'run_ref' => '967403', 'scheduled_departure_utc' => '2026-03-30T18:54: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' => 967403, 'run_ref' => '967403', 'scheduled_departure_utc' => '2026-03-30T18:55: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' => 967403, 'run_ref' => '967403', 'scheduled_departure_utc' => '2026-03-30T18:58: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' => 967403, 'run_ref' => '967403', 'scheduled_departure_utc' => '2026-03-30T19:00: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' => 967403, 'run_ref' => '967403', 'scheduled_departure_utc' => '2026-03-30T19:05: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' => 967403, 'run_ref' => '967403', 'scheduled_departure_utc' => '2026-03-30T19:12: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' => 967403, 'run_ref' => '967403', 'scheduled_departure_utc' => '2026-03-30T19:15: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' => 967403, 'run_ref' => '967403', 'scheduled_departure_utc' => '2026-03-30T19:19: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' => { '967403' => { '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' => '967418', 'stop_id' => 1235 }, 'feeder' => { 'advertised' => 'true', 'destination_name' => 'Town Hall', 'direction_id' => 1, 'route_id' => 14, 'run_ref' => '990002', 'stop_id' => 1235 } }, 'route_id' => 4, 'route_type' => 0, 'run_id' => 967403, 'run_note' => '', 'run_ref' => '967403', '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' } } } }