train: 967401,0,4
Mon Jun 1 16:45:52 2026 2026-06-01T16:45:52Z 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. **362145 From 8.15pm to last service each night, Monday 1 June to Wednesday 3 June __363379 Dandenong Station will be affected by temporary access impacts from Wednesday 27 May to Sunday 7 June, due to critical works at the bus interchange. ** current, _* Later today, __ in the future Final stop Cranbourne
2 1234 2026-06-01T18:59:00Z 04:59:00 133m8s 7988 no est disruptions 363379 362145 218983
2 1235 2026-06-01T19:01:00Z 05:01:00 135m8s 8108 no est disruptions 363379 362145 218983
2 1236 2026-06-01T19:04:00Z 05:04:00 138m8s 8288 no est disruptions 363379 362145 218983
4 1118 Malvern Station 2026-06-01T19:12:00Z 05:12:00 146m8s 8768 no est disruptions 363379 362145 218983
4 1036 Caulfield Station 2026-06-01T19:15:00Z 05:15:00 149m8s 8948 no est disruptions 363379 362145 218983
2 1034 Carnegie Station 2026-06-01T19:17:00Z 05:17:00 151m8s 9068 no est disruptions 363379 362145 218983
2 1138 Murrumbeena Station 2026-06-01T19:19:00Z 05:19:00 153m8s 9188 no est disruptions 363379 362145 218983
2 1098 Hughesdale Station 2026-06-01T19:20:00Z 05:20:00 154m8s 9248 no est disruptions 363379 362145 218983
2 1150 Oakleigh Station 2026-06-01T19:23:00Z 05:23:00 157m8s 9428 no est disruptions 363379 362145 218983
2 1099 Huntingdale Station 2026-06-01T19:25:00Z 05:25:00 159m8s 9548 no est disruptions 363379 362145 218983
2 1040 Clayton Station 2026-06-01T19:27:00Z 05:27:00 161m8s 9668 no est disruptions 363379 362145 218983
2 1208 Westall Station 2026-06-01T19:31:00Z 05:31:00 165m8s 9908 no est disruptions 363379 362145 218983
2 1183 Springvale Station 2026-06-01T19:34:00Z 05:34:00 168m8s 10088 no est disruptions 363379 362145 218983
2 1172 Sandown Park Station 2026-06-01T19:35:00Z 05:35:00 169m8s 10148 no est disruptions 363379 362145 218983
2 1142 Noble Park Station 2026-06-01T19:38:00Z 05:38:00 172m8s 10328 no est disruptions 363379 362145 218983
2 1215 Yarraman Station 2026-06-01T19:40:00Z 05:40:00 174m8s 10448 no est disruptions 363379 362145 218983
3 1049 Dandenong Station 2026-06-01T19:45:00Z 05:45:00 179m8s 10748 no est disruptions 363379 362145 218983
2 1222 Lynbrook Station 2026-06-01T19:52:00Z 05:52:00 186m8s 11168 no est disruptions 363379 362145 218983
2 1123 Merinda Park Station 2026-06-01T19:55:00Z 05:55:00 189m8s 11348 no est disruptions 363379 362145 218983
2 1045 Cranbourne Station 2026-06-01T19:59:00Z 05:59:00 193m8s 11588 no est disruptions 363379 362145 218983
$perl_scalar = { 'departures' => [ { 'at_platform' => 'false', 'departure_note' => 'via Metro Tunnel', 'departure_sequence' => 1, 'direction_id' => 3, 'disruption_ids' => [ 363379, 362145, 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967401, 'run_ref' => '967401', 'scheduled_departure_utc' => '2026-06-01T18:59:00Z', 'skipped_stops' => [], 'stop_id' => 1234 }, { 'at_platform' => 'false', 'departure_note' => 'via Metro Tunnel', 'departure_sequence' => 2, 'direction_id' => 3, 'disruption_ids' => [ 363379, 362145, 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967401, 'run_ref' => '967401', 'scheduled_departure_utc' => '2026-06-01T19:01:00Z', 'skipped_stops' => [], 'stop_id' => 1235 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 3, 'direction_id' => 3, 'disruption_ids' => [ 363379, 362145, 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967401, 'run_ref' => '967401', 'scheduled_departure_utc' => '2026-06-01T19:04:00Z', 'skipped_stops' => [], 'stop_id' => 1236 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 4, 'direction_id' => 3, 'disruption_ids' => [ 363379, 362145, 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '4', 'route_id' => 4, 'run_id' => 967401, 'run_ref' => '967401', 'scheduled_departure_utc' => '2026-06-01T19:12:00Z', 'skipped_stops' => [], 'stop_id' => 1118 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 5, 'direction_id' => 3, 'disruption_ids' => [ 363379, 362145, 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '4', 'route_id' => 4, 'run_id' => 967401, 'run_ref' => '967401', 'scheduled_departure_utc' => '2026-06-01T19:15:00Z', 'skipped_stops' => [], 'stop_id' => 1036 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 6, 'direction_id' => 3, 'disruption_ids' => [ 363379, 362145, 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967401, 'run_ref' => '967401', 'scheduled_departure_utc' => '2026-06-01T19:17:00Z', 'skipped_stops' => [], 'stop_id' => 1034 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 7, 'direction_id' => 3, 'disruption_ids' => [ 363379, 362145, 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967401, 'run_ref' => '967401', 'scheduled_departure_utc' => '2026-06-01T19:19:00Z', 'skipped_stops' => [], 'stop_id' => 1138 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 8, 'direction_id' => 3, 'disruption_ids' => [ 363379, 362145, 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967401, 'run_ref' => '967401', 'scheduled_departure_utc' => '2026-06-01T19:20:00Z', 'skipped_stops' => [], 'stop_id' => 1098 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 9, 'direction_id' => 3, 'disruption_ids' => [ 363379, 362145, 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967401, 'run_ref' => '967401', 'scheduled_departure_utc' => '2026-06-01T19:23:00Z', 'skipped_stops' => [], 'stop_id' => 1150 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 10, 'direction_id' => 3, 'disruption_ids' => [ 363379, 362145, 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967401, 'run_ref' => '967401', 'scheduled_departure_utc' => '2026-06-01T19:25:00Z', 'skipped_stops' => [], 'stop_id' => 1099 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 11, 'direction_id' => 3, 'disruption_ids' => [ 363379, 362145, 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967401, 'run_ref' => '967401', 'scheduled_departure_utc' => '2026-06-01T19:27:00Z', 'skipped_stops' => [], 'stop_id' => 1040 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 12, 'direction_id' => 3, 'disruption_ids' => [ 363379, 362145, 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967401, 'run_ref' => '967401', 'scheduled_departure_utc' => '2026-06-01T19:31:00Z', 'skipped_stops' => [], 'stop_id' => 1208 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 13, 'direction_id' => 3, 'disruption_ids' => [ 363379, 362145, 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967401, 'run_ref' => '967401', 'scheduled_departure_utc' => '2026-06-01T19:34:00Z', 'skipped_stops' => [], 'stop_id' => 1183 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 14, 'direction_id' => 3, 'disruption_ids' => [ 363379, 362145, 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967401, 'run_ref' => '967401', 'scheduled_departure_utc' => '2026-06-01T19:35:00Z', 'skipped_stops' => [], 'stop_id' => 1172 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 15, 'direction_id' => 3, 'disruption_ids' => [ 363379, 362145, 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967401, 'run_ref' => '967401', 'scheduled_departure_utc' => '2026-06-01T19:38:00Z', 'skipped_stops' => [], 'stop_id' => 1142 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 16, 'direction_id' => 3, 'disruption_ids' => [ 363379, 362145, 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967401, 'run_ref' => '967401', 'scheduled_departure_utc' => '2026-06-01T19:40:00Z', 'skipped_stops' => [], 'stop_id' => 1215 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 17, 'direction_id' => 3, 'disruption_ids' => [ 363379, 362145, 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '3', 'route_id' => 4, 'run_id' => 967401, 'run_ref' => '967401', 'scheduled_departure_utc' => '2026-06-01T19:45:00Z', 'skipped_stops' => [], 'stop_id' => 1049 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 18, 'direction_id' => 3, 'disruption_ids' => [ 363379, 362145, 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967401, 'run_ref' => '967401', 'scheduled_departure_utc' => '2026-06-01T19:52:00Z', 'skipped_stops' => [], 'stop_id' => 1222 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 19, 'direction_id' => 3, 'disruption_ids' => [ 363379, 362145, 218983 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967401, 'run_ref' => '967401', 'scheduled_departure_utc' => '2026-06-01T19:55:00Z', 'skipped_stops' => [], 'stop_id' => 1123 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 20, 'direction_id' => 3, 'disruption_ids' => [ 363379, 362145, 218983 ], 'estimated_departure_utc' => undef, 'flags' => 'E', 'platform_number' => '2', 'route_id' => 4, 'run_id' => 967401, 'run_ref' => '967401', 'scheduled_departure_utc' => '2026-06-01T19: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' => 'Dandenong Station will be affected by temporary access impacts from Wednesday 27 May to Sunday 7 June, due to critical works at the bus interchange.', 'display_on_board' => 'false', 'display_status' => 'false', 'disruption_id' => 363379, 'disruption_status' => 'Current', 'disruption_type' => 'Planned Closure', 'from_date' => '2026-05-26T17:00:00Z', 'last_updated' => '2026-05-26T17:02:48Z', 'published_on' => '2026-05-26T11:22:23Z', 'routes' => [], 'stops' => [], 'title' => 'Dandenong Station: Temporary access impacts from Wednesday 27 May to Sunday 7 June 2026', 'to_date' => '2026-06-07T17:00:00Z', 'url' => 'http://ptv.vic.gov.au/live-travel-updates/article/dandenong-station-temporary-access-impacts-from-wednesday-27-may-to-sunday-7-june-2026' }, { 'colour' => '#ffd500', 'description' => 'From 8.15pm to last service each night, Monday 1 June to Wednesday 3 June', 'display_on_board' => 'true', 'display_status' => 'true', 'disruption_id' => 362145, 'disruption_status' => 'Current', 'disruption_type' => 'Planned Works', 'from_date' => '2026-06-01T10:15:00Z', 'last_updated' => '2026-06-01T10:18:07Z', 'published_on' => '2026-05-10T08:25:57Z', 'routes' => [], 'stops' => [], 'title' => 'Cranbourne and Pakenham lines: Buses replace trains from 8.15pm to last service each night, Monday 1 June to Wednesday 3 June 2026', 'to_date' => '2026-06-03T17:00:00Z', 'url' => 'http://ptv.vic.gov.au/live-travel-updates/article/cranbourne-and-pakenham-lines-buses-replace-trains-from-8-15pm-to-last-service-each-night-monday-1-june-to-wednesday-3-june-2026' }, { '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-05-22T05:05:13Z', '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' => { '967401' => { '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' => '967414', 'stop_id' => 1235 }, 'feeder' => { 'advertised' => 'true', 'destination_name' => 'Town Hall', 'direction_id' => 1, 'route_id' => 14, 'run_ref' => '990000', 'stop_id' => 1235 } }, 'route_id' => 4, 'route_type' => 0, 'run_id' => 967401, 'run_note' => '', 'run_ref' => '967401', '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' } } } }