train: 967403,0,4
Wed Sep 23 17:07:24 2026 2026-09-23T17:07:24Z 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-09-23T19:19:00Z 05:19:00 131m36s 7896 no est disruptions 218983
2 1235 2026-09-23T19:21:00Z 05:21:00 133m36s 8016 no est disruptions 218983
2 1236 2026-09-23T19:24:00Z 05:24:00 136m36s 8196 no est disruptions 218983
4 1118 Malvern Station 2026-09-23T19:32:00Z 05:32:00 144m36s 8676 no est disruptions 218983
4 1036 Caulfield Station 2026-09-23T19:35:00Z 05:35:00 147m36s 8856 no est disruptions 218983
2 1034 Carnegie Station 2026-09-23T19:37:00Z 05:37:00 149m36s 8976 no est disruptions 218983
2 1138 Murrumbeena Station 2026-09-23T19:39:00Z 05:39:00 151m36s 9096 no est disruptions 218983
2 1098 Hughesdale Station 2026-09-23T19:40:00Z 05:40:00 152m36s 9156 no est disruptions 218983
2 1150 Oakleigh Station 2026-09-23T19:43:00Z 05:43:00 155m36s 9336 no est disruptions 218983
2 1099 Huntingdale Station 2026-09-23T19:45:00Z 05:45:00 157m36s 9456 no est disruptions 218983
2 1040 Clayton Station 2026-09-23T19:47:00Z 05:47:00 159m36s 9576 no est disruptions 218983
2 1208 Westall Station 2026-09-23T19:51:00Z 05:51:00 163m36s 9816 no est disruptions 218983
2 1183 Springvale Station 2026-09-23T19:54:00Z 05:54:00 166m36s 9996 no est disruptions 218983
2 1172 Sandown Park Station 2026-09-23T19:55:00Z 05:55:00 167m36s 10056 no est disruptions 218983
2 1142 Noble Park Station 2026-09-23T19:58:00Z 05:58:00 170m36s 10236 no est disruptions 218983
2 1215 Yarraman Station 2026-09-23T20:00:00Z 06:00:00 172m36s 10356 no est disruptions 218983
3 1049 Dandenong Station 2026-09-23T20:05:00Z 06:05:00 177m36s 10656 no est disruptions 218983
2 1222 Lynbrook Station 2026-09-23T20:12:00Z 06:12:00 184m36s 11076 no est disruptions 218983
2 1123 Merinda Park Station 2026-09-23T20:15:00Z 06:15:00 187m36s 11256 no est disruptions 218983
2 1045 Cranbourne Station 2026-09-23T20:19:00Z 06:19:00 191m36s 11496 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-09-23T19: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-09-23T19: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-09-23T19: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-09-23T19: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-09-23T19: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-09-23T19: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-09-23T19: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-09-23T19: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-09-23T19: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-09-23T19: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-09-23T19: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-09-23T19: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-09-23T19: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-09-23T19: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-09-23T19: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-09-23T20: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-09-23T20: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-09-23T20: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-09-23T20: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-09-23T20: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. These impacts are due to works as part of the Level Crossing Removal Project, 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-09-23T08:30:21Z', 'published_on' => '2020-12-14T22:10:18Z', 'routes' => [], 'stops' => [], 'title' => 'Cranbourne and Pakenham line stations: Temporary car park closures until further notice', '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.9899673', 'stop_longitude' => '145.209732', '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.89425', 'stop_longitude' => '145.076431', '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.9666252', 'stop_longitude' => '145.176331', '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.9565', 'stop_longitude' => '145.162827', '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' } } } }