train: 951600,0,4
Wed Sep 23 17:04:40 2026 2026-09-23T17:04:40Z

plat dest
 scheduled
 estimated
__323905    Stations on the Belgrave and Lilydale lines will be affected by temporary car park closures, platform closures and changes to pedestrian access at select times, due to works as part of the Level Crossing Removal Project and other maintenance works.
__357977    To enable Boronia Station Upgrade works, there will be temporary changes to vehicle and pedestrian access.
__362298    Monday 11 May to late 2026
__369648    Ferntree Gully Station will be affected by night works from 10pm Monday 14 September to 4am Thursday 1 October, due to works.
__369649    Upper Ferntree Station will be affected by night works from 10pm Monday 14 September to 4am Thursday 1 October, due to works.
** current, _* Later today, __ in the future

Final stop Flinders Street

2 1018 Belgrave Station 2026-09-23T18:27:00Z 04:27:00 82m20s 4940 no est disruptions 369649 369648 362298 357977 323905
1 1191 Tecoma Station 2026-09-23T18:29:00Z 04:29:00 84m20s 5060 no est disruptions 369649 369648 362298 357977 323905
1 1200 Upwey Station 2026-09-23T18:31:00Z 04:31:00 86m20s 5180 no est disruptions 369649 369648 362298 357977 323905
1 1199 Upper Ferntree Gully Station 2026-09-23T18:35:00Z 04:35:00 90m20s 5420 no est disruptions 369649 369648 362298 357977 323905
1 1067 Ferntree Gully Station 2026-09-23T18:38:00Z 04:38:00 93m20s 5600 no est disruptions 369649 369648 362298 357977 323905
1 1025 Boronia Station 2026-09-23T18:40:00Z 04:40:00 95m20s 5720 no est disruptions 369649 369648 362298 357977 323905
1 1016 Bayswater Station 2026-09-23T18:43:00Z 04:43:00 98m20s 5900 no est disruptions 369649 369648 362298 357977 323905
1 1092 Heathmont Station 2026-09-23T18:47:00Z 04:47:00 102m20s 6140 no est disruptions 369649 369648 362298 357977 323905
1 1163 Ringwood Station 2026-09-23T18:50:00Z 04:50:00 105m20s 6320 no est disruptions 369649 369648 362298 357977 323905
1 1091 Heatherdale Station 2026-09-23T18:52:00Z 04:52:00 107m20s 6440 no est disruptions 369649 369648 362298 357977 323905
1 1128 Mitcham Station 2026-09-23T18:54:00Z 04:54:00 109m20s 6560 no est disruptions 369649 369648 362298 357977 323905
1 1148 Nunawading Station 2026-09-23T18:57:00Z 04:57:00 112m20s 6740 no est disruptions 369649 369648 362298 357977 323905
1 1023 Blackburn Station 2026-09-23T19:00:00Z 05:00:00 115m20s 6920 no est disruptions 369649 369648 362298 357977 323905
1 1111 Laburnum Station 2026-09-23T19:02:00Z 05:02:00 117m20s 7040 no est disruptions 369649 369648 362298 357977 323905
2 1026 Box Hill Station 2026-09-23T19:05:00Z 05:05:00 120m20s 7220 no est disruptions 369649 369648 362298 357977 323905
1 1229 Union Station 2026-09-23T19:08:00Z 05:08:00 123m20s 7400 no est disruptions 369649 369648 362298 357977 323905
1 1037 Chatham Station 2026-09-23T19:10:00Z 05:10:00 125m20s 7520 no est disruptions 369649 369648 362298 357977 323905
1 1033 Canterbury Station 2026-09-23T19:12:00Z 05:12:00 127m20s 7640 no est disruptions 369649 369648 362298 357977 323905
1 1057 East Camberwell Station 2026-09-23T19:14:00Z 05:14:00 129m20s 7760 no est disruptions 369649 369648 362298 357977 323905
1 1032 Camberwell Station 2026-09-23T19:16:00Z 05:16:00 131m20s 7880 no est disruptions 369649 369648 362298 357977 323905
1 1012 Auburn Station 2026-09-23T19:18:00Z 05:18:00 133m20s 8000 no est disruptions 369649 369648 362298 357977 323905
1 1080 Glenferrie Station 2026-09-23T19:20:00Z 05:20:00 135m20s 8120 no est disruptions 369649 369648 362298 357977 323905
1 1090 Hawthorn Station 2026-09-23T19:22:00Z 05:22:00 137m20s 8240 no est disruptions 369649 369648 362298 357977 323905
2 1030 Burnley Station 2026-09-23T19:24:00Z 05:24:00 139m20s 8360 no est disruptions 369649 369648 362298 357977 323905
8 1162 Richmond Station 2026-09-23T19:27:00Z 05:27:00 142m20s 8540 no est disruptions 369649 369648 362298 357977 323905
4 1155 Parliament Station 2026-09-23T19:30:00Z 05:30:00 145m20s 8720 no est disruptions 369649 369648 362298 357977 323905
4 1120 Melbourne Central Station 2026-09-23T19:32:00Z 05:32:00 147m20s 8840 no est disruptions 369649 369648 362298 357977 323905
4 1068 Flagstaff Station 2026-09-23T19:33:00Z 05:33:00 148m20s 8900 no est disruptions 369649 369648 362298 357977 323905
10 1181 Southern Cross Station 2026-09-23T19:35:00Z 05:35:00 150m20s 9020 no est disruptions 369649 369648 362298 357977 323905
2 1071 Flinders Street Station 2026-09-23T19:39:00Z 05:39:00 154m20s 9260 no est disruptions 369649 369648 362298 357977 323905
$perl_scalar = { 'departures' => [ { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 1, 'direction_id' => 1, 'disruption_ids' => [ 369649, 369648, 362298, 357977, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 2, 'run_id' => 951600, 'run_ref' => '951600', 'scheduled_departure_utc' => '2026-09-23T18:27:00Z', 'skipped_stops' => [], 'stop_id' => 1018 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 2, 'direction_id' => 1, 'disruption_ids' => [ 369649, 369648, 362298, 357977, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 2, 'run_id' => 951600, 'run_ref' => '951600', 'scheduled_departure_utc' => '2026-09-23T18:29:00Z', 'skipped_stops' => [], 'stop_id' => 1191 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 3, 'direction_id' => 1, 'disruption_ids' => [ 369649, 369648, 362298, 357977, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 2, 'run_id' => 951600, 'run_ref' => '951600', 'scheduled_departure_utc' => '2026-09-23T18:31:00Z', 'skipped_stops' => [], 'stop_id' => 1200 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 4, 'direction_id' => 1, 'disruption_ids' => [ 369649, 369648, 362298, 357977, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 2, 'run_id' => 951600, 'run_ref' => '951600', 'scheduled_departure_utc' => '2026-09-23T18:35:00Z', 'skipped_stops' => [], 'stop_id' => 1199 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 5, 'direction_id' => 1, 'disruption_ids' => [ 369649, 369648, 362298, 357977, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 2, 'run_id' => 951600, 'run_ref' => '951600', 'scheduled_departure_utc' => '2026-09-23T18:38:00Z', 'skipped_stops' => [], 'stop_id' => 1067 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 6, 'direction_id' => 1, 'disruption_ids' => [ 369649, 369648, 362298, 357977, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 2, 'run_id' => 951600, 'run_ref' => '951600', 'scheduled_departure_utc' => '2026-09-23T18:40:00Z', 'skipped_stops' => [], 'stop_id' => 1025 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 7, 'direction_id' => 1, 'disruption_ids' => [ 369649, 369648, 362298, 357977, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 2, 'run_id' => 951600, 'run_ref' => '951600', 'scheduled_departure_utc' => '2026-09-23T18:43:00Z', 'skipped_stops' => [], 'stop_id' => 1016 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 8, 'direction_id' => 1, 'disruption_ids' => [ 369649, 369648, 362298, 357977, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 2, 'run_id' => 951600, 'run_ref' => '951600', 'scheduled_departure_utc' => '2026-09-23T18:47:00Z', 'skipped_stops' => [], 'stop_id' => 1092 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 9, 'direction_id' => 1, 'disruption_ids' => [ 369649, 369648, 362298, 357977, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 2, 'run_id' => 951600, 'run_ref' => '951600', 'scheduled_departure_utc' => '2026-09-23T18:50:00Z', 'skipped_stops' => [], 'stop_id' => 1163 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 10, 'direction_id' => 1, 'disruption_ids' => [ 369649, 369648, 362298, 357977, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 2, 'run_id' => 951600, 'run_ref' => '951600', 'scheduled_departure_utc' => '2026-09-23T18:52:00Z', 'skipped_stops' => [], 'stop_id' => 1091 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 11, 'direction_id' => 1, 'disruption_ids' => [ 369649, 369648, 362298, 357977, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 2, 'run_id' => 951600, 'run_ref' => '951600', 'scheduled_departure_utc' => '2026-09-23T18:54:00Z', 'skipped_stops' => [], 'stop_id' => 1128 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 12, 'direction_id' => 1, 'disruption_ids' => [ 369649, 369648, 362298, 357977, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 2, 'run_id' => 951600, 'run_ref' => '951600', 'scheduled_departure_utc' => '2026-09-23T18:57:00Z', 'skipped_stops' => [], 'stop_id' => 1148 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 13, 'direction_id' => 1, 'disruption_ids' => [ 369649, 369648, 362298, 357977, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 2, 'run_id' => 951600, 'run_ref' => '951600', 'scheduled_departure_utc' => '2026-09-23T19:00:00Z', 'skipped_stops' => [], 'stop_id' => 1023 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 14, 'direction_id' => 1, 'disruption_ids' => [ 369649, 369648, 362298, 357977, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 2, 'run_id' => 951600, 'run_ref' => '951600', 'scheduled_departure_utc' => '2026-09-23T19:02:00Z', 'skipped_stops' => [], 'stop_id' => 1111 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 15, 'direction_id' => 1, 'disruption_ids' => [ 369649, 369648, 362298, 357977, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 2, 'run_id' => 951600, 'run_ref' => '951600', 'scheduled_departure_utc' => '2026-09-23T19:05:00Z', 'skipped_stops' => [], 'stop_id' => 1026 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 16, 'direction_id' => 1, 'disruption_ids' => [ 369649, 369648, 362298, 357977, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 2, 'run_id' => 951600, 'run_ref' => '951600', 'scheduled_departure_utc' => '2026-09-23T19:08:00Z', 'skipped_stops' => [], 'stop_id' => 1229 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 17, 'direction_id' => 1, 'disruption_ids' => [ 369649, 369648, 362298, 357977, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 2, 'run_id' => 951600, 'run_ref' => '951600', 'scheduled_departure_utc' => '2026-09-23T19:10:00Z', 'skipped_stops' => [], 'stop_id' => 1037 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 18, 'direction_id' => 1, 'disruption_ids' => [ 369649, 369648, 362298, 357977, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 2, 'run_id' => 951600, 'run_ref' => '951600', 'scheduled_departure_utc' => '2026-09-23T19:12:00Z', 'skipped_stops' => [], 'stop_id' => 1033 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 19, 'direction_id' => 1, 'disruption_ids' => [ 369649, 369648, 362298, 357977, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 2, 'run_id' => 951600, 'run_ref' => '951600', 'scheduled_departure_utc' => '2026-09-23T19:14:00Z', 'skipped_stops' => [], 'stop_id' => 1057 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 20, 'direction_id' => 1, 'disruption_ids' => [ 369649, 369648, 362298, 357977, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 2, 'run_id' => 951600, 'run_ref' => '951600', 'scheduled_departure_utc' => '2026-09-23T19:16:00Z', 'skipped_stops' => [], 'stop_id' => 1032 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 21, 'direction_id' => 1, 'disruption_ids' => [ 369649, 369648, 362298, 357977, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 2, 'run_id' => 951600, 'run_ref' => '951600', 'scheduled_departure_utc' => '2026-09-23T19:18:00Z', 'skipped_stops' => [], 'stop_id' => 1012 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 22, 'direction_id' => 1, 'disruption_ids' => [ 369649, 369648, 362298, 357977, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 2, 'run_id' => 951600, 'run_ref' => '951600', 'scheduled_departure_utc' => '2026-09-23T19:20:00Z', 'skipped_stops' => [], 'stop_id' => 1080 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 23, 'direction_id' => 1, 'disruption_ids' => [ 369649, 369648, 362298, 357977, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 2, 'run_id' => 951600, 'run_ref' => '951600', 'scheduled_departure_utc' => '2026-09-23T19:22:00Z', 'skipped_stops' => [], 'stop_id' => 1090 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 24, 'direction_id' => 1, 'disruption_ids' => [ 369649, 369648, 362298, 357977, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 2, 'run_id' => 951600, 'run_ref' => '951600', 'scheduled_departure_utc' => '2026-09-23T19:24:00Z', 'skipped_stops' => [], 'stop_id' => 1030 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 25, 'direction_id' => 1, 'disruption_ids' => [ 369649, 369648, 362298, 357977, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '8', 'route_id' => 2, 'run_id' => 951600, 'run_ref' => '951600', 'scheduled_departure_utc' => '2026-09-23T19:27:00Z', 'skipped_stops' => [], 'stop_id' => 1162 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 26, 'direction_id' => 1, 'disruption_ids' => [ 369649, 369648, 362298, 357977, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '4', 'route_id' => 2, 'run_id' => 951600, 'run_ref' => '951600', 'scheduled_departure_utc' => '2026-09-23T19:30:00Z', 'skipped_stops' => [], 'stop_id' => 1155 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 27, 'direction_id' => 1, 'disruption_ids' => [ 369649, 369648, 362298, 357977, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '4', 'route_id' => 2, 'run_id' => 951600, 'run_ref' => '951600', 'scheduled_departure_utc' => '2026-09-23T19:32:00Z', 'skipped_stops' => [], 'stop_id' => 1120 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 28, 'direction_id' => 1, 'disruption_ids' => [ 369649, 369648, 362298, 357977, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '4', 'route_id' => 2, 'run_id' => 951600, 'run_ref' => '951600', 'scheduled_departure_utc' => '2026-09-23T19:33:00Z', 'skipped_stops' => [], 'stop_id' => 1068 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 29, 'direction_id' => 1, 'disruption_ids' => [ 369649, 369648, 362298, 357977, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '10', 'route_id' => 2, 'run_id' => 951600, 'run_ref' => '951600', 'scheduled_departure_utc' => '2026-09-23T19:35:00Z', 'skipped_stops' => [], 'stop_id' => 1181 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 30, 'direction_id' => 1, 'disruption_ids' => [ 369649, 369648, 362298, 357977, 323905 ], 'estimated_departure_utc' => undef, 'flags' => 'E', 'platform_number' => '2', 'route_id' => 2, 'run_id' => 951600, 'run_ref' => '951600', 'scheduled_departure_utc' => '2026-09-23T19:39:00Z', 'skipped_stops' => [], 'stop_id' => 1071 } ], 'directions' => { '1' => { 'direction_id' => 1, 'direction_name' => 'City', 'route_id' => 2, 'route_type' => 0 } }, 'disruptions' => [ { 'colour' => '#ffd500', 'description' => 'Upper Ferntree Station will be affected by night works from 10pm Monday 14 September to 4am Thursday 1 October, due to works.', 'display_on_board' => 'false', 'display_status' => 'false', 'disruption_id' => 369649, 'disruption_status' => 'Current', 'disruption_type' => 'Other Information', 'from_date' => '2026-09-14T12:00:00Z', 'last_updated' => '2026-09-14T12:00:43Z', 'published_on' => '2026-09-06T11:58:52Z', 'routes' => [], 'stops' => [], 'title' => 'Upper Ferntree Gully Station: Night works from 10pm Monday 14 September to 4am Thursday 1 October 2026', 'to_date' => '2026-09-30T18:00:00Z', 'url' => 'http://ptv.vic.gov.au/live-travel-updates/article/upper-ferntree-gully-station-night-works-from-10pm-monday-14-september-to-4am-thursday-1-october-2026' }, { 'colour' => '#ffd500', 'description' => 'Ferntree Gully Station will be affected by night works from 10pm Monday 14 September to 4am Thursday 1 October, due to works.', 'display_on_board' => 'false', 'display_status' => 'false', 'disruption_id' => 369648, 'disruption_status' => 'Current', 'disruption_type' => 'Other Information', 'from_date' => '2026-09-14T12:00:00Z', 'last_updated' => '2026-09-14T12:00:43Z', 'published_on' => '2026-09-06T11:55:55Z', 'routes' => [], 'stops' => [], 'title' => 'Ferntree Gully Station: Night works from 10pm Monday 14 September to 4am Thursday 1 October 2026', 'to_date' => '2026-09-30T18:00:00Z', 'url' => 'http://ptv.vic.gov.au/live-travel-updates/article/ferntree-gully-station-night-works-from-10pm-monday-14-september-to-4am-thursday-1-october-2026' }, { 'colour' => '#ffbb00', 'description' => 'Monday 11 May to Tuesday 4 August', 'display_on_board' => 'false', 'display_status' => 'false', 'disruption_id' => 362298, 'disruption_status' => 'Current', 'disruption_type' => 'Station detour', 'from_date' => '2026-05-12T00:51:00Z', 'last_updated' => '2026-07-23T02:45:26Z', 'published_on' => '2026-05-12T02:11:45Z', 'routes' => [], 'stops' => [], 'title' => 'Belgrave Line: Replacement bus stop relocation at Bayswater Station until Tuesday 4 August 2026', 'to_date' => undef, 'url' => 'http://ptv.vic.gov.au/live-travel-updates/article/belgrave-line-replacement-bus-stop-relocation-at-bayswater-station-until-late-2026' }, { 'colour' => '#ffd500', 'description' => 'Bus bay 1 will temporarily close and the following bus stops will relocate to bus bay 2:', 'display_on_board' => 'false', 'display_status' => 'false', 'disruption_id' => 357977, 'disruption_status' => 'Current', 'disruption_type' => 'Planned Closure', 'from_date' => '2026-03-26T16:10:00Z', 'last_updated' => '2026-09-20T12:16:14Z', 'published_on' => '2026-03-18T04:56:31Z', 'routes' => [], 'stops' => [], 'title' => 'Boronia Station: Major changes until spring 2026', 'to_date' => undef, 'url' => 'http://ptv.vic.gov.au/live-travel-updates/article/boronia-disruptions' }, { 'colour' => '#ffd500', 'description' => 'Stations on the Alamein, Belgrave, Glen Waverley and Lilydale lines will be affected by temporary car park closures, platform closures and changes to pedestrian access at select times, due to works as part of the Level Crossing Removal Project and other maintenance works.', 'display_on_board' => 'false', 'display_status' => 'false', 'disruption_id' => 323905, 'disruption_status' => 'Current', 'disruption_type' => 'Planned Closure', 'from_date' => '2024-10-28T10:54:00Z', 'last_updated' => '2026-09-06T03:17:35Z', 'published_on' => '2024-10-29T04:29:05Z', 'routes' => [], 'stops' => [], 'title' => 'Alamein, Belgrave, Glen Waverley and Lilydale line stations: Temporary car park closures and pedestrian access changes until further notice', 'to_date' => undef, 'url' => 'http://ptv.vic.gov.au/live-travel-updates/article/alamein-belgrave-glen-waverley-and-lilydale-line-stations-temporary-car-park-closures-and-pedestrian-access-changes-until-further-notice' } ], 'routes' => { '2' => { 'geopath' => [], 'route_gtfs_id' => '2-BEG', 'route_id' => 2, 'route_name' => 'Belgrave', 'route_number' => '', 'route_type' => 0 } }, 'runs' => { '951600' => { 'destination_name' => 'Flinders Street', 'direction_id' => 1, 'express_stop_count' => 1, 'externalService' => undef, 'final_stop_id' => 1071, 'geopath' => [], 'interchange' => { 'distributor' => { 'advertised' => 'false', 'destination_name' => 'Alamein', 'direction_id' => 0, 'route_id' => 1, 'run_ref' => '950203', 'stop_id' => 1002 }, 'feeder' => undef }, 'route_id' => 2, 'route_type' => 0, 'run_id' => 951600, 'run_note' => '', 'run_ref' => '951600', 'run_sequence' => 0, 'status' => 'scheduled', 'vehicle_descriptor' => undef, 'vehicle_position' => undef } }, 'status' => { 'health' => 1, 'version' => '3.0' }, 'stops' => { '1012' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1012, 'stop_landmark' => '', 'stop_latitude' => '-37.8224', 'stop_longitude' => '145.045837', 'stop_name' => 'Auburn', 'stop_sequence' => 0, 'stop_suburb' => 'Hawthorn 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' } }, '1016' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1016, 'stop_landmark' => '', 'stop_latitude' => '-37.84173', 'stop_longitude' => '145.268143', 'stop_name' => 'Bayswater', 'stop_sequence' => 0, 'stop_suburb' => 'Bayswater', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'true', 'ticket_machine' => 'false', 'ticket_type' => '', 'ticket_zones' => [ 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 2' } }, '1018' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1018, 'stop_landmark' => '', 'stop_latitude' => '-37.9091', 'stop_longitude' => '145.355286', 'stop_name' => 'Belgrave', 'stop_sequence' => 0, 'stop_suburb' => 'Belgrave', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'true', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 2' } }, '1023' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1023, 'stop_landmark' => '', 'stop_latitude' => '-37.82007', 'stop_longitude' => '145.150009', 'stop_name' => 'Blackburn', 'stop_sequence' => 0, 'stop_suburb' => 'Blackburn', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 2' } }, '1025' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1025, 'stop_landmark' => '', 'stop_latitude' => '-37.8604546', 'stop_longitude' => '145.284378', 'stop_name' => 'Boronia', 'stop_sequence' => 0, 'stop_suburb' => 'Boronia', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'true', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 2' } }, '1026' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1026, 'stop_landmark' => '', 'stop_latitude' => '-37.8192177', 'stop_longitude' => '145.121429', 'stop_name' => 'Box Hill', 'stop_sequence' => 0, 'stop_suburb' => 'Box Hill', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'false', 'ticket_type' => '', 'ticket_zones' => [ 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 2' } }, '1030' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1030, 'stop_landmark' => '', 'stop_latitude' => '-37.8275566', 'stop_longitude' => '145.007553', 'stop_name' => 'Burnley', 'stop_sequence' => 0, 'stop_suburb' => 'Burnley', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'true', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1032' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1032, 'stop_landmark' => '', 'stop_latitude' => '-37.8265648', 'stop_longitude' => '145.058685', 'stop_name' => 'Camberwell', 'stop_sequence' => 0, 'stop_suburb' => 'Camberwell', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1033' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1033, 'stop_landmark' => '', 'stop_latitude' => '-37.82449', 'stop_longitude' => '145.081223', 'stop_name' => 'Canterbury', 'stop_sequence' => 0, 'stop_suburb' => 'Canterbury', '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' } }, '1037' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1037, 'stop_landmark' => '', 'stop_latitude' => '-37.8241463', 'stop_longitude' => '145.08873', 'stop_name' => 'Chatham', 'stop_sequence' => 0, 'stop_suburb' => 'Surrey Hills', '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' } }, '1057' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1057, 'stop_landmark' => '', 'stop_latitude' => '-37.8258934', 'stop_longitude' => '145.068192', 'stop_name' => 'East Camberwell', 'stop_sequence' => 0, 'stop_suburb' => 'Camberwell', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1067' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1067, 'stop_landmark' => '', 'stop_latitude' => '-37.8817', 'stop_longitude' => '145.295258', 'stop_name' => 'Ferntree Gully', 'stop_sequence' => 0, 'stop_suburb' => 'Ferntree Gully', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 2' } }, '1068' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1068, 'stop_landmark' => '', 'stop_latitude' => '-37.8119774', 'stop_longitude' => '144.955658', 'stop_name' => 'Flagstaff', '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' } }, '1071' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1071, 'stop_landmark' => '', 'stop_latitude' => '-37.81831', 'stop_longitude' => '144.966965', 'stop_name' => 'Flinders Street', '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' } }, '1080' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1080, 'stop_landmark' => '', 'stop_latitude' => '-37.8214645', 'stop_longitude' => '145.036438', 'stop_name' => 'Glenferrie', 'stop_sequence' => 0, 'stop_suburb' => 'Hawthorn', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'true', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1090' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1090, 'stop_landmark' => '', 'stop_latitude' => '-37.8218231', 'stop_longitude' => '145.0229', 'stop_name' => 'Hawthorn', 'stop_sequence' => 0, 'stop_suburb' => 'Hawthorn', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1091' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1091, 'stop_landmark' => '', 'stop_latitude' => '-37.81884', 'stop_longitude' => '145.213547', 'stop_name' => 'Heatherdale', 'stop_sequence' => 0, 'stop_suburb' => 'Ringwood', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 2' } }, '1092' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1092, 'stop_landmark' => '', 'stop_latitude' => '-37.82832', 'stop_longitude' => '145.244553', 'stop_name' => 'Heathmont', 'stop_sequence' => 0, 'stop_suburb' => 'Heathmont', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 2' } }, '1111' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1111, 'stop_landmark' => '', 'stop_latitude' => '-37.8207779', 'stop_longitude' => '145.1407', 'stop_name' => 'Laburnum', 'stop_sequence' => 0, 'stop_suburb' => 'Blackburn', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'false', 'ticket_type' => '', 'ticket_zones' => [ 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 2' } }, '1120' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1120, 'stop_landmark' => '', 'stop_latitude' => '-37.8099365', 'stop_longitude' => '144.9626', 'stop_name' => 'Melbourne Central', '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' } }, '1128' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1128, 'stop_landmark' => '', 'stop_latitude' => '-37.8180122', 'stop_longitude' => '145.191971', 'stop_name' => 'Mitcham', 'stop_sequence' => 0, 'stop_suburb' => 'Mitcham', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'true', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 2' } }, '1148' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1148, 'stop_landmark' => '', 'stop_latitude' => '-37.8204231', 'stop_longitude' => '145.175232', 'stop_name' => 'Nunawading', 'stop_sequence' => 0, 'stop_suburb' => 'Nunawading', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'true', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 2' } }, '1155' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1155, 'stop_landmark' => '', 'stop_latitude' => '-37.8110542', 'stop_longitude' => '144.9729', 'stop_name' => 'Parliament', 'stop_sequence' => 0, 'stop_suburb' => 'Melbourne City', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1162' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1162, 'stop_landmark' => '', 'stop_latitude' => '-37.8240738', 'stop_longitude' => '144.990158', 'stop_name' => 'Richmond', 'stop_sequence' => 0, 'stop_suburb' => 'Richmond', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'true', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1163' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1163, 'stop_landmark' => '', 'stop_latitude' => '-37.81589', 'stop_longitude' => '145.228973', 'stop_name' => 'Ringwood', 'stop_sequence' => 0, 'stop_suburb' => 'Ringwood', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'false', 'ticket_type' => '', 'ticket_zones' => [ 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 2' } }, '1181' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1181, 'stop_landmark' => '', 'stop_latitude' => '-37.8179321', 'stop_longitude' => '144.951416', 'stop_name' => 'Southern Cross', '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' => 'true', 'zone' => 'Zone 1' } }, '1191' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1191, 'stop_landmark' => '', 'stop_latitude' => '-37.9081154', 'stop_longitude' => '145.343', 'stop_name' => 'Tecoma', 'stop_sequence' => 0, 'stop_suburb' => 'Tecoma', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 2' } }, '1199' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1199, 'stop_landmark' => '', 'stop_latitude' => '-37.8926735', 'stop_longitude' => '145.307526', 'stop_name' => 'Upper Ferntree Gully', 'stop_sequence' => 0, 'stop_suburb' => 'Upper Ferntree Gully', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'true', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 2' } }, '1200' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1200, 'stop_landmark' => '', 'stop_latitude' => '-37.90369', 'stop_longitude' => '145.331329', 'stop_name' => 'Upwey', 'stop_sequence' => 0, 'stop_suburb' => 'Upwey', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 2' } }, '1229' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1229, 'stop_landmark' => '', 'stop_latitude' => '-37.82312', 'stop_longitude' => '145.100281', 'stop_name' => 'Union', 'stop_sequence' => 0, 'stop_suburb' => 'Mont Albert', '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' } } } }