diff --git a/example-json-outputs/mta_status_alerts.json b/example-json-outputs/mta_status_alerts.json deleted file mode 100644 index 4fd5521..0000000 --- a/example-json-outputs/mta_status_alerts.json +++ /dev/null @@ -1 +0,0 @@ -{"lastUpdated": "2021-05-10T13:39:00-0400", "routeDetails": [{"route": "2", "color": "EE352E", "mode": "subway", "agency": "MTASBWY", "routeId": "MTASBWY_2", "inService": "true", "routeType": "1", "statusDetails": [{"id": "lmm:alert:73533", "statusSummary": "Weekday Service", "statusDescription": "
[2] trains run between Wakefield-241 St and Flatbush Av-Brooklyn College.
", "priority": 3, "direction": "0", "creationDate": "2021-04-24T07:50:19-0400", "startDate": "2021-05-10T04:01:12-0400", "endDate": null}, {"id": "lmm:alert:73533", "statusSummary": "Weekday Service", "statusDescription": "[2] trains run between Wakefield-241 St and Flatbush Av-Brooklyn College.
", "priority": 3, "direction": "1", "creationDate": "2021-04-24T07:50:19-0400", "startDate": "2021-05-10T04:01:12-0400", "endDate": null}]}, {"route": "3", "color": "EE352E", "mode": "subway", "agency": "MTASBWY", "routeId": "MTASBWY_3", "inService": "true", "routeType": "1", "statusDetails": [{"id": "lmm:alert:73541", "statusSummary": "Weekday Service", "statusDescription": "[3] trains run between Harlem-148 St and New Lots Av.
", "priority": 3, "direction": "0", "creationDate": "2021-04-24T07:51:06-0400", "startDate": "2021-05-10T04:03:11-0400", "endDate": null}, {"id": "lmm:alert:73541", "statusSummary": "Weekday Service", "statusDescription": "[3] trains run between Harlem-148 St and New Lots Av.
", "priority": 3, "direction": "1", "creationDate": "2021-04-24T07:51:06-0400", "startDate": "2021-05-10T04:03:11-0400", "endDate": null}]}, {"route": "6X", "color": "00A65C", "mode": "subway", "agency": "MTASBWY", "routeId": "MTASBWY_6X", "inService": "true", "routeType": "1", "statusDetails": null}, {"route": "1", "color": "EE352E", "mode": "subway", "agency": "MTASBWY", "routeId": "MTASBWY_1", "inService": "true", "routeType": "1", "statusDetails": [{"id": "lmm:alert:73532", "statusSummary": "Weekday Service", "statusDescription": "[1] trains run between \u200c\u200cVan Cortlandt Park-242 St and South Ferry.
", "priority": 3, "direction": "1", "creationDate": "2020-12-10T00:59:42-0500", "startDate": "2021-05-10T04:00:51-0400", "endDate": null}, {"id": "lmm:alert:73532", "statusSummary": "Weekday Service", "statusDescription": "[1] trains run between \u200c\u200cVan Cortlandt Park-242 St and South Ferry.
", "priority": 3, "direction": "0", "creationDate": "2020-12-10T00:59:42-0500", "startDate": "2021-05-10T04:00:51-0400", "endDate": null}]}, {"route": "S", "color": null, "mode": "subway", "agency": "MTASBWY", "routeId": "MTASBWY_FS", "inService": "true", "routeType": "1", "statusDetails": [{"id": "lmm:alert:73543", "statusSummary": "Weekday Service", "statusDescription": "[FS] trains run between Franklin Av and Prospect Park.
", "priority": 3, "direction": "0", "creationDate": "2020-12-08T01:07:08-0500", "startDate": "2021-05-10T04:03:37-0400", "endDate": null}, {"id": "lmm:alert:73543", "statusSummary": "Weekday Service", "statusDescription": "[FS] trains run between Franklin Av and Prospect Park.
", "priority": 3, "direction": "1", "creationDate": "2020-12-08T01:07:08-0500", "startDate": "2021-05-10T04:03:37-0400", "endDate": null}]}, {"route": "FX", "color": "FF6319", "mode": "subway", "agency": "MTASBWY", "routeId": "MTASBWY_FX", "inService": "true", "routeType": "1", "statusDetails": null}, {"route": "W", "color": "FCCC0A", "mode": "subway", "agency": "MTASBWY", "routeId": "MTASBWY_W", "inService": "true", "routeType": "1", "statusDetails": [{"id": "lmm:alert:73555", "statusSummary": "Weekday Service", "statusDescription": "[W] trains run between Astoria-Ditmars Blvd and Whitehall St-South Ferry.
Departing Astoria-Ditmars Blvd from 6:13 AM to 9:26 PM
Departing Whitehall St-South Ferry from 7:06 AM to 10:14 PM.
[W] trains do not operate late nights and weekends, take [N] or [R] service instead.
", "priority": 3, "direction": "0", "creationDate": "2021-04-21T08:17:11-0400", "startDate": "2021-05-10T04:58:38-0400", "endDate": null}, {"id": "lmm:alert:73555", "statusSummary": "Weekday Service", "statusDescription": "[W] trains run between Astoria-Ditmars Blvd and Whitehall St-South Ferry.
Departing Astoria-Ditmars Blvd from 6:13 AM to 9:26 PM
Departing Whitehall St-South Ferry from 7:06 AM to 10:14 PM.
[W] trains do not operate late nights and weekends, take [N] or [R] service instead.
", "priority": 3, "direction": "1", "creationDate": "2021-04-21T08:17:11-0400", "startDate": "2021-05-10T04:58:38-0400", "endDate": null}]}, {"route": "SIR", "color": null, "mode": "subway", "agency": "MTASBWY", "routeId": "MTASBWY_SI", "inService": "true", "routeType": "1", "statusDetails": [{"id": "MTA NYCT_277781", "statusSummary": "Planned Work", "statusDescription": "SCHEDULED MAINTENANCEOn weekdays, [SIR] trains will operate to meet the S.I. Ferry, scheduled:
Every 20 minutes during the rush hour periods
Every 30 minutes during the midday/off-peak period
Every hour from 10 PM (from St George)/12 AM (from Tottenville) to 5AM
On weekends, SIR trains will operate to meet the S.I. Ferry, scheduled:
Every 30 minutes from 7 AM to 11 PM
Every hour from 11 PM to 7 AM
", "priority": 3, "direction": "0", "creationDate": "2020-07-18T05:06:17-0400", "startDate": "2021-05-10T03:57:50-0400", "endDate": null}, {"id": "lmm:alert:73523", "statusSummary": "Weekday Service", "statusDescription": "On weekdays, [SIR] trains will operate to meet the S.I. Ferry, scheduled:
Every 20 minutes during the rush hour periods
Every 30 minutes during the midday/off-peak period
Every hour from 10 PM (from St George)/12 AM (from Tottenville) to 5AM
On weekends, SIR trains will operate to meet the S.I. Ferry, scheduled:
Every 30 minutes from 7 AM to 11 PM
Every hour from 11 PM to 7 AM
", "priority": 3, "direction": "1", "creationDate": "2020-07-18T05:06:17-0400", "startDate": "2021-05-10T03:57:50-0400", "endDate": null}]}, {"route": "Z", "color": "996633", "mode": "subway", "agency": "MTASBWY", "routeId": "MTASBWY_Z", "inService": "true", "routeType": "1", "statusDetails": [{"id": "lmm:alert:73527", "statusSummary": "Weekday Service", "statusDescription": "[Z] trains run between Jamaica Center-Parsons/Archer and Broad St AM and PM Rush hours.
Departing Jamaica Center-Parsons/Archer from 7:21 AM to 8:13 AM.
Departing Broad St from 4:55 PM to 5:45 PM.
[Z] trains do not operate evenings, late nights, and weekends; take [J] service instead.
", "priority": 3, "direction": "0", "creationDate": "2020-09-04T22:18:39-0400", "startDate": "2021-05-10T03:59:10-0400", "endDate": null}, {"id": "lmm:alert:73527", "statusSummary": "Weekday Service", "statusDescription": "[Z] trains run between Jamaica Center-Parsons/Archer and Broad St AM and PM Rush hours.
Departing Jamaica Center-Parsons/Archer from 7:21 AM to 8:13 AM.
Departing Broad St from 4:55 PM to 5:45 PM.
[Z] trains do not operate evenings, late nights, and weekends; take [J] service instead.
", "priority": 3, "direction": "1", "creationDate": "2020-09-04T22:18:39-0400", "startDate": "2021-05-10T03:59:10-0400", "endDate": null}]}, {"route": "N", "color": "FCCC0A", "mode": "subway", "agency": "MTASBWY", "routeId": "MTASBWY_N", "inService": "true", "routeType": "1", "statusDetails": [{"id": "lmm:alert:73536", "statusSummary": "Weekday Service", "statusDescription": "[N] trains run between Astoria-Ditmars Blvd and Coney Island-Stillwell Av.
", "priority": 3, "direction": "1", "creationDate": "2021-02-01T19:42:07-0500", "startDate": "2021-05-10T04:02:19-0400", "endDate": null}, {"id": "lmm:alert:73536", "statusSummary": "Weekday Service", "statusDescription": "[N] trains run between Astoria-Ditmars Blvd and Coney Island-Stillwell Av.
", "priority": 3, "direction": "0", "creationDate": "2021-02-01T19:42:07-0500", "startDate": "2021-05-10T04:02:19-0400", "endDate": null}]}, {"route": "L", "color": "A7A9AC", "mode": "subway", "agency": "MTASBWY", "routeId": "MTASBWY_L", "inService": "true", "routeType": "1", "statusDetails": [{"id": "lmm:alert:73524", "statusSummary": "Weekday Service", "statusDescription": "[L] trains run between 8 Av and Canarsie-Rockaway Pkwy.
", "priority": 3, "direction": "1", "creationDate": "2020-12-14T00:58:44-0500", "startDate": "2021-05-10T03:58:07-0400", "endDate": null}, {"id": "lmm:alert:73524", "statusSummary": "Weekday Service", "statusDescription": "[L] trains run between 8 Av and Canarsie-Rockaway Pkwy.
", "priority": 3, "direction": "0", "creationDate": "2020-12-14T00:58:44-0500", "startDate": "2021-05-10T03:58:07-0400", "endDate": null}]}, {"route": "M", "color": "FF6319", "mode": "subway", "agency": "MTASBWY", "routeId": "MTASBWY_M", "inService": "true", "routeType": "1", "statusDetails": [{"id": "lmm:alert:73553", "statusSummary": "Weekday Service", "statusDescription": "[M] trains run between Forest Hills-71 Av and Middle Village-Metropolitan Av.
", "priority": 3, "direction": "0", "creationDate": "2020-12-06T01:12:29-0500", "startDate": "2021-05-10T04:57:10-0400", "endDate": null}, {"id": "lmm:alert:73553", "statusSummary": "Weekday Service", "statusDescription": "[M] trains run between Forest Hills-71 Av and Middle Village-Metropolitan Av.
", "priority": 3, "direction": "1", "creationDate": "2020-12-06T01:12:29-0500", "startDate": "2021-05-10T04:57:10-0400", "endDate": null}]}, {"route": "R", "color": "FCCC0A", "mode": "subway", "agency": "MTASBWY", "routeId": "MTASBWY_R", "inService": "true", "routeType": "1", "statusDetails": [{"id": "lmm:alert:73552", "statusSummary": "Weekday Service", "statusDescription": "[R] trains run between Forest Hills-71 Av and Bay Ridge-95 St.
", "priority": 3, "direction": "1", "creationDate": "2021-04-11T01:58:40-0400", "startDate": "2021-05-10T04:56:42-0400", "endDate": null}, {"id": "lmm:alert:73552", "statusSummary": "Weekday Service", "statusDescription": "[R] trains run between Forest Hills-71 Av and Bay Ridge-95 St.
", "priority": 3, "direction": "0", "creationDate": "2021-04-11T01:58:40-0400", "startDate": "2021-05-10T04:56:42-0400", "endDate": null}]}, {"route": "7X", "color": "B933AD", "mode": "subway", "agency": "MTASBWY", "routeId": "MTASBWY_7X", "inService": "true", "routeType": "1", "statusDetails": null}, {"route": "Q", "color": "FCCC0A", "mode": "subway", "agency": "MTASBWY", "routeId": "MTASBWY_Q", "inService": "true", "routeType": "1", "statusDetails": [{"id": "lmm:alert:73530", "statusSummary": "Weekday Service", "statusDescription": "[Q] trains run between 96 St and Coney Island-Stillwell Av.
", "priority": 3, "direction": "0", "creationDate": "2020-12-08T01:06:24-0500", "startDate": "2021-05-10T04:00:14-0400", "endDate": null}, {"id": "lmm:alert:73530", "statusSummary": "Weekday Service", "statusDescription": "[Q] trains run between 96 St and Coney Island-Stillwell Av.
", "priority": 3, "direction": "1", "creationDate": "2020-12-08T01:06:24-0500", "startDate": "2021-05-10T04:00:14-0400", "endDate": null}]}, {"route": "F", "color": "FF6319", "mode": "subway", "agency": "MTASBWY", "routeId": "MTASBWY_F", "inService": "true", "routeType": "1", "statusDetails": [{"id": "lmm:alert:73610", "statusSummary": "Some Reroutes", "statusDescription": "Some southbound [F] trains are running on the [A] line from W 4 St-Wash Sq to Jay St-MetroTech while we work to correct a signal malfunction at Delancey St-Essex St.
Expect delays in southbound [F] [A] service.
", "priority": 21, "direction": "0", "creationDate": "2021-05-10T12:30:54-0400", "startDate": "2021-05-10T12:30:54-0400", "endDate": null}, {"id": "lmm:alert:73558", "statusSummary": "Weekday Service", "statusDescription": "[F] trains run between Jamaica-179 St and Coney Island-Stillwell Av.
", "priority": 3, "direction": "0", "creationDate": "2020-12-08T01:01:03-0500", "startDate": "2021-05-10T05:02:30-0400", "endDate": null}, {"id": "lmm:alert:73610", "statusSummary": "Some Reroutes", "statusDescription": "Some southbound [F] trains are running on the [A] line from W 4 St-Wash Sq to Jay St-MetroTech while we work to correct a signal malfunction at Delancey St-Essex St.
Expect delays in southbound [F] [A] service.
", "priority": 21, "direction": "1", "creationDate": "2021-05-10T12:30:54-0400", "startDate": "2021-05-10T12:30:54-0400", "endDate": null}, {"id": "lmm:alert:73558", "statusSummary": "Weekday Service", "statusDescription": "[F] trains run between Jamaica-179 St and Coney Island-Stillwell Av.
", "priority": 3, "direction": "1", "creationDate": "2020-12-08T01:01:03-0500", "startDate": "2021-05-10T05:02:30-0400", "endDate": null}]}, {"route": "G", "color": "6CBE45", "mode": "subway", "agency": "MTASBWY", "routeId": "MTASBWY_G", "inService": "true", "routeType": "1", "statusDetails": [{"id": "lmm:alert:73526", "statusSummary": "Weekday Service", "statusDescription": "[G] trains run between Church Av and Court Sq.
", "priority": 3, "direction": "0", "creationDate": "2020-12-10T01:00:39-0500", "startDate": "2021-05-10T03:58:44-0400", "endDate": null}, {"id": "lmm:alert:73526", "statusSummary": "Weekday Service", "statusDescription": "[G] trains run between Church Av and Court Sq.
", "priority": 3, "direction": "1", "creationDate": "2020-12-10T01:00:39-0500", "startDate": "2021-05-10T03:58:44-0400", "endDate": null}]}, {"route": "D", "color": "FF6319", "mode": "subway", "agency": "MTASBWY", "routeId": "MTASBWY_D", "inService": "true", "routeType": "1", "statusDetails": [{"id": "lmm:alert:73535", "statusSummary": "Weekday Service", "statusDescription": "[D] trains run between Norwood-205 St and Coney Island-Stillwell Av.
", "priority": 3, "direction": "0", "creationDate": "2021-02-02T14:30:31-0500", "startDate": "2021-05-10T04:01:56-0400", "endDate": null}, {"id": "lmm:alert:73535", "statusSummary": "Weekday Service", "statusDescription": "[D] trains run between Norwood-205 St and Coney Island-Stillwell Av.
", "priority": 3, "direction": "1", "creationDate": "2021-02-02T14:30:31-0500", "startDate": "2021-05-10T04:01:56-0400", "endDate": null}]}, {"route": "E", "color": "2850AD", "mode": "subway", "agency": "MTASBWY", "routeId": "MTASBWY_E", "inService": "true", "routeType": "1", "statusDetails": [{"id": "lmm:alert:73528", "statusSummary": "Weekday Service", "statusDescription": "[E] trains run between Jamaica Center-Parsons/Archer and World Trade Center.
", "priority": 3, "direction": "1", "creationDate": "2020-10-31T04:54:57-0400", "startDate": "2021-05-10T03:59:32-0400", "endDate": null}, {"id": "lmm:alert:73528", "statusSummary": "Weekday Service", "statusDescription": "[E] trains run between Jamaica Center-Parsons/Archer and World Trade Center.
", "priority": 3, "direction": "0", "creationDate": "2020-10-31T04:54:57-0400", "startDate": "2021-05-10T03:59:32-0400", "endDate": null}]}, {"route": "J", "color": "996633", "mode": "subway", "agency": "MTASBWY", "routeId": "MTASBWY_J", "inService": "true", "routeType": "1", "statusDetails": [{"id": "lmm:alert:73537", "statusSummary": "Weekday Service", "statusDescription": "[J] trains run between Jamaica Center-Parsons/Archer and Broad St.
", "priority": 3, "direction": "1", "creationDate": "2020-12-08T01:02:39-0500", "startDate": "2021-05-10T04:02:42-0400", "endDate": null}, {"id": "lmm:alert:73537", "statusSummary": "Weekday Service", "statusDescription": "[J] trains run between Jamaica Center-Parsons/Archer and Broad St.
", "priority": 3, "direction": "0", "creationDate": "2020-12-08T01:02:39-0500", "startDate": "2021-05-10T04:02:42-0400", "endDate": null}]}, {"route": "S", "color": null, "mode": "subway", "agency": "MTASBWY", "routeId": "MTASBWY_H", "inService": "true", "routeType": "1", "statusDetails": [{"id": "lmm:alert:73556", "statusSummary": "Weekday Service", "statusDescription": "[H] trains run between Broad Channel and Rockaway Park-Beach 116 St.
", "priority": 3, "direction": "1", "creationDate": "2021-05-05T16:34:46-0400", "startDate": "2021-05-10T04:59:18-0400", "endDate": null}, {"id": "lmm:alert:73556", "statusSummary": "Weekday Service", "statusDescription": "[H] trains run between Broad Channel and Rockaway Park-Beach 116 St.
", "priority": 3, "direction": "0", "creationDate": "2021-05-05T16:34:46-0400", "startDate": "2021-05-10T04:59:18-0400", "endDate": null}]}, {"route": "S", "color": "6D6E71", "mode": "subway", "agency": "MTASBWY", "routeId": "MTASBWY_GS", "inService": "true", "routeType": "1", "statusDetails": [{"id": "lmm:alert:73550", "statusSummary": "Weekday Service", "statusDescription": "[S] trains run between Times Sq-42 St and Grand Central-42 St.
Trains run between 6:00 AM and 12:00 AM Daily.
The [S] does not operate late nights, take [7] service instead.
", "priority": 3, "direction": "0", "creationDate": "2020-11-03T01:01:32-0500", "startDate": "2021-05-10T04:07:36-0400", "endDate": null}, {"id": "lmm:alert:73550", "statusSummary": "Weekday Service", "statusDescription": "[S] trains run between Times Sq-42 St and Grand Central-42 St.
Trains run between 6:00 AM and 12:00 AM Daily.
The [S] does not operate late nights, take [7] service instead.
", "priority": 3, "direction": "1", "creationDate": "2020-11-03T01:01:32-0500", "startDate": "2021-05-10T04:07:36-0400", "endDate": null}]}, {"route": "B", "color": "FF6319", "mode": "subway", "agency": "MTASBWY", "routeId": "MTASBWY_B", "inService": "true", "routeType": "1", "statusDetails": [{"id": "lmm:alert:73596", "statusSummary": "Weekday Service", "statusDescription": "[B] trains run between 145 St and Brighton Beach.
", "priority": 3, "direction": "0", "creationDate": "2021-02-01T12:35:30-0500", "startDate": "2021-05-10T09:26:05-0400", "endDate": null}, {"id": "lmm:alert:73596", "statusSummary": "Weekday Service", "statusDescription": "[B] trains run between 145 St and Brighton Beach.
", "priority": 3, "direction": "1", "creationDate": "2021-02-01T12:35:30-0500", "startDate": "2021-05-10T09:26:05-0400", "endDate": null}]}, {"route": "C", "color": "2850AD", "mode": "subway", "agency": "MTASBWY", "routeId": "MTASBWY_C", "inService": "true", "routeType": "1", "statusDetails": [{"id": "lmm:alert:73557", "statusSummary": "Weekday Service", "statusDescription": "[C] trains run between 168 St and Euclid Av.
", "priority": 3, "direction": "0", "creationDate": "2020-12-25T22:44:32-0500", "startDate": "2021-05-10T05:00:05-0400", "endDate": null}, {"id": "lmm:alert:73557", "statusSummary": "Weekday Service", "statusDescription": "[C] trains run between 168 St and Euclid Av.
", "priority": 3, "direction": "1", "creationDate": "2020-12-25T22:44:32-0500", "startDate": "2021-05-10T05:00:05-0400", "endDate": null}]}, {"route": "A", "color": "2850AD", "mode": "subway", "agency": "MTASBWY", "routeId": "MTASBWY_A", "inService": "true", "routeType": "1", "statusDetails": [{"id": "MTA NYCT_277833", "statusSummary": "Planned Work", "statusDescription": "TRACK WORK[A] trains run between Inwood-207 St and Far Rockaway-Mott Av/ Ozone Park-Lefferts Blvd.
", "priority": 3, "direction": "1", "creationDate": "2020-12-08T01:06:03-0500", "startDate": "2021-05-10T04:04:05-0400", "endDate": null}, {"id": "lmm:alert:73547", "statusSummary": "Weekday Service", "statusDescription": "[A] trains run between Inwood-207 St and Far Rockaway-Mott Av/ Ozone Park-Lefferts Blvd.
", "priority": 3, "direction": "0", "creationDate": "2020-12-08T01:06:03-0500", "startDate": "2021-05-10T04:04:05-0400", "endDate": null}, {"id": "lmm:alert:73611", "statusSummary": "Delays", "statusDescription": "Some southbound [F] trains are running on the [A] line from W 4 St-Wash Sq to Jay St-MetroTech while we work to correct a signal malfunction at Delancey St-Essex St.
Expect delays in southbound [F] [A] service.
", "priority": 18, "direction": "0", "creationDate": "2021-05-10T12:30:54-0400", "startDate": "2021-05-10T12:30:54-0400", "endDate": null}, {"id": "lmm:alert:73611", "statusSummary": "Delays", "statusDescription": "Some southbound [F] trains are running on the [A] line from W 4 St-Wash Sq to Jay St-MetroTech while we work to correct a signal malfunction at Delancey St-Essex St.
Expect delays in southbound [F] [A] service.
", "priority": 18, "direction": "1", "creationDate": "2021-05-10T12:30:54-0400", "startDate": "2021-05-10T12:30:54-0400", "endDate": null}]}, {"route": "6", "color": "00933C", "mode": "subway", "agency": "MTASBWY", "routeId": "MTASBWY_6", "inService": "true", "routeType": "1", "statusDetails": [{"id": "lmm:alert:73567", "statusSummary": "Weekday Service", "statusDescription": "[6] trains run between Pelham Bay Park and Brooklyn Bridge-City Hall.
[6X] trains run from Pelham Bay Park to Brooklyn Bridge-City Hall.
", "priority": 3, "direction": "0", "creationDate": "2020-12-08T01:00:26-0500", "startDate": "2021-05-10T06:11:32-0400", "endDate": null}, {"id": "lmm:alert:73567", "statusSummary": "Weekday Service", "statusDescription": "[6] trains run between Pelham Bay Park and Brooklyn Bridge-City Hall.
[6X] trains run from Pelham Bay Park to Brooklyn Bridge-City Hall.
", "priority": 3, "direction": "1", "creationDate": "2020-12-08T01:00:26-0500", "startDate": "2021-05-10T06:11:32-0400", "endDate": null}]}, {"route": "7", "color": "B933AD", "mode": "subway", "agency": "MTASBWY", "routeId": "MTASBWY_7", "inService": "true", "routeType": "1", "statusDetails": [{"id": "lmm:alert:73603", "statusSummary": "Weekday Service", "statusDescription": "[7] trains run between 34 St-Hudson Yards and Flushing-Main St.
", "priority": 3, "direction": "0", "creationDate": "2020-12-10T01:01:10-0500", "startDate": "2021-05-10T10:30:42-0400", "endDate": null}, {"id": "lmm:alert:73603", "statusSummary": "Weekday Service", "statusDescription": "[7] trains run between 34 St-Hudson Yards and Flushing-Main St.
", "priority": 3, "direction": "1", "creationDate": "2020-12-10T01:01:10-0500", "startDate": "2021-05-10T10:30:42-0400", "endDate": null}]}, {"route": "4", "color": "00933C", "mode": "subway", "agency": "MTASBWY", "routeId": "MTASBWY_4", "inService": "true", "routeType": "1", "statusDetails": [{"id": "lmm:alert:73560", "statusSummary": "Weekday Service", "statusDescription": "[4] trains run between Woodlawn and Crown Hts-Utica Av.
", "priority": 3, "direction": "0", "creationDate": "2020-12-10T01:02:13-0500", "startDate": "2021-05-10T05:10:52-0400", "endDate": null}, {"id": "lmm:alert:73560", "statusSummary": "Weekday Service", "statusDescription": "[4] trains run between Woodlawn and Crown Hts-Utica Av.
", "priority": 3, "direction": "1", "creationDate": "2020-12-10T01:02:13-0500", "startDate": "2021-05-10T05:10:52-0400", "endDate": null}]}, {"route": "5", "color": "00933C", "mode": "subway", "agency": "MTASBWY", "routeId": "MTASBWY_5", "inService": "true", "routeType": "1", "statusDetails": [{"id": "lmm:alert:73559", "statusSummary": "Weekday Service", "statusDescription": "[5] trains run between Eastchester-Dyre Av and Flatbush Av-Brooklyn College.
", "priority": 3, "direction": "0", "creationDate": "2021-04-24T07:52:11-0400", "startDate": "2021-05-10T05:07:18-0400", "endDate": null}, {"id": "lmm:alert:73559", "statusSummary": "Weekday Service", "statusDescription": "[5] trains run between Eastchester-Dyre Av and Flatbush Av-Brooklyn College.
", "priority": 3, "direction": "1", "creationDate": "2021-04-24T07:52:11-0400", "startDate": "2021-05-10T05:07:18-0400", "endDate": null}]}]} \ No newline at end of file diff --git a/example-json-outputs/subway_timing_sample.json b/example-json-outputs/subway_timing_sample.json deleted file mode 100644 index b8f41d4..0000000 --- a/example-json-outputs/subway_timing_sample.json +++ /dev/null @@ -1,12439 +0,0 @@ -[ - { - "id": "000001A", - "trip_update": { - "trip": { - "trip_id": "132700_A..S", - "start_time": "22:07:00", - "start_date": "20210510", - "route_id": "A" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620705451 - }, - "departure": { - "time": 1620705451 - }, - "stop_id": "H06S" - }, - { - "arrival": { - "time": 1620705518 - }, - "departure": { - "time": 1620705518 - }, - "stop_id": "H07S" - }, - { - "arrival": { - "time": 1620705638 - }, - "departure": { - "time": 1620705638 - }, - "stop_id": "H08S" - }, - { - "arrival": { - "time": 1620705728 - }, - "departure": { - "time": 1620705728 - }, - "stop_id": "H09S" - }, - { - "arrival": { - "time": 1620705848 - }, - "departure": { - "time": 1620705848 - }, - "stop_id": "H10S" - }, - { - "arrival": { - "time": 1620705938 - }, - "departure": { - "time": 1620705938 - }, - "stop_id": "H11S" - } - ] - } - }, - { - "id": "000002A", - "vehicle": { - "trip": { - "trip_id": "132700_A..S", - "start_time": "22:07:00", - "start_date": "20210510", - "route_id": "A" - }, - "current_stop_sequence": 37, - "current_status": 1, - "timestamp": 1620705451, - "stop_id": "H06S" - } - }, - { - "id": "000003A", - "trip_update": { - "trip": { - "trip_id": "134250_A..N", - "start_time": "22:22:30", - "start_date": "20210510", - "route_id": "A" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620705451 - }, - "departure": { - "time": 1620705451 - }, - "stop_id": "A07N" - }, - { - "arrival": { - "time": 1620705518 - }, - "departure": { - "time": 1620705518 - }, - "stop_id": "A06N" - }, - { - "arrival": { - "time": 1620705638 - }, - "departure": { - "time": 1620705638 - }, - "stop_id": "A05N" - }, - { - "arrival": { - "time": 1620705863 - }, - "departure": { - "time": 1620705863 - }, - "stop_id": "A03N" - }, - { - "arrival": { - "time": 1620706028 - }, - "departure": { - "time": 1620706028 - }, - "stop_id": "A02N" - } - ] - } - }, - { - "id": "000004A", - "vehicle": { - "trip": { - "trip_id": "134250_A..N", - "start_time": "22:22:30", - "start_date": "20210510", - "route_id": "A" - }, - "current_stop_sequence": 54, - "current_status": 1, - "timestamp": 1620705451, - "stop_id": "A07N" - } - }, - { - "id": "000005A", - "trip_update": { - "trip": { - "trip_id": "135100_A..S", - "start_time": "22:31:00", - "start_date": "20210510", - "route_id": "A" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620705452 - }, - "departure": { - "time": 1620705452 - }, - "stop_id": "A61S" - }, - { - "arrival": { - "time": 1620705616 - }, - "departure": { - "time": 1620705616 - }, - "stop_id": "H02S" - }, - { - "arrival": { - "time": 1620705736 - }, - "departure": { - "time": 1620705736 - }, - "stop_id": "H03S" - }, - { - "arrival": { - "time": 1620706126 - }, - "departure": { - "time": 1620706126 - }, - "stop_id": "H04S" - }, - { - "arrival": { - "time": 1620706471 - }, - "departure": { - "time": 1620706471 - }, - "stop_id": "H06S" - }, - { - "arrival": { - "time": 1620706771 - }, - "departure": { - "time": 1620706771 - }, - "stop_id": "H07S" - }, - { - "arrival": { - "time": 1620706996 - }, - "departure": { - "time": 1620706996 - }, - "stop_id": "H08S" - }, - { - "arrival": { - "time": 1620707086 - }, - "departure": { - "time": 1620707086 - }, - "stop_id": "H09S" - }, - { - "arrival": { - "time": 1620707206 - }, - "departure": { - "time": 1620707206 - }, - "stop_id": "H10S" - }, - { - "arrival": { - "time": 1620707296 - }, - "departure": { - "time": 1620707296 - }, - "stop_id": "H11S" - } - ] - } - }, - { - "id": "000006A", - "vehicle": { - "trip": { - "trip_id": "135100_A..S", - "start_time": "22:31:00", - "start_date": "20210510", - "route_id": "A" - }, - "current_stop_sequence": 48, - "current_status": 1, - "timestamp": 1620705452, - "stop_id": "A61S" - } - }, - { - "id": "000007A", - "trip_update": { - "trip": { - "trip_id": "133978_A..N", - "start_time": "22:19:47", - "start_date": "20210510", - "route_id": "A" - } - } - }, - { - "id": "000008A", - "vehicle": { - "trip": { - "trip_id": "133978_A..N", - "start_time": "22:19:47", - "start_date": "20210510", - "route_id": "A" - }, - "current_stop_sequence": 51, - "current_status": 1, - "timestamp": 1620705101, - "stop_id": "A02N" - } - }, - { - "id": "000009A", - "trip_update": { - "trip": { - "trip_id": "136300_A..S", - "start_time": "22:43:00", - "start_date": "20210510", - "route_id": "A" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620705451 - }, - "departure": { - "time": 1620705451 - }, - "stop_id": "A52S" - }, - { - "arrival": { - "time": 1620705518 - }, - "departure": { - "time": 1620705518 - }, - "stop_id": "A53S" - }, - { - "arrival": { - "time": 1620705608 - }, - "departure": { - "time": 1620705608 - }, - "stop_id": "A54S" - }, - { - "arrival": { - "time": 1620705698 - }, - "departure": { - "time": 1620705698 - }, - "stop_id": "A55S" - }, - { - "arrival": { - "time": 1620705788 - }, - "departure": { - "time": 1620705788 - }, - "stop_id": "A57S" - }, - { - "arrival": { - "time": 1620705878 - }, - "departure": { - "time": 1620705878 - }, - "stop_id": "A59S" - }, - { - "arrival": { - "time": 1620705968 - }, - "departure": { - "time": 1620705968 - }, - "stop_id": "A60S" - }, - { - "arrival": { - "time": 1620706058 - }, - "departure": { - "time": 1620706058 - }, - "stop_id": "A61S" - }, - { - "arrival": { - "time": 1620706298 - }, - "departure": { - "time": 1620706298 - }, - "stop_id": "A63S" - }, - { - "arrival": { - "time": 1620706508 - }, - "departure": { - "time": 1620706508 - }, - "stop_id": "A64S" - }, - { - "arrival": { - "time": 1620706568 - }, - "departure": { - "time": 1620706568 - }, - "stop_id": "A65S" - } - ] - } - }, - { - "id": "000010A", - "vehicle": { - "trip": { - "trip_id": "136300_A..S", - "start_time": "22:43:00", - "start_date": "20210510", - "route_id": "A" - }, - "current_stop_sequence": 41, - "current_status": 1, - "timestamp": 1620705451, - "stop_id": "A52S" - } - }, - { - "id": "000011A", - "trip_update": { - "trip": { - "trip_id": "136500_A..N", - "start_time": "22:45:00", - "start_date": "20210510", - "route_id": "A" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620705451 - }, - "departure": { - "time": 1620705451 - }, - "stop_id": "A14N" - }, - { - "arrival": { - "time": 1620705452 - }, - "departure": { - "time": 1620705452 - }, - "stop_id": "A12N" - }, - { - "arrival": { - "time": 1620705542 - }, - "departure": { - "time": 1620705542 - }, - "stop_id": "A11N" - }, - { - "arrival": { - "time": 1620705632 - }, - "departure": { - "time": 1620705632 - }, - "stop_id": "A10N" - }, - { - "arrival": { - "time": 1620705722 - }, - "departure": { - "time": 1620705722 - }, - "stop_id": "A09N" - } - ] - } - }, - { - "id": "000012A", - "vehicle": { - "trip": { - "trip_id": "136500_A..N", - "start_time": "22:45:00", - "start_date": "20210510", - "route_id": "A" - }, - "current_stop_sequence": 43, - "current_status": 1, - "timestamp": 1620705452, - "stop_id": "A12N" - } - }, - { - "id": "000013A", - "trip_update": { - "trip": { - "trip_id": "137793_A..N", - "start_time": "22:57:56", - "start_date": "20210510", - "route_id": "A" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620705451 - }, - "departure": { - "time": 1620705451 - }, - "stop_id": "A40N" - }, - { - "arrival": { - "time": 1620705536 - }, - "departure": { - "time": 1620705536 - }, - "stop_id": "A38N" - }, - { - "arrival": { - "time": 1620705656 - }, - "departure": { - "time": 1620705656 - }, - "stop_id": "A36N" - }, - { - "arrival": { - "time": 1620705746 - }, - "departure": { - "time": 1620705746 - }, - "stop_id": "A34N" - }, - { - "arrival": { - "time": 1620705836 - }, - "departure": { - "time": 1620705836 - }, - "stop_id": "A33N" - }, - { - "arrival": { - "time": 1620705956 - }, - "departure": { - "time": 1620705956 - }, - "stop_id": "A32N" - }, - { - "arrival": { - "time": 1620706076 - }, - "departure": { - "time": 1620706076 - }, - "stop_id": "A31N" - }, - { - "arrival": { - "time": 1620706166 - }, - "departure": { - "time": 1620706166 - }, - "stop_id": "A30N" - }, - { - "arrival": { - "time": 1620706286 - }, - "departure": { - "time": 1620706286 - }, - "stop_id": "A28N" - }, - { - "arrival": { - "time": 1620706346 - }, - "departure": { - "time": 1620706346 - }, - "stop_id": "A27N" - }, - { - "arrival": { - "time": 1620706436 - }, - "departure": { - "time": 1620706436 - }, - "stop_id": "A25N" - }, - { - "arrival": { - "time": 1620706601 - }, - "departure": { - "time": 1620706601 - }, - "stop_id": "A24N" - }, - { - "arrival": { - "time": 1620706736 - }, - "departure": { - "time": 1620706736 - }, - "stop_id": "A22N" - }, - { - "arrival": { - "time": 1620706826 - }, - "departure": { - "time": 1620706826 - }, - "stop_id": "A21N" - }, - { - "arrival": { - "time": 1620706916 - }, - "departure": { - "time": 1620706916 - }, - "stop_id": "A20N" - }, - { - "arrival": { - "time": 1620707006 - }, - "departure": { - "time": 1620707006 - }, - "stop_id": "A19N" - }, - { - "arrival": { - "time": 1620707096 - }, - "departure": { - "time": 1620707096 - }, - "stop_id": "A18N" - }, - { - "arrival": { - "time": 1620707156 - }, - "departure": { - "time": 1620707156 - }, - "stop_id": "A17N" - }, - { - "arrival": { - "time": 1620707246 - }, - "departure": { - "time": 1620707246 - }, - "stop_id": "A16N" - }, - { - "arrival": { - "time": 1620707381 - }, - "departure": { - "time": 1620707381 - }, - "stop_id": "A15N" - }, - { - "arrival": { - "time": 1620707516 - }, - "departure": { - "time": 1620707516 - }, - "stop_id": "A14N" - }, - { - "arrival": { - "time": 1620707606 - }, - "departure": { - "time": 1620707606 - }, - "stop_id": "A12N" - }, - { - "arrival": { - "time": 1620707696 - }, - "departure": { - "time": 1620707696 - }, - "stop_id": "A11N" - }, - { - "arrival": { - "time": 1620707786 - }, - "departure": { - "time": 1620707786 - }, - "stop_id": "A10N" - }, - { - "arrival": { - "time": 1620707876 - }, - "departure": { - "time": 1620707876 - }, - "stop_id": "A09N" - } - ] - } - }, - { - "id": "000014A", - "vehicle": { - "trip": { - "trip_id": "137793_A..N", - "start_time": "22:57:56", - "start_date": "20210510", - "route_id": "A" - }, - "current_stop_sequence": 29, - "current_status": 1, - "timestamp": 1620705451, - "stop_id": "A40N" - } - }, - { - "id": "000015A", - "trip_update": { - "trip": { - "trip_id": "137500_A..S", - "start_time": "22:55:00", - "start_date": "20210510", - "route_id": "A" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620705451 - }, - "departure": { - "time": 1620705451 - }, - "stop_id": "A44S" - }, - { - "arrival": { - "time": 1620705451 - }, - "departure": { - "time": 1620705451 - }, - "stop_id": "A45S" - }, - { - "arrival": { - "time": 1620705518 - }, - "departure": { - "time": 1620705518 - }, - "stop_id": "A46S" - }, - { - "arrival": { - "time": 1620705638 - }, - "departure": { - "time": 1620705638 - }, - "stop_id": "A47S" - }, - { - "arrival": { - "time": 1620705728 - }, - "departure": { - "time": 1620705728 - }, - "stop_id": "A48S" - }, - { - "arrival": { - "time": 1620705848 - }, - "departure": { - "time": 1620705848 - }, - "stop_id": "A49S" - }, - { - "arrival": { - "time": 1620705938 - }, - "departure": { - "time": 1620705938 - }, - "stop_id": "A50S" - }, - { - "arrival": { - "time": 1620706028 - }, - "departure": { - "time": 1620706028 - }, - "stop_id": "A51S" - }, - { - "arrival": { - "time": 1620706148 - }, - "departure": { - "time": 1620706148 - }, - "stop_id": "A52S" - }, - { - "arrival": { - "time": 1620706238 - }, - "departure": { - "time": 1620706238 - }, - "stop_id": "A53S" - }, - { - "arrival": { - "time": 1620706328 - }, - "departure": { - "time": 1620706328 - }, - "stop_id": "A54S" - }, - { - "arrival": { - "time": 1620706418 - }, - "departure": { - "time": 1620706418 - }, - "stop_id": "A55S" - }, - { - "arrival": { - "time": 1620706508 - }, - "departure": { - "time": 1620706508 - }, - "stop_id": "A57S" - }, - { - "arrival": { - "time": 1620706598 - }, - "departure": { - "time": 1620706598 - }, - "stop_id": "A59S" - }, - { - "arrival": { - "time": 1620706688 - }, - "departure": { - "time": 1620706688 - }, - "stop_id": "A60S" - }, - { - "arrival": { - "time": 1620706778 - }, - "departure": { - "time": 1620706778 - }, - "stop_id": "A61S" - }, - { - "arrival": { - "time": 1620707063 - }, - "departure": { - "time": 1620707063 - }, - "stop_id": "A63S" - }, - { - "arrival": { - "time": 1620707318 - }, - "departure": { - "time": 1620707318 - }, - "stop_id": "A64S" - }, - { - "arrival": { - "time": 1620707378 - }, - "departure": { - "time": 1620707378 - }, - "stop_id": "A65S" - } - ] - } - }, - { - "id": "000016A", - "vehicle": { - "trip": { - "trip_id": "137500_A..S", - "start_time": "22:55:00", - "start_date": "20210510", - "route_id": "A" - }, - "current_stop_sequence": 34, - "current_status": 1, - "timestamp": 1620705451, - "stop_id": "A45S" - } - }, - { - "id": "000017A", - "trip_update": { - "trip": { - "trip_id": "139835_A..N", - "start_time": "23:18:21", - "start_date": "20210510", - "route_id": "A" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620705451 - }, - "departure": { - "time": 1620705451 - }, - "stop_id": "A32N" - }, - { - "arrival": { - "time": 1620705518 - }, - "departure": { - "time": 1620705518 - }, - "stop_id": "A31N" - }, - { - "arrival": { - "time": 1620705608 - }, - "departure": { - "time": 1620705608 - }, - "stop_id": "A30N" - }, - { - "arrival": { - "time": 1620705728 - }, - "departure": { - "time": 1620705728 - }, - "stop_id": "A28N" - }, - { - "arrival": { - "time": 1620705788 - }, - "departure": { - "time": 1620705788 - }, - "stop_id": "A27N" - }, - { - "arrival": { - "time": 1620705878 - }, - "departure": { - "time": 1620705878 - }, - "stop_id": "A25N" - }, - { - "arrival": { - "time": 1620706028 - }, - "departure": { - "time": 1620706028 - }, - "stop_id": "A24N" - }, - { - "arrival": { - "time": 1620706148 - }, - "departure": { - "time": 1620706148 - }, - "stop_id": "A22N" - }, - { - "arrival": { - "time": 1620706238 - }, - "departure": { - "time": 1620706238 - }, - "stop_id": "A21N" - }, - { - "arrival": { - "time": 1620706328 - }, - "departure": { - "time": 1620706328 - }, - "stop_id": "A20N" - }, - { - "arrival": { - "time": 1620706418 - }, - "departure": { - "time": 1620706418 - }, - "stop_id": "A19N" - }, - { - "arrival": { - "time": 1620706508 - }, - "departure": { - "time": 1620706508 - }, - "stop_id": "A18N" - }, - { - "arrival": { - "time": 1620706568 - }, - "departure": { - "time": 1620706568 - }, - "stop_id": "A17N" - }, - { - "arrival": { - "time": 1620706658 - }, - "departure": { - "time": 1620706658 - }, - "stop_id": "A16N" - }, - { - "arrival": { - "time": 1620706793 - }, - "departure": { - "time": 1620706793 - }, - "stop_id": "A15N" - }, - { - "arrival": { - "time": 1620706928 - }, - "departure": { - "time": 1620706928 - }, - "stop_id": "A14N" - }, - { - "arrival": { - "time": 1620707018 - }, - "departure": { - "time": 1620707018 - }, - "stop_id": "A12N" - }, - { - "arrival": { - "time": 1620707108 - }, - "departure": { - "time": 1620707108 - }, - "stop_id": "A11N" - }, - { - "arrival": { - "time": 1620707198 - }, - "departure": { - "time": 1620707198 - }, - "stop_id": "A10N" - }, - { - "arrival": { - "time": 1620707288 - }, - "departure": { - "time": 1620707288 - }, - "stop_id": "A09N" - } - ] - } - }, - { - "id": "000018A", - "vehicle": { - "trip": { - "trip_id": "139835_A..N", - "start_time": "23:18:21", - "start_date": "20210510", - "route_id": "A" - }, - "current_stop_sequence": 27, - "current_status": 1, - "timestamp": 1620705451, - "stop_id": "A32N" - } - }, - { - "id": "000019A", - "trip_update": { - "trip": { - "trip_id": "139050_A..S", - "start_time": "23:10:30", - "start_date": "20210510", - "route_id": "A" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620705451 - }, - "departure": { - "time": 1620705451 - }, - "stop_id": "A34S" - }, - { - "arrival": { - "time": 1620705518 - }, - "departure": { - "time": 1620705518 - }, - "stop_id": "A36S" - }, - { - "arrival": { - "time": 1620705638 - }, - "departure": { - "time": 1620705638 - }, - "stop_id": "A38S" - }, - { - "arrival": { - "time": 1620705818 - }, - "departure": { - "time": 1620705818 - }, - "stop_id": "A40S" - }, - { - "arrival": { - "time": 1620705938 - }, - "departure": { - "time": 1620705938 - }, - "stop_id": "A41S" - }, - { - "arrival": { - "time": 1620706028 - }, - "departure": { - "time": 1620706028 - }, - "stop_id": "A42S" - }, - { - "arrival": { - "time": 1620706148 - }, - "departure": { - "time": 1620706148 - }, - "stop_id": "A43S" - }, - { - "arrival": { - "time": 1620706238 - }, - "departure": { - "time": 1620706238 - }, - "stop_id": "A44S" - }, - { - "arrival": { - "time": 1620706328 - }, - "departure": { - "time": 1620706328 - }, - "stop_id": "A45S" - }, - { - "arrival": { - "time": 1620706388 - }, - "departure": { - "time": 1620706388 - }, - "stop_id": "A46S" - }, - { - "arrival": { - "time": 1620706508 - }, - "departure": { - "time": 1620706508 - }, - "stop_id": "A47S" - }, - { - "arrival": { - "time": 1620706598 - }, - "departure": { - "time": 1620706598 - }, - "stop_id": "A48S" - }, - { - "arrival": { - "time": 1620706718 - }, - "departure": { - "time": 1620706718 - }, - "stop_id": "A49S" - }, - { - "arrival": { - "time": 1620706808 - }, - "departure": { - "time": 1620706808 - }, - "stop_id": "A50S" - }, - { - "arrival": { - "time": 1620706898 - }, - "departure": { - "time": 1620706898 - }, - "stop_id": "A51S" - }, - { - "arrival": { - "time": 1620707018 - }, - "departure": { - "time": 1620707018 - }, - "stop_id": "A52S" - }, - { - "arrival": { - "time": 1620707108 - }, - "departure": { - "time": 1620707108 - }, - "stop_id": "A53S" - }, - { - "arrival": { - "time": 1620707198 - }, - "departure": { - "time": 1620707198 - }, - "stop_id": "A54S" - }, - { - "arrival": { - "time": 1620707288 - }, - "departure": { - "time": 1620707288 - }, - "stop_id": "A55S" - }, - { - "arrival": { - "time": 1620707378 - }, - "departure": { - "time": 1620707378 - }, - "stop_id": "A57S" - }, - { - "arrival": { - "time": 1620707468 - }, - "departure": { - "time": 1620707468 - }, - "stop_id": "A59S" - }, - { - "arrival": { - "time": 1620707558 - }, - "departure": { - "time": 1620707558 - }, - "stop_id": "A60S" - }, - { - "arrival": { - "time": 1620707648 - }, - "departure": { - "time": 1620707648 - }, - "stop_id": "A61S" - }, - { - "arrival": { - "time": 1620707888 - }, - "departure": { - "time": 1620707888 - }, - "stop_id": "H02S" - }, - { - "arrival": { - "time": 1620708008 - }, - "departure": { - "time": 1620708008 - }, - "stop_id": "H03S" - }, - { - "arrival": { - "time": 1620708398 - }, - "departure": { - "time": 1620708398 - }, - "stop_id": "H04S" - }, - { - "arrival": { - "time": 1620708743 - }, - "departure": { - "time": 1620708743 - }, - "stop_id": "H06S" - }, - { - "arrival": { - "time": 1620709043 - }, - "departure": { - "time": 1620709043 - }, - "stop_id": "H07S" - }, - { - "arrival": { - "time": 1620709268 - }, - "departure": { - "time": 1620709268 - }, - "stop_id": "H08S" - }, - { - "arrival": { - "time": 1620709358 - }, - "departure": { - "time": 1620709358 - }, - "stop_id": "H09S" - }, - { - "arrival": { - "time": 1620709478 - }, - "departure": { - "time": 1620709478 - }, - "stop_id": "H10S" - }, - { - "arrival": { - "time": 1620709568 - }, - "departure": { - "time": 1620709568 - }, - "stop_id": "H11S" - } - ] - } - }, - { - "id": "000020A", - "vehicle": { - "trip": { - "trip_id": "139050_A..S", - "start_time": "23:10:30", - "start_date": "20210510", - "route_id": "A" - }, - "current_stop_sequence": 26, - "current_status": 1, - "timestamp": 1620705451, - "stop_id": "A34S" - } - }, - { - "id": "000021A", - "trip_update": { - "trip": { - "trip_id": "141275_A..N", - "start_time": "23:32:45", - "start_date": "20210510", - "route_id": "A" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620705452 - }, - "departure": { - "time": 1620705452 - }, - "stop_id": "A61N" - }, - { - "arrival": { - "time": 1620705518 - }, - "departure": { - "time": 1620705518 - }, - "stop_id": "A60N" - }, - { - "arrival": { - "time": 1620705608 - }, - "departure": { - "time": 1620705608 - }, - "stop_id": "A59N" - }, - { - "arrival": { - "time": 1620705698 - }, - "departure": { - "time": 1620705698 - }, - "stop_id": "A57N" - }, - { - "arrival": { - "time": 1620705788 - }, - "departure": { - "time": 1620705788 - }, - "stop_id": "A55N" - }, - { - "arrival": { - "time": 1620705878 - }, - "departure": { - "time": 1620705878 - }, - "stop_id": "A54N" - }, - { - "arrival": { - "time": 1620705968 - }, - "departure": { - "time": 1620705968 - }, - "stop_id": "A53N" - }, - { - "arrival": { - "time": 1620706058 - }, - "departure": { - "time": 1620706058 - }, - "stop_id": "A52N" - }, - { - "arrival": { - "time": 1620706178 - }, - "departure": { - "time": 1620706178 - }, - "stop_id": "A51N" - }, - { - "arrival": { - "time": 1620706238 - }, - "departure": { - "time": 1620706238 - }, - "stop_id": "A50N" - }, - { - "arrival": { - "time": 1620706358 - }, - "departure": { - "time": 1620706358 - }, - "stop_id": "A49N" - }, - { - "arrival": { - "time": 1620706448 - }, - "departure": { - "time": 1620706448 - }, - "stop_id": "A48N" - }, - { - "arrival": { - "time": 1620706538 - }, - "departure": { - "time": 1620706538 - }, - "stop_id": "A47N" - }, - { - "arrival": { - "time": 1620706628 - }, - "departure": { - "time": 1620706628 - }, - "stop_id": "A46N" - }, - { - "arrival": { - "time": 1620706688 - }, - "departure": { - "time": 1620706688 - }, - "stop_id": "A45N" - }, - { - "arrival": { - "time": 1620706778 - }, - "departure": { - "time": 1620706778 - }, - "stop_id": "A44N" - }, - { - "arrival": { - "time": 1620706868 - }, - "departure": { - "time": 1620706868 - }, - "stop_id": "A43N" - }, - { - "arrival": { - "time": 1620706958 - }, - "departure": { - "time": 1620706958 - }, - "stop_id": "A42N" - }, - { - "arrival": { - "time": 1620707048 - }, - "departure": { - "time": 1620707048 - }, - "stop_id": "A41N" - }, - { - "arrival": { - "time": 1620707168 - }, - "departure": { - "time": 1620707168 - }, - "stop_id": "A40N" - }, - { - "arrival": { - "time": 1620707348 - }, - "departure": { - "time": 1620707348 - }, - "stop_id": "A38N" - }, - { - "arrival": { - "time": 1620707468 - }, - "departure": { - "time": 1620707468 - }, - "stop_id": "A36N" - }, - { - "arrival": { - "time": 1620707558 - }, - "departure": { - "time": 1620707558 - }, - "stop_id": "A34N" - }, - { - "arrival": { - "time": 1620707648 - }, - "departure": { - "time": 1620707648 - }, - "stop_id": "A33N" - }, - { - "arrival": { - "time": 1620707768 - }, - "departure": { - "time": 1620707768 - }, - "stop_id": "A32N" - }, - { - "arrival": { - "time": 1620707888 - }, - "departure": { - "time": 1620707888 - }, - "stop_id": "A31N" - }, - { - "arrival": { - "time": 1620707978 - }, - "departure": { - "time": 1620707978 - }, - "stop_id": "A30N" - }, - { - "arrival": { - "time": 1620708098 - }, - "departure": { - "time": 1620708098 - }, - "stop_id": "A28N" - }, - { - "arrival": { - "time": 1620708158 - }, - "departure": { - "time": 1620708158 - }, - "stop_id": "A27N" - }, - { - "arrival": { - "time": 1620708248 - }, - "departure": { - "time": 1620708248 - }, - "stop_id": "A25N" - }, - { - "arrival": { - "time": 1620708398 - }, - "departure": { - "time": 1620708398 - }, - "stop_id": "A24N" - }, - { - "arrival": { - "time": 1620708518 - }, - "departure": { - "time": 1620708518 - }, - "stop_id": "A22N" - }, - { - "arrival": { - "time": 1620708608 - }, - "departure": { - "time": 1620708608 - }, - "stop_id": "A21N" - }, - { - "arrival": { - "time": 1620708698 - }, - "departure": { - "time": 1620708698 - }, - "stop_id": "A20N" - }, - { - "arrival": { - "time": 1620708788 - }, - "departure": { - "time": 1620708788 - }, - "stop_id": "A19N" - }, - { - "arrival": { - "time": 1620708878 - }, - "departure": { - "time": 1620708878 - }, - "stop_id": "A18N" - }, - { - "arrival": { - "time": 1620708938 - }, - "departure": { - "time": 1620708938 - }, - "stop_id": "A17N" - }, - { - "arrival": { - "time": 1620709028 - }, - "departure": { - "time": 1620709028 - }, - "stop_id": "A16N" - }, - { - "arrival": { - "time": 1620709163 - }, - "departure": { - "time": 1620709163 - }, - "stop_id": "A15N" - }, - { - "arrival": { - "time": 1620709298 - }, - "departure": { - "time": 1620709298 - }, - "stop_id": "A14N" - }, - { - "arrival": { - "time": 1620709388 - }, - "departure": { - "time": 1620709388 - }, - "stop_id": "A12N" - }, - { - "arrival": { - "time": 1620709478 - }, - "departure": { - "time": 1620709478 - }, - "stop_id": "A11N" - }, - { - "arrival": { - "time": 1620709568 - }, - "departure": { - "time": 1620709568 - }, - "stop_id": "A10N" - }, - { - "arrival": { - "time": 1620709658 - }, - "departure": { - "time": 1620709658 - }, - "stop_id": "A09N" - } - ] - } - }, - { - "id": "000022A", - "vehicle": { - "trip": { - "trip_id": "141275_A..N", - "start_time": "23:32:45", - "start_date": "20210510", - "route_id": "A" - }, - "current_stop_sequence": 10, - "current_status": 1, - "timestamp": 1620705452, - "stop_id": "A61N" - } - }, - { - "id": "000023A", - "trip_update": { - "trip": { - "trip_id": "140600_A..S", - "start_time": "23:26:00", - "start_date": "20210510", - "route_id": "A" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620705451 - }, - "departure": { - "time": 1620705451 - }, - "stop_id": "A24S" - }, - { - "arrival": { - "time": 1620705518 - }, - "departure": { - "time": 1620705518 - }, - "stop_id": "A25S" - }, - { - "arrival": { - "time": 1620705638 - }, - "departure": { - "time": 1620705638 - }, - "stop_id": "A27S" - }, - { - "arrival": { - "time": 1620705698 - }, - "departure": { - "time": 1620705698 - }, - "stop_id": "A28S" - }, - { - "arrival": { - "time": 1620705788 - }, - "departure": { - "time": 1620705788 - }, - "stop_id": "A30S" - }, - { - "arrival": { - "time": 1620705878 - }, - "departure": { - "time": 1620705878 - }, - "stop_id": "A31S" - }, - { - "arrival": { - "time": 1620705998 - }, - "departure": { - "time": 1620705998 - }, - "stop_id": "A32S" - }, - { - "arrival": { - "time": 1620706088 - }, - "departure": { - "time": 1620706088 - }, - "stop_id": "A33S" - }, - { - "arrival": { - "time": 1620706178 - }, - "departure": { - "time": 1620706178 - }, - "stop_id": "A34S" - }, - { - "arrival": { - "time": 1620706298 - }, - "departure": { - "time": 1620706298 - }, - "stop_id": "A36S" - }, - { - "arrival": { - "time": 1620706418 - }, - "departure": { - "time": 1620706418 - }, - "stop_id": "A38S" - }, - { - "arrival": { - "time": 1620706598 - }, - "departure": { - "time": 1620706598 - }, - "stop_id": "A40S" - }, - { - "arrival": { - "time": 1620706718 - }, - "departure": { - "time": 1620706718 - }, - "stop_id": "A41S" - }, - { - "arrival": { - "time": 1620706808 - }, - "departure": { - "time": 1620706808 - }, - "stop_id": "A42S" - }, - { - "arrival": { - "time": 1620706928 - }, - "departure": { - "time": 1620706928 - }, - "stop_id": "A43S" - }, - { - "arrival": { - "time": 1620707018 - }, - "departure": { - "time": 1620707018 - }, - "stop_id": "A44S" - }, - { - "arrival": { - "time": 1620707108 - }, - "departure": { - "time": 1620707108 - }, - "stop_id": "A45S" - }, - { - "arrival": { - "time": 1620707168 - }, - "departure": { - "time": 1620707168 - }, - "stop_id": "A46S" - }, - { - "arrival": { - "time": 1620707288 - }, - "departure": { - "time": 1620707288 - }, - "stop_id": "A47S" - }, - { - "arrival": { - "time": 1620707378 - }, - "departure": { - "time": 1620707378 - }, - "stop_id": "A48S" - }, - { - "arrival": { - "time": 1620707498 - }, - "departure": { - "time": 1620707498 - }, - "stop_id": "A49S" - }, - { - "arrival": { - "time": 1620707588 - }, - "departure": { - "time": 1620707588 - }, - "stop_id": "A50S" - }, - { - "arrival": { - "time": 1620707678 - }, - "departure": { - "time": 1620707678 - }, - "stop_id": "A51S" - }, - { - "arrival": { - "time": 1620707798 - }, - "departure": { - "time": 1620707798 - }, - "stop_id": "A52S" - }, - { - "arrival": { - "time": 1620707888 - }, - "departure": { - "time": 1620707888 - }, - "stop_id": "A53S" - }, - { - "arrival": { - "time": 1620707978 - }, - "departure": { - "time": 1620707978 - }, - "stop_id": "A54S" - }, - { - "arrival": { - "time": 1620708068 - }, - "departure": { - "time": 1620708068 - }, - "stop_id": "A55S" - }, - { - "arrival": { - "time": 1620708158 - }, - "departure": { - "time": 1620708158 - }, - "stop_id": "A57S" - }, - { - "arrival": { - "time": 1620708248 - }, - "departure": { - "time": 1620708248 - }, - "stop_id": "A59S" - }, - { - "arrival": { - "time": 1620708338 - }, - "departure": { - "time": 1620708338 - }, - "stop_id": "A60S" - }, - { - "arrival": { - "time": 1620708428 - }, - "departure": { - "time": 1620708428 - }, - "stop_id": "A61S" - }, - { - "arrival": { - "time": 1620708728 - }, - "departure": { - "time": 1620708728 - }, - "stop_id": "A63S" - }, - { - "arrival": { - "time": 1620708998 - }, - "departure": { - "time": 1620708998 - }, - "stop_id": "A64S" - }, - { - "arrival": { - "time": 1620709058 - }, - "departure": { - "time": 1620709058 - }, - "stop_id": "A65S" - } - ] - } - }, - { - "id": "000024A", - "vehicle": { - "trip": { - "trip_id": "140600_A..S", - "start_time": "23:26:00", - "start_date": "20210510", - "route_id": "A" - }, - "current_stop_sequence": 18, - "current_status": 1, - "timestamp": 1620705451, - "stop_id": "A24S" - } - }, - { - "id": "000025A", - "trip_update": { - "trip": { - "trip_id": "141780_A..N", - "start_time": "23:37:48", - "start_date": "20210510", - "route_id": "A" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620705451 - }, - "departure": { - "time": 1620705451 - }, - "stop_id": "A49N" - }, - { - "arrival": { - "time": 1620705518 - }, - "departure": { - "time": 1620705518 - }, - "stop_id": "A48N" - }, - { - "arrival": { - "time": 1620705608 - }, - "departure": { - "time": 1620705608 - }, - "stop_id": "A47N" - }, - { - "arrival": { - "time": 1620705698 - }, - "departure": { - "time": 1620705698 - }, - "stop_id": "A46N" - }, - { - "arrival": { - "time": 1620705758 - }, - "departure": { - "time": 1620705758 - }, - "stop_id": "A45N" - }, - { - "arrival": { - "time": 1620705848 - }, - "departure": { - "time": 1620705848 - }, - "stop_id": "A44N" - }, - { - "arrival": { - "time": 1620705938 - }, - "departure": { - "time": 1620705938 - }, - "stop_id": "A43N" - }, - { - "arrival": { - "time": 1620706028 - }, - "departure": { - "time": 1620706028 - }, - "stop_id": "A42N" - }, - { - "arrival": { - "time": 1620706118 - }, - "departure": { - "time": 1620706118 - }, - "stop_id": "A41N" - }, - { - "arrival": { - "time": 1620706238 - }, - "departure": { - "time": 1620706238 - }, - "stop_id": "A40N" - }, - { - "arrival": { - "time": 1620706418 - }, - "departure": { - "time": 1620706418 - }, - "stop_id": "A38N" - }, - { - "arrival": { - "time": 1620706538 - }, - "departure": { - "time": 1620706538 - }, - "stop_id": "A36N" - }, - { - "arrival": { - "time": 1620706628 - }, - "departure": { - "time": 1620706628 - }, - "stop_id": "A34N" - }, - { - "arrival": { - "time": 1620706718 - }, - "departure": { - "time": 1620706718 - }, - "stop_id": "A33N" - }, - { - "arrival": { - "time": 1620706838 - }, - "departure": { - "time": 1620706838 - }, - "stop_id": "A32N" - }, - { - "arrival": { - "time": 1620706958 - }, - "departure": { - "time": 1620706958 - }, - "stop_id": "A31N" - }, - { - "arrival": { - "time": 1620707048 - }, - "departure": { - "time": 1620707048 - }, - "stop_id": "A30N" - }, - { - "arrival": { - "time": 1620707168 - }, - "departure": { - "time": 1620707168 - }, - "stop_id": "A28N" - }, - { - "arrival": { - "time": 1620707228 - }, - "departure": { - "time": 1620707228 - }, - "stop_id": "A27N" - }, - { - "arrival": { - "time": 1620707318 - }, - "departure": { - "time": 1620707318 - }, - "stop_id": "A25N" - }, - { - "arrival": { - "time": 1620707468 - }, - "departure": { - "time": 1620707468 - }, - "stop_id": "A24N" - }, - { - "arrival": { - "time": 1620707588 - }, - "departure": { - "time": 1620707588 - }, - "stop_id": "A22N" - }, - { - "arrival": { - "time": 1620707678 - }, - "departure": { - "time": 1620707678 - }, - "stop_id": "A21N" - }, - { - "arrival": { - "time": 1620707768 - }, - "departure": { - "time": 1620707768 - }, - "stop_id": "A20N" - }, - { - "arrival": { - "time": 1620707858 - }, - "departure": { - "time": 1620707858 - }, - "stop_id": "A19N" - }, - { - "arrival": { - "time": 1620707948 - }, - "departure": { - "time": 1620707948 - }, - "stop_id": "A18N" - }, - { - "arrival": { - "time": 1620708008 - }, - "departure": { - "time": 1620708008 - }, - "stop_id": "A17N" - }, - { - "arrival": { - "time": 1620708098 - }, - "departure": { - "time": 1620708098 - }, - "stop_id": "A16N" - }, - { - "arrival": { - "time": 1620708233 - }, - "departure": { - "time": 1620708233 - }, - "stop_id": "A15N" - }, - { - "arrival": { - "time": 1620708368 - }, - "departure": { - "time": 1620708368 - }, - "stop_id": "A14N" - }, - { - "arrival": { - "time": 1620708458 - }, - "departure": { - "time": 1620708458 - }, - "stop_id": "A12N" - }, - { - "arrival": { - "time": 1620708548 - }, - "departure": { - "time": 1620708548 - }, - "stop_id": "A11N" - }, - { - "arrival": { - "time": 1620708638 - }, - "departure": { - "time": 1620708638 - }, - "stop_id": "A10N" - }, - { - "arrival": { - "time": 1620708728 - }, - "departure": { - "time": 1620708728 - }, - "stop_id": "A09N" - } - ] - } - }, - { - "id": "000026A", - "vehicle": { - "trip": { - "trip_id": "141780_A..N", - "start_time": "23:37:48", - "start_date": "20210510", - "route_id": "A" - }, - "current_stop_sequence": 13, - "current_status": 1, - "timestamp": 1620705451, - "stop_id": "A49N" - } - }, - { - "id": "000027A", - "trip_update": { - "trip": { - "trip_id": "142200_A..S", - "start_time": "23:42:00", - "start_date": "20210510", - "route_id": "A" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620705451 - }, - "departure": { - "time": 1620705451 - }, - "stop_id": "A12S" - }, - { - "arrival": { - "time": 1620705518 - }, - "departure": { - "time": 1620705518 - }, - "stop_id": "A14S" - }, - { - "arrival": { - "time": 1620705608 - }, - "departure": { - "time": 1620705608 - }, - "stop_id": "A15S" - }, - { - "arrival": { - "time": 1620705698 - }, - "departure": { - "time": 1620705698 - }, - "stop_id": "A16S" - }, - { - "arrival": { - "time": 1620705788 - }, - "departure": { - "time": 1620705788 - }, - "stop_id": "A17S" - }, - { - "arrival": { - "time": 1620705848 - }, - "departure": { - "time": 1620705848 - }, - "stop_id": "A18S" - }, - { - "arrival": { - "time": 1620705938 - }, - "departure": { - "time": 1620705938 - }, - "stop_id": "A19S" - }, - { - "arrival": { - "time": 1620706028 - }, - "departure": { - "time": 1620706028 - }, - "stop_id": "A20S" - }, - { - "arrival": { - "time": 1620706118 - }, - "departure": { - "time": 1620706118 - }, - "stop_id": "A21S" - }, - { - "arrival": { - "time": 1620706208 - }, - "departure": { - "time": 1620706208 - }, - "stop_id": "A22S" - }, - { - "arrival": { - "time": 1620706298 - }, - "departure": { - "time": 1620706298 - }, - "stop_id": "A24S" - }, - { - "arrival": { - "time": 1620706388 - }, - "departure": { - "time": 1620706388 - }, - "stop_id": "A25S" - }, - { - "arrival": { - "time": 1620706508 - }, - "departure": { - "time": 1620706508 - }, - "stop_id": "A27S" - }, - { - "arrival": { - "time": 1620706568 - }, - "departure": { - "time": 1620706568 - }, - "stop_id": "A28S" - }, - { - "arrival": { - "time": 1620706658 - }, - "departure": { - "time": 1620706658 - }, - "stop_id": "A30S" - }, - { - "arrival": { - "time": 1620706748 - }, - "departure": { - "time": 1620706748 - }, - "stop_id": "A31S" - }, - { - "arrival": { - "time": 1620706868 - }, - "departure": { - "time": 1620706868 - }, - "stop_id": "A32S" - }, - { - "arrival": { - "time": 1620706958 - }, - "departure": { - "time": 1620706958 - }, - "stop_id": "A33S" - }, - { - "arrival": { - "time": 1620707048 - }, - "departure": { - "time": 1620707048 - }, - "stop_id": "A34S" - }, - { - "arrival": { - "time": 1620707168 - }, - "departure": { - "time": 1620707168 - }, - "stop_id": "A36S" - }, - { - "arrival": { - "time": 1620707288 - }, - "departure": { - "time": 1620707288 - }, - "stop_id": "A38S" - }, - { - "arrival": { - "time": 1620707468 - }, - "departure": { - "time": 1620707468 - }, - "stop_id": "A40S" - }, - { - "arrival": { - "time": 1620707588 - }, - "departure": { - "time": 1620707588 - }, - "stop_id": "A41S" - }, - { - "arrival": { - "time": 1620707678 - }, - "departure": { - "time": 1620707678 - }, - "stop_id": "A42S" - }, - { - "arrival": { - "time": 1620707798 - }, - "departure": { - "time": 1620707798 - }, - "stop_id": "A43S" - }, - { - "arrival": { - "time": 1620707888 - }, - "departure": { - "time": 1620707888 - }, - "stop_id": "A44S" - }, - { - "arrival": { - "time": 1620707978 - }, - "departure": { - "time": 1620707978 - }, - "stop_id": "A45S" - }, - { - "arrival": { - "time": 1620708038 - }, - "departure": { - "time": 1620708038 - }, - "stop_id": "A46S" - }, - { - "arrival": { - "time": 1620708158 - }, - "departure": { - "time": 1620708158 - }, - "stop_id": "A47S" - }, - { - "arrival": { - "time": 1620708248 - }, - "departure": { - "time": 1620708248 - }, - "stop_id": "A48S" - }, - { - "arrival": { - "time": 1620708368 - }, - "departure": { - "time": 1620708368 - }, - "stop_id": "A49S" - }, - { - "arrival": { - "time": 1620708458 - }, - "departure": { - "time": 1620708458 - }, - "stop_id": "A50S" - }, - { - "arrival": { - "time": 1620708548 - }, - "departure": { - "time": 1620708548 - }, - "stop_id": "A51S" - }, - { - "arrival": { - "time": 1620708668 - }, - "departure": { - "time": 1620708668 - }, - "stop_id": "A52S" - }, - { - "arrival": { - "time": 1620708758 - }, - "departure": { - "time": 1620708758 - }, - "stop_id": "A53S" - }, - { - "arrival": { - "time": 1620708848 - }, - "departure": { - "time": 1620708848 - }, - "stop_id": "A54S" - }, - { - "arrival": { - "time": 1620708938 - }, - "departure": { - "time": 1620708938 - }, - "stop_id": "A55S" - }, - { - "arrival": { - "time": 1620709028 - }, - "departure": { - "time": 1620709028 - }, - "stop_id": "A57S" - }, - { - "arrival": { - "time": 1620709118 - }, - "departure": { - "time": 1620709118 - }, - "stop_id": "A59S" - }, - { - "arrival": { - "time": 1620709208 - }, - "departure": { - "time": 1620709208 - }, - "stop_id": "A60S" - }, - { - "arrival": { - "time": 1620709298 - }, - "departure": { - "time": 1620709298 - }, - "stop_id": "A61S" - }, - { - "arrival": { - "time": 1620709583 - }, - "departure": { - "time": 1620709583 - }, - "stop_id": "A63S" - }, - { - "arrival": { - "time": 1620709838 - }, - "departure": { - "time": 1620709838 - }, - "stop_id": "A64S" - }, - { - "arrival": { - "time": 1620709898 - }, - "departure": { - "time": 1620709898 - }, - "stop_id": "A65S" - } - ] - } - }, - { - "id": "000028A", - "vehicle": { - "trip": { - "trip_id": "142200_A..S", - "start_time": "23:42:00", - "start_date": "20210510", - "route_id": "A" - }, - "current_stop_sequence": 8, - "current_status": 1, - "timestamp": 1620705451, - "stop_id": "A12S" - } - }, - { - "id": "000029A", - "trip_update": { - "trip": { - "trip_id": "143150_A..S", - "start_time": "23:51:30", - "start_date": "20210510", - "route_id": "A" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620705451 - }, - "departure": { - "time": 1620705451 - }, - "stop_id": "A03S" - }, - { - "arrival": { - "time": 1620705518 - }, - "departure": { - "time": 1620705518 - }, - "stop_id": "A05S" - }, - { - "arrival": { - "time": 1620705638 - }, - "departure": { - "time": 1620705638 - }, - "stop_id": "A06S" - }, - { - "arrival": { - "time": 1620705698 - }, - "departure": { - "time": 1620705698 - }, - "stop_id": "A07S" - }, - { - "arrival": { - "time": 1620705818 - }, - "departure": { - "time": 1620705818 - }, - "stop_id": "A09S" - }, - { - "arrival": { - "time": 1620705908 - }, - "departure": { - "time": 1620705908 - }, - "stop_id": "A10S" - }, - { - "arrival": { - "time": 1620705998 - }, - "departure": { - "time": 1620705998 - }, - "stop_id": "A11S" - }, - { - "arrival": { - "time": 1620706088 - }, - "departure": { - "time": 1620706088 - }, - "stop_id": "A12S" - }, - { - "arrival": { - "time": 1620706208 - }, - "departure": { - "time": 1620706208 - }, - "stop_id": "A14S" - }, - { - "arrival": { - "time": 1620706373 - }, - "departure": { - "time": 1620706373 - }, - "stop_id": "A15S" - }, - { - "arrival": { - "time": 1620706538 - }, - "departure": { - "time": 1620706538 - }, - "stop_id": "A16S" - }, - { - "arrival": { - "time": 1620706628 - }, - "departure": { - "time": 1620706628 - }, - "stop_id": "A17S" - }, - { - "arrival": { - "time": 1620706688 - }, - "departure": { - "time": 1620706688 - }, - "stop_id": "A18S" - }, - { - "arrival": { - "time": 1620706778 - }, - "departure": { - "time": 1620706778 - }, - "stop_id": "A19S" - }, - { - "arrival": { - "time": 1620706868 - }, - "departure": { - "time": 1620706868 - }, - "stop_id": "A20S" - }, - { - "arrival": { - "time": 1620706958 - }, - "departure": { - "time": 1620706958 - }, - "stop_id": "A21S" - }, - { - "arrival": { - "time": 1620707048 - }, - "departure": { - "time": 1620707048 - }, - "stop_id": "A22S" - }, - { - "arrival": { - "time": 1620707228 - }, - "departure": { - "time": 1620707228 - }, - "stop_id": "A24S" - }, - { - "arrival": { - "time": 1620707408 - }, - "departure": { - "time": 1620707408 - }, - "stop_id": "A25S" - }, - { - "arrival": { - "time": 1620707528 - }, - "departure": { - "time": 1620707528 - }, - "stop_id": "A27S" - }, - { - "arrival": { - "time": 1620707588 - }, - "departure": { - "time": 1620707588 - }, - "stop_id": "A28S" - }, - { - "arrival": { - "time": 1620707678 - }, - "departure": { - "time": 1620707678 - }, - "stop_id": "A30S" - }, - { - "arrival": { - "time": 1620707768 - }, - "departure": { - "time": 1620707768 - }, - "stop_id": "A31S" - }, - { - "arrival": { - "time": 1620707888 - }, - "departure": { - "time": 1620707888 - }, - "stop_id": "A32S" - }, - { - "arrival": { - "time": 1620707978 - }, - "departure": { - "time": 1620707978 - }, - "stop_id": "A33S" - }, - { - "arrival": { - "time": 1620708068 - }, - "departure": { - "time": 1620708068 - }, - "stop_id": "A34S" - }, - { - "arrival": { - "time": 1620708188 - }, - "departure": { - "time": 1620708188 - }, - "stop_id": "A36S" - }, - { - "arrival": { - "time": 1620708308 - }, - "departure": { - "time": 1620708308 - }, - "stop_id": "A38S" - }, - { - "arrival": { - "time": 1620708488 - }, - "departure": { - "time": 1620708488 - }, - "stop_id": "A40S" - }, - { - "arrival": { - "time": 1620708608 - }, - "departure": { - "time": 1620708608 - }, - "stop_id": "A41S" - }, - { - "arrival": { - "time": 1620708698 - }, - "departure": { - "time": 1620708698 - }, - "stop_id": "A42S" - }, - { - "arrival": { - "time": 1620708818 - }, - "departure": { - "time": 1620708818 - }, - "stop_id": "A43S" - }, - { - "arrival": { - "time": 1620708908 - }, - "departure": { - "time": 1620708908 - }, - "stop_id": "A44S" - }, - { - "arrival": { - "time": 1620708998 - }, - "departure": { - "time": 1620708998 - }, - "stop_id": "A45S" - }, - { - "arrival": { - "time": 1620709058 - }, - "departure": { - "time": 1620709058 - }, - "stop_id": "A46S" - }, - { - "arrival": { - "time": 1620709178 - }, - "departure": { - "time": 1620709178 - }, - "stop_id": "A47S" - }, - { - "arrival": { - "time": 1620709268 - }, - "departure": { - "time": 1620709268 - }, - "stop_id": "A48S" - }, - { - "arrival": { - "time": 1620709388 - }, - "departure": { - "time": 1620709388 - }, - "stop_id": "A49S" - }, - { - "arrival": { - "time": 1620709478 - }, - "departure": { - "time": 1620709478 - }, - "stop_id": "A50S" - }, - { - "arrival": { - "time": 1620709568 - }, - "departure": { - "time": 1620709568 - }, - "stop_id": "A51S" - }, - { - "arrival": { - "time": 1620709688 - }, - "departure": { - "time": 1620709688 - }, - "stop_id": "A52S" - }, - { - "arrival": { - "time": 1620709778 - }, - "departure": { - "time": 1620709778 - }, - "stop_id": "A53S" - }, - { - "arrival": { - "time": 1620709868 - }, - "departure": { - "time": 1620709868 - }, - "stop_id": "A54S" - }, - { - "arrival": { - "time": 1620709958 - }, - "departure": { - "time": 1620709958 - }, - "stop_id": "A55S" - }, - { - "arrival": { - "time": 1620710048 - }, - "departure": { - "time": 1620710048 - }, - "stop_id": "A57S" - }, - { - "arrival": { - "time": 1620710138 - }, - "departure": { - "time": 1620710138 - }, - "stop_id": "A59S" - }, - { - "arrival": { - "time": 1620710228 - }, - "departure": { - "time": 1620710228 - }, - "stop_id": "A60S" - }, - { - "arrival": { - "time": 1620710318 - }, - "departure": { - "time": 1620710318 - }, - "stop_id": "A61S" - }, - { - "arrival": { - "time": 1620710558 - }, - "departure": { - "time": 1620710558 - }, - "stop_id": "H02S" - }, - { - "arrival": { - "time": 1620710678 - }, - "departure": { - "time": 1620710678 - }, - "stop_id": "H03S" - }, - { - "arrival": { - "time": 1620711068 - }, - "departure": { - "time": 1620711068 - }, - "stop_id": "H04S" - }, - { - "arrival": { - "time": 1620711338 - }, - "departure": { - "time": 1620711338 - }, - "stop_id": "H06S" - }, - { - "arrival": { - "time": 1620711488 - }, - "departure": { - "time": 1620711488 - }, - "stop_id": "H07S" - }, - { - "arrival": { - "time": 1620711638 - }, - "departure": { - "time": 1620711638 - }, - "stop_id": "H08S" - }, - { - "arrival": { - "time": 1620711728 - }, - "departure": { - "time": 1620711728 - }, - "stop_id": "H09S" - }, - { - "arrival": { - "time": 1620711848 - }, - "departure": { - "time": 1620711848 - }, - "stop_id": "H10S" - }, - { - "arrival": { - "time": 1620711938 - }, - "departure": { - "time": 1620711938 - }, - "stop_id": "H11S" - } - ] - } - }, - { - "id": "000030A", - "vehicle": { - "trip": { - "trip_id": "143150_A..S", - "start_time": "23:51:30", - "start_date": "20210510", - "route_id": "A" - }, - "current_stop_sequence": 1, - "current_status": 1, - "timestamp": 1620705451, - "stop_id": "A03S" - } - }, - { - "id": "000031A", - "trip_update": { - "trip": { - "trip_id": "000800_A..N", - "start_time": "00:08:00", - "start_date": "20210511", - "route_id": "A" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620706080 - }, - "departure": { - "time": 1620706080 - }, - "stop_id": "A65N" - }, - { - "arrival": { - "time": 1620706170 - }, - "departure": { - "time": 1620706170 - }, - "stop_id": "A64N" - }, - { - "arrival": { - "time": 1620706230 - }, - "departure": { - "time": 1620706230 - }, - "stop_id": "A63N" - }, - { - "arrival": { - "time": 1620706320 - }, - "departure": { - "time": 1620706320 - }, - "stop_id": "A61N" - }, - { - "arrival": { - "time": 1620706410 - }, - "departure": { - "time": 1620706410 - }, - "stop_id": "A60N" - }, - { - "arrival": { - "time": 1620706500 - }, - "departure": { - "time": 1620706500 - }, - "stop_id": "A59N" - }, - { - "arrival": { - "time": 1620706590 - }, - "departure": { - "time": 1620706590 - }, - "stop_id": "A57N" - }, - { - "arrival": { - "time": 1620706680 - }, - "departure": { - "time": 1620706680 - }, - "stop_id": "A55N" - }, - { - "arrival": { - "time": 1620706770 - }, - "departure": { - "time": 1620706770 - }, - "stop_id": "A54N" - }, - { - "arrival": { - "time": 1620706860 - }, - "departure": { - "time": 1620706860 - }, - "stop_id": "A53N" - }, - { - "arrival": { - "time": 1620706950 - }, - "departure": { - "time": 1620706950 - }, - "stop_id": "A52N" - }, - { - "arrival": { - "time": 1620707070 - }, - "departure": { - "time": 1620707070 - }, - "stop_id": "A51N" - }, - { - "arrival": { - "time": 1620707130 - }, - "departure": { - "time": 1620707130 - }, - "stop_id": "A50N" - }, - { - "arrival": { - "time": 1620707250 - }, - "departure": { - "time": 1620707250 - }, - "stop_id": "A49N" - }, - { - "arrival": { - "time": 1620707340 - }, - "departure": { - "time": 1620707340 - }, - "stop_id": "A48N" - }, - { - "arrival": { - "time": 1620707430 - }, - "departure": { - "time": 1620707430 - }, - "stop_id": "A47N" - }, - { - "arrival": { - "time": 1620707520 - }, - "departure": { - "time": 1620707520 - }, - "stop_id": "A46N" - }, - { - "arrival": { - "time": 1620707580 - }, - "departure": { - "time": 1620707580 - }, - "stop_id": "A45N" - }, - { - "arrival": { - "time": 1620707670 - }, - "departure": { - "time": 1620707670 - }, - "stop_id": "A44N" - }, - { - "arrival": { - "time": 1620707760 - }, - "departure": { - "time": 1620707760 - }, - "stop_id": "A43N" - }, - { - "arrival": { - "time": 1620707850 - }, - "departure": { - "time": 1620707850 - }, - "stop_id": "A42N" - }, - { - "arrival": { - "time": 1620707955 - }, - "departure": { - "time": 1620707955 - }, - "stop_id": "A41N" - }, - { - "arrival": { - "time": 1620708090 - }, - "departure": { - "time": 1620708090 - }, - "stop_id": "A40N" - }, - { - "arrival": { - "time": 1620708270 - }, - "departure": { - "time": 1620708270 - }, - "stop_id": "A38N" - }, - { - "arrival": { - "time": 1620708390 - }, - "departure": { - "time": 1620708390 - }, - "stop_id": "A36N" - }, - { - "arrival": { - "time": 1620708480 - }, - "departure": { - "time": 1620708480 - }, - "stop_id": "A34N" - }, - { - "arrival": { - "time": 1620708570 - }, - "departure": { - "time": 1620708570 - }, - "stop_id": "A33N" - }, - { - "arrival": { - "time": 1620708690 - }, - "departure": { - "time": 1620708690 - }, - "stop_id": "A32N" - }, - { - "arrival": { - "time": 1620708810 - }, - "departure": { - "time": 1620708810 - }, - "stop_id": "A31N" - }, - { - "arrival": { - "time": 1620708900 - }, - "departure": { - "time": 1620708900 - }, - "stop_id": "A30N" - }, - { - "arrival": { - "time": 1620709020 - }, - "departure": { - "time": 1620709020 - }, - "stop_id": "A28N" - }, - { - "arrival": { - "time": 1620709080 - }, - "departure": { - "time": 1620709080 - }, - "stop_id": "A27N" - }, - { - "arrival": { - "time": 1620709170 - }, - "departure": { - "time": 1620709170 - }, - "stop_id": "A25N" - }, - { - "arrival": { - "time": 1620709335 - }, - "departure": { - "time": 1620709335 - }, - "stop_id": "A24N" - }, - { - "arrival": { - "time": 1620709470 - }, - "departure": { - "time": 1620709470 - }, - "stop_id": "A22N" - }, - { - "arrival": { - "time": 1620709560 - }, - "departure": { - "time": 1620709560 - }, - "stop_id": "A21N" - }, - { - "arrival": { - "time": 1620709650 - }, - "departure": { - "time": 1620709650 - }, - "stop_id": "A20N" - }, - { - "arrival": { - "time": 1620709740 - }, - "departure": { - "time": 1620709740 - }, - "stop_id": "A19N" - }, - { - "arrival": { - "time": 1620709830 - }, - "departure": { - "time": 1620709830 - }, - "stop_id": "A18N" - }, - { - "arrival": { - "time": 1620709890 - }, - "departure": { - "time": 1620709890 - }, - "stop_id": "A17N" - }, - { - "arrival": { - "time": 1620709980 - }, - "departure": { - "time": 1620709980 - }, - "stop_id": "A16N" - }, - { - "arrival": { - "time": 1620710130 - }, - "departure": { - "time": 1620710130 - }, - "stop_id": "A15N" - }, - { - "arrival": { - "time": 1620710280 - }, - "departure": { - "time": 1620710280 - }, - "stop_id": "A14N" - }, - { - "arrival": { - "time": 1620710370 - }, - "departure": { - "time": 1620710370 - }, - "stop_id": "A12N" - }, - { - "arrival": { - "time": 1620710460 - }, - "departure": { - "time": 1620710460 - }, - "stop_id": "A11N" - }, - { - "arrival": { - "time": 1620710550 - }, - "departure": { - "time": 1620710550 - }, - "stop_id": "A10N" - }, - { - "arrival": { - "time": 1620710640 - }, - "departure": { - "time": 1620710640 - }, - "stop_id": "A09N" - } - ] - } - }, - { - "id": "000032A", - "vehicle": { - "trip": { - "trip_id": "000800_A..N", - "start_time": "00:08:00", - "start_date": "20210511", - "route_id": "A" - }, - "timestamp": 1620706080, - "stop_id": "A65N" - } - }, - { - "id": "000033A", - "trip_update": { - "trip": { - "trip_id": "000900_A..S", - "start_time": "00:09:00", - "start_date": "20210511", - "route_id": "A" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620706140 - }, - "departure": { - "time": 1620706140 - }, - "stop_id": "A02S" - }, - { - "arrival": { - "time": 1620706230 - }, - "departure": { - "time": 1620706230 - }, - "stop_id": "A03S" - }, - { - "arrival": { - "time": 1620706350 - }, - "departure": { - "time": 1620706350 - }, - "stop_id": "A05S" - }, - { - "arrival": { - "time": 1620706470 - }, - "departure": { - "time": 1620706470 - }, - "stop_id": "A06S" - }, - { - "arrival": { - "time": 1620706530 - }, - "departure": { - "time": 1620706530 - }, - "stop_id": "A07S" - }, - { - "arrival": { - "time": 1620706650 - }, - "departure": { - "time": 1620706650 - }, - "stop_id": "A09S" - } - ] - } - }, - { - "id": "000034A", - "vehicle": { - "trip": { - "trip_id": "000900_A..S", - "start_time": "00:09:00", - "start_date": "20210511", - "route_id": "A" - }, - "timestamp": 1620706140, - "stop_id": "A02S" - } - }, - { - "id": "000035A", - "trip_update": { - "trip": { - "trip_id": "000200_A..N", - "start_time": "00:02:00", - "start_date": "20210511", - "route_id": "A" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620705720 - }, - "departure": { - "time": 1620705720 - }, - "stop_id": "H11N" - }, - { - "arrival": { - "time": 1620705810 - }, - "departure": { - "time": 1620705810 - }, - "stop_id": "H10N" - }, - { - "arrival": { - "time": 1620705930 - }, - "departure": { - "time": 1620705930 - }, - "stop_id": "H09N" - }, - { - "arrival": { - "time": 1620706020 - }, - "departure": { - "time": 1620706020 - }, - "stop_id": "H08N" - }, - { - "arrival": { - "time": 1620706140 - }, - "departure": { - "time": 1620706140 - }, - "stop_id": "H07N" - }, - { - "arrival": { - "time": 1620706230 - }, - "departure": { - "time": 1620706230 - }, - "stop_id": "H06N" - }, - { - "arrival": { - "time": 1620706470 - }, - "departure": { - "time": 1620706470 - }, - "stop_id": "H04N" - }, - { - "arrival": { - "time": 1620706860 - }, - "departure": { - "time": 1620706860 - }, - "stop_id": "H03N" - }, - { - "arrival": { - "time": 1620706980 - }, - "departure": { - "time": 1620706980 - }, - "stop_id": "H02N" - }, - { - "arrival": { - "time": 1620707040 - }, - "departure": { - "time": 1620707040 - }, - "stop_id": "H01N" - }, - { - "arrival": { - "time": 1620707220 - }, - "departure": { - "time": 1620707220 - }, - "stop_id": "A61N" - }, - { - "arrival": { - "time": 1620707310 - }, - "departure": { - "time": 1620707310 - }, - "stop_id": "A60N" - }, - { - "arrival": { - "time": 1620707400 - }, - "departure": { - "time": 1620707400 - }, - "stop_id": "A59N" - }, - { - "arrival": { - "time": 1620707490 - }, - "departure": { - "time": 1620707490 - }, - "stop_id": "A57N" - }, - { - "arrival": { - "time": 1620707580 - }, - "departure": { - "time": 1620707580 - }, - "stop_id": "A55N" - }, - { - "arrival": { - "time": 1620707670 - }, - "departure": { - "time": 1620707670 - }, - "stop_id": "A54N" - }, - { - "arrival": { - "time": 1620707760 - }, - "departure": { - "time": 1620707760 - }, - "stop_id": "A53N" - }, - { - "arrival": { - "time": 1620707850 - }, - "departure": { - "time": 1620707850 - }, - "stop_id": "A52N" - }, - { - "arrival": { - "time": 1620707970 - }, - "departure": { - "time": 1620707970 - }, - "stop_id": "A51N" - }, - { - "arrival": { - "time": 1620708030 - }, - "departure": { - "time": 1620708030 - }, - "stop_id": "A50N" - }, - { - "arrival": { - "time": 1620708150 - }, - "departure": { - "time": 1620708150 - }, - "stop_id": "A49N" - }, - { - "arrival": { - "time": 1620708240 - }, - "departure": { - "time": 1620708240 - }, - "stop_id": "A48N" - }, - { - "arrival": { - "time": 1620708330 - }, - "departure": { - "time": 1620708330 - }, - "stop_id": "A47N" - }, - { - "arrival": { - "time": 1620708420 - }, - "departure": { - "time": 1620708420 - }, - "stop_id": "A46N" - }, - { - "arrival": { - "time": 1620708480 - }, - "departure": { - "time": 1620708480 - }, - "stop_id": "A45N" - }, - { - "arrival": { - "time": 1620708570 - }, - "departure": { - "time": 1620708570 - }, - "stop_id": "A44N" - }, - { - "arrival": { - "time": 1620708660 - }, - "departure": { - "time": 1620708660 - }, - "stop_id": "A43N" - }, - { - "arrival": { - "time": 1620708750 - }, - "departure": { - "time": 1620708750 - }, - "stop_id": "A42N" - }, - { - "arrival": { - "time": 1620708855 - }, - "departure": { - "time": 1620708855 - }, - "stop_id": "A41N" - }, - { - "arrival": { - "time": 1620708990 - }, - "departure": { - "time": 1620708990 - }, - "stop_id": "A40N" - }, - { - "arrival": { - "time": 1620709170 - }, - "departure": { - "time": 1620709170 - }, - "stop_id": "A38N" - }, - { - "arrival": { - "time": 1620709290 - }, - "departure": { - "time": 1620709290 - }, - "stop_id": "A36N" - }, - { - "arrival": { - "time": 1620709380 - }, - "departure": { - "time": 1620709380 - }, - "stop_id": "A34N" - }, - { - "arrival": { - "time": 1620709470 - }, - "departure": { - "time": 1620709470 - }, - "stop_id": "A33N" - }, - { - "arrival": { - "time": 1620709590 - }, - "departure": { - "time": 1620709590 - }, - "stop_id": "A32N" - }, - { - "arrival": { - "time": 1620709710 - }, - "departure": { - "time": 1620709710 - }, - "stop_id": "A31N" - }, - { - "arrival": { - "time": 1620709800 - }, - "departure": { - "time": 1620709800 - }, - "stop_id": "A30N" - }, - { - "arrival": { - "time": 1620709920 - }, - "departure": { - "time": 1620709920 - }, - "stop_id": "A28N" - }, - { - "arrival": { - "time": 1620709980 - }, - "departure": { - "time": 1620709980 - }, - "stop_id": "A27N" - }, - { - "arrival": { - "time": 1620710070 - }, - "departure": { - "time": 1620710070 - }, - "stop_id": "A25N" - }, - { - "arrival": { - "time": 1620710235 - }, - "departure": { - "time": 1620710235 - }, - "stop_id": "A24N" - }, - { - "arrival": { - "time": 1620710370 - }, - "departure": { - "time": 1620710370 - }, - "stop_id": "A22N" - }, - { - "arrival": { - "time": 1620710460 - }, - "departure": { - "time": 1620710460 - }, - "stop_id": "A21N" - }, - { - "arrival": { - "time": 1620710550 - }, - "departure": { - "time": 1620710550 - }, - "stop_id": "A20N" - }, - { - "arrival": { - "time": 1620710640 - }, - "departure": { - "time": 1620710640 - }, - "stop_id": "A19N" - }, - { - "arrival": { - "time": 1620710730 - }, - "departure": { - "time": 1620710730 - }, - "stop_id": "A18N" - }, - { - "arrival": { - "time": 1620710790 - }, - "departure": { - "time": 1620710790 - }, - "stop_id": "A17N" - }, - { - "arrival": { - "time": 1620710880 - }, - "departure": { - "time": 1620710880 - }, - "stop_id": "A16N" - }, - { - "arrival": { - "time": 1620711030 - }, - "departure": { - "time": 1620711030 - }, - "stop_id": "A15N" - }, - { - "arrival": { - "time": 1620711180 - }, - "departure": { - "time": 1620711180 - }, - "stop_id": "A14N" - }, - { - "arrival": { - "time": 1620711270 - }, - "departure": { - "time": 1620711270 - }, - "stop_id": "A12N" - }, - { - "arrival": { - "time": 1620711360 - }, - "departure": { - "time": 1620711360 - }, - "stop_id": "A11N" - }, - { - "arrival": { - "time": 1620711450 - }, - "departure": { - "time": 1620711450 - }, - "stop_id": "A10N" - }, - { - "arrival": { - "time": 1620711540 - }, - "departure": { - "time": 1620711540 - }, - "stop_id": "A09N" - } - ] - } - }, - { - "id": "000036A", - "vehicle": { - "trip": { - "trip_id": "000200_A..N", - "start_time": "00:02:00", - "start_date": "20210511", - "route_id": "A" - }, - "timestamp": 1620705720, - "stop_id": "H11N" - } - }, - { - "id": "000037A", - "trip_update": { - "trip": { - "trip_id": "002000_A..N", - "start_time": "00:20:00", - "start_date": "20210511", - "route_id": "A" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620706800 - }, - "departure": { - "time": 1620706800 - }, - "stop_id": "A65N" - }, - { - "arrival": { - "time": 1620706890 - }, - "departure": { - "time": 1620706890 - }, - "stop_id": "A64N" - }, - { - "arrival": { - "time": 1620706950 - }, - "departure": { - "time": 1620706950 - }, - "stop_id": "A63N" - }, - { - "arrival": { - "time": 1620707040 - }, - "departure": { - "time": 1620707040 - }, - "stop_id": "A61N" - }, - { - "arrival": { - "time": 1620707130 - }, - "departure": { - "time": 1620707130 - }, - "stop_id": "A60N" - }, - { - "arrival": { - "time": 1620707220 - }, - "departure": { - "time": 1620707220 - }, - "stop_id": "A59N" - }, - { - "arrival": { - "time": 1620707310 - }, - "departure": { - "time": 1620707310 - }, - "stop_id": "A57N" - }, - { - "arrival": { - "time": 1620707400 - }, - "departure": { - "time": 1620707400 - }, - "stop_id": "A55N" - } - ] - } - }, - { - "id": "000038A", - "vehicle": { - "trip": { - "trip_id": "002000_A..N", - "start_time": "00:20:00", - "start_date": "20210511", - "route_id": "A" - }, - "timestamp": 1620706800, - "stop_id": "A65N" - } - }, - { - "id": "000039A", - "trip_update": { - "trip": { - "trip_id": "001900_A..S", - "start_time": "00:19:00", - "start_date": "20210511", - "route_id": "A" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620706740 - }, - "departure": { - "time": 1620706740 - }, - "stop_id": "A09S" - }, - { - "arrival": { - "time": 1620706800 - }, - "departure": { - "time": 1620706800 - }, - "stop_id": "A10S" - }, - { - "arrival": { - "time": 1620706860 - }, - "departure": { - "time": 1620706860 - }, - "stop_id": "A11S" - }, - { - "arrival": { - "time": 1620706950 - }, - "departure": { - "time": 1620706950 - }, - "stop_id": "A12S" - }, - { - "arrival": { - "time": 1620707070 - }, - "departure": { - "time": 1620707070 - }, - "stop_id": "A14S" - }, - { - "arrival": { - "time": 1620707160 - }, - "departure": { - "time": 1620707160 - }, - "stop_id": "A15S" - }, - { - "arrival": { - "time": 1620707250 - }, - "departure": { - "time": 1620707250 - }, - "stop_id": "A16S" - }, - { - "arrival": { - "time": 1620707340 - }, - "departure": { - "time": 1620707340 - }, - "stop_id": "A17S" - }, - { - "arrival": { - "time": 1620707400 - }, - "departure": { - "time": 1620707400 - }, - "stop_id": "A18S" - }, - { - "arrival": { - "time": 1620707490 - }, - "departure": { - "time": 1620707490 - }, - "stop_id": "A19S" - }, - { - "arrival": { - "time": 1620707580 - }, - "departure": { - "time": 1620707580 - }, - "stop_id": "A20S" - }, - { - "arrival": { - "time": 1620707670 - }, - "departure": { - "time": 1620707670 - }, - "stop_id": "A21S" - }, - { - "arrival": { - "time": 1620707760 - }, - "departure": { - "time": 1620707760 - }, - "stop_id": "A22S" - }, - { - "arrival": { - "time": 1620707910 - }, - "departure": { - "time": 1620707910 - }, - "stop_id": "A24S" - }, - { - "arrival": { - "time": 1620708060 - }, - "departure": { - "time": 1620708060 - }, - "stop_id": "A25S" - }, - { - "arrival": { - "time": 1620708180 - }, - "departure": { - "time": 1620708180 - }, - "stop_id": "A27S" - }, - { - "arrival": { - "time": 1620708240 - }, - "departure": { - "time": 1620708240 - }, - "stop_id": "A28S" - }, - { - "arrival": { - "time": 1620708330 - }, - "departure": { - "time": 1620708330 - }, - "stop_id": "A30S" - }, - { - "arrival": { - "time": 1620708420 - }, - "departure": { - "time": 1620708420 - }, - "stop_id": "A31S" - }, - { - "arrival": { - "time": 1620708540 - }, - "departure": { - "time": 1620708540 - }, - "stop_id": "A32S" - }, - { - "arrival": { - "time": 1620708630 - }, - "departure": { - "time": 1620708630 - }, - "stop_id": "A33S" - }, - { - "arrival": { - "time": 1620708720 - }, - "departure": { - "time": 1620708720 - }, - "stop_id": "A34S" - }, - { - "arrival": { - "time": 1620708840 - }, - "departure": { - "time": 1620708840 - }, - "stop_id": "A36S" - }, - { - "arrival": { - "time": 1620708960 - }, - "departure": { - "time": 1620708960 - }, - "stop_id": "A38S" - }, - { - "arrival": { - "time": 1620709140 - }, - "departure": { - "time": 1620709140 - }, - "stop_id": "A40S" - }, - { - "arrival": { - "time": 1620709260 - }, - "departure": { - "time": 1620709260 - }, - "stop_id": "A41S" - }, - { - "arrival": { - "time": 1620709350 - }, - "departure": { - "time": 1620709350 - }, - "stop_id": "A42S" - }, - { - "arrival": { - "time": 1620709470 - }, - "departure": { - "time": 1620709470 - }, - "stop_id": "A43S" - }, - { - "arrival": { - "time": 1620709560 - }, - "departure": { - "time": 1620709560 - }, - "stop_id": "A44S" - }, - { - "arrival": { - "time": 1620709650 - }, - "departure": { - "time": 1620709650 - }, - "stop_id": "A45S" - }, - { - "arrival": { - "time": 1620709710 - }, - "departure": { - "time": 1620709710 - }, - "stop_id": "A46S" - }, - { - "arrival": { - "time": 1620709830 - }, - "departure": { - "time": 1620709830 - }, - "stop_id": "A47S" - }, - { - "arrival": { - "time": 1620709920 - }, - "departure": { - "time": 1620709920 - }, - "stop_id": "A48S" - }, - { - "arrival": { - "time": 1620710040 - }, - "departure": { - "time": 1620710040 - }, - "stop_id": "A49S" - }, - { - "arrival": { - "time": 1620710130 - }, - "departure": { - "time": 1620710130 - }, - "stop_id": "A50S" - }, - { - "arrival": { - "time": 1620710220 - }, - "departure": { - "time": 1620710220 - }, - "stop_id": "A51S" - }, - { - "arrival": { - "time": 1620710340 - }, - "departure": { - "time": 1620710340 - }, - "stop_id": "A52S" - }, - { - "arrival": { - "time": 1620710430 - }, - "departure": { - "time": 1620710430 - }, - "stop_id": "A53S" - }, - { - "arrival": { - "time": 1620710520 - }, - "departure": { - "time": 1620710520 - }, - "stop_id": "A54S" - }, - { - "arrival": { - "time": 1620710610 - }, - "departure": { - "time": 1620710610 - }, - "stop_id": "A55S" - }, - { - "arrival": { - "time": 1620710700 - }, - "departure": { - "time": 1620710700 - }, - "stop_id": "A57S" - }, - { - "arrival": { - "time": 1620710790 - }, - "departure": { - "time": 1620710790 - }, - "stop_id": "A59S" - }, - { - "arrival": { - "time": 1620710880 - }, - "departure": { - "time": 1620710880 - }, - "stop_id": "A60S" - }, - { - "arrival": { - "time": 1620710970 - }, - "departure": { - "time": 1620710970 - }, - "stop_id": "A61S" - }, - { - "arrival": { - "time": 1620711210 - }, - "departure": { - "time": 1620711210 - }, - "stop_id": "H02S" - }, - { - "arrival": { - "time": 1620711330 - }, - "departure": { - "time": 1620711330 - }, - "stop_id": "H03S" - }, - { - "arrival": { - "time": 1620711720 - }, - "departure": { - "time": 1620711720 - }, - "stop_id": "H04S" - }, - { - "arrival": { - "time": 1620712080 - }, - "departure": { - "time": 1620712080 - }, - "stop_id": "H06S" - }, - { - "arrival": { - "time": 1620712395 - }, - "departure": { - "time": 1620712395 - }, - "stop_id": "H07S" - }, - { - "arrival": { - "time": 1620712620 - }, - "departure": { - "time": 1620712620 - }, - "stop_id": "H08S" - }, - { - "arrival": { - "time": 1620712710 - }, - "departure": { - "time": 1620712710 - }, - "stop_id": "H09S" - }, - { - "arrival": { - "time": 1620712830 - }, - "departure": { - "time": 1620712830 - }, - "stop_id": "H10S" - }, - { - "arrival": { - "time": 1620712920 - }, - "departure": { - "time": 1620712920 - }, - "stop_id": "H11S" - } - ] - } - }, - { - "id": "000040A", - "vehicle": { - "trip": { - "trip_id": "001900_A..S", - "start_time": "00:19:00", - "start_date": "20210511", - "route_id": "A" - }, - "timestamp": 1620706740, - "stop_id": "A09S" - } - }, - { - "id": "000041A", - "trip_update": { - "trip": { - "trip_id": "002200_A..N", - "start_time": "00:22:00", - "start_date": "20210511", - "route_id": "A" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620706920 - }, - "departure": { - "time": 1620706920 - }, - "stop_id": "A09N" - }, - { - "arrival": { - "time": 1620707100 - }, - "departure": { - "time": 1620707100 - }, - "stop_id": "A07N" - }, - { - "arrival": { - "time": 1620707220 - }, - "departure": { - "time": 1620707220 - }, - "stop_id": "A06N" - }, - { - "arrival": { - "time": 1620707400 - }, - "departure": { - "time": 1620707400 - }, - "stop_id": "A05N" - }, - { - "arrival": { - "time": 1620707610 - }, - "departure": { - "time": 1620707610 - }, - "stop_id": "A03N" - }, - { - "arrival": { - "time": 1620707760 - }, - "departure": { - "time": 1620707760 - }, - "stop_id": "A02N" - } - ] - } - }, - { - "id": "000042A", - "vehicle": { - "trip": { - "trip_id": "002200_A..N", - "start_time": "00:22:00", - "start_date": "20210511", - "route_id": "A" - }, - "timestamp": 1620706920, - "stop_id": "A09N" - } - }, - { - "id": "000043A", - "trip_update": { - "trip": { - "trip_id": "002200_A..N", - "start_time": "00:22:00", - "start_date": "20210511", - "route_id": "A" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620706920 - }, - "departure": { - "time": 1620706920 - }, - "stop_id": "H11N" - }, - { - "arrival": { - "time": 1620707010 - }, - "departure": { - "time": 1620707010 - }, - "stop_id": "H10N" - }, - { - "arrival": { - "time": 1620707130 - }, - "departure": { - "time": 1620707130 - }, - "stop_id": "H09N" - }, - { - "arrival": { - "time": 1620707220 - }, - "departure": { - "time": 1620707220 - }, - "stop_id": "H08N" - }, - { - "arrival": { - "time": 1620707340 - }, - "departure": { - "time": 1620707340 - }, - "stop_id": "H07N" - }, - { - "arrival": { - "time": 1620707430 - }, - "departure": { - "time": 1620707430 - }, - "stop_id": "H06N" - }, - { - "arrival": { - "time": 1620707670 - }, - "departure": { - "time": 1620707670 - }, - "stop_id": "H04N" - }, - { - "arrival": { - "time": 1620708060 - }, - "departure": { - "time": 1620708060 - }, - "stop_id": "H03N" - }, - { - "arrival": { - "time": 1620708180 - }, - "departure": { - "time": 1620708180 - }, - "stop_id": "H02N" - }, - { - "arrival": { - "time": 1620708240 - }, - "departure": { - "time": 1620708240 - }, - "stop_id": "H01N" - }, - { - "arrival": { - "time": 1620708420 - }, - "departure": { - "time": 1620708420 - }, - "stop_id": "A61N" - }, - { - "arrival": { - "time": 1620708510 - }, - "departure": { - "time": 1620708510 - }, - "stop_id": "A60N" - }, - { - "arrival": { - "time": 1620708600 - }, - "departure": { - "time": 1620708600 - }, - "stop_id": "A59N" - }, - { - "arrival": { - "time": 1620708690 - }, - "departure": { - "time": 1620708690 - }, - "stop_id": "A57N" - }, - { - "arrival": { - "time": 1620708780 - }, - "departure": { - "time": 1620708780 - }, - "stop_id": "A55N" - }, - { - "arrival": { - "time": 1620708870 - }, - "departure": { - "time": 1620708870 - }, - "stop_id": "A54N" - }, - { - "arrival": { - "time": 1620708960 - }, - "departure": { - "time": 1620708960 - }, - "stop_id": "A53N" - }, - { - "arrival": { - "time": 1620709050 - }, - "departure": { - "time": 1620709050 - }, - "stop_id": "A52N" - }, - { - "arrival": { - "time": 1620709170 - }, - "departure": { - "time": 1620709170 - }, - "stop_id": "A51N" - }, - { - "arrival": { - "time": 1620709230 - }, - "departure": { - "time": 1620709230 - }, - "stop_id": "A50N" - }, - { - "arrival": { - "time": 1620709350 - }, - "departure": { - "time": 1620709350 - }, - "stop_id": "A49N" - }, - { - "arrival": { - "time": 1620709440 - }, - "departure": { - "time": 1620709440 - }, - "stop_id": "A48N" - }, - { - "arrival": { - "time": 1620709530 - }, - "departure": { - "time": 1620709530 - }, - "stop_id": "A47N" - }, - { - "arrival": { - "time": 1620709620 - }, - "departure": { - "time": 1620709620 - }, - "stop_id": "A46N" - }, - { - "arrival": { - "time": 1620709680 - }, - "departure": { - "time": 1620709680 - }, - "stop_id": "A45N" - }, - { - "arrival": { - "time": 1620709770 - }, - "departure": { - "time": 1620709770 - }, - "stop_id": "A44N" - }, - { - "arrival": { - "time": 1620709860 - }, - "departure": { - "time": 1620709860 - }, - "stop_id": "A43N" - }, - { - "arrival": { - "time": 1620709950 - }, - "departure": { - "time": 1620709950 - }, - "stop_id": "A42N" - }, - { - "arrival": { - "time": 1620710040 - }, - "departure": { - "time": 1620710040 - }, - "stop_id": "A41N" - }, - { - "arrival": { - "time": 1620710160 - }, - "departure": { - "time": 1620710160 - }, - "stop_id": "A40N" - }, - { - "arrival": { - "time": 1620710340 - }, - "departure": { - "time": 1620710340 - }, - "stop_id": "A38N" - }, - { - "arrival": { - "time": 1620710460 - }, - "departure": { - "time": 1620710460 - }, - "stop_id": "A36N" - }, - { - "arrival": { - "time": 1620710550 - }, - "departure": { - "time": 1620710550 - }, - "stop_id": "A34N" - }, - { - "arrival": { - "time": 1620710640 - }, - "departure": { - "time": 1620710640 - }, - "stop_id": "A33N" - }, - { - "arrival": { - "time": 1620710760 - }, - "departure": { - "time": 1620710760 - }, - "stop_id": "A32N" - }, - { - "arrival": { - "time": 1620710880 - }, - "departure": { - "time": 1620710880 - }, - "stop_id": "A31N" - }, - { - "arrival": { - "time": 1620710970 - }, - "departure": { - "time": 1620710970 - }, - "stop_id": "A30N" - }, - { - "arrival": { - "time": 1620711090 - }, - "departure": { - "time": 1620711090 - }, - "stop_id": "A28N" - }, - { - "arrival": { - "time": 1620711150 - }, - "departure": { - "time": 1620711150 - }, - "stop_id": "A27N" - }, - { - "arrival": { - "time": 1620711240 - }, - "departure": { - "time": 1620711240 - }, - "stop_id": "A25N" - }, - { - "arrival": { - "time": 1620711405 - }, - "departure": { - "time": 1620711405 - }, - "stop_id": "A24N" - }, - { - "arrival": { - "time": 1620711540 - }, - "departure": { - "time": 1620711540 - }, - "stop_id": "A22N" - }, - { - "arrival": { - "time": 1620711630 - }, - "departure": { - "time": 1620711630 - }, - "stop_id": "A21N" - }, - { - "arrival": { - "time": 1620711720 - }, - "departure": { - "time": 1620711720 - }, - "stop_id": "A20N" - }, - { - "arrival": { - "time": 1620711810 - }, - "departure": { - "time": 1620711810 - }, - "stop_id": "A19N" - }, - { - "arrival": { - "time": 1620711900 - }, - "departure": { - "time": 1620711900 - }, - "stop_id": "A18N" - }, - { - "arrival": { - "time": 1620711960 - }, - "departure": { - "time": 1620711960 - }, - "stop_id": "A17N" - }, - { - "arrival": { - "time": 1620712050 - }, - "departure": { - "time": 1620712050 - }, - "stop_id": "A16N" - }, - { - "arrival": { - "time": 1620712200 - }, - "departure": { - "time": 1620712200 - }, - "stop_id": "A15N" - }, - { - "arrival": { - "time": 1620712350 - }, - "departure": { - "time": 1620712350 - }, - "stop_id": "A14N" - }, - { - "arrival": { - "time": 1620712440 - }, - "departure": { - "time": 1620712440 - }, - "stop_id": "A12N" - }, - { - "arrival": { - "time": 1620712530 - }, - "departure": { - "time": 1620712530 - }, - "stop_id": "A11N" - }, - { - "arrival": { - "time": 1620712620 - }, - "departure": { - "time": 1620712620 - }, - "stop_id": "A10N" - }, - { - "arrival": { - "time": 1620712710 - }, - "departure": { - "time": 1620712710 - }, - "stop_id": "A09N" - } - ] - } - }, - { - "id": "000044A", - "vehicle": { - "trip": { - "trip_id": "002200_A..N", - "start_time": "00:22:00", - "start_date": "20210511", - "route_id": "A" - }, - "timestamp": 1620706920, - "stop_id": "H11N" - } - }, - { - "id": "000045A", - "trip_update": { - "trip": { - "trip_id": "003900_A..S", - "start_time": "00:39:00", - "start_date": "20210511", - "route_id": "A" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620707940 - }, - "departure": { - "time": 1620707940 - }, - "stop_id": "A02S" - }, - { - "arrival": { - "time": 1620708030 - }, - "departure": { - "time": 1620708030 - }, - "stop_id": "A03S" - }, - { - "arrival": { - "time": 1620708150 - }, - "departure": { - "time": 1620708150 - }, - "stop_id": "A05S" - }, - { - "arrival": { - "time": 1620708270 - }, - "departure": { - "time": 1620708270 - }, - "stop_id": "A06S" - }, - { - "arrival": { - "time": 1620708330 - }, - "departure": { - "time": 1620708330 - }, - "stop_id": "A07S" - }, - { - "arrival": { - "time": 1620708450 - }, - "departure": { - "time": 1620708450 - }, - "stop_id": "A09S" - } - ] - } - }, - { - "id": "000046A", - "vehicle": { - "trip": { - "trip_id": "003900_A..S", - "start_time": "00:39:00", - "start_date": "20210511", - "route_id": "A" - }, - "timestamp": 1620707940, - "stop_id": "A02S" - } - }, - { - "id": "000047A", - "trip_update": { - "trip": { - "trip_id": "004000_A..N", - "start_time": "00:40:00", - "start_date": "20210511", - "route_id": "A" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620708000 - }, - "departure": { - "time": 1620708000 - }, - "stop_id": "A65N" - }, - { - "arrival": { - "time": 1620708060 - }, - "departure": { - "time": 1620708060 - }, - "stop_id": "A64N" - }, - { - "arrival": { - "time": 1620708150 - }, - "departure": { - "time": 1620708150 - }, - "stop_id": "A63N" - }, - { - "arrival": { - "time": 1620708270 - }, - "departure": { - "time": 1620708270 - }, - "stop_id": "A61N" - }, - { - "arrival": { - "time": 1620708330 - }, - "departure": { - "time": 1620708330 - }, - "stop_id": "A60N" - }, - { - "arrival": { - "time": 1620708390 - }, - "departure": { - "time": 1620708390 - }, - "stop_id": "A59N" - }, - { - "arrival": { - "time": 1620708450 - }, - "departure": { - "time": 1620708450 - }, - "stop_id": "A58N" - }, - { - "arrival": { - "time": 1620708480 - }, - "departure": { - "time": 1620708480 - }, - "stop_id": "A57N" - }, - { - "arrival": { - "time": 1620708660 - }, - "departure": { - "time": 1620708660 - }, - "stop_id": "A55N" - } - ] - } - }, - { - "id": "000048A", - "vehicle": { - "trip": { - "trip_id": "004000_A..N", - "start_time": "00:40:00", - "start_date": "20210511", - "route_id": "A" - }, - "timestamp": 1620708000, - "stop_id": "A65N" - } - }, - { - "id": "000049A", - "trip_update": { - "trip": { - "trip_id": "003900_A..S", - "start_time": "00:39:00", - "start_date": "20210511", - "route_id": "A" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620707940 - }, - "departure": { - "time": 1620707940 - }, - "stop_id": "A09S" - }, - { - "arrival": { - "time": 1620708000 - }, - "departure": { - "time": 1620708000 - }, - "stop_id": "A10S" - }, - { - "arrival": { - "time": 1620708060 - }, - "departure": { - "time": 1620708060 - }, - "stop_id": "A11S" - }, - { - "arrival": { - "time": 1620708150 - }, - "departure": { - "time": 1620708150 - }, - "stop_id": "A12S" - }, - { - "arrival": { - "time": 1620708270 - }, - "departure": { - "time": 1620708270 - }, - "stop_id": "A14S" - }, - { - "arrival": { - "time": 1620708360 - }, - "departure": { - "time": 1620708360 - }, - "stop_id": "A15S" - }, - { - "arrival": { - "time": 1620708450 - }, - "departure": { - "time": 1620708450 - }, - "stop_id": "A16S" - }, - { - "arrival": { - "time": 1620708540 - }, - "departure": { - "time": 1620708540 - }, - "stop_id": "A17S" - }, - { - "arrival": { - "time": 1620708600 - }, - "departure": { - "time": 1620708600 - }, - "stop_id": "A18S" - }, - { - "arrival": { - "time": 1620708690 - }, - "departure": { - "time": 1620708690 - }, - "stop_id": "A19S" - }, - { - "arrival": { - "time": 1620708780 - }, - "departure": { - "time": 1620708780 - }, - "stop_id": "A20S" - }, - { - "arrival": { - "time": 1620708870 - }, - "departure": { - "time": 1620708870 - }, - "stop_id": "A21S" - }, - { - "arrival": { - "time": 1620708960 - }, - "departure": { - "time": 1620708960 - }, - "stop_id": "A22S" - }, - { - "arrival": { - "time": 1620709095 - }, - "departure": { - "time": 1620709095 - }, - "stop_id": "A24S" - }, - { - "arrival": { - "time": 1620709230 - }, - "departure": { - "time": 1620709230 - }, - "stop_id": "A25S" - }, - { - "arrival": { - "time": 1620709350 - }, - "departure": { - "time": 1620709350 - }, - "stop_id": "A27S" - }, - { - "arrival": { - "time": 1620709410 - }, - "departure": { - "time": 1620709410 - }, - "stop_id": "A28S" - }, - { - "arrival": { - "time": 1620709500 - }, - "departure": { - "time": 1620709500 - }, - "stop_id": "A30S" - }, - { - "arrival": { - "time": 1620709590 - }, - "departure": { - "time": 1620709590 - }, - "stop_id": "A31S" - }, - { - "arrival": { - "time": 1620709710 - }, - "departure": { - "time": 1620709710 - }, - "stop_id": "A32S" - }, - { - "arrival": { - "time": 1620709800 - }, - "departure": { - "time": 1620709800 - }, - "stop_id": "A33S" - }, - { - "arrival": { - "time": 1620709890 - }, - "departure": { - "time": 1620709890 - }, - "stop_id": "A34S" - }, - { - "arrival": { - "time": 1620710010 - }, - "departure": { - "time": 1620710010 - }, - "stop_id": "A36S" - }, - { - "arrival": { - "time": 1620710130 - }, - "departure": { - "time": 1620710130 - }, - "stop_id": "A38S" - }, - { - "arrival": { - "time": 1620710310 - }, - "departure": { - "time": 1620710310 - }, - "stop_id": "A40S" - }, - { - "arrival": { - "time": 1620710445 - }, - "departure": { - "time": 1620710445 - }, - "stop_id": "A41S" - }, - { - "arrival": { - "time": 1620710550 - }, - "departure": { - "time": 1620710550 - }, - "stop_id": "A42S" - }, - { - "arrival": { - "time": 1620710670 - }, - "departure": { - "time": 1620710670 - }, - "stop_id": "A43S" - }, - { - "arrival": { - "time": 1620710760 - }, - "departure": { - "time": 1620710760 - }, - "stop_id": "A44S" - }, - { - "arrival": { - "time": 1620710850 - }, - "departure": { - "time": 1620710850 - }, - "stop_id": "A45S" - }, - { - "arrival": { - "time": 1620710910 - }, - "departure": { - "time": 1620710910 - }, - "stop_id": "A46S" - }, - { - "arrival": { - "time": 1620711030 - }, - "departure": { - "time": 1620711030 - }, - "stop_id": "A47S" - }, - { - "arrival": { - "time": 1620711120 - }, - "departure": { - "time": 1620711120 - }, - "stop_id": "A48S" - }, - { - "arrival": { - "time": 1620711240 - }, - "departure": { - "time": 1620711240 - }, - "stop_id": "A49S" - }, - { - "arrival": { - "time": 1620711330 - }, - "departure": { - "time": 1620711330 - }, - "stop_id": "A50S" - }, - { - "arrival": { - "time": 1620711420 - }, - "departure": { - "time": 1620711420 - }, - "stop_id": "A51S" - }, - { - "arrival": { - "time": 1620711540 - }, - "departure": { - "time": 1620711540 - }, - "stop_id": "A52S" - }, - { - "arrival": { - "time": 1620711630 - }, - "departure": { - "time": 1620711630 - }, - "stop_id": "A53S" - }, - { - "arrival": { - "time": 1620711720 - }, - "departure": { - "time": 1620711720 - }, - "stop_id": "A54S" - }, - { - "arrival": { - "time": 1620711810 - }, - "departure": { - "time": 1620711810 - }, - "stop_id": "A55S" - }, - { - "arrival": { - "time": 1620711900 - }, - "departure": { - "time": 1620711900 - }, - "stop_id": "A57S" - }, - { - "arrival": { - "time": 1620711990 - }, - "departure": { - "time": 1620711990 - }, - "stop_id": "A59S" - }, - { - "arrival": { - "time": 1620712080 - }, - "departure": { - "time": 1620712080 - }, - "stop_id": "A60S" - }, - { - "arrival": { - "time": 1620712170 - }, - "departure": { - "time": 1620712170 - }, - "stop_id": "A61S" - }, - { - "arrival": { - "time": 1620712410 - }, - "departure": { - "time": 1620712410 - }, - "stop_id": "H02S" - }, - { - "arrival": { - "time": 1620712530 - }, - "departure": { - "time": 1620712530 - }, - "stop_id": "H03S" - }, - { - "arrival": { - "time": 1620712920 - }, - "departure": { - "time": 1620712920 - }, - "stop_id": "H04S" - }, - { - "arrival": { - "time": 1620713280 - }, - "departure": { - "time": 1620713280 - }, - "stop_id": "H06S" - }, - { - "arrival": { - "time": 1620713595 - }, - "departure": { - "time": 1620713595 - }, - "stop_id": "H07S" - }, - { - "arrival": { - "time": 1620713820 - }, - "departure": { - "time": 1620713820 - }, - "stop_id": "H08S" - }, - { - "arrival": { - "time": 1620713910 - }, - "departure": { - "time": 1620713910 - }, - "stop_id": "H09S" - }, - { - "arrival": { - "time": 1620714030 - }, - "departure": { - "time": 1620714030 - }, - "stop_id": "H10S" - }, - { - "arrival": { - "time": 1620714120 - }, - "departure": { - "time": 1620714120 - }, - "stop_id": "H11S" - } - ] - } - }, - { - "id": "000050A", - "vehicle": { - "trip": { - "trip_id": "003900_A..S", - "start_time": "00:39:00", - "start_date": "20210511", - "route_id": "A" - }, - "timestamp": 1620707940, - "stop_id": "A09S" - } - }, - { - "id": "000051A", - "trip_update": { - "trip": { - "trip_id": "005200_A..N", - "start_time": "00:52:00", - "start_date": "20210511", - "route_id": "A" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620708720 - }, - "departure": { - "time": 1620708720 - }, - "stop_id": "A09N" - }, - { - "arrival": { - "time": 1620708900 - }, - "departure": { - "time": 1620708900 - }, - "stop_id": "A07N" - }, - { - "arrival": { - "time": 1620709020 - }, - "departure": { - "time": 1620709020 - }, - "stop_id": "A06N" - }, - { - "arrival": { - "time": 1620709200 - }, - "departure": { - "time": 1620709200 - }, - "stop_id": "A05N" - }, - { - "arrival": { - "time": 1620709410 - }, - "departure": { - "time": 1620709410 - }, - "stop_id": "A03N" - }, - { - "arrival": { - "time": 1620709560 - }, - "departure": { - "time": 1620709560 - }, - "stop_id": "A02N" - } - ] - } - }, - { - "id": "000052A", - "vehicle": { - "trip": { - "trip_id": "005200_A..N", - "start_time": "00:52:00", - "start_date": "20210511", - "route_id": "A" - }, - "timestamp": 1620708720, - "stop_id": "A09N" - } - }, - { - "id": "000053A", - "trip_update": { - "trip": { - "trip_id": "004200_A..N", - "start_time": "00:42:00", - "start_date": "20210511", - "route_id": "A" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620708120 - }, - "departure": { - "time": 1620708120 - }, - "stop_id": "H11N" - }, - { - "arrival": { - "time": 1620708210 - }, - "departure": { - "time": 1620708210 - }, - "stop_id": "H10N" - }, - { - "arrival": { - "time": 1620708330 - }, - "departure": { - "time": 1620708330 - }, - "stop_id": "H09N" - }, - { - "arrival": { - "time": 1620708420 - }, - "departure": { - "time": 1620708420 - }, - "stop_id": "H08N" - }, - { - "arrival": { - "time": 1620708540 - }, - "departure": { - "time": 1620708540 - }, - "stop_id": "H07N" - }, - { - "arrival": { - "time": 1620708630 - }, - "departure": { - "time": 1620708630 - }, - "stop_id": "H06N" - }, - { - "arrival": { - "time": 1620708870 - }, - "departure": { - "time": 1620708870 - }, - "stop_id": "H04N" - }, - { - "arrival": { - "time": 1620709260 - }, - "departure": { - "time": 1620709260 - }, - "stop_id": "H03N" - }, - { - "arrival": { - "time": 1620709380 - }, - "departure": { - "time": 1620709380 - }, - "stop_id": "H02N" - }, - { - "arrival": { - "time": 1620709440 - }, - "departure": { - "time": 1620709440 - }, - "stop_id": "H01N" - }, - { - "arrival": { - "time": 1620709620 - }, - "departure": { - "time": 1620709620 - }, - "stop_id": "A61N" - }, - { - "arrival": { - "time": 1620709710 - }, - "departure": { - "time": 1620709710 - }, - "stop_id": "A60N" - }, - { - "arrival": { - "time": 1620709800 - }, - "departure": { - "time": 1620709800 - }, - "stop_id": "A59N" - }, - { - "arrival": { - "time": 1620709890 - }, - "departure": { - "time": 1620709890 - }, - "stop_id": "A57N" - }, - { - "arrival": { - "time": 1620709980 - }, - "departure": { - "time": 1620709980 - }, - "stop_id": "A55N" - }, - { - "arrival": { - "time": 1620710070 - }, - "departure": { - "time": 1620710070 - }, - "stop_id": "A54N" - }, - { - "arrival": { - "time": 1620710160 - }, - "departure": { - "time": 1620710160 - }, - "stop_id": "A53N" - }, - { - "arrival": { - "time": 1620710250 - }, - "departure": { - "time": 1620710250 - }, - "stop_id": "A52N" - }, - { - "arrival": { - "time": 1620710370 - }, - "departure": { - "time": 1620710370 - }, - "stop_id": "A51N" - }, - { - "arrival": { - "time": 1620710430 - }, - "departure": { - "time": 1620710430 - }, - "stop_id": "A50N" - }, - { - "arrival": { - "time": 1620710550 - }, - "departure": { - "time": 1620710550 - }, - "stop_id": "A49N" - }, - { - "arrival": { - "time": 1620710640 - }, - "departure": { - "time": 1620710640 - }, - "stop_id": "A48N" - }, - { - "arrival": { - "time": 1620710730 - }, - "departure": { - "time": 1620710730 - }, - "stop_id": "A47N" - }, - { - "arrival": { - "time": 1620710820 - }, - "departure": { - "time": 1620710820 - }, - "stop_id": "A46N" - }, - { - "arrival": { - "time": 1620710880 - }, - "departure": { - "time": 1620710880 - }, - "stop_id": "A45N" - }, - { - "arrival": { - "time": 1620710970 - }, - "departure": { - "time": 1620710970 - }, - "stop_id": "A44N" - }, - { - "arrival": { - "time": 1620711060 - }, - "departure": { - "time": 1620711060 - }, - "stop_id": "A43N" - }, - { - "arrival": { - "time": 1620711150 - }, - "departure": { - "time": 1620711150 - }, - "stop_id": "A42N" - }, - { - "arrival": { - "time": 1620711240 - }, - "departure": { - "time": 1620711240 - }, - "stop_id": "A41N" - }, - { - "arrival": { - "time": 1620711360 - }, - "departure": { - "time": 1620711360 - }, - "stop_id": "A40N" - }, - { - "arrival": { - "time": 1620711540 - }, - "departure": { - "time": 1620711540 - }, - "stop_id": "A38N" - }, - { - "arrival": { - "time": 1620711660 - }, - "departure": { - "time": 1620711660 - }, - "stop_id": "A36N" - }, - { - "arrival": { - "time": 1620711750 - }, - "departure": { - "time": 1620711750 - }, - "stop_id": "A34N" - }, - { - "arrival": { - "time": 1620711840 - }, - "departure": { - "time": 1620711840 - }, - "stop_id": "A33N" - }, - { - "arrival": { - "time": 1620711960 - }, - "departure": { - "time": 1620711960 - }, - "stop_id": "A32N" - }, - { - "arrival": { - "time": 1620712080 - }, - "departure": { - "time": 1620712080 - }, - "stop_id": "A31N" - }, - { - "arrival": { - "time": 1620712170 - }, - "departure": { - "time": 1620712170 - }, - "stop_id": "A30N" - }, - { - "arrival": { - "time": 1620712290 - }, - "departure": { - "time": 1620712290 - }, - "stop_id": "A28N" - }, - { - "arrival": { - "time": 1620712350 - }, - "departure": { - "time": 1620712350 - }, - "stop_id": "A27N" - }, - { - "arrival": { - "time": 1620712440 - }, - "departure": { - "time": 1620712440 - }, - "stop_id": "A25N" - }, - { - "arrival": { - "time": 1620712605 - }, - "departure": { - "time": 1620712605 - }, - "stop_id": "A24N" - }, - { - "arrival": { - "time": 1620712740 - }, - "departure": { - "time": 1620712740 - }, - "stop_id": "A22N" - }, - { - "arrival": { - "time": 1620712830 - }, - "departure": { - "time": 1620712830 - }, - "stop_id": "A21N" - }, - { - "arrival": { - "time": 1620712920 - }, - "departure": { - "time": 1620712920 - }, - "stop_id": "A20N" - }, - { - "arrival": { - "time": 1620713010 - }, - "departure": { - "time": 1620713010 - }, - "stop_id": "A19N" - }, - { - "arrival": { - "time": 1620713100 - }, - "departure": { - "time": 1620713100 - }, - "stop_id": "A18N" - }, - { - "arrival": { - "time": 1620713160 - }, - "departure": { - "time": 1620713160 - }, - "stop_id": "A17N" - }, - { - "arrival": { - "time": 1620713250 - }, - "departure": { - "time": 1620713250 - }, - "stop_id": "A16N" - }, - { - "arrival": { - "time": 1620713400 - }, - "departure": { - "time": 1620713400 - }, - "stop_id": "A15N" - }, - { - "arrival": { - "time": 1620713550 - }, - "departure": { - "time": 1620713550 - }, - "stop_id": "A14N" - }, - { - "arrival": { - "time": 1620713640 - }, - "departure": { - "time": 1620713640 - }, - "stop_id": "A12N" - }, - { - "arrival": { - "time": 1620713730 - }, - "departure": { - "time": 1620713730 - }, - "stop_id": "A11N" - }, - { - "arrival": { - "time": 1620713820 - }, - "departure": { - "time": 1620713820 - }, - "stop_id": "A10N" - }, - { - "arrival": { - "time": 1620713910 - }, - "departure": { - "time": 1620713910 - }, - "stop_id": "A09N" - } - ] - } - }, - { - "id": "000054A", - "vehicle": { - "trip": { - "trip_id": "004200_A..N", - "start_time": "00:42:00", - "start_date": "20210511", - "route_id": "A" - }, - "timestamp": 1620708120, - "stop_id": "H11N" - } - }, - { - "id": "000001E", - "trip_update": { - "trip": { - "trip_id": "138400_E..N", - "start_time": "23:04:00", - "start_date": "20210510", - "route_id": "E" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620705451 - }, - "departure": { - "time": 1620705451 - }, - "stop_id": "G06N" - }, - { - "arrival": { - "time": 1620705661 - }, - "departure": { - "time": 1620705661 - }, - "stop_id": "G05N" - } - ] - } - }, - { - "id": "000002E", - "vehicle": { - "trip": { - "trip_id": "138400_E..N", - "start_time": "23:04:00", - "start_date": "20210510", - "route_id": "E" - }, - "current_stop_sequence": 25, - "current_status": 1, - "timestamp": 1620705451, - "stop_id": "G06N" - } - }, - { - "id": "000003E", - "trip_update": { - "trip": { - "trip_id": "137400_E..S", - "start_time": "22:54:00", - "start_date": "20210510", - "route_id": "E" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620705446 - }, - "departure": { - "time": 1620705446 - }, - "stop_id": "E01S" - } - ] - } - }, - { - "id": "000004E", - "vehicle": { - "trip": { - "trip_id": "137400_E..S", - "start_time": "22:54:00", - "start_date": "20210510", - "route_id": "E" - }, - "current_stop_sequence": 31, - "current_status": 1, - "timestamp": 1620705446, - "stop_id": "E01S" - } - }, - { - "id": "000005E", - "trip_update": { - "trip": { - "trip_id": "139600_E..N", - "start_time": "23:16:00", - "start_date": "20210510", - "route_id": "E" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620705518 - }, - "departure": { - "time": 1620705518 - }, - "stop_id": "G08N" - }, - { - "arrival": { - "time": 1620705638 - }, - "departure": { - "time": 1620705638 - }, - "stop_id": "F07N" - }, - { - "arrival": { - "time": 1620705728 - }, - "departure": { - "time": 1620705728 - }, - "stop_id": "F06N" - }, - { - "arrival": { - "time": 1620705848 - }, - "departure": { - "time": 1620705848 - }, - "stop_id": "F05N" - }, - { - "arrival": { - "time": 1620705938 - }, - "departure": { - "time": 1620705938 - }, - "stop_id": "G07N" - }, - { - "arrival": { - "time": 1620706223 - }, - "departure": { - "time": 1620706223 - }, - "stop_id": "G06N" - }, - { - "arrival": { - "time": 1620706478 - }, - "departure": { - "time": 1620706478 - }, - "stop_id": "G05N" - } - ] - } - }, - { - "id": "000006E", - "vehicle": { - "trip": { - "trip_id": "139600_E..N", - "start_time": "23:16:00", - "start_date": "20210510", - "route_id": "E" - }, - "current_stop_sequence": 19, - "current_status": 1, - "timestamp": 1620705216, - "stop_id": "G14N" - } - }, - { - "id": "000007E", - "trip_update": { - "trip": { - "trip_id": "138486_E..S", - "start_time": "23:04:52", - "start_date": "20210510", - "route_id": "E" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620705451 - }, - "departure": { - "time": 1620705451 - }, - "stop_id": "A33S" - }, - { - "arrival": { - "time": 1620705518 - }, - "departure": { - "time": 1620705518 - }, - "stop_id": "A34S" - }, - { - "arrival": { - "time": 1620705638 - }, - "departure": { - "time": 1620705638 - }, - "stop_id": "E01S" - } - ] - } - }, - { - "id": "000008E", - "vehicle": { - "trip": { - "trip_id": "138486_E..S", - "start_time": "23:04:52", - "start_date": "20210510", - "route_id": "E" - }, - "current_stop_sequence": 29, - "current_status": 1, - "timestamp": 1620705451, - "stop_id": "A33S" - } - }, - { - "id": "000009E", - "trip_update": { - "trip": { - "trip_id": "139660_E..S", - "start_time": "23:16:36", - "start_date": "20210510", - "route_id": "E" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620705451 - }, - "departure": { - "time": 1620705451 - }, - "stop_id": "D14S" - }, - { - "arrival": { - "time": 1620705518 - }, - "departure": { - "time": 1620705518 - }, - "stop_id": "A25S" - }, - { - "arrival": { - "time": 1620705698 - }, - "departure": { - "time": 1620705698 - }, - "stop_id": "A27S" - }, - { - "arrival": { - "time": 1620705758 - }, - "departure": { - "time": 1620705758 - }, - "stop_id": "A28S" - }, - { - "arrival": { - "time": 1620705848 - }, - "departure": { - "time": 1620705848 - }, - "stop_id": "A30S" - }, - { - "arrival": { - "time": 1620705938 - }, - "departure": { - "time": 1620705938 - }, - "stop_id": "A31S" - }, - { - "arrival": { - "time": 1620706058 - }, - "departure": { - "time": 1620706058 - }, - "stop_id": "A32S" - }, - { - "arrival": { - "time": 1620706148 - }, - "departure": { - "time": 1620706148 - }, - "stop_id": "A33S" - }, - { - "arrival": { - "time": 1620706238 - }, - "departure": { - "time": 1620706238 - }, - "stop_id": "A34S" - }, - { - "arrival": { - "time": 1620706358 - }, - "departure": { - "time": 1620706358 - }, - "stop_id": "E01S" - } - ] - } - }, - { - "id": "000010E", - "vehicle": { - "trip": { - "trip_id": "139660_E..S", - "start_time": "23:16:36", - "start_date": "20210510", - "route_id": "E" - }, - "current_stop_sequence": 22, - "current_status": 1, - "timestamp": 1620705451, - "stop_id": "D14S" - } - }, - { - "id": "000011E", - "trip_update": { - "trip": { - "trip_id": "140800_E..N", - "start_time": "23:28:00", - "start_date": "20210510", - "route_id": "E" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620705451 - }, - "departure": { - "time": 1620705451 - }, - "stop_id": "G18N" - }, - { - "arrival": { - "time": 1620705518 - }, - "departure": { - "time": 1620705518 - }, - "stop_id": "G16N" - }, - { - "arrival": { - "time": 1620705578 - }, - "departure": { - "time": 1620705578 - }, - "stop_id": "G15N" - }, - { - "arrival": { - "time": 1620705668 - }, - "departure": { - "time": 1620705668 - }, - "stop_id": "G14N" - }, - { - "arrival": { - "time": 1620705758 - }, - "departure": { - "time": 1620705758 - }, - "stop_id": "G13N" - }, - { - "arrival": { - "time": 1620705848 - }, - "departure": { - "time": 1620705848 - }, - "stop_id": "G12N" - }, - { - "arrival": { - "time": 1620705968 - }, - "departure": { - "time": 1620705968 - }, - "stop_id": "G11N" - }, - { - "arrival": { - "time": 1620706028 - }, - "departure": { - "time": 1620706028 - }, - "stop_id": "G10N" - }, - { - "arrival": { - "time": 1620706148 - }, - "departure": { - "time": 1620706148 - }, - "stop_id": "G09N" - }, - { - "arrival": { - "time": 1620706238 - }, - "departure": { - "time": 1620706238 - }, - "stop_id": "G08N" - }, - { - "arrival": { - "time": 1620706358 - }, - "departure": { - "time": 1620706358 - }, - "stop_id": "F07N" - }, - { - "arrival": { - "time": 1620706448 - }, - "departure": { - "time": 1620706448 - }, - "stop_id": "F06N" - }, - { - "arrival": { - "time": 1620706568 - }, - "departure": { - "time": 1620706568 - }, - "stop_id": "F05N" - }, - { - "arrival": { - "time": 1620706658 - }, - "departure": { - "time": 1620706658 - }, - "stop_id": "G07N" - }, - { - "arrival": { - "time": 1620706943 - }, - "departure": { - "time": 1620706943 - }, - "stop_id": "G06N" - }, - { - "arrival": { - "time": 1620707198 - }, - "departure": { - "time": 1620707198 - }, - "stop_id": "G05N" - } - ] - } - }, - { - "id": "000012E", - "vehicle": { - "trip": { - "trip_id": "140800_E..N", - "start_time": "23:28:00", - "start_date": "20210510", - "route_id": "E" - }, - "current_stop_sequence": 16, - "current_status": 1, - "timestamp": 1620705451, - "stop_id": "G18N" - } - }, - { - "id": "000013E", - "trip_update": { - "trip": { - "trip_id": "140800_E..S", - "start_time": "23:28:00", - "start_date": "20210510", - "route_id": "E" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620705451 - }, - "departure": { - "time": 1620705451 - }, - "stop_id": "G20S" - }, - { - "arrival": { - "time": 1620705518 - }, - "departure": { - "time": 1620705518 - }, - "stop_id": "G21S" - }, - { - "arrival": { - "time": 1620705623 - }, - "departure": { - "time": 1620705623 - }, - "stop_id": "F09S" - }, - { - "arrival": { - "time": 1620705803 - }, - "departure": { - "time": 1620705803 - }, - "stop_id": "F11S" - }, - { - "arrival": { - "time": 1620705893 - }, - "departure": { - "time": 1620705893 - }, - "stop_id": "F12S" - }, - { - "arrival": { - "time": 1620705983 - }, - "departure": { - "time": 1620705983 - }, - "stop_id": "D14S" - }, - { - "arrival": { - "time": 1620706133 - }, - "departure": { - "time": 1620706133 - }, - "stop_id": "A25S" - }, - { - "arrival": { - "time": 1620706313 - }, - "departure": { - "time": 1620706313 - }, - "stop_id": "A27S" - }, - { - "arrival": { - "time": 1620706373 - }, - "departure": { - "time": 1620706373 - }, - "stop_id": "A28S" - }, - { - "arrival": { - "time": 1620706463 - }, - "departure": { - "time": 1620706463 - }, - "stop_id": "A30S" - }, - { - "arrival": { - "time": 1620706553 - }, - "departure": { - "time": 1620706553 - }, - "stop_id": "A31S" - }, - { - "arrival": { - "time": 1620706673 - }, - "departure": { - "time": 1620706673 - }, - "stop_id": "A32S" - }, - { - "arrival": { - "time": 1620706763 - }, - "departure": { - "time": 1620706763 - }, - "stop_id": "A33S" - }, - { - "arrival": { - "time": 1620706853 - }, - "departure": { - "time": 1620706853 - }, - "stop_id": "A34S" - }, - { - "arrival": { - "time": 1620706973 - }, - "departure": { - "time": 1620706973 - }, - "stop_id": "E01S" - } - ] - } - }, - { - "id": "000014E", - "vehicle": { - "trip": { - "trip_id": "140800_E..S", - "start_time": "23:28:00", - "start_date": "20210510", - "route_id": "E" - }, - "current_stop_sequence": 17, - "current_status": 1, - "timestamp": 1620705451, - "stop_id": "G20S" - } - }, - { - "id": "000015E", - "trip_update": { - "trip": { - "trip_id": "141800_E..N", - "start_time": "23:38:00", - "start_date": "20210510", - "route_id": "E" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620705451 - }, - "departure": { - "time": 1620705451 - }, - "stop_id": "F12N" - }, - { - "arrival": { - "time": 1620705518 - }, - "departure": { - "time": 1620705518 - }, - "stop_id": "F11N" - }, - { - "arrival": { - "time": 1620705698 - }, - "departure": { - "time": 1620705698 - }, - "stop_id": "F09N" - }, - { - "arrival": { - "time": 1620705788 - }, - "departure": { - "time": 1620705788 - }, - "stop_id": "G21N" - }, - { - "arrival": { - "time": 1620705908 - }, - "departure": { - "time": 1620705908 - }, - "stop_id": "G20N" - }, - { - "arrival": { - "time": 1620706028 - }, - "departure": { - "time": 1620706028 - }, - "stop_id": "G19N" - }, - { - "arrival": { - "time": 1620706118 - }, - "departure": { - "time": 1620706118 - }, - "stop_id": "G18N" - }, - { - "arrival": { - "time": 1620706208 - }, - "departure": { - "time": 1620706208 - }, - "stop_id": "G16N" - }, - { - "arrival": { - "time": 1620706268 - }, - "departure": { - "time": 1620706268 - }, - "stop_id": "G15N" - }, - { - "arrival": { - "time": 1620706358 - }, - "departure": { - "time": 1620706358 - }, - "stop_id": "G14N" - }, - { - "arrival": { - "time": 1620706448 - }, - "departure": { - "time": 1620706448 - }, - "stop_id": "G13N" - }, - { - "arrival": { - "time": 1620706538 - }, - "departure": { - "time": 1620706538 - }, - "stop_id": "G12N" - }, - { - "arrival": { - "time": 1620706658 - }, - "departure": { - "time": 1620706658 - }, - "stop_id": "G11N" - }, - { - "arrival": { - "time": 1620706718 - }, - "departure": { - "time": 1620706718 - }, - "stop_id": "G10N" - }, - { - "arrival": { - "time": 1620706838 - }, - "departure": { - "time": 1620706838 - }, - "stop_id": "G09N" - }, - { - "arrival": { - "time": 1620706928 - }, - "departure": { - "time": 1620706928 - }, - "stop_id": "G08N" - }, - { - "arrival": { - "time": 1620707048 - }, - "departure": { - "time": 1620707048 - }, - "stop_id": "F07N" - }, - { - "arrival": { - "time": 1620707138 - }, - "departure": { - "time": 1620707138 - }, - "stop_id": "F06N" - }, - { - "arrival": { - "time": 1620707258 - }, - "departure": { - "time": 1620707258 - }, - "stop_id": "F05N" - }, - { - "arrival": { - "time": 1620707348 - }, - "departure": { - "time": 1620707348 - }, - "stop_id": "G07N" - }, - { - "arrival": { - "time": 1620707678 - }, - "departure": { - "time": 1620707678 - }, - "stop_id": "G06N" - }, - { - "arrival": { - "time": 1620707978 - }, - "departure": { - "time": 1620707978 - }, - "stop_id": "G05N" - } - ] - } - }, - { - "id": "000016E", - "vehicle": { - "trip": { - "trip_id": "141800_E..N", - "start_time": "23:38:00", - "start_date": "20210510", - "route_id": "E" - }, - "current_stop_sequence": 10, - "current_status": 1, - "timestamp": 1620705451, - "stop_id": "F12N" - } - }, - { - "id": "000017E", - "trip_update": { - "trip": { - "trip_id": "142328_E..S", - "start_time": "23:43:17", - "start_date": "20210510", - "route_id": "E" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620705451 - }, - "departure": { - "time": 1620705451 - }, - "stop_id": "G11S" - }, - { - "arrival": { - "time": 1620705518 - }, - "departure": { - "time": 1620705518 - }, - "stop_id": "G12S" - }, - { - "arrival": { - "time": 1620705608 - }, - "departure": { - "time": 1620705608 - }, - "stop_id": "G13S" - }, - { - "arrival": { - "time": 1620705698 - }, - "departure": { - "time": 1620705698 - }, - "stop_id": "G14S" - }, - { - "arrival": { - "time": 1620705788 - }, - "departure": { - "time": 1620705788 - }, - "stop_id": "G15S" - }, - { - "arrival": { - "time": 1620705878 - }, - "departure": { - "time": 1620705878 - }, - "stop_id": "G16S" - }, - { - "arrival": { - "time": 1620705968 - }, - "departure": { - "time": 1620705968 - }, - "stop_id": "G18S" - }, - { - "arrival": { - "time": 1620706058 - }, - "departure": { - "time": 1620706058 - }, - "stop_id": "G19S" - }, - { - "arrival": { - "time": 1620706178 - }, - "departure": { - "time": 1620706178 - }, - "stop_id": "G20S" - }, - { - "arrival": { - "time": 1620706298 - }, - "departure": { - "time": 1620706298 - }, - "stop_id": "G21S" - }, - { - "arrival": { - "time": 1620706388 - }, - "departure": { - "time": 1620706388 - }, - "stop_id": "F09S" - }, - { - "arrival": { - "time": 1620706568 - }, - "departure": { - "time": 1620706568 - }, - "stop_id": "F11S" - }, - { - "arrival": { - "time": 1620706658 - }, - "departure": { - "time": 1620706658 - }, - "stop_id": "F12S" - }, - { - "arrival": { - "time": 1620706748 - }, - "departure": { - "time": 1620706748 - }, - "stop_id": "D14S" - }, - { - "arrival": { - "time": 1620706913 - }, - "departure": { - "time": 1620706913 - }, - "stop_id": "A25S" - }, - { - "arrival": { - "time": 1620707108 - }, - "departure": { - "time": 1620707108 - }, - "stop_id": "A27S" - }, - { - "arrival": { - "time": 1620707168 - }, - "departure": { - "time": 1620707168 - }, - "stop_id": "A28S" - }, - { - "arrival": { - "time": 1620707258 - }, - "departure": { - "time": 1620707258 - }, - "stop_id": "A30S" - }, - { - "arrival": { - "time": 1620707348 - }, - "departure": { - "time": 1620707348 - }, - "stop_id": "A31S" - }, - { - "arrival": { - "time": 1620707468 - }, - "departure": { - "time": 1620707468 - }, - "stop_id": "A32S" - }, - { - "arrival": { - "time": 1620707558 - }, - "departure": { - "time": 1620707558 - }, - "stop_id": "A33S" - }, - { - "arrival": { - "time": 1620707648 - }, - "departure": { - "time": 1620707648 - }, - "stop_id": "A34S" - }, - { - "arrival": { - "time": 1620707768 - }, - "departure": { - "time": 1620707768 - }, - "stop_id": "E01S" - } - ] - } - }, - { - "id": "000018E", - "vehicle": { - "trip": { - "trip_id": "142328_E..S", - "start_time": "23:43:17", - "start_date": "20210510", - "route_id": "E" - }, - "current_stop_sequence": 9, - "current_status": 1, - "timestamp": 1620705451, - "stop_id": "G11S" - } - }, - { - "id": "000019E", - "trip_update": { - "trip": { - "trip_id": "143800_E..S", - "start_time": "23:58:00", - "start_date": "20210510", - "route_id": "E" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620705480 - }, - "departure": { - "time": 1620705480 - }, - "stop_id": "G05S" - }, - { - "arrival": { - "time": 1620705570 - }, - "departure": { - "time": 1620705570 - }, - "stop_id": "G06S" - }, - { - "arrival": { - "time": 1620705720 - }, - "departure": { - "time": 1620705720 - }, - "stop_id": "G07S" - }, - { - "arrival": { - "time": 1620705810 - }, - "departure": { - "time": 1620705810 - }, - "stop_id": "F05S" - }, - { - "arrival": { - "time": 1620705900 - }, - "departure": { - "time": 1620705900 - }, - "stop_id": "F06S" - }, - { - "arrival": { - "time": 1620705990 - }, - "departure": { - "time": 1620705990 - }, - "stop_id": "F07S" - }, - { - "arrival": { - "time": 1620706080 - }, - "departure": { - "time": 1620706080 - }, - "stop_id": "G08S" - }, - { - "arrival": { - "time": 1620706170 - }, - "departure": { - "time": 1620706170 - }, - "stop_id": "G09S" - }, - { - "arrival": { - "time": 1620706290 - }, - "departure": { - "time": 1620706290 - }, - "stop_id": "G10S" - }, - { - "arrival": { - "time": 1620706350 - }, - "departure": { - "time": 1620706350 - }, - "stop_id": "G11S" - }, - { - "arrival": { - "time": 1620706470 - }, - "departure": { - "time": 1620706470 - }, - "stop_id": "G12S" - }, - { - "arrival": { - "time": 1620706560 - }, - "departure": { - "time": 1620706560 - }, - "stop_id": "G13S" - }, - { - "arrival": { - "time": 1620706650 - }, - "departure": { - "time": 1620706650 - }, - "stop_id": "G14S" - }, - { - "arrival": { - "time": 1620706740 - }, - "departure": { - "time": 1620706740 - }, - "stop_id": "G15S" - }, - { - "arrival": { - "time": 1620706830 - }, - "departure": { - "time": 1620706830 - }, - "stop_id": "G16S" - }, - { - "arrival": { - "time": 1620706920 - }, - "departure": { - "time": 1620706920 - }, - "stop_id": "G18S" - }, - { - "arrival": { - "time": 1620707010 - }, - "departure": { - "time": 1620707010 - }, - "stop_id": "G19S" - }, - { - "arrival": { - "time": 1620707130 - }, - "departure": { - "time": 1620707130 - }, - "stop_id": "G20S" - }, - { - "arrival": { - "time": 1620707250 - }, - "departure": { - "time": 1620707250 - }, - "stop_id": "G21S" - }, - { - "arrival": { - "time": 1620707340 - }, - "departure": { - "time": 1620707340 - }, - "stop_id": "F09S" - }, - { - "arrival": { - "time": 1620707520 - }, - "departure": { - "time": 1620707520 - }, - "stop_id": "F11S" - }, - { - "arrival": { - "time": 1620707610 - }, - "departure": { - "time": 1620707610 - }, - "stop_id": "F12S" - }, - { - "arrival": { - "time": 1620707700 - }, - "departure": { - "time": 1620707700 - }, - "stop_id": "D14S" - }, - { - "arrival": { - "time": 1620707865 - }, - "departure": { - "time": 1620707865 - }, - "stop_id": "A25S" - }, - { - "arrival": { - "time": 1620708060 - }, - "departure": { - "time": 1620708060 - }, - "stop_id": "A27S" - }, - { - "arrival": { - "time": 1620708120 - }, - "departure": { - "time": 1620708120 - }, - "stop_id": "A28S" - }, - { - "arrival": { - "time": 1620708210 - }, - "departure": { - "time": 1620708210 - }, - "stop_id": "A30S" - }, - { - "arrival": { - "time": 1620708300 - }, - "departure": { - "time": 1620708300 - }, - "stop_id": "A31S" - }, - { - "arrival": { - "time": 1620708420 - }, - "departure": { - "time": 1620708420 - }, - "stop_id": "A32S" - }, - { - "arrival": { - "time": 1620708510 - }, - "departure": { - "time": 1620708510 - }, - "stop_id": "A33S" - }, - { - "arrival": { - "time": 1620708600 - }, - "departure": { - "time": 1620708600 - }, - "stop_id": "A34S" - }, - { - "arrival": { - "time": 1620708720 - }, - "departure": { - "time": 1620708720 - }, - "stop_id": "E01S" - } - ] - } - }, - { - "id": "000020E", - "vehicle": { - "trip": { - "trip_id": "143800_E..S", - "start_time": "23:58:00", - "start_date": "20210510", - "route_id": "E" - }, - "current_status": 0, - "timestamp": 1620705480, - "stop_id": "G05S" - } - }, - { - "id": "000021E", - "trip_update": { - "trip": { - "trip_id": "000200_E..N", - "start_time": "00:02:00", - "start_date": "20210511", - "route_id": "E" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620705720 - }, - "departure": { - "time": 1620705720 - }, - "stop_id": "E01N" - }, - { - "arrival": { - "time": 1620705840 - }, - "departure": { - "time": 1620705840 - }, - "stop_id": "A34N" - }, - { - "arrival": { - "time": 1620705930 - }, - "departure": { - "time": 1620705930 - }, - "stop_id": "A33N" - }, - { - "arrival": { - "time": 1620706050 - }, - "departure": { - "time": 1620706050 - }, - "stop_id": "A32N" - }, - { - "arrival": { - "time": 1620706170 - }, - "departure": { - "time": 1620706170 - }, - "stop_id": "A31N" - }, - { - "arrival": { - "time": 1620706260 - }, - "departure": { - "time": 1620706260 - }, - "stop_id": "A30N" - }, - { - "arrival": { - "time": 1620706380 - }, - "departure": { - "time": 1620706380 - }, - "stop_id": "A28N" - }, - { - "arrival": { - "time": 1620706440 - }, - "departure": { - "time": 1620706440 - }, - "stop_id": "A27N" - }, - { - "arrival": { - "time": 1620706560 - }, - "departure": { - "time": 1620706560 - }, - "stop_id": "A25N" - }, - { - "arrival": { - "time": 1620706650 - }, - "departure": { - "time": 1620706650 - }, - "stop_id": "D14N" - }, - { - "arrival": { - "time": 1620706710 - }, - "departure": { - "time": 1620706710 - }, - "stop_id": "F12N" - }, - { - "arrival": { - "time": 1620706800 - }, - "departure": { - "time": 1620706800 - }, - "stop_id": "F11N" - }, - { - "arrival": { - "time": 1620706980 - }, - "departure": { - "time": 1620706980 - }, - "stop_id": "F09N" - }, - { - "arrival": { - "time": 1620707070 - }, - "departure": { - "time": 1620707070 - }, - "stop_id": "G21N" - }, - { - "arrival": { - "time": 1620707190 - }, - "departure": { - "time": 1620707190 - }, - "stop_id": "G20N" - }, - { - "arrival": { - "time": 1620707310 - }, - "departure": { - "time": 1620707310 - }, - "stop_id": "G19N" - }, - { - "arrival": { - "time": 1620707400 - }, - "departure": { - "time": 1620707400 - }, - "stop_id": "G18N" - }, - { - "arrival": { - "time": 1620707490 - }, - "departure": { - "time": 1620707490 - }, - "stop_id": "G16N" - }, - { - "arrival": { - "time": 1620707550 - }, - "departure": { - "time": 1620707550 - }, - "stop_id": "G15N" - }, - { - "arrival": { - "time": 1620707640 - }, - "departure": { - "time": 1620707640 - }, - "stop_id": "G14N" - }, - { - "arrival": { - "time": 1620707730 - }, - "departure": { - "time": 1620707730 - }, - "stop_id": "G13N" - }, - { - "arrival": { - "time": 1620707820 - }, - "departure": { - "time": 1620707820 - }, - "stop_id": "G12N" - }, - { - "arrival": { - "time": 1620707940 - }, - "departure": { - "time": 1620707940 - }, - "stop_id": "G11N" - }, - { - "arrival": { - "time": 1620708000 - }, - "departure": { - "time": 1620708000 - }, - "stop_id": "G10N" - }, - { - "arrival": { - "time": 1620708120 - }, - "departure": { - "time": 1620708120 - }, - "stop_id": "G09N" - }, - { - "arrival": { - "time": 1620708240 - }, - "departure": { - "time": 1620708240 - }, - "stop_id": "G08N" - }, - { - "arrival": { - "time": 1620708390 - }, - "departure": { - "time": 1620708390 - }, - "stop_id": "F07N" - }, - { - "arrival": { - "time": 1620708480 - }, - "departure": { - "time": 1620708480 - }, - "stop_id": "F06N" - }, - { - "arrival": { - "time": 1620708720 - }, - "departure": { - "time": 1620708720 - }, - "stop_id": "F05N" - }, - { - "arrival": { - "time": 1620708930 - }, - "departure": { - "time": 1620708930 - }, - "stop_id": "G07N" - }, - { - "arrival": { - "time": 1620709200 - }, - "departure": { - "time": 1620709200 - }, - "stop_id": "G06N" - }, - { - "arrival": { - "time": 1620709440 - }, - "departure": { - "time": 1620709440 - }, - "stop_id": "G05N" - } - ] - } - }, - { - "id": "000022E", - "vehicle": { - "trip": { - "trip_id": "000200_E..N", - "start_time": "00:02:00", - "start_date": "20210511", - "route_id": "E" - }, - "timestamp": 1620705720, - "stop_id": "E01N" - } - }, - { - "id": "000023E", - "trip_update": { - "trip": { - "trip_id": "001250_E..S", - "start_time": "00:12:30", - "start_date": "20210511", - "route_id": "E" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620706350 - }, - "departure": { - "time": 1620706350 - }, - "stop_id": "G05S" - }, - { - "arrival": { - "time": 1620706440 - }, - "departure": { - "time": 1620706440 - }, - "stop_id": "G06S" - }, - { - "arrival": { - "time": 1620706590 - }, - "departure": { - "time": 1620706590 - }, - "stop_id": "G07S" - }, - { - "arrival": { - "time": 1620706680 - }, - "departure": { - "time": 1620706680 - }, - "stop_id": "F05S" - }, - { - "arrival": { - "time": 1620706770 - }, - "departure": { - "time": 1620706770 - }, - "stop_id": "F06S" - }, - { - "arrival": { - "time": 1620706860 - }, - "departure": { - "time": 1620706860 - }, - "stop_id": "F07S" - }, - { - "arrival": { - "time": 1620706950 - }, - "departure": { - "time": 1620706950 - }, - "stop_id": "G08S" - }, - { - "arrival": { - "time": 1620707040 - }, - "departure": { - "time": 1620707040 - }, - "stop_id": "G09S" - }, - { - "arrival": { - "time": 1620707160 - }, - "departure": { - "time": 1620707160 - }, - "stop_id": "G10S" - }, - { - "arrival": { - "time": 1620707220 - }, - "departure": { - "time": 1620707220 - }, - "stop_id": "G11S" - }, - { - "arrival": { - "time": 1620707340 - }, - "departure": { - "time": 1620707340 - }, - "stop_id": "G12S" - }, - { - "arrival": { - "time": 1620707430 - }, - "departure": { - "time": 1620707430 - }, - "stop_id": "G13S" - }, - { - "arrival": { - "time": 1620707520 - }, - "departure": { - "time": 1620707520 - }, - "stop_id": "G14S" - }, - { - "arrival": { - "time": 1620707610 - }, - "departure": { - "time": 1620707610 - }, - "stop_id": "G15S" - }, - { - "arrival": { - "time": 1620707700 - }, - "departure": { - "time": 1620707700 - }, - "stop_id": "G16S" - }, - { - "arrival": { - "time": 1620707790 - }, - "departure": { - "time": 1620707790 - }, - "stop_id": "G18S" - }, - { - "arrival": { - "time": 1620707880 - }, - "departure": { - "time": 1620707880 - }, - "stop_id": "G19S" - }, - { - "arrival": { - "time": 1620708000 - }, - "departure": { - "time": 1620708000 - }, - "stop_id": "G20S" - }, - { - "arrival": { - "time": 1620708120 - }, - "departure": { - "time": 1620708120 - }, - "stop_id": "G21S" - }, - { - "arrival": { - "time": 1620708210 - }, - "departure": { - "time": 1620708210 - }, - "stop_id": "F09S" - }, - { - "arrival": { - "time": 1620708390 - }, - "departure": { - "time": 1620708390 - }, - "stop_id": "F11S" - }, - { - "arrival": { - "time": 1620708480 - }, - "departure": { - "time": 1620708480 - }, - "stop_id": "F12S" - }, - { - "arrival": { - "time": 1620708570 - }, - "departure": { - "time": 1620708570 - }, - "stop_id": "D14S" - }, - { - "arrival": { - "time": 1620708780 - }, - "departure": { - "time": 1620708780 - }, - "stop_id": "A25S" - }, - { - "arrival": { - "time": 1620709020 - }, - "departure": { - "time": 1620709020 - }, - "stop_id": "A27S" - }, - { - "arrival": { - "time": 1620709080 - }, - "departure": { - "time": 1620709080 - }, - "stop_id": "A28S" - }, - { - "arrival": { - "time": 1620709170 - }, - "departure": { - "time": 1620709170 - }, - "stop_id": "A30S" - }, - { - "arrival": { - "time": 1620709260 - }, - "departure": { - "time": 1620709260 - }, - "stop_id": "A31S" - }, - { - "arrival": { - "time": 1620709380 - }, - "departure": { - "time": 1620709380 - }, - "stop_id": "A32S" - }, - { - "arrival": { - "time": 1620709470 - }, - "departure": { - "time": 1620709470 - }, - "stop_id": "A33S" - }, - { - "arrival": { - "time": 1620709665 - }, - "departure": { - "time": 1620709665 - }, - "stop_id": "A34S" - }, - { - "arrival": { - "time": 1620709890 - }, - "departure": { - "time": 1620709890 - }, - "stop_id": "E01S" - } - ] - } - }, - { - "id": "000024E", - "vehicle": { - "trip": { - "trip_id": "001250_E..S", - "start_time": "00:12:30", - "start_date": "20210511", - "route_id": "E" - }, - "timestamp": 1620706350, - "stop_id": "G05S" - } - }, - { - "id": "000025E", - "trip_update": { - "trip": { - "trip_id": "143000_E..N", - "start_time": "23:50:00", - "start_date": "20210510", - "route_id": "E" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620705451 - }, - "departure": { - "time": 1620705451 - }, - "stop_id": "A30N" - }, - { - "arrival": { - "time": 1620705561 - }, - "departure": { - "time": 1620705561 - }, - "stop_id": "A28N" - }, - { - "arrival": { - "time": 1620705621 - }, - "departure": { - "time": 1620705621 - }, - "stop_id": "A27N" - }, - { - "arrival": { - "time": 1620705741 - }, - "departure": { - "time": 1620705741 - }, - "stop_id": "A25N" - }, - { - "arrival": { - "time": 1620705831 - }, - "departure": { - "time": 1620705831 - }, - "stop_id": "D14N" - }, - { - "arrival": { - "time": 1620705891 - }, - "departure": { - "time": 1620705891 - }, - "stop_id": "F12N" - }, - { - "arrival": { - "time": 1620705981 - }, - "departure": { - "time": 1620705981 - }, - "stop_id": "F11N" - }, - { - "arrival": { - "time": 1620706161 - }, - "departure": { - "time": 1620706161 - }, - "stop_id": "F09N" - }, - { - "arrival": { - "time": 1620706251 - }, - "departure": { - "time": 1620706251 - }, - "stop_id": "G21N" - }, - { - "arrival": { - "time": 1620706371 - }, - "departure": { - "time": 1620706371 - }, - "stop_id": "G20N" - }, - { - "arrival": { - "time": 1620706491 - }, - "departure": { - "time": 1620706491 - }, - "stop_id": "G19N" - }, - { - "arrival": { - "time": 1620706581 - }, - "departure": { - "time": 1620706581 - }, - "stop_id": "G18N" - }, - { - "arrival": { - "time": 1620706671 - }, - "departure": { - "time": 1620706671 - }, - "stop_id": "G16N" - }, - { - "arrival": { - "time": 1620706731 - }, - "departure": { - "time": 1620706731 - }, - "stop_id": "G15N" - }, - { - "arrival": { - "time": 1620706821 - }, - "departure": { - "time": 1620706821 - }, - "stop_id": "G14N" - }, - { - "arrival": { - "time": 1620706911 - }, - "departure": { - "time": 1620706911 - }, - "stop_id": "G13N" - }, - { - "arrival": { - "time": 1620707001 - }, - "departure": { - "time": 1620707001 - }, - "stop_id": "G12N" - }, - { - "arrival": { - "time": 1620707121 - }, - "departure": { - "time": 1620707121 - }, - "stop_id": "G11N" - }, - { - "arrival": { - "time": 1620707181 - }, - "departure": { - "time": 1620707181 - }, - "stop_id": "G10N" - }, - { - "arrival": { - "time": 1620707301 - }, - "departure": { - "time": 1620707301 - }, - "stop_id": "G09N" - }, - { - "arrival": { - "time": 1620707421 - }, - "departure": { - "time": 1620707421 - }, - "stop_id": "G08N" - }, - { - "arrival": { - "time": 1620707571 - }, - "departure": { - "time": 1620707571 - }, - "stop_id": "F07N" - }, - { - "arrival": { - "time": 1620707661 - }, - "departure": { - "time": 1620707661 - }, - "stop_id": "F06N" - }, - { - "arrival": { - "time": 1620707781 - }, - "departure": { - "time": 1620707781 - }, - "stop_id": "F05N" - }, - { - "arrival": { - "time": 1620707871 - }, - "departure": { - "time": 1620707871 - }, - "stop_id": "G07N" - }, - { - "arrival": { - "time": 1620708171 - }, - "departure": { - "time": 1620708171 - }, - "stop_id": "G06N" - }, - { - "arrival": { - "time": 1620708441 - }, - "departure": { - "time": 1620708441 - }, - "stop_id": "G05N" - } - ] - } - }, - { - "id": "000026E", - "vehicle": { - "trip": { - "trip_id": "143000_E..N", - "start_time": "23:50:00", - "start_date": "20210510", - "route_id": "E" - }, - "current_stop_sequence": 5, - "current_status": 1, - "timestamp": 1620705451, - "stop_id": "A30N" - } - }, - { - "id": "000027E", - "trip_update": { - "trip": { - "trip_id": "001350_E..N", - "start_time": "00:13:30", - "start_date": "20210511", - "route_id": "E" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620706410 - }, - "departure": { - "time": 1620706410 - }, - "stop_id": "E01N" - }, - { - "arrival": { - "time": 1620706530 - }, - "departure": { - "time": 1620706530 - }, - "stop_id": "A34N" - }, - { - "arrival": { - "time": 1620706620 - }, - "departure": { - "time": 1620706620 - }, - "stop_id": "A33N" - }, - { - "arrival": { - "time": 1620706740 - }, - "departure": { - "time": 1620706740 - }, - "stop_id": "A32N" - }, - { - "arrival": { - "time": 1620706860 - }, - "departure": { - "time": 1620706860 - }, - "stop_id": "A31N" - }, - { - "arrival": { - "time": 1620706950 - }, - "departure": { - "time": 1620706950 - }, - "stop_id": "A30N" - }, - { - "arrival": { - "time": 1620707070 - }, - "departure": { - "time": 1620707070 - }, - "stop_id": "A28N" - }, - { - "arrival": { - "time": 1620707130 - }, - "departure": { - "time": 1620707130 - }, - "stop_id": "A27N" - }, - { - "arrival": { - "time": 1620707250 - }, - "departure": { - "time": 1620707250 - }, - "stop_id": "A25N" - }, - { - "arrival": { - "time": 1620707340 - }, - "departure": { - "time": 1620707340 - }, - "stop_id": "D14N" - }, - { - "arrival": { - "time": 1620707400 - }, - "departure": { - "time": 1620707400 - }, - "stop_id": "F12N" - }, - { - "arrival": { - "time": 1620707490 - }, - "departure": { - "time": 1620707490 - }, - "stop_id": "F11N" - }, - { - "arrival": { - "time": 1620707670 - }, - "departure": { - "time": 1620707670 - }, - "stop_id": "F09N" - }, - { - "arrival": { - "time": 1620707790 - }, - "departure": { - "time": 1620707790 - }, - "stop_id": "G21N" - }, - { - "arrival": { - "time": 1620707940 - }, - "departure": { - "time": 1620707940 - }, - "stop_id": "G20N" - }, - { - "arrival": { - "time": 1620708060 - }, - "departure": { - "time": 1620708060 - }, - "stop_id": "G19N" - }, - { - "arrival": { - "time": 1620708150 - }, - "departure": { - "time": 1620708150 - }, - "stop_id": "G18N" - }, - { - "arrival": { - "time": 1620708240 - }, - "departure": { - "time": 1620708240 - }, - "stop_id": "G16N" - }, - { - "arrival": { - "time": 1620708300 - }, - "departure": { - "time": 1620708300 - }, - "stop_id": "G15N" - }, - { - "arrival": { - "time": 1620708390 - }, - "departure": { - "time": 1620708390 - }, - "stop_id": "G14N" - }, - { - "arrival": { - "time": 1620708480 - }, - "departure": { - "time": 1620708480 - }, - "stop_id": "G13N" - }, - { - "arrival": { - "time": 1620708570 - }, - "departure": { - "time": 1620708570 - }, - "stop_id": "G12N" - }, - { - "arrival": { - "time": 1620708690 - }, - "departure": { - "time": 1620708690 - }, - "stop_id": "G11N" - }, - { - "arrival": { - "time": 1620708750 - }, - "departure": { - "time": 1620708750 - }, - "stop_id": "G10N" - }, - { - "arrival": { - "time": 1620708870 - }, - "departure": { - "time": 1620708870 - }, - "stop_id": "G09N" - }, - { - "arrival": { - "time": 1620708990 - }, - "departure": { - "time": 1620708990 - }, - "stop_id": "G08N" - }, - { - "arrival": { - "time": 1620709140 - }, - "departure": { - "time": 1620709140 - }, - "stop_id": "F07N" - }, - { - "arrival": { - "time": 1620709230 - }, - "departure": { - "time": 1620709230 - }, - "stop_id": "F06N" - }, - { - "arrival": { - "time": 1620709470 - }, - "departure": { - "time": 1620709470 - }, - "stop_id": "F05N" - }, - { - "arrival": { - "time": 1620709680 - }, - "departure": { - "time": 1620709680 - }, - "stop_id": "G07N" - }, - { - "arrival": { - "time": 1620709935 - }, - "departure": { - "time": 1620709935 - }, - "stop_id": "G06N" - }, - { - "arrival": { - "time": 1620710160 - }, - "departure": { - "time": 1620710160 - }, - "stop_id": "G05N" - } - ] - } - }, - { - "id": "000028E", - "vehicle": { - "trip": { - "trip_id": "001350_E..N", - "start_time": "00:13:30", - "start_date": "20210511", - "route_id": "E" - }, - "timestamp": 1620706410, - "stop_id": "E01N" - } - }, - { - "id": "000029E", - "trip_update": { - "trip": { - "trip_id": "002600_E..N", - "start_time": "00:26:00", - "start_date": "20210511", - "route_id": "E" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620707160 - }, - "departure": { - "time": 1620707160 - }, - "stop_id": "E01N" - }, - { - "arrival": { - "time": 1620707280 - }, - "departure": { - "time": 1620707280 - }, - "stop_id": "A34N" - }, - { - "arrival": { - "time": 1620707370 - }, - "departure": { - "time": 1620707370 - }, - "stop_id": "A33N" - }, - { - "arrival": { - "time": 1620707490 - }, - "departure": { - "time": 1620707490 - }, - "stop_id": "A32N" - }, - { - "arrival": { - "time": 1620707610 - }, - "departure": { - "time": 1620707610 - }, - "stop_id": "A31N" - }, - { - "arrival": { - "time": 1620707700 - }, - "departure": { - "time": 1620707700 - }, - "stop_id": "A30N" - }, - { - "arrival": { - "time": 1620707820 - }, - "departure": { - "time": 1620707820 - }, - "stop_id": "A28N" - }, - { - "arrival": { - "time": 1620707880 - }, - "departure": { - "time": 1620707880 - }, - "stop_id": "A27N" - }, - { - "arrival": { - "time": 1620708000 - }, - "departure": { - "time": 1620708000 - }, - "stop_id": "A25N" - }, - { - "arrival": { - "time": 1620708090 - }, - "departure": { - "time": 1620708090 - }, - "stop_id": "D14N" - }, - { - "arrival": { - "time": 1620708150 - }, - "departure": { - "time": 1620708150 - }, - "stop_id": "F12N" - }, - { - "arrival": { - "time": 1620708240 - }, - "departure": { - "time": 1620708240 - }, - "stop_id": "F11N" - }, - { - "arrival": { - "time": 1620708420 - }, - "departure": { - "time": 1620708420 - }, - "stop_id": "F09N" - }, - { - "arrival": { - "time": 1620708540 - }, - "departure": { - "time": 1620708540 - }, - "stop_id": "G21N" - }, - { - "arrival": { - "time": 1620708690 - }, - "departure": { - "time": 1620708690 - }, - "stop_id": "G20N" - }, - { - "arrival": { - "time": 1620708810 - }, - "departure": { - "time": 1620708810 - }, - "stop_id": "G19N" - }, - { - "arrival": { - "time": 1620708900 - }, - "departure": { - "time": 1620708900 - }, - "stop_id": "G18N" - }, - { - "arrival": { - "time": 1620708990 - }, - "departure": { - "time": 1620708990 - }, - "stop_id": "G16N" - }, - { - "arrival": { - "time": 1620709050 - }, - "departure": { - "time": 1620709050 - }, - "stop_id": "G15N" - }, - { - "arrival": { - "time": 1620709140 - }, - "departure": { - "time": 1620709140 - }, - "stop_id": "G14N" - }, - { - "arrival": { - "time": 1620709230 - }, - "departure": { - "time": 1620709230 - }, - "stop_id": "G13N" - }, - { - "arrival": { - "time": 1620709320 - }, - "departure": { - "time": 1620709320 - }, - "stop_id": "G12N" - }, - { - "arrival": { - "time": 1620709440 - }, - "departure": { - "time": 1620709440 - }, - "stop_id": "G11N" - }, - { - "arrival": { - "time": 1620709500 - }, - "departure": { - "time": 1620709500 - }, - "stop_id": "G10N" - }, - { - "arrival": { - "time": 1620709620 - }, - "departure": { - "time": 1620709620 - }, - "stop_id": "G09N" - }, - { - "arrival": { - "time": 1620709740 - }, - "departure": { - "time": 1620709740 - }, - "stop_id": "G08N" - }, - { - "arrival": { - "time": 1620709890 - }, - "departure": { - "time": 1620709890 - }, - "stop_id": "F07N" - }, - { - "arrival": { - "time": 1620709980 - }, - "departure": { - "time": 1620709980 - }, - "stop_id": "F06N" - }, - { - "arrival": { - "time": 1620710220 - }, - "departure": { - "time": 1620710220 - }, - "stop_id": "F05N" - }, - { - "arrival": { - "time": 1620710430 - }, - "departure": { - "time": 1620710430 - }, - "stop_id": "G07N" - }, - { - "arrival": { - "time": 1620710670 - }, - "departure": { - "time": 1620710670 - }, - "stop_id": "G06N" - }, - { - "arrival": { - "time": 1620710880 - }, - "departure": { - "time": 1620710880 - }, - "stop_id": "G05N" - } - ] - } - }, - { - "id": "000030E", - "vehicle": { - "trip": { - "trip_id": "002600_E..N", - "start_time": "00:26:00", - "start_date": "20210511", - "route_id": "E" - }, - "timestamp": 1620707160, - "stop_id": "E01N" - } - }, - { - "id": "000031E", - "trip_update": { - "trip": { - "trip_id": "003250_E..S", - "start_time": "00:32:30", - "start_date": "20210511", - "route_id": "E" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620707550 - }, - "departure": { - "time": 1620707550 - }, - "stop_id": "G05S" - }, - { - "arrival": { - "time": 1620707640 - }, - "departure": { - "time": 1620707640 - }, - "stop_id": "G06S" - }, - { - "arrival": { - "time": 1620707790 - }, - "departure": { - "time": 1620707790 - }, - "stop_id": "G07S" - }, - { - "arrival": { - "time": 1620707880 - }, - "departure": { - "time": 1620707880 - }, - "stop_id": "F05S" - }, - { - "arrival": { - "time": 1620707970 - }, - "departure": { - "time": 1620707970 - }, - "stop_id": "F06S" - }, - { - "arrival": { - "time": 1620708060 - }, - "departure": { - "time": 1620708060 - }, - "stop_id": "F07S" - }, - { - "arrival": { - "time": 1620708150 - }, - "departure": { - "time": 1620708150 - }, - "stop_id": "G08S" - }, - { - "arrival": { - "time": 1620708240 - }, - "departure": { - "time": 1620708240 - }, - "stop_id": "G09S" - }, - { - "arrival": { - "time": 1620708360 - }, - "departure": { - "time": 1620708360 - }, - "stop_id": "G10S" - }, - { - "arrival": { - "time": 1620708420 - }, - "departure": { - "time": 1620708420 - }, - "stop_id": "G11S" - }, - { - "arrival": { - "time": 1620708540 - }, - "departure": { - "time": 1620708540 - }, - "stop_id": "G12S" - }, - { - "arrival": { - "time": 1620708630 - }, - "departure": { - "time": 1620708630 - }, - "stop_id": "G13S" - }, - { - "arrival": { - "time": 1620708720 - }, - "departure": { - "time": 1620708720 - }, - "stop_id": "G14S" - }, - { - "arrival": { - "time": 1620708810 - }, - "departure": { - "time": 1620708810 - }, - "stop_id": "G15S" - }, - { - "arrival": { - "time": 1620708900 - }, - "departure": { - "time": 1620708900 - }, - "stop_id": "G16S" - }, - { - "arrival": { - "time": 1620708990 - }, - "departure": { - "time": 1620708990 - }, - "stop_id": "G18S" - }, - { - "arrival": { - "time": 1620709080 - }, - "departure": { - "time": 1620709080 - }, - "stop_id": "G19S" - }, - { - "arrival": { - "time": 1620709200 - }, - "departure": { - "time": 1620709200 - }, - "stop_id": "G20S" - }, - { - "arrival": { - "time": 1620709320 - }, - "departure": { - "time": 1620709320 - }, - "stop_id": "G21S" - }, - { - "arrival": { - "time": 1620709410 - }, - "departure": { - "time": 1620709410 - }, - "stop_id": "F09S" - }, - { - "arrival": { - "time": 1620709590 - }, - "departure": { - "time": 1620709590 - }, - "stop_id": "F11S" - }, - { - "arrival": { - "time": 1620709680 - }, - "departure": { - "time": 1620709680 - }, - "stop_id": "F12S" - }, - { - "arrival": { - "time": 1620709770 - }, - "departure": { - "time": 1620709770 - }, - "stop_id": "D14S" - }, - { - "arrival": { - "time": 1620709980 - }, - "departure": { - "time": 1620709980 - }, - "stop_id": "A25S" - }, - { - "arrival": { - "time": 1620710220 - }, - "departure": { - "time": 1620710220 - }, - "stop_id": "A27S" - }, - { - "arrival": { - "time": 1620710280 - }, - "departure": { - "time": 1620710280 - }, - "stop_id": "A28S" - }, - { - "arrival": { - "time": 1620710370 - }, - "departure": { - "time": 1620710370 - }, - "stop_id": "A30S" - }, - { - "arrival": { - "time": 1620710460 - }, - "departure": { - "time": 1620710460 - }, - "stop_id": "A31S" - }, - { - "arrival": { - "time": 1620710580 - }, - "departure": { - "time": 1620710580 - }, - "stop_id": "A32S" - }, - { - "arrival": { - "time": 1620710670 - }, - "departure": { - "time": 1620710670 - }, - "stop_id": "A33S" - }, - { - "arrival": { - "time": 1620710865 - }, - "departure": { - "time": 1620710865 - }, - "stop_id": "A34S" - }, - { - "arrival": { - "time": 1620711090 - }, - "departure": { - "time": 1620711090 - }, - "stop_id": "E01S" - } - ] - } - }, - { - "id": "000032E", - "vehicle": { - "trip": { - "trip_id": "003250_E..S", - "start_time": "00:32:30", - "start_date": "20210511", - "route_id": "E" - }, - "timestamp": 1620707550, - "stop_id": "G05S" - } - }, - { - "id": "000033E", - "trip_update": { - "trip": { - "trip_id": "003800_E..N", - "start_time": "00:38:00", - "start_date": "20210511", - "route_id": "E" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620707880 - }, - "departure": { - "time": 1620707880 - }, - "stop_id": "E01N" - }, - { - "arrival": { - "time": 1620708000 - }, - "departure": { - "time": 1620708000 - }, - "stop_id": "A34N" - }, - { - "arrival": { - "time": 1620708090 - }, - "departure": { - "time": 1620708090 - }, - "stop_id": "A33N" - }, - { - "arrival": { - "time": 1620708210 - }, - "departure": { - "time": 1620708210 - }, - "stop_id": "A32N" - }, - { - "arrival": { - "time": 1620708330 - }, - "departure": { - "time": 1620708330 - }, - "stop_id": "A31N" - }, - { - "arrival": { - "time": 1620708420 - }, - "departure": { - "time": 1620708420 - }, - "stop_id": "A30N" - }, - { - "arrival": { - "time": 1620708540 - }, - "departure": { - "time": 1620708540 - }, - "stop_id": "A28N" - }, - { - "arrival": { - "time": 1620708600 - }, - "departure": { - "time": 1620708600 - }, - "stop_id": "A27N" - }, - { - "arrival": { - "time": 1620708720 - }, - "departure": { - "time": 1620708720 - }, - "stop_id": "A25N" - }, - { - "arrival": { - "time": 1620708810 - }, - "departure": { - "time": 1620708810 - }, - "stop_id": "D14N" - }, - { - "arrival": { - "time": 1620708870 - }, - "departure": { - "time": 1620708870 - }, - "stop_id": "F12N" - }, - { - "arrival": { - "time": 1620708960 - }, - "departure": { - "time": 1620708960 - }, - "stop_id": "F11N" - }, - { - "arrival": { - "time": 1620709140 - }, - "departure": { - "time": 1620709140 - }, - "stop_id": "F09N" - }, - { - "arrival": { - "time": 1620709260 - }, - "departure": { - "time": 1620709260 - }, - "stop_id": "G21N" - }, - { - "arrival": { - "time": 1620709410 - }, - "departure": { - "time": 1620709410 - }, - "stop_id": "G20N" - }, - { - "arrival": { - "time": 1620709530 - }, - "departure": { - "time": 1620709530 - }, - "stop_id": "G19N" - }, - { - "arrival": { - "time": 1620709620 - }, - "departure": { - "time": 1620709620 - }, - "stop_id": "G18N" - }, - { - "arrival": { - "time": 1620709710 - }, - "departure": { - "time": 1620709710 - }, - "stop_id": "G16N" - }, - { - "arrival": { - "time": 1620709770 - }, - "departure": { - "time": 1620709770 - }, - "stop_id": "G15N" - }, - { - "arrival": { - "time": 1620709860 - }, - "departure": { - "time": 1620709860 - }, - "stop_id": "G14N" - }, - { - "arrival": { - "time": 1620709950 - }, - "departure": { - "time": 1620709950 - }, - "stop_id": "G13N" - }, - { - "arrival": { - "time": 1620710040 - }, - "departure": { - "time": 1620710040 - }, - "stop_id": "G12N" - }, - { - "arrival": { - "time": 1620710160 - }, - "departure": { - "time": 1620710160 - }, - "stop_id": "G11N" - }, - { - "arrival": { - "time": 1620710220 - }, - "departure": { - "time": 1620710220 - }, - "stop_id": "G10N" - }, - { - "arrival": { - "time": 1620710340 - }, - "departure": { - "time": 1620710340 - }, - "stop_id": "G09N" - }, - { - "arrival": { - "time": 1620710460 - }, - "departure": { - "time": 1620710460 - }, - "stop_id": "G08N" - }, - { - "arrival": { - "time": 1620710610 - }, - "departure": { - "time": 1620710610 - }, - "stop_id": "F07N" - }, - { - "arrival": { - "time": 1620710700 - }, - "departure": { - "time": 1620710700 - }, - "stop_id": "F06N" - }, - { - "arrival": { - "time": 1620710925 - }, - "departure": { - "time": 1620710925 - }, - "stop_id": "F05N" - }, - { - "arrival": { - "time": 1620711120 - }, - "departure": { - "time": 1620711120 - }, - "stop_id": "G07N" - }, - { - "arrival": { - "time": 1620711345 - }, - "departure": { - "time": 1620711345 - }, - "stop_id": "G06N" - }, - { - "arrival": { - "time": 1620711540 - }, - "departure": { - "time": 1620711540 - }, - "stop_id": "G05N" - } - ] - } - }, - { - "id": "000034E", - "vehicle": { - "trip": { - "trip_id": "003800_E..N", - "start_time": "00:38:00", - "start_date": "20210511", - "route_id": "E" - }, - "timestamp": 1620707880, - "stop_id": "E01N" - } - }, - { - "id": "000035E", - "trip_update": { - "trip": { - "trip_id": "005250_E..S", - "start_time": "00:52:30", - "start_date": "20210511", - "route_id": "E" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620708750 - }, - "departure": { - "time": 1620708750 - }, - "stop_id": "G05S" - }, - { - "arrival": { - "time": 1620708840 - }, - "departure": { - "time": 1620708840 - }, - "stop_id": "G06S" - }, - { - "arrival": { - "time": 1620708990 - }, - "departure": { - "time": 1620708990 - }, - "stop_id": "G07S" - }, - { - "arrival": { - "time": 1620709080 - }, - "departure": { - "time": 1620709080 - }, - "stop_id": "F05S" - }, - { - "arrival": { - "time": 1620709170 - }, - "departure": { - "time": 1620709170 - }, - "stop_id": "F06S" - }, - { - "arrival": { - "time": 1620709260 - }, - "departure": { - "time": 1620709260 - }, - "stop_id": "F07S" - }, - { - "arrival": { - "time": 1620709350 - }, - "departure": { - "time": 1620709350 - }, - "stop_id": "G08S" - }, - { - "arrival": { - "time": 1620709440 - }, - "departure": { - "time": 1620709440 - }, - "stop_id": "G09S" - }, - { - "arrival": { - "time": 1620709560 - }, - "departure": { - "time": 1620709560 - }, - "stop_id": "G10S" - }, - { - "arrival": { - "time": 1620709620 - }, - "departure": { - "time": 1620709620 - }, - "stop_id": "G11S" - }, - { - "arrival": { - "time": 1620709740 - }, - "departure": { - "time": 1620709740 - }, - "stop_id": "G12S" - }, - { - "arrival": { - "time": 1620709830 - }, - "departure": { - "time": 1620709830 - }, - "stop_id": "G13S" - }, - { - "arrival": { - "time": 1620709920 - }, - "departure": { - "time": 1620709920 - }, - "stop_id": "G14S" - }, - { - "arrival": { - "time": 1620710010 - }, - "departure": { - "time": 1620710010 - }, - "stop_id": "G15S" - }, - { - "arrival": { - "time": 1620710100 - }, - "departure": { - "time": 1620710100 - }, - "stop_id": "G16S" - }, - { - "arrival": { - "time": 1620710190 - }, - "departure": { - "time": 1620710190 - }, - "stop_id": "G18S" - }, - { - "arrival": { - "time": 1620710280 - }, - "departure": { - "time": 1620710280 - }, - "stop_id": "G19S" - }, - { - "arrival": { - "time": 1620710400 - }, - "departure": { - "time": 1620710400 - }, - "stop_id": "G20S" - }, - { - "arrival": { - "time": 1620710520 - }, - "departure": { - "time": 1620710520 - }, - "stop_id": "G21S" - }, - { - "arrival": { - "time": 1620710610 - }, - "departure": { - "time": 1620710610 - }, - "stop_id": "F09S" - }, - { - "arrival": { - "time": 1620710790 - }, - "departure": { - "time": 1620710790 - }, - "stop_id": "F11S" - }, - { - "arrival": { - "time": 1620710880 - }, - "departure": { - "time": 1620710880 - }, - "stop_id": "F12S" - }, - { - "arrival": { - "time": 1620710970 - }, - "departure": { - "time": 1620710970 - }, - "stop_id": "D14S" - }, - { - "arrival": { - "time": 1620711180 - }, - "departure": { - "time": 1620711180 - }, - "stop_id": "A25S" - }, - { - "arrival": { - "time": 1620711420 - }, - "departure": { - "time": 1620711420 - }, - "stop_id": "A27S" - }, - { - "arrival": { - "time": 1620711480 - }, - "departure": { - "time": 1620711480 - }, - "stop_id": "A28S" - }, - { - "arrival": { - "time": 1620711570 - }, - "departure": { - "time": 1620711570 - }, - "stop_id": "A30S" - }, - { - "arrival": { - "time": 1620711660 - }, - "departure": { - "time": 1620711660 - }, - "stop_id": "A31S" - }, - { - "arrival": { - "time": 1620711780 - }, - "departure": { - "time": 1620711780 - }, - "stop_id": "A32S" - }, - { - "arrival": { - "time": 1620711870 - }, - "departure": { - "time": 1620711870 - }, - "stop_id": "A33S" - }, - { - "arrival": { - "time": 1620712065 - }, - "departure": { - "time": 1620712065 - }, - "stop_id": "A34S" - }, - { - "arrival": { - "time": 1620712290 - }, - "departure": { - "time": 1620712290 - }, - "stop_id": "E01S" - } - ] - } - }, - { - "id": "000036E", - "vehicle": { - "trip": { - "trip_id": "005250_E..S", - "start_time": "00:52:30", - "start_date": "20210511", - "route_id": "E" - }, - "timestamp": 1620708750, - "stop_id": "G05S" - } - }, - { - "id": "000037E", - "trip_update": { - "trip": { - "trip_id": "005300_E..N", - "start_time": "00:53:00", - "start_date": "20210511", - "route_id": "E" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620708780 - }, - "departure": { - "time": 1620708780 - }, - "stop_id": "E01N" - }, - { - "arrival": { - "time": 1620708900 - }, - "departure": { - "time": 1620708900 - }, - "stop_id": "A34N" - }, - { - "arrival": { - "time": 1620708990 - }, - "departure": { - "time": 1620708990 - }, - "stop_id": "A33N" - }, - { - "arrival": { - "time": 1620709110 - }, - "departure": { - "time": 1620709110 - }, - "stop_id": "A32N" - }, - { - "arrival": { - "time": 1620709230 - }, - "departure": { - "time": 1620709230 - }, - "stop_id": "A31N" - }, - { - "arrival": { - "time": 1620709320 - }, - "departure": { - "time": 1620709320 - }, - "stop_id": "A30N" - }, - { - "arrival": { - "time": 1620709440 - }, - "departure": { - "time": 1620709440 - }, - "stop_id": "A28N" - }, - { - "arrival": { - "time": 1620709500 - }, - "departure": { - "time": 1620709500 - }, - "stop_id": "A27N" - }, - { - "arrival": { - "time": 1620709620 - }, - "departure": { - "time": 1620709620 - }, - "stop_id": "A25N" - }, - { - "arrival": { - "time": 1620709710 - }, - "departure": { - "time": 1620709710 - }, - "stop_id": "D14N" - }, - { - "arrival": { - "time": 1620709770 - }, - "departure": { - "time": 1620709770 - }, - "stop_id": "F12N" - }, - { - "arrival": { - "time": 1620709860 - }, - "departure": { - "time": 1620709860 - }, - "stop_id": "F11N" - }, - { - "arrival": { - "time": 1620710040 - }, - "departure": { - "time": 1620710040 - }, - "stop_id": "F09N" - }, - { - "arrival": { - "time": 1620710130 - }, - "departure": { - "time": 1620710130 - }, - "stop_id": "G21N" - }, - { - "arrival": { - "time": 1620710250 - }, - "departure": { - "time": 1620710250 - }, - "stop_id": "G20N" - }, - { - "arrival": { - "time": 1620710370 - }, - "departure": { - "time": 1620710370 - }, - "stop_id": "G19N" - }, - { - "arrival": { - "time": 1620710460 - }, - "departure": { - "time": 1620710460 - }, - "stop_id": "G18N" - }, - { - "arrival": { - "time": 1620710550 - }, - "departure": { - "time": 1620710550 - }, - "stop_id": "G16N" - }, - { - "arrival": { - "time": 1620710610 - }, - "departure": { - "time": 1620710610 - }, - "stop_id": "G15N" - }, - { - "arrival": { - "time": 1620710700 - }, - "departure": { - "time": 1620710700 - }, - "stop_id": "G14N" - }, - { - "arrival": { - "time": 1620710790 - }, - "departure": { - "time": 1620710790 - }, - "stop_id": "G13N" - }, - { - "arrival": { - "time": 1620710880 - }, - "departure": { - "time": 1620710880 - }, - "stop_id": "G12N" - }, - { - "arrival": { - "time": 1620711000 - }, - "departure": { - "time": 1620711000 - }, - "stop_id": "G11N" - }, - { - "arrival": { - "time": 1620711060 - }, - "departure": { - "time": 1620711060 - }, - "stop_id": "G10N" - }, - { - "arrival": { - "time": 1620711180 - }, - "departure": { - "time": 1620711180 - }, - "stop_id": "G09N" - }, - { - "arrival": { - "time": 1620711300 - }, - "departure": { - "time": 1620711300 - }, - "stop_id": "G08N" - }, - { - "arrival": { - "time": 1620711450 - }, - "departure": { - "time": 1620711450 - }, - "stop_id": "F07N" - }, - { - "arrival": { - "time": 1620711540 - }, - "departure": { - "time": 1620711540 - }, - "stop_id": "F06N" - }, - { - "arrival": { - "time": 1620711780 - }, - "departure": { - "time": 1620711780 - }, - "stop_id": "F05N" - }, - { - "arrival": { - "time": 1620711990 - }, - "departure": { - "time": 1620711990 - }, - "stop_id": "G07N" - }, - { - "arrival": { - "time": 1620712260 - }, - "departure": { - "time": 1620712260 - }, - "stop_id": "G06N" - }, - { - "arrival": { - "time": 1620712500 - }, - "departure": { - "time": 1620712500 - }, - "stop_id": "G05N" - } - ] - } - }, - { - "id": "000038E", - "vehicle": { - "trip": { - "trip_id": "005300_E..N", - "start_time": "00:53:00", - "start_date": "20210511", - "route_id": "E" - }, - "timestamp": 1620708780, - "stop_id": "E01N" - } - }, - { - "id": "000001H", - "trip_update": { - "trip": { - "trip_id": "127700_H..N", - "start_time": "21:17:00", - "start_date": "20210510", - "route_id": "H" - } - } - }, - { - "id": "000002H", - "vehicle": { - "trip": { - "trip_id": "127700_H..N", - "start_time": "21:17:00", - "start_date": "20210510", - "route_id": "H" - }, - "current_stop_sequence": 5, - "current_status": 1, - "timestamp": 1620696402, - "stop_id": "H19N" - } - }, - { - "id": "000003H", - "trip_update": { - "trip": { - "trip_id": "129600_H..N", - "start_time": "21:36:00", - "start_date": "20210510", - "route_id": "H" - } - } - }, - { - "id": "000004H", - "vehicle": { - "trip": { - "trip_id": "129600_H..N", - "start_time": "21:36:00", - "start_date": "20210510", - "route_id": "H" - }, - "current_stop_sequence": 5, - "current_status": 1, - "timestamp": 1620697731, - "stop_id": "H19N" - } - }, - { - "id": "000005H", - "trip_update": { - "trip": { - "trip_id": "131350_H..N", - "start_time": "21:53:30", - "start_date": "20210510", - "route_id": "H" - } - } - }, - { - "id": "000006H", - "vehicle": { - "trip": { - "trip_id": "131350_H..N", - "start_time": "21:53:30", - "start_date": "20210510", - "route_id": "H" - }, - "current_stop_sequence": 5, - "current_status": 1, - "timestamp": 1620698976, - "stop_id": "H19N" - } - }, - { - "id": "000007H", - "trip_update": { - "trip": { - "trip_id": "133050_H..N", - "start_time": "22:10:30", - "start_date": "20210510", - "route_id": "H" - } - } - }, - { - "id": "000008H", - "vehicle": { - "trip": { - "trip_id": "133050_H..N", - "start_time": "22:10:30", - "start_date": "20210510", - "route_id": "H" - }, - "current_stop_sequence": 5, - "current_status": 1, - "timestamp": 1620700446, - "stop_id": "H19N" - } - }, - { - "id": "000009H", - "trip_update": { - "trip": { - "trip_id": "135500_H..N", - "start_time": "22:35:00", - "start_date": "20210510", - "route_id": "H" - } - } - }, - { - "id": "000010H", - "vehicle": { - "trip": { - "trip_id": "135500_H..N", - "start_time": "22:35:00", - "start_date": "20210510", - "route_id": "H" - }, - "current_stop_sequence": 5, - "current_status": 1, - "timestamp": 1620701106, - "stop_id": "H19N" - } - }, - { - "id": "000011H", - "trip_update": { - "trip": { - "trip_id": "137450_H..N", - "start_time": "22:54:30", - "start_date": "20210510", - "route_id": "H" - } - } - }, - { - "id": "000012H", - "vehicle": { - "trip": { - "trip_id": "137450_H..N", - "start_time": "22:54:30", - "start_date": "20210510", - "route_id": "H" - }, - "current_stop_sequence": 5, - "current_status": 1, - "timestamp": 1620702411, - "stop_id": "H19N" - } - }, - { - "id": "000013H", - "trip_update": { - "trip": { - "trip_id": "139115_H..N", - "start_time": "23:11:09", - "start_date": "20210510", - "route_id": "H" - } - } - }, - { - "id": "000014H", - "vehicle": { - "trip": { - "trip_id": "139115_H..N", - "start_time": "23:11:09", - "start_date": "20210510", - "route_id": "H" - }, - "current_stop_sequence": 5, - "current_status": 1, - "timestamp": 1620703246, - "stop_id": "H19N" - } - }, - { - "id": "000015H", - "trip_update": { - "trip": { - "trip_id": "141200_H..N", - "start_time": "23:32:00", - "start_date": "20210510", - "route_id": "H" - } - } - }, - { - "id": "000016H", - "vehicle": { - "trip": { - "trip_id": "141200_H..N", - "start_time": "23:32:00", - "start_date": "20210510", - "route_id": "H" - }, - "current_stop_sequence": 5, - "current_status": 1, - "timestamp": 1620704561, - "stop_id": "H19N" - } - }, - { - "id": "000017H", - "trip_update": { - "trip": { - "trip_id": "143400_H..S", - "start_time": "23:54:00", - "start_date": "20210510", - "route_id": "H" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620705547 - }, - "departure": { - "time": 1620705547 - }, - "stop_id": "H13S" - }, - { - "arrival": { - "time": 1620705607 - }, - "departure": { - "time": 1620705607 - }, - "stop_id": "H14S" - }, - { - "arrival": { - "time": 1620705697 - }, - "departure": { - "time": 1620705697 - }, - "stop_id": "H15S" - } - ] - } - }, - { - "id": "000018H", - "vehicle": { - "trip": { - "trip_id": "143400_H..S", - "start_time": "23:54:00", - "start_date": "20210510", - "route_id": "H" - }, - "current_stop_sequence": 2, - "current_status": 1, - "timestamp": 1620705431, - "stop_id": "H12S" - } - }, - { - "id": "000019H", - "trip_update": { - "trip": { - "trip_id": "143850_H..N", - "start_time": "23:58:30", - "start_date": "20210510", - "route_id": "H" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620705510 - }, - "departure": { - "time": 1620705510 - }, - "stop_id": "H15N" - }, - { - "arrival": { - "time": 1620705630 - }, - "departure": { - "time": 1620705630 - }, - "stop_id": "H14N" - }, - { - "arrival": { - "time": 1620705750 - }, - "departure": { - "time": 1620705750 - }, - "stop_id": "H13N" - }, - { - "arrival": { - "time": 1620705840 - }, - "departure": { - "time": 1620705840 - }, - "stop_id": "H12N" - }, - { - "arrival": { - "time": 1620706125 - }, - "departure": { - "time": 1620706125 - }, - "stop_id": "H04N" - }, - { - "arrival": { - "time": 1620706290 - }, - "departure": { - "time": 1620706290 - }, - "stop_id": "H19N" - } - ] - } - }, - { - "id": "000020H", - "vehicle": { - "trip": { - "trip_id": "143850_H..N", - "start_time": "23:58:30", - "start_date": "20210510", - "route_id": "H" - }, - "timestamp": 1620705510, - "stop_id": "H15N" - } - }, - { - "id": "000021H", - "trip_update": { - "trip": { - "trip_id": "001700_H..S", - "start_time": "00:17:00", - "start_date": "20210511", - "route_id": "H" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620706620 - }, - "departure": { - "time": 1620706620 - }, - "stop_id": "H19S" - }, - { - "arrival": { - "time": 1620706710 - }, - "departure": { - "time": 1620706710 - }, - "stop_id": "H04S" - }, - { - "arrival": { - "time": 1620706980 - }, - "departure": { - "time": 1620706980 - }, - "stop_id": "H12S" - }, - { - "arrival": { - "time": 1620707100 - }, - "departure": { - "time": 1620707100 - }, - "stop_id": "H13S" - }, - { - "arrival": { - "time": 1620707160 - }, - "departure": { - "time": 1620707160 - }, - "stop_id": "H14S" - }, - { - "arrival": { - "time": 1620707250 - }, - "departure": { - "time": 1620707250 - }, - "stop_id": "H15S" - } - ] - } - }, - { - "id": "000022H", - "vehicle": { - "trip": { - "trip_id": "001700_H..S", - "start_time": "00:17:00", - "start_date": "20210511", - "route_id": "H" - }, - "timestamp": 1620706620, - "stop_id": "H19S" - } - }, - { - "id": "000023H", - "trip_update": { - "trip": { - "trip_id": "002000_H..N", - "start_time": "00:20:00", - "start_date": "20210511", - "route_id": "H" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620706800 - }, - "departure": { - "time": 1620706800 - }, - "stop_id": "H15N" - }, - { - "arrival": { - "time": 1620706920 - }, - "departure": { - "time": 1620706920 - }, - "stop_id": "H14N" - }, - { - "arrival": { - "time": 1620707040 - }, - "departure": { - "time": 1620707040 - }, - "stop_id": "H13N" - }, - { - "arrival": { - "time": 1620707130 - }, - "departure": { - "time": 1620707130 - }, - "stop_id": "H12N" - }, - { - "arrival": { - "time": 1620707415 - }, - "departure": { - "time": 1620707415 - }, - "stop_id": "H04N" - }, - { - "arrival": { - "time": 1620707580 - }, - "departure": { - "time": 1620707580 - }, - "stop_id": "H19N" - } - ] - } - }, - { - "id": "000024H", - "vehicle": { - "trip": { - "trip_id": "002000_H..N", - "start_time": "00:20:00", - "start_date": "20210511", - "route_id": "H" - }, - "timestamp": 1620706800, - "stop_id": "H15N" - } - }, - { - "id": "000025H", - "trip_update": { - "trip": { - "trip_id": "004000_H..S", - "start_time": "00:40:00", - "start_date": "20210511", - "route_id": "H" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620708000 - }, - "departure": { - "time": 1620708000 - }, - "stop_id": "H19S" - }, - { - "arrival": { - "time": 1620708090 - }, - "departure": { - "time": 1620708090 - }, - "stop_id": "H04S" - }, - { - "arrival": { - "time": 1620708360 - }, - "departure": { - "time": 1620708360 - }, - "stop_id": "H12S" - }, - { - "arrival": { - "time": 1620708480 - }, - "departure": { - "time": 1620708480 - }, - "stop_id": "H13S" - }, - { - "arrival": { - "time": 1620708540 - }, - "departure": { - "time": 1620708540 - }, - "stop_id": "H14S" - }, - { - "arrival": { - "time": 1620708630 - }, - "departure": { - "time": 1620708630 - }, - "stop_id": "H15S" - } - ] - } - }, - { - "id": "000026H", - "vehicle": { - "trip": { - "trip_id": "004000_H..S", - "start_time": "00:40:00", - "start_date": "20210511", - "route_id": "H" - }, - "timestamp": 1620708000, - "stop_id": "H19S" - } - }, - { - "id": "000027H", - "trip_update": { - "trip": { - "trip_id": "004100_H..N", - "start_time": "00:41:00", - "start_date": "20210511", - "route_id": "H" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620708060 - }, - "departure": { - "time": 1620708060 - }, - "stop_id": "H15N" - }, - { - "arrival": { - "time": 1620708180 - }, - "departure": { - "time": 1620708180 - }, - "stop_id": "H14N" - }, - { - "arrival": { - "time": 1620708300 - }, - "departure": { - "time": 1620708300 - }, - "stop_id": "H13N" - }, - { - "arrival": { - "time": 1620708390 - }, - "departure": { - "time": 1620708390 - }, - "stop_id": "H12N" - }, - { - "arrival": { - "time": 1620708675 - }, - "departure": { - "time": 1620708675 - }, - "stop_id": "H04N" - }, - { - "arrival": { - "time": 1620708840 - }, - "departure": { - "time": 1620708840 - }, - "stop_id": "H19N" - } - ] - } - }, - { - "id": "000028H", - "vehicle": { - "trip": { - "trip_id": "004100_H..N", - "start_time": "00:41:00", - "start_date": "20210511", - "route_id": "H" - }, - "timestamp": 1620708060, - "stop_id": "H15N" - } - }, - { - "id": "000001FS", - "trip_update": { - "trip": { - "trip_id": "132450_FS..N", - "start_time": "22:04:30", - "start_date": "20210510", - "route_id": "FS" - } - } - }, - { - "id": "000002FS", - "vehicle": { - "trip": { - "trip_id": "132450_FS..N", - "start_time": "22:04:30", - "start_date": "20210510", - "route_id": "FS" - }, - "current_stop_sequence": 3, - "current_status": 1, - "timestamp": 1620699196, - "stop_id": "S01N" - } - }, - { - "id": "000003FS", - "trip_update": { - "trip": { - "trip_id": "133950_FS..N", - "start_time": "22:19:30", - "start_date": "20210510", - "route_id": "FS" - } - } - }, - { - "id": "000004FS", - "vehicle": { - "trip": { - "trip_id": "133950_FS..N", - "start_time": "22:19:30", - "start_date": "20210510", - "route_id": "FS" - }, - "current_stop_sequence": 3, - "current_status": 1, - "timestamp": 1620699846, - "stop_id": "S01N" - } - }, - { - "id": "000005FS", - "trip_update": { - "trip": { - "trip_id": "135450_FS..N", - "start_time": "22:34:30", - "start_date": "20210510", - "route_id": "FS" - } - } - }, - { - "id": "000006FS", - "vehicle": { - "trip": { - "trip_id": "135450_FS..N", - "start_time": "22:34:30", - "start_date": "20210510", - "route_id": "FS" - }, - "current_stop_sequence": 3, - "current_status": 1, - "timestamp": 1620700866, - "stop_id": "S01N" - } - }, - { - "id": "000007FS", - "trip_update": { - "trip": { - "trip_id": "136950_FS..N", - "start_time": "22:49:30", - "start_date": "20210510", - "route_id": "FS" - } - } - }, - { - "id": "000008FS", - "vehicle": { - "trip": { - "trip_id": "136950_FS..N", - "start_time": "22:49:30", - "start_date": "20210510", - "route_id": "FS" - }, - "current_stop_sequence": 3, - "current_status": 1, - "timestamp": 1620704007, - "stop_id": "S01N" - } - }, - { - "id": "000009FS", - "trip_update": { - "trip": { - "trip_id": "138950_FS..N", - "start_time": "23:09:30", - "start_date": "20210510", - "route_id": "FS" - } - } - }, - { - "id": "000010FS", - "vehicle": { - "trip": { - "trip_id": "138950_FS..N", - "start_time": "23:09:30", - "start_date": "20210510", - "route_id": "FS" - }, - "current_stop_sequence": 3, - "current_status": 1, - "timestamp": 1620704016, - "stop_id": "S01N" - } - }, - { - "id": "000011FS", - "trip_update": { - "trip": { - "trip_id": "140950_FS..N", - "start_time": "23:29:30", - "start_date": "20210510", - "route_id": "FS" - } - } - }, - { - "id": "000012FS", - "vehicle": { - "trip": { - "trip_id": "140950_FS..N", - "start_time": "23:29:30", - "start_date": "20210510", - "route_id": "FS" - }, - "current_stop_sequence": 3, - "current_status": 1, - "timestamp": 1620704011, - "stop_id": "S01N" - } - }, - { - "id": "000013FS", - "trip_update": { - "trip": { - "trip_id": "000950_FS..N", - "start_time": "00:09:30", - "start_date": "20210511", - "route_id": "FS" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620706170 - }, - "departure": { - "time": 1620706170 - }, - "stop_id": "D26N" - }, - { - "arrival": { - "time": 1620706350 - }, - "departure": { - "time": 1620706350 - }, - "stop_id": "S04N" - }, - { - "arrival": { - "time": 1620706470 - }, - "departure": { - "time": 1620706470 - }, - "stop_id": "S03N" - } - ] - } - }, - { - "id": "000014FS", - "vehicle": { - "trip": { - "trip_id": "000950_FS..N", - "start_time": "00:09:30", - "start_date": "20210511", - "route_id": "FS" - }, - "current_stop_sequence": 3, - "current_status": 1, - "timestamp": 1620705192, - "stop_id": "S01N" - } - }, - { - "id": "000015FS", - "trip_update": { - "trip": { - "trip_id": "142950_FS..N", - "start_time": "23:49:30", - "start_date": "20210510", - "route_id": "FS" - } - } - }, - { - "id": "000016FS", - "vehicle": { - "trip": { - "trip_id": "142950_FS..N", - "start_time": "23:49:30", - "start_date": "20210510", - "route_id": "FS" - }, - "current_stop_sequence": 3, - "current_status": 1, - "timestamp": 1620705187, - "stop_id": "S01N" - } - }, - { - "id": "000017FS", - "trip_update": { - "trip": { - "trip_id": "002000_FS..S", - "start_time": "00:20:00", - "start_date": "20210511", - "route_id": "FS" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620706800 - }, - "departure": { - "time": 1620706800 - }, - "stop_id": "S01S" - }, - { - "arrival": { - "time": 1620706920 - }, - "departure": { - "time": 1620706920 - }, - "stop_id": "S03S" - }, - { - "arrival": { - "time": 1620707010 - }, - "departure": { - "time": 1620707010 - }, - "stop_id": "S04S" - }, - { - "arrival": { - "time": 1620707190 - }, - "departure": { - "time": 1620707190 - }, - "stop_id": "D26S" - } - ] - } - }, - { - "id": "000018FS", - "vehicle": { - "trip": { - "trip_id": "002000_FS..S", - "start_time": "00:20:00", - "start_date": "20210511", - "route_id": "FS" - }, - "timestamp": 1620706800, - "stop_id": "S01S" - } - }, - { - "id": "000019FS", - "trip_update": { - "trip": { - "trip_id": "002950_FS..N", - "start_time": "00:29:30", - "start_date": "20210511", - "route_id": "FS" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620707370 - }, - "departure": { - "time": 1620707370 - }, - "stop_id": "D26N" - }, - { - "arrival": { - "time": 1620707550 - }, - "departure": { - "time": 1620707550 - }, - "stop_id": "S04N" - }, - { - "arrival": { - "time": 1620707670 - }, - "departure": { - "time": 1620707670 - }, - "stop_id": "S03N" - }, - { - "arrival": { - "time": 1620707790 - }, - "departure": { - "time": 1620707790 - }, - "stop_id": "S01N" - } - ] - } - }, - { - "id": "000020FS", - "vehicle": { - "trip": { - "trip_id": "002950_FS..N", - "start_time": "00:29:30", - "start_date": "20210511", - "route_id": "FS" - }, - "timestamp": 1620707370, - "stop_id": "D26N" - } - }, - { - "id": "000021FS", - "trip_update": { - "trip": { - "trip_id": "004000_FS..S", - "start_time": "00:40:00", - "start_date": "20210511", - "route_id": "FS" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620708000 - }, - "departure": { - "time": 1620708000 - }, - "stop_id": "S01S" - }, - { - "arrival": { - "time": 1620708120 - }, - "departure": { - "time": 1620708120 - }, - "stop_id": "S03S" - }, - { - "arrival": { - "time": 1620708210 - }, - "departure": { - "time": 1620708210 - }, - "stop_id": "S04S" - }, - { - "arrival": { - "time": 1620708390 - }, - "departure": { - "time": 1620708390 - }, - "stop_id": "D26S" - } - ] - } - }, - { - "id": "000022FS", - "vehicle": { - "trip": { - "trip_id": "004000_FS..S", - "start_time": "00:40:00", - "start_date": "20210511", - "route_id": "FS" - }, - "timestamp": 1620708000, - "stop_id": "S01S" - } - }, - { - "id": "000023FS", - "trip_update": { - "trip": { - "trip_id": "004950_FS..N", - "start_time": "00:49:30", - "start_date": "20210511", - "route_id": "FS" - }, - "stop_time_update": [ - { - "arrival": { - "time": 1620708570 - }, - "departure": { - "time": 1620708570 - }, - "stop_id": "D26N" - }, - { - "arrival": { - "time": 1620708750 - }, - "departure": { - "time": 1620708750 - }, - "stop_id": "S04N" - }, - { - "arrival": { - "time": 1620708870 - }, - "departure": { - "time": 1620708870 - }, - "stop_id": "S03N" - }, - { - "arrival": { - "time": 1620708990 - }, - "departure": { - "time": 1620708990 - }, - "stop_id": "S01N" - } - ] - } - }, - { - "id": "000024FS", - "vehicle": { - "trip": { - "trip_id": "004950_FS..N", - "start_time": "00:49:30", - "start_date": "20210511", - "route_id": "FS" - }, - "timestamp": 1620708570, - "stop_id": "D26N" - } - } -] \ No newline at end of file diff --git a/justfile b/justfile new file mode 100644 index 0000000..796604d --- /dev/null +++ b/justfile @@ -0,0 +1,10 @@ +# Run tests and linters +@default: run + +# Setup project +@init: + poetry install + +# Setup project +@run: + poetry run uvicorn main:app --reload diff --git a/mta_manager/feed.py b/mta_manager/feed.py index 29fc43f..8e0ee92 100644 --- a/mta_manager/feed.py +++ b/mta_manager/feed.py @@ -1,5 +1,6 @@ from enum import Enum + class Feed(Enum): ACE = "https://api-endpoint.mta.info/Dataservice/mtagtfsfeeds/nyct%2Fgtfs-ace" BDFM = "https://api-endpoint.mta.info/Dataservice/mtagtfsfeeds/nyct%2Fgtfs-bdfm" @@ -10,6 +11,7 @@ class Feed(Enum): N1234567 = "https://api-endpoint.mta.info/Dataservice/mtagtfsfeeds/nyct%2Fgtfs" SIR = "https://api-endpoint.mta.info/Dataservice/mtagtfsfeeds/nyct%2Fgtfs-si" + ALL_FEEDS = [ Feed.ACE, Feed.BDFM, @@ -18,4 +20,4 @@ ALL_FEEDS = [ Feed.L, Feed.N1234567, Feed.SIR -] \ No newline at end of file +] diff --git a/mta_manager/route.py b/mta_manager/route.py index 71d69c9..f4086d7 100644 --- a/mta_manager/route.py +++ b/mta_manager/route.py @@ -1,5 +1,6 @@ from enum import Enum + class Route(Enum): A = "A" C = "C" @@ -31,6 +32,9 @@ class Route(Enum): L = "L" SIR = "SIR" + _routes = set(item.value for item in Route) + + def is_valid_route(route: str) -> bool: - return route in _routes \ No newline at end of file + return route in _routes diff --git a/mta_manager/stop.py b/mta_manager/stop.py index d5273b2..56ba275 100644 --- a/mta_manager/stop.py +++ b/mta_manager/stop.py @@ -5,24 +5,3 @@ from math import trunc def trip_arrival_in_minutes(stop_time_update: gtfs_realtime_pb2.TripUpdate): return trunc(((datetime.fromtimestamp(stop_time_update.arrival.time) - datetime.now()).total_seconds()) / 60) - -# class Stop(object): -# def __init__(self, id, arrival_time, departure_time, ): -# self.id = id -# self.arrival_time = arrival_time -# self.departure_time = departure_time -# -# def arrival_minutes(self): -# return trunc(((datetime.fromtimestamp(self.arrival_time) - datetime.now()).total_seconds()) / 60) -# -# def __str__(self): -# now = datetime.now() -# time = datetime.fromtimestamp(self.arrival_time) -# time_minutes = trunc(((time - now).total_seconds()) / 60) -# return f"stop_id:{self.id}| arr:{time_minutes}| dep:{self.departure_time}" -# -# @staticmethod -# def get_stop_from_dict(obj): -# if "arrival" in obj and "departure" in obj and "stop_id" in obj: -# return Stop(obj["stop_id"], obj["arrival"]["time"], obj["departure"]["time"]) -# return None diff --git a/mta_manager/train.py b/mta_manager/train.py index 51b7409..76e25ed 100644 --- a/mta_manager/train.py +++ b/mta_manager/train.py @@ -19,11 +19,11 @@ class Train(object): return trip_arrival_in_minutes(stop_time_update) return None - def _get_route(self) -> str: return self.train_proto.trip_update.trip.route_id + def get_route(self) -> Route: - return Route(self.train_proto.trip_update.trip.route_id) + return Route(self.train_proto.trip_update.trip.route_id) def has_trips(self) -> bool: return self.train_proto.trip_update is not None \ @@ -31,4 +31,3 @@ class Train(object): def __str__(self): return f"{self.train_proto}" - diff --git a/poetry.lock b/poetry.lock index 22c67ba..e530a79 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,58 +1,25 @@ # This file is automatically @generated by Poetry 1.5.1 and should not be changed by hand. [[package]] -name = "apscheduler" -version = "3.10.1" -description = "In-process task scheduler with Cron-like capabilities" +name = "anyio" +version = "3.7.1" +description = "High level compatibility layer for multiple asynchronous event loop implementations" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" files = [ - {file = "APScheduler-3.10.1-py3-none-any.whl", hash = "sha256:e813ad5ada7aff36fb08cdda746b520531eaac7757832abc204868ba78e0c8f6"}, - {file = "APScheduler-3.10.1.tar.gz", hash = "sha256:0293937d8f6051a0f493359440c1a1b93e882c57daf0197afeff0e727777b96e"}, + {file = "anyio-3.7.1-py3-none-any.whl", hash = "sha256:91dee416e570e92c64041bd18b900d1d6fa78dff7048769ce5ac5ddad004fbb5"}, + {file = "anyio-3.7.1.tar.gz", hash = "sha256:44a3c9aba0f5defa43261a8b3efb97891f2bd7d804e0e1f56419befa1adfc780"}, ] [package.dependencies] -pytz = "*" -setuptools = ">=0.7" -six = ">=1.4.0" -tzlocal = ">=2.0,<3.dev0 || >=4.dev0" +exceptiongroup = {version = "*", markers = "python_version < \"3.11\""} +idna = ">=2.8" +sniffio = ">=1.1" [package.extras] -doc = ["sphinx", "sphinx-rtd-theme"] -gevent = ["gevent"] -mongodb = ["pymongo (>=3.0)"] -redis = ["redis (>=3.0)"] -rethinkdb = ["rethinkdb (>=2.4.0)"] -sqlalchemy = ["sqlalchemy (>=1.4)"] -testing = ["pytest", "pytest-asyncio", "pytest-cov", "pytest-tornado5"] -tornado = ["tornado (>=4.3)"] -twisted = ["twisted"] -zookeeper = ["kazoo"] - -[[package]] -name = "asgiref" -version = "3.7.2" -description = "ASGI specs, helper code, and adapters" -optional = false -python-versions = ">=3.7" -files = [ - {file = "asgiref-3.7.2-py3-none-any.whl", hash = "sha256:89b2ef2247e3b562a16eef663bc0e2e703ec6468e2fa8a5cd61cd449786d4f6e"}, - {file = "asgiref-3.7.2.tar.gz", hash = "sha256:9e0ce3aa93a819ba5b45120216b23878cf6e8525eb3848653452b4192b92afed"}, -] - -[package.extras] -tests = ["mypy (>=0.800)", "pytest", "pytest-asyncio"] - -[[package]] -name = "blinker" -version = "1.6.2" -description = "Fast, simple object-to-object and broadcast signaling" -optional = false -python-versions = ">=3.7" -files = [ - {file = "blinker-1.6.2-py3-none-any.whl", hash = "sha256:c3d739772abb7bc2860abf5f2ec284223d9ad5c76da018234f6f50d6f31ab1f0"}, - {file = "blinker-1.6.2.tar.gz", hash = "sha256:4afd3de66ef3a9f8067559fb7a1cbe555c17dcbe15971b05d1b625c3e7abe213"}, -] +doc = ["Sphinx", "packaging", "sphinx-autodoc-typehints (>=1.2.0)", "sphinx-rtd-theme (>=1.2.2)", "sphinxcontrib-jquery"] +test = ["anyio[trio]", "coverage[toml] (>=4.5)", "hypothesis (>=4.0)", "mock (>=4)", "psutil (>=5.9)", "pytest (>=7.0)", "pytest-mock (>=3.6.1)", "trustme", "uvloop (>=0.17)"] +trio = ["trio (<0.22)"] [[package]] name = "certifi" @@ -175,42 +142,126 @@ files = [ ] [[package]] -name = "flask" -version = "2.3.2" -description = "A simple framework for building complex web applications." +name = "exceptiongroup" +version = "1.1.2" +description = "Backport of PEP 654 (exception groups)" optional = false -python-versions = ">=3.8" +python-versions = ">=3.7" files = [ - {file = "Flask-2.3.2-py3-none-any.whl", hash = "sha256:77fd4e1249d8c9923de34907236b747ced06e5467ecac1a7bb7115ae0e9670b0"}, - {file = "Flask-2.3.2.tar.gz", hash = "sha256:8c2f9abd47a9e8df7f0c3f091ce9497d011dc3b31effcf4c85a6e2b50f4114ef"}, + {file = "exceptiongroup-1.1.2-py3-none-any.whl", hash = "sha256:e346e69d186172ca7cf029c8c1d16235aa0e04035e5750b4b95039e65204328f"}, + {file = "exceptiongroup-1.1.2.tar.gz", hash = "sha256:12c3e887d6485d16943a309616de20ae5582633e0a2eda17f4e10fd61c1e8af5"}, ] -[package.dependencies] -asgiref = {version = ">=3.2", optional = true, markers = "extra == \"async\""} -blinker = ">=1.6.2" -click = ">=8.1.3" -itsdangerous = ">=2.1.2" -Jinja2 = ">=3.1.2" -Werkzeug = ">=2.3.3" - [package.extras] -async = ["asgiref (>=3.2)"] -dotenv = ["python-dotenv"] +test = ["pytest (>=6)"] [[package]] -name = "flask-apscheduler" -version = "1.12.4" -description = "Adds APScheduler support to Flask" +name = "fastapi" +version = "0.100.0" +description = "FastAPI framework, high performance, easy to learn, fast to code, ready for production" optional = false -python-versions = "*" +python-versions = ">=3.7" files = [ - {file = "Flask-APScheduler-1.12.4.tar.gz", hash = "sha256:681dae34dc6cc9403ce674795e53abd0bff540472129cfd3d3c93e0e1d502da8"}, + {file = "fastapi-0.100.0-py3-none-any.whl", hash = "sha256:271662daf986da8fa98dc2b7c7f61c4abdfdccfb4786d79ed8b2878f172c6d5f"}, + {file = "fastapi-0.100.0.tar.gz", hash = "sha256:acb5f941ea8215663283c10018323ba7ea737c571b67fc7e88e9469c7eb1d12e"}, ] [package.dependencies] -apscheduler = ">=3.2.0,<4.0.0" -flask = ">=0.10.1" -python-dateutil = ">=2.4.2" +pydantic = ">=1.7.4,<1.8 || >1.8,<1.8.1 || >1.8.1,<2.0.0 || >2.0.0,<2.0.1 || >2.0.1,<3.0.0" +starlette = ">=0.27.0,<0.28.0" +typing-extensions = ">=4.5.0" + +[package.extras] +all = ["email-validator (>=2.0.0)", "httpx (>=0.23.0)", "itsdangerous (>=1.1.0)", "jinja2 (>=2.11.2)", "orjson (>=3.2.1)", "pydantic-extra-types (>=2.0.0)", "pydantic-settings (>=2.0.0)", "python-multipart (>=0.0.5)", "pyyaml (>=5.3.1)", "ujson (>=4.0.1,!=4.0.2,!=4.1.0,!=4.2.0,!=4.3.0,!=5.0.0,!=5.1.0)", "uvicorn[standard] (>=0.12.0)"] + +[[package]] +name = "fastapi-utils" +version = "0.2.1" +description = "Reusable utilities for FastAPI" +optional = false +python-versions = ">=3.6,<4.0" +files = [ + {file = "fastapi-utils-0.2.1.tar.gz", hash = "sha256:0e6c7fc1870b80e681494957abf65d4f4f42f4c7f70005918e9181b22f1bd759"}, + {file = "fastapi_utils-0.2.1-py3-none-any.whl", hash = "sha256:dd0be7dc7f03fa681b25487a206651d99f2330d5a567fb8ab6cb5f8a06a29360"}, +] + +[package.dependencies] +fastapi = "*" +pydantic = ">=1.0,<2.0" +sqlalchemy = ">=1.3.12,<2.0.0" + +[[package]] +name = "greenlet" +version = "2.0.2" +description = "Lightweight in-process concurrent programming" +optional = false +python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*" +files = [ + {file = "greenlet-2.0.2-cp27-cp27m-macosx_10_14_x86_64.whl", hash = "sha256:bdfea8c661e80d3c1c99ad7c3ff74e6e87184895bbaca6ee8cc61209f8b9b85d"}, + {file = "greenlet-2.0.2-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:9d14b83fab60d5e8abe587d51c75b252bcc21683f24699ada8fb275d7712f5a9"}, + {file = "greenlet-2.0.2-cp27-cp27m-win32.whl", hash = "sha256:6c3acb79b0bfd4fe733dff8bc62695283b57949ebcca05ae5c129eb606ff2d74"}, + {file = "greenlet-2.0.2-cp27-cp27m-win_amd64.whl", hash = "sha256:283737e0da3f08bd637b5ad058507e578dd462db259f7f6e4c5c365ba4ee9343"}, + {file = "greenlet-2.0.2-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:d27ec7509b9c18b6d73f2f5ede2622441de812e7b1a80bbd446cb0633bd3d5ae"}, + {file = "greenlet-2.0.2-cp310-cp310-macosx_11_0_x86_64.whl", hash = "sha256:30bcf80dda7f15ac77ba5af2b961bdd9dbc77fd4ac6105cee85b0d0a5fcf74df"}, + {file = "greenlet-2.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:26fbfce90728d82bc9e6c38ea4d038cba20b7faf8a0ca53a9c07b67318d46088"}, + {file = "greenlet-2.0.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9190f09060ea4debddd24665d6804b995a9c122ef5917ab26e1566dcc712ceeb"}, + {file = "greenlet-2.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d75209eed723105f9596807495d58d10b3470fa6732dd6756595e89925ce2470"}, + {file = "greenlet-2.0.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:3a51c9751078733d88e013587b108f1b7a1fb106d402fb390740f002b6f6551a"}, + {file = "greenlet-2.0.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:76ae285c8104046b3a7f06b42f29c7b73f77683df18c49ab5af7983994c2dd91"}, + {file = "greenlet-2.0.2-cp310-cp310-win_amd64.whl", hash = "sha256:2d4686f195e32d36b4d7cf2d166857dbd0ee9f3d20ae349b6bf8afc8485b3645"}, + {file = "greenlet-2.0.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:c4302695ad8027363e96311df24ee28978162cdcdd2006476c43970b384a244c"}, + {file = "greenlet-2.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c48f54ef8e05f04d6eff74b8233f6063cb1ed960243eacc474ee73a2ea8573ca"}, + {file = "greenlet-2.0.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a1846f1b999e78e13837c93c778dcfc3365902cfb8d1bdb7dd73ead37059f0d0"}, + {file = "greenlet-2.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3a06ad5312349fec0ab944664b01d26f8d1f05009566339ac6f63f56589bc1a2"}, + {file = "greenlet-2.0.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:eff4eb9b7eb3e4d0cae3d28c283dc16d9bed6b193c2e1ace3ed86ce48ea8df19"}, + {file = "greenlet-2.0.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:5454276c07d27a740c5892f4907c86327b632127dd9abec42ee62e12427ff7e3"}, + {file = "greenlet-2.0.2-cp311-cp311-win_amd64.whl", hash = "sha256:7cafd1208fdbe93b67c7086876f061f660cfddc44f404279c1585bbf3cdc64c5"}, + {file = "greenlet-2.0.2-cp35-cp35m-macosx_10_14_x86_64.whl", hash = "sha256:910841381caba4f744a44bf81bfd573c94e10b3045ee00de0cbf436fe50673a6"}, + {file = "greenlet-2.0.2-cp35-cp35m-manylinux2010_x86_64.whl", hash = "sha256:18a7f18b82b52ee85322d7a7874e676f34ab319b9f8cce5de06067384aa8ff43"}, + {file = "greenlet-2.0.2-cp35-cp35m-win32.whl", hash = "sha256:03a8f4f3430c3b3ff8d10a2a86028c660355ab637cee9333d63d66b56f09d52a"}, + {file = "greenlet-2.0.2-cp35-cp35m-win_amd64.whl", hash = "sha256:4b58adb399c4d61d912c4c331984d60eb66565175cdf4a34792cd9600f21b394"}, + {file = "greenlet-2.0.2-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:703f18f3fda276b9a916f0934d2fb6d989bf0b4fb5a64825260eb9bfd52d78f0"}, + {file = "greenlet-2.0.2-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:32e5b64b148966d9cccc2c8d35a671409e45f195864560829f395a54226408d3"}, + {file = "greenlet-2.0.2-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2dd11f291565a81d71dab10b7033395b7a3a5456e637cf997a6f33ebdf06f8db"}, + {file = "greenlet-2.0.2-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e0f72c9ddb8cd28532185f54cc1453f2c16fb417a08b53a855c4e6a418edd099"}, + {file = "greenlet-2.0.2-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cd021c754b162c0fb55ad5d6b9d960db667faad0fa2ff25bb6e1301b0b6e6a75"}, + {file = "greenlet-2.0.2-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:3c9b12575734155d0c09d6c3e10dbd81665d5c18e1a7c6597df72fd05990c8cf"}, + {file = "greenlet-2.0.2-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:b9ec052b06a0524f0e35bd8790686a1da006bd911dd1ef7d50b77bfbad74e292"}, + {file = "greenlet-2.0.2-cp36-cp36m-win32.whl", hash = "sha256:dbfcfc0218093a19c252ca8eb9aee3d29cfdcb586df21049b9d777fd32c14fd9"}, + {file = "greenlet-2.0.2-cp36-cp36m-win_amd64.whl", hash = "sha256:9f35ec95538f50292f6d8f2c9c9f8a3c6540bbfec21c9e5b4b751e0a7c20864f"}, + {file = "greenlet-2.0.2-cp37-cp37m-macosx_10_15_x86_64.whl", hash = "sha256:d5508f0b173e6aa47273bdc0a0b5ba055b59662ba7c7ee5119528f466585526b"}, + {file = "greenlet-2.0.2-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:f82d4d717d8ef19188687aa32b8363e96062911e63ba22a0cff7802a8e58e5f1"}, + {file = "greenlet-2.0.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c9c59a2120b55788e800d82dfa99b9e156ff8f2227f07c5e3012a45a399620b7"}, + {file = "greenlet-2.0.2-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2780572ec463d44c1d3ae850239508dbeb9fed38e294c68d19a24d925d9223ca"}, + {file = "greenlet-2.0.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:937e9020b514ceedb9c830c55d5c9872abc90f4b5862f89c0887033ae33c6f73"}, + {file = "greenlet-2.0.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:36abbf031e1c0f79dd5d596bfaf8e921c41df2bdf54ee1eed921ce1f52999a86"}, + {file = "greenlet-2.0.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:18e98fb3de7dba1c0a852731c3070cf022d14f0d68b4c87a19cc1016f3bb8b33"}, + {file = "greenlet-2.0.2-cp37-cp37m-win32.whl", hash = "sha256:3f6ea9bd35eb450837a3d80e77b517ea5bc56b4647f5502cd28de13675ee12f7"}, + {file = "greenlet-2.0.2-cp37-cp37m-win_amd64.whl", hash = "sha256:7492e2b7bd7c9b9916388d9df23fa49d9b88ac0640db0a5b4ecc2b653bf451e3"}, + {file = "greenlet-2.0.2-cp38-cp38-macosx_10_15_x86_64.whl", hash = "sha256:b864ba53912b6c3ab6bcb2beb19f19edd01a6bfcbdfe1f37ddd1778abfe75a30"}, + {file = "greenlet-2.0.2-cp38-cp38-manylinux2010_x86_64.whl", hash = "sha256:ba2956617f1c42598a308a84c6cf021a90ff3862eddafd20c3333d50f0edb45b"}, + {file = "greenlet-2.0.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fc3a569657468b6f3fb60587e48356fe512c1754ca05a564f11366ac9e306526"}, + {file = "greenlet-2.0.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8eab883b3b2a38cc1e050819ef06a7e6344d4a990d24d45bc6f2cf959045a45b"}, + {file = "greenlet-2.0.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:acd2162a36d3de67ee896c43effcd5ee3de247eb00354db411feb025aa319857"}, + {file = "greenlet-2.0.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:0bf60faf0bc2468089bdc5edd10555bab6e85152191df713e2ab1fcc86382b5a"}, + {file = "greenlet-2.0.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:b0ef99cdbe2b682b9ccbb964743a6aca37905fda5e0452e5ee239b1654d37f2a"}, + {file = "greenlet-2.0.2-cp38-cp38-win32.whl", hash = "sha256:b80f600eddddce72320dbbc8e3784d16bd3fb7b517e82476d8da921f27d4b249"}, + {file = "greenlet-2.0.2-cp38-cp38-win_amd64.whl", hash = "sha256:4d2e11331fc0c02b6e84b0d28ece3a36e0548ee1a1ce9ddde03752d9b79bba40"}, + {file = "greenlet-2.0.2-cp39-cp39-macosx_11_0_x86_64.whl", hash = "sha256:88d9ab96491d38a5ab7c56dd7a3cc37d83336ecc564e4e8816dbed12e5aaefc8"}, + {file = "greenlet-2.0.2-cp39-cp39-manylinux2010_x86_64.whl", hash = "sha256:561091a7be172ab497a3527602d467e2b3fbe75f9e783d8b8ce403fa414f71a6"}, + {file = "greenlet-2.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:971ce5e14dc5e73715755d0ca2975ac88cfdaefcaab078a284fea6cfabf866df"}, + {file = "greenlet-2.0.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:be4ed120b52ae4d974aa40215fcdfde9194d63541c7ded40ee12eb4dda57b76b"}, + {file = "greenlet-2.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:94c817e84245513926588caf1152e3b559ff794d505555211ca041f032abbb6b"}, + {file = "greenlet-2.0.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:1a819eef4b0e0b96bb0d98d797bef17dc1b4a10e8d7446be32d1da33e095dbb8"}, + {file = "greenlet-2.0.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:7efde645ca1cc441d6dc4b48c0f7101e8d86b54c8530141b09fd31cef5149ec9"}, + {file = "greenlet-2.0.2-cp39-cp39-win32.whl", hash = "sha256:ea9872c80c132f4663822dd2a08d404073a5a9b5ba6155bea72fb2a79d1093b5"}, + {file = "greenlet-2.0.2-cp39-cp39-win_amd64.whl", hash = "sha256:db1a39669102a1d8d12b57de2bb7e2ec9066a6f2b3da35ae511ff93b01b5d564"}, + {file = "greenlet-2.0.2.tar.gz", hash = "sha256:e7c8dc13af7db097bed64a051d2dd49e9f0af495c26995c00a9ee842690d34c0"}, +] + +[package.extras] +docs = ["Sphinx", "docutils (<0.18)"] +test = ["objgraph", "psutil"] [[package]] name = "gtfs-realtime-bindings" @@ -226,6 +277,17 @@ files = [ protobuf = "*" setuptools = "*" +[[package]] +name = "h11" +version = "0.14.0" +description = "A pure-Python, bring-your-own-I/O implementation of HTTP/1.1" +optional = false +python-versions = ">=3.7" +files = [ + {file = "h11-0.14.0-py3-none-any.whl", hash = "sha256:e3fe4ac4b851c468cc8363d500db52c2ead036020723024a109d37346efaa761"}, + {file = "h11-0.14.0.tar.gz", hash = "sha256:8f19fbbe99e72420ff35c00b27a34cb9937e902a8b810e2c88300c6f0a3b699d"}, +] + [[package]] name = "idna" version = "3.4" @@ -237,193 +299,6 @@ files = [ {file = "idna-3.4.tar.gz", hash = "sha256:814f528e8dead7d329833b91c5faa87d60bf71824cd12a7530b5526063d02cb4"}, ] -[[package]] -name = "itsdangerous" -version = "2.1.2" -description = "Safely pass data to untrusted environments and back." -optional = false -python-versions = ">=3.7" -files = [ - {file = "itsdangerous-2.1.2-py3-none-any.whl", hash = "sha256:2c2349112351b88699d8d4b6b075022c0808887cb7ad10069318a8b0bc88db44"}, - {file = "itsdangerous-2.1.2.tar.gz", hash = "sha256:5dbbc68b317e5e42f327f9021763545dc3fc3bfe22e6deb96aaf1fc38874156a"}, -] - -[[package]] -name = "jinja2" -version = "3.1.2" -description = "A very fast and expressive template engine." -optional = false -python-versions = ">=3.7" -files = [ - {file = "Jinja2-3.1.2-py3-none-any.whl", hash = "sha256:6088930bfe239f0e6710546ab9c19c9ef35e29792895fed6e6e31a023a182a61"}, - {file = "Jinja2-3.1.2.tar.gz", hash = "sha256:31351a702a408a9e7595a8fc6150fc3f43bb6bf7e319770cbc0db9df9437e852"}, -] - -[package.dependencies] -MarkupSafe = ">=2.0" - -[package.extras] -i18n = ["Babel (>=2.7)"] - -[[package]] -name = "markupsafe" -version = "2.1.3" -description = "Safely add untrusted strings to HTML/XML markup." -optional = false -python-versions = ">=3.7" -files = [ - {file = "MarkupSafe-2.1.3-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:cd0f502fe016460680cd20aaa5a76d241d6f35a1c3350c474bac1273803893fa"}, - {file = "MarkupSafe-2.1.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e09031c87a1e51556fdcb46e5bd4f59dfb743061cf93c4d6831bf894f125eb57"}, - {file = "MarkupSafe-2.1.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:68e78619a61ecf91e76aa3e6e8e33fc4894a2bebe93410754bd28fce0a8a4f9f"}, - {file = "MarkupSafe-2.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:65c1a9bcdadc6c28eecee2c119465aebff8f7a584dd719facdd9e825ec61ab52"}, - {file = "MarkupSafe-2.1.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:525808b8019e36eb524b8c68acdd63a37e75714eac50e988180b169d64480a00"}, - {file = "MarkupSafe-2.1.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:962f82a3086483f5e5f64dbad880d31038b698494799b097bc59c2edf392fce6"}, - {file = "MarkupSafe-2.1.3-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:aa7bd130efab1c280bed0f45501b7c8795f9fdbeb02e965371bbef3523627779"}, - {file = "MarkupSafe-2.1.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:c9c804664ebe8f83a211cace637506669e7890fec1b4195b505c214e50dd4eb7"}, - {file = "MarkupSafe-2.1.3-cp310-cp310-win32.whl", hash = "sha256:10bbfe99883db80bdbaff2dcf681dfc6533a614f700da1287707e8a5d78a8431"}, - {file = "MarkupSafe-2.1.3-cp310-cp310-win_amd64.whl", hash = "sha256:1577735524cdad32f9f694208aa75e422adba74f1baee7551620e43a3141f559"}, - {file = "MarkupSafe-2.1.3-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:ad9e82fb8f09ade1c3e1b996a6337afac2b8b9e365f926f5a61aacc71adc5b3c"}, - {file = "MarkupSafe-2.1.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:3c0fae6c3be832a0a0473ac912810b2877c8cb9d76ca48de1ed31e1c68386575"}, - {file = "MarkupSafe-2.1.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b076b6226fb84157e3f7c971a47ff3a679d837cf338547532ab866c57930dbee"}, - {file = "MarkupSafe-2.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bfce63a9e7834b12b87c64d6b155fdd9b3b96191b6bd334bf37db7ff1fe457f2"}, - {file = "MarkupSafe-2.1.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:338ae27d6b8745585f87218a3f23f1512dbf52c26c28e322dbe54bcede54ccb9"}, - {file = "MarkupSafe-2.1.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:e4dd52d80b8c83fdce44e12478ad2e85c64ea965e75d66dbeafb0a3e77308fcc"}, - {file = "MarkupSafe-2.1.3-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:df0be2b576a7abbf737b1575f048c23fb1d769f267ec4358296f31c2479db8f9"}, - {file = "MarkupSafe-2.1.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:5bbe06f8eeafd38e5d0a4894ffec89378b6c6a625ff57e3028921f8ff59318ac"}, - {file = "MarkupSafe-2.1.3-cp311-cp311-win32.whl", hash = "sha256:dd15ff04ffd7e05ffcb7fe79f1b98041b8ea30ae9234aed2a9168b5797c3effb"}, - {file = "MarkupSafe-2.1.3-cp311-cp311-win_amd64.whl", hash = "sha256:134da1eca9ec0ae528110ccc9e48041e0828d79f24121a1a146161103c76e686"}, - {file = "MarkupSafe-2.1.3-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:8e254ae696c88d98da6555f5ace2279cf7cd5b3f52be2b5cf97feafe883b58d2"}, - {file = "MarkupSafe-2.1.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cb0932dc158471523c9637e807d9bfb93e06a95cbf010f1a38b98623b929ef2b"}, - {file = "MarkupSafe-2.1.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9402b03f1a1b4dc4c19845e5c749e3ab82d5078d16a2a4c2cd2df62d57bb0707"}, - {file = "MarkupSafe-2.1.3-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ca379055a47383d02a5400cb0d110cef0a776fc644cda797db0c5696cfd7e18e"}, - {file = "MarkupSafe-2.1.3-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:b7ff0f54cb4ff66dd38bebd335a38e2c22c41a8ee45aa608efc890ac3e3931bc"}, - {file = "MarkupSafe-2.1.3-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:c011a4149cfbcf9f03994ec2edffcb8b1dc2d2aede7ca243746df97a5d41ce48"}, - {file = "MarkupSafe-2.1.3-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:56d9f2ecac662ca1611d183feb03a3fa4406469dafe241673d521dd5ae92a155"}, - {file = "MarkupSafe-2.1.3-cp37-cp37m-win32.whl", hash = "sha256:8758846a7e80910096950b67071243da3e5a20ed2546e6392603c096778d48e0"}, - {file = "MarkupSafe-2.1.3-cp37-cp37m-win_amd64.whl", hash = "sha256:787003c0ddb00500e49a10f2844fac87aa6ce977b90b0feaaf9de23c22508b24"}, - {file = "MarkupSafe-2.1.3-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:2ef12179d3a291be237280175b542c07a36e7f60718296278d8593d21ca937d4"}, - {file = "MarkupSafe-2.1.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:2c1b19b3aaacc6e57b7e25710ff571c24d6c3613a45e905b1fde04d691b98ee0"}, - {file = "MarkupSafe-2.1.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8afafd99945ead6e075b973fefa56379c5b5c53fd8937dad92c662da5d8fd5ee"}, - {file = "MarkupSafe-2.1.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8c41976a29d078bb235fea9b2ecd3da465df42a562910f9022f1a03107bd02be"}, - {file = "MarkupSafe-2.1.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d080e0a5eb2529460b30190fcfcc4199bd7f827663f858a226a81bc27beaa97e"}, - {file = "MarkupSafe-2.1.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:69c0f17e9f5a7afdf2cc9fb2d1ce6aabdb3bafb7f38017c0b77862bcec2bbad8"}, - {file = "MarkupSafe-2.1.3-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:504b320cd4b7eff6f968eddf81127112db685e81f7e36e75f9f84f0df46041c3"}, - {file = "MarkupSafe-2.1.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:42de32b22b6b804f42c5d98be4f7e5e977ecdd9ee9b660fda1a3edf03b11792d"}, - {file = "MarkupSafe-2.1.3-cp38-cp38-win32.whl", hash = "sha256:ceb01949af7121f9fc39f7d27f91be8546f3fb112c608bc4029aef0bab86a2a5"}, - {file = "MarkupSafe-2.1.3-cp38-cp38-win_amd64.whl", hash = "sha256:1b40069d487e7edb2676d3fbdb2b0829ffa2cd63a2ec26c4938b2d34391b4ecc"}, - {file = "MarkupSafe-2.1.3-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:8023faf4e01efadfa183e863fefde0046de576c6f14659e8782065bcece22198"}, - {file = "MarkupSafe-2.1.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6b2b56950d93e41f33b4223ead100ea0fe11f8e6ee5f641eb753ce4b77a7042b"}, - {file = "MarkupSafe-2.1.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dcdfd0eaf283af041973bff14a2e143b8bd64e069f4c383416ecd79a81aab58"}, - {file = "MarkupSafe-2.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:05fb21170423db021895e1ea1e1f3ab3adb85d1c2333cbc2310f2a26bc77272e"}, - {file = "MarkupSafe-2.1.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:282c2cb35b5b673bbcadb33a585408104df04f14b2d9b01d4c345a3b92861c2c"}, - {file = "MarkupSafe-2.1.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab4a0df41e7c16a1392727727e7998a467472d0ad65f3ad5e6e765015df08636"}, - {file = "MarkupSafe-2.1.3-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:7ef3cb2ebbf91e330e3bb937efada0edd9003683db6b57bb108c4001f37a02ea"}, - {file = "MarkupSafe-2.1.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:0a4e4a1aff6c7ac4cd55792abf96c915634c2b97e3cc1c7129578aa68ebd754e"}, - {file = "MarkupSafe-2.1.3-cp39-cp39-win32.whl", hash = "sha256:fec21693218efe39aa7f8599346e90c705afa52c5b31ae019b2e57e8f6542bb2"}, - {file = "MarkupSafe-2.1.3-cp39-cp39-win_amd64.whl", hash = "sha256:3fd4abcb888d15a94f32b75d8fd18ee162ca0c064f35b11134be77050296d6ba"}, - {file = "MarkupSafe-2.1.3.tar.gz", hash = "sha256:af598ed32d6ae86f1b747b82783958b1a4ab8f617b06fe68795c7f026abbdcad"}, -] - -[[package]] -name = "numpy" -version = "1.25.1" -description = "Fundamental package for array computing in Python" -optional = false -python-versions = ">=3.9" -files = [ - {file = "numpy-1.25.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:77d339465dff3eb33c701430bcb9c325b60354698340229e1dff97745e6b3efa"}, - {file = "numpy-1.25.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:d736b75c3f2cb96843a5c7f8d8ccc414768d34b0a75f466c05f3a739b406f10b"}, - {file = "numpy-1.25.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4a90725800caeaa160732d6b31f3f843ebd45d6b5f3eec9e8cc287e30f2805bf"}, - {file = "numpy-1.25.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c6c9261d21e617c6dc5eacba35cb68ec36bb72adcff0dee63f8fbc899362588"}, - {file = "numpy-1.25.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:0def91f8af6ec4bb94c370e38c575855bf1d0be8a8fbfba42ef9c073faf2cf19"}, - {file = "numpy-1.25.1-cp310-cp310-win32.whl", hash = "sha256:fd67b306320dcadea700a8f79b9e671e607f8696e98ec255915c0c6d6b818503"}, - {file = "numpy-1.25.1-cp310-cp310-win_amd64.whl", hash = "sha256:c1516db588987450b85595586605742879e50dcce923e8973f79529651545b57"}, - {file = "numpy-1.25.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6b82655dd8efeea69dbf85d00fca40013d7f503212bc5259056244961268b66e"}, - {file = "numpy-1.25.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:e8f6049c4878cb16960fbbfb22105e49d13d752d4d8371b55110941fb3b17800"}, - {file = "numpy-1.25.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41a56b70e8139884eccb2f733c2f7378af06c82304959e174f8e7370af112e09"}, - {file = "numpy-1.25.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d5154b1a25ec796b1aee12ac1b22f414f94752c5f94832f14d8d6c9ac40bcca6"}, - {file = "numpy-1.25.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:38eb6548bb91c421261b4805dc44def9ca1a6eef6444ce35ad1669c0f1a3fc5d"}, - {file = "numpy-1.25.1-cp311-cp311-win32.whl", hash = "sha256:791f409064d0a69dd20579345d852c59822c6aa087f23b07b1b4e28ff5880fcb"}, - {file = "numpy-1.25.1-cp311-cp311-win_amd64.whl", hash = "sha256:c40571fe966393b212689aa17e32ed905924120737194b5d5c1b20b9ed0fb171"}, - {file = "numpy-1.25.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:3d7abcdd85aea3e6cdddb59af2350c7ab1ed764397f8eec97a038ad244d2d105"}, - {file = "numpy-1.25.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:1a180429394f81c7933634ae49b37b472d343cccb5bb0c4a575ac8bbc433722f"}, - {file = "numpy-1.25.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d412c1697c3853c6fc3cb9751b4915859c7afe6a277c2bf00acf287d56c4e625"}, - {file = "numpy-1.25.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:20e1266411120a4f16fad8efa8e0454d21d00b8c7cee5b5ccad7565d95eb42dd"}, - {file = "numpy-1.25.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:f76aebc3358ade9eacf9bc2bb8ae589863a4f911611694103af05346637df1b7"}, - {file = "numpy-1.25.1-cp39-cp39-win32.whl", hash = "sha256:247d3ffdd7775bdf191f848be8d49100495114c82c2bd134e8d5d075fb386a1c"}, - {file = "numpy-1.25.1-cp39-cp39-win_amd64.whl", hash = "sha256:1d5d3c68e443c90b38fdf8ef40e60e2538a27548b39b12b73132456847f4b631"}, - {file = "numpy-1.25.1-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:35a9527c977b924042170a0887de727cd84ff179e478481404c5dc66b4170009"}, - {file = "numpy-1.25.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0d3fe3dd0506a28493d82dc3cf254be8cd0d26f4008a417385cbf1ae95b54004"}, - {file = "numpy-1.25.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:012097b5b0d00a11070e8f2e261128c44157a8689f7dedcf35576e525893f4fe"}, - {file = "numpy-1.25.1.tar.gz", hash = "sha256:9a3a9f3a61480cc086117b426a8bd86869c213fc4072e606f01c4e4b66eb92bf"}, -] - -[[package]] -name = "pandas" -version = "2.0.3" -description = "Powerful data structures for data analysis, time series, and statistics" -optional = false -python-versions = ">=3.8" -files = [ - {file = "pandas-2.0.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e4c7c9f27a4185304c7caf96dc7d91bc60bc162221152de697c98eb0b2648dd8"}, - {file = "pandas-2.0.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f167beed68918d62bffb6ec64f2e1d8a7d297a038f86d4aed056b9493fca407f"}, - {file = "pandas-2.0.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ce0c6f76a0f1ba361551f3e6dceaff06bde7514a374aa43e33b588ec10420183"}, - {file = "pandas-2.0.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ba619e410a21d8c387a1ea6e8a0e49bb42216474436245718d7f2e88a2f8d7c0"}, - {file = "pandas-2.0.3-cp310-cp310-win32.whl", hash = "sha256:3ef285093b4fe5058eefd756100a367f27029913760773c8bf1d2d8bebe5d210"}, - {file = "pandas-2.0.3-cp310-cp310-win_amd64.whl", hash = "sha256:9ee1a69328d5c36c98d8e74db06f4ad518a1840e8ccb94a4ba86920986bb617e"}, - {file = "pandas-2.0.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b084b91d8d66ab19f5bb3256cbd5ea661848338301940e17f4492b2ce0801fe8"}, - {file = "pandas-2.0.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:37673e3bdf1551b95bf5d4ce372b37770f9529743d2498032439371fc7b7eb26"}, - {file = "pandas-2.0.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b9cb1e14fdb546396b7e1b923ffaeeac24e4cedd14266c3497216dd4448e4f2d"}, - {file = "pandas-2.0.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d9cd88488cceb7635aebb84809d087468eb33551097d600c6dad13602029c2df"}, - {file = "pandas-2.0.3-cp311-cp311-win32.whl", hash = "sha256:694888a81198786f0e164ee3a581df7d505024fbb1f15202fc7db88a71d84ebd"}, - {file = "pandas-2.0.3-cp311-cp311-win_amd64.whl", hash = "sha256:6a21ab5c89dcbd57f78d0ae16630b090eec626360085a4148693def5452d8a6b"}, - {file = "pandas-2.0.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:9e4da0d45e7f34c069fe4d522359df7d23badf83abc1d1cef398895822d11061"}, - {file = "pandas-2.0.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:32fca2ee1b0d93dd71d979726b12b61faa06aeb93cf77468776287f41ff8fdc5"}, - {file = "pandas-2.0.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:258d3624b3ae734490e4d63c430256e716f488c4fcb7c8e9bde2d3aa46c29089"}, - {file = "pandas-2.0.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9eae3dc34fa1aa7772dd3fc60270d13ced7346fcbcfee017d3132ec625e23bb0"}, - {file = "pandas-2.0.3-cp38-cp38-win32.whl", hash = "sha256:f3421a7afb1a43f7e38e82e844e2bca9a6d793d66c1a7f9f0ff39a795bbc5e02"}, - {file = "pandas-2.0.3-cp38-cp38-win_amd64.whl", hash = "sha256:69d7f3884c95da3a31ef82b7618af5710dba95bb885ffab339aad925c3e8ce78"}, - {file = "pandas-2.0.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:5247fb1ba347c1261cbbf0fcfba4a3121fbb4029d95d9ef4dc45406620b25c8b"}, - {file = "pandas-2.0.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:81af086f4543c9d8bb128328b5d32e9986e0c84d3ee673a2ac6fb57fd14f755e"}, - {file = "pandas-2.0.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1994c789bf12a7c5098277fb43836ce090f1073858c10f9220998ac74f37c69b"}, - {file = "pandas-2.0.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5ec591c48e29226bcbb316e0c1e9423622bc7a4eaf1ef7c3c9fa1a3981f89641"}, - {file = "pandas-2.0.3-cp39-cp39-win32.whl", hash = "sha256:04dbdbaf2e4d46ca8da896e1805bc04eb85caa9a82e259e8eed00254d5e0c682"}, - {file = "pandas-2.0.3-cp39-cp39-win_amd64.whl", hash = "sha256:1168574b036cd8b93abc746171c9b4f1b83467438a5e45909fed645cf8692dbc"}, - {file = "pandas-2.0.3.tar.gz", hash = "sha256:c02f372a88e0d17f36d3093a644c73cfc1788e876a7c4bcb4020a77512e2043c"}, -] - -[package.dependencies] -numpy = [ - {version = ">=1.21.0", markers = "python_version >= \"3.10\""}, - {version = ">=1.23.2", markers = "python_version >= \"3.11\""}, -] -python-dateutil = ">=2.8.2" -pytz = ">=2020.1" -tzdata = ">=2022.1" - -[package.extras] -all = ["PyQt5 (>=5.15.1)", "SQLAlchemy (>=1.4.16)", "beautifulsoup4 (>=4.9.3)", "bottleneck (>=1.3.2)", "brotlipy (>=0.7.0)", "fastparquet (>=0.6.3)", "fsspec (>=2021.07.0)", "gcsfs (>=2021.07.0)", "html5lib (>=1.1)", "hypothesis (>=6.34.2)", "jinja2 (>=3.0.0)", "lxml (>=4.6.3)", "matplotlib (>=3.6.1)", "numba (>=0.53.1)", "numexpr (>=2.7.3)", "odfpy (>=1.4.1)", "openpyxl (>=3.0.7)", "pandas-gbq (>=0.15.0)", "psycopg2 (>=2.8.6)", "pyarrow (>=7.0.0)", "pymysql (>=1.0.2)", "pyreadstat (>=1.1.2)", "pytest (>=7.3.2)", "pytest-asyncio (>=0.17.0)", "pytest-xdist (>=2.2.0)", "python-snappy (>=0.6.0)", "pyxlsb (>=1.0.8)", "qtpy (>=2.2.0)", "s3fs (>=2021.08.0)", "scipy (>=1.7.1)", "tables (>=3.6.1)", "tabulate (>=0.8.9)", "xarray (>=0.21.0)", "xlrd (>=2.0.1)", "xlsxwriter (>=1.4.3)", "zstandard (>=0.15.2)"] -aws = ["s3fs (>=2021.08.0)"] -clipboard = ["PyQt5 (>=5.15.1)", "qtpy (>=2.2.0)"] -compression = ["brotlipy (>=0.7.0)", "python-snappy (>=0.6.0)", "zstandard (>=0.15.2)"] -computation = ["scipy (>=1.7.1)", "xarray (>=0.21.0)"] -excel = ["odfpy (>=1.4.1)", "openpyxl (>=3.0.7)", "pyxlsb (>=1.0.8)", "xlrd (>=2.0.1)", "xlsxwriter (>=1.4.3)"] -feather = ["pyarrow (>=7.0.0)"] -fss = ["fsspec (>=2021.07.0)"] -gcp = ["gcsfs (>=2021.07.0)", "pandas-gbq (>=0.15.0)"] -hdf5 = ["tables (>=3.6.1)"] -html = ["beautifulsoup4 (>=4.9.3)", "html5lib (>=1.1)", "lxml (>=4.6.3)"] -mysql = ["SQLAlchemy (>=1.4.16)", "pymysql (>=1.0.2)"] -output-formatting = ["jinja2 (>=3.0.0)", "tabulate (>=0.8.9)"] -parquet = ["pyarrow (>=7.0.0)"] -performance = ["bottleneck (>=1.3.2)", "numba (>=0.53.1)", "numexpr (>=2.7.1)"] -plot = ["matplotlib (>=3.6.1)"] -postgresql = ["SQLAlchemy (>=1.4.16)", "psycopg2 (>=2.8.6)"] -spss = ["pyreadstat (>=1.1.2)"] -sql-other = ["SQLAlchemy (>=1.4.16)"] -test = ["hypothesis (>=6.34.2)", "pytest (>=7.3.2)", "pytest-asyncio (>=0.17.0)", "pytest-xdist (>=2.2.0)"] -xml = ["lxml (>=4.6.3)"] - [[package]] name = "protobuf" version = "4.23.4" @@ -447,18 +322,56 @@ files = [ ] [[package]] -name = "python-dateutil" -version = "2.8.2" -description = "Extensions to the standard Python datetime module" +name = "pydantic" +version = "1.10.11" +description = "Data validation and settings management using python type hints" optional = false -python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" +python-versions = ">=3.7" files = [ - {file = "python-dateutil-2.8.2.tar.gz", hash = "sha256:0123cacc1627ae19ddf3c27a5de5bd67ee4586fbdd6440d9748f8abb483d3e86"}, - {file = "python_dateutil-2.8.2-py2.py3-none-any.whl", hash = "sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9"}, + {file = "pydantic-1.10.11-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ff44c5e89315b15ff1f7fdaf9853770b810936d6b01a7bcecaa227d2f8fe444f"}, + {file = "pydantic-1.10.11-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:a6c098d4ab5e2d5b3984d3cb2527e2d6099d3de85630c8934efcfdc348a9760e"}, + {file = "pydantic-1.10.11-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:16928fdc9cb273c6af00d9d5045434c39afba5f42325fb990add2c241402d151"}, + {file = "pydantic-1.10.11-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0588788a9a85f3e5e9ebca14211a496409cb3deca5b6971ff37c556d581854e7"}, + {file = "pydantic-1.10.11-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:e9baf78b31da2dc3d3f346ef18e58ec5f12f5aaa17ac517e2ffd026a92a87588"}, + {file = "pydantic-1.10.11-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:373c0840f5c2b5b1ccadd9286782852b901055998136287828731868027a724f"}, + {file = "pydantic-1.10.11-cp310-cp310-win_amd64.whl", hash = "sha256:c3339a46bbe6013ef7bdd2844679bfe500347ac5742cd4019a88312aa58a9847"}, + {file = "pydantic-1.10.11-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:08a6c32e1c3809fbc49debb96bf833164f3438b3696abf0fbeceb417d123e6eb"}, + {file = "pydantic-1.10.11-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:a451ccab49971af043ec4e0d207cbc8cbe53dbf148ef9f19599024076fe9c25b"}, + {file = "pydantic-1.10.11-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5b02d24f7b2b365fed586ed73582c20f353a4c50e4be9ba2c57ab96f8091ddae"}, + {file = "pydantic-1.10.11-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3f34739a89260dfa420aa3cbd069fbcc794b25bbe5c0a214f8fb29e363484b66"}, + {file = "pydantic-1.10.11-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:e297897eb4bebde985f72a46a7552a7556a3dd11e7f76acda0c1093e3dbcf216"}, + {file = "pydantic-1.10.11-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d185819a7a059550ecb85d5134e7d40f2565f3dd94cfd870132c5f91a89cf58c"}, + {file = "pydantic-1.10.11-cp311-cp311-win_amd64.whl", hash = "sha256:4400015f15c9b464c9db2d5d951b6a780102cfa5870f2c036d37c23b56f7fc1b"}, + {file = "pydantic-1.10.11-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:2417de68290434461a266271fc57274a138510dca19982336639484c73a07af6"}, + {file = "pydantic-1.10.11-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:331c031ba1554b974c98679bd0780d89670d6fd6f53f5d70b10bdc9addee1713"}, + {file = "pydantic-1.10.11-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8268a735a14c308923e8958363e3a3404f6834bb98c11f5ab43251a4e410170c"}, + {file = "pydantic-1.10.11-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:44e51ba599c3ef227e168424e220cd3e544288c57829520dc90ea9cb190c3248"}, + {file = "pydantic-1.10.11-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:d7781f1d13b19700b7949c5a639c764a077cbbdd4322ed505b449d3ca8edcb36"}, + {file = "pydantic-1.10.11-cp37-cp37m-win_amd64.whl", hash = "sha256:7522a7666157aa22b812ce14c827574ddccc94f361237ca6ea8bb0d5c38f1629"}, + {file = "pydantic-1.10.11-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:bc64eab9b19cd794a380179ac0e6752335e9555d214cfcb755820333c0784cb3"}, + {file = "pydantic-1.10.11-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:8dc77064471780262b6a68fe67e013298d130414d5aaf9b562c33987dbd2cf4f"}, + {file = "pydantic-1.10.11-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fe429898f2c9dd209bd0632a606bddc06f8bce081bbd03d1c775a45886e2c1cb"}, + {file = "pydantic-1.10.11-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:192c608ad002a748e4a0bed2ddbcd98f9b56df50a7c24d9a931a8c5dd053bd3d"}, + {file = "pydantic-1.10.11-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:ef55392ec4bb5721f4ded1096241e4b7151ba6d50a50a80a2526c854f42e6a2f"}, + {file = "pydantic-1.10.11-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:41e0bb6efe86281623abbeeb0be64eab740c865388ee934cd3e6a358784aca6e"}, + {file = "pydantic-1.10.11-cp38-cp38-win_amd64.whl", hash = "sha256:265a60da42f9f27e0b1014eab8acd3e53bd0bad5c5b4884e98a55f8f596b2c19"}, + {file = "pydantic-1.10.11-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:469adf96c8e2c2bbfa655fc7735a2a82f4c543d9fee97bd113a7fb509bf5e622"}, + {file = "pydantic-1.10.11-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:e6cbfbd010b14c8a905a7b10f9fe090068d1744d46f9e0c021db28daeb8b6de1"}, + {file = "pydantic-1.10.11-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:abade85268cc92dff86d6effcd917893130f0ff516f3d637f50dadc22ae93999"}, + {file = "pydantic-1.10.11-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e9738b0f2e6c70f44ee0de53f2089d6002b10c33264abee07bdb5c7f03038303"}, + {file = "pydantic-1.10.11-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:787cf23e5a0cde753f2eabac1b2e73ae3844eb873fd1f5bdbff3048d8dbb7604"}, + {file = "pydantic-1.10.11-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:174899023337b9fc685ac8adaa7b047050616136ccd30e9070627c1aaab53a13"}, + {file = "pydantic-1.10.11-cp39-cp39-win_amd64.whl", hash = "sha256:1954f8778489a04b245a1e7b8b22a9d3ea8ef49337285693cf6959e4b757535e"}, + {file = "pydantic-1.10.11-py3-none-any.whl", hash = "sha256:008c5e266c8aada206d0627a011504e14268a62091450210eda7c07fabe6963e"}, + {file = "pydantic-1.10.11.tar.gz", hash = "sha256:f66d479cf7eb331372c470614be6511eae96f1f120344c25f3f9bb59fb1b5528"}, ] [package.dependencies] -six = ">=1.5" +typing-extensions = ">=4.2.0" + +[package.extras] +dotenv = ["python-dotenv (>=0.10.4)"] +email = ["email-validator (>=1.0.3)"] [[package]] name = "python-dotenv" @@ -474,17 +387,6 @@ files = [ [package.extras] cli = ["click (>=5.0)"] -[[package]] -name = "pytz" -version = "2023.3" -description = "World timezone definitions, modern and historical" -optional = false -python-versions = "*" -files = [ - {file = "pytz-2023.3-py2.py3-none-any.whl", hash = "sha256:a151b3abb88eda1d4e34a9814df37de2a80e301e68ba0fd856fb9b46bfbbbffb"}, - {file = "pytz-2023.3.tar.gz", hash = "sha256:1d8ce29db189191fb55338ee6d0387d82ab59f3d00eac103412d64e0ebd0c588"}, -] - [[package]] name = "requests" version = "2.31.0" @@ -506,6 +408,32 @@ urllib3 = ">=1.21.1,<3" socks = ["PySocks (>=1.5.6,!=1.5.7)"] use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] +[[package]] +name = "ruff" +version = "0.0.277" +description = "An extremely fast Python linter, written in Rust." +optional = false +python-versions = ">=3.7" +files = [ + {file = "ruff-0.0.277-py3-none-macosx_10_7_x86_64.whl", hash = "sha256:3250b24333ef419b7a232080d9724ccc4d2da1dbbe4ce85c4caa2290d83200f8"}, + {file = "ruff-0.0.277-py3-none-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl", hash = "sha256:3e60605e07482183ba1c1b7237eca827bd6cbd3535fe8a4ede28cbe2a323cb97"}, + {file = "ruff-0.0.277-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7baa97c3d7186e5ed4d5d4f6834d759a27e56cf7d5874b98c507335f0ad5aadb"}, + {file = "ruff-0.0.277-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:74e4b206cb24f2e98a615f87dbe0bde18105217cbcc8eb785bb05a644855ba50"}, + {file = "ruff-0.0.277-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:479864a3ccd8a6a20a37a6e7577bdc2406868ee80b1e65605478ad3b8eb2ba0b"}, + {file = "ruff-0.0.277-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:468bfb0a7567443cec3d03cf408d6f562b52f30c3c29df19927f1e0e13a40cd7"}, + {file = "ruff-0.0.277-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f32ec416c24542ca2f9cc8c8b65b84560530d338aaf247a4a78e74b99cd476b4"}, + {file = "ruff-0.0.277-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:14a7b2f00f149c5a295f188a643ac25226ff8a4d08f7a62b1d4b0a1dc9f9b85c"}, + {file = "ruff-0.0.277-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a9879f59f763cc5628aa01c31ad256a0f4dc61a29355c7315b83c2a5aac932b5"}, + {file = "ruff-0.0.277-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:f612e0a14b3d145d90eb6ead990064e22f6f27281d847237560b4e10bf2251f3"}, + {file = "ruff-0.0.277-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:323b674c98078be9aaded5b8b51c0d9c424486566fb6ec18439b496ce79e5998"}, + {file = "ruff-0.0.277-py3-none-musllinux_1_2_i686.whl", hash = "sha256:3a43fbe026ca1a2a8c45aa0d600a0116bec4dfa6f8bf0c3b871ecda51ef2b5dd"}, + {file = "ruff-0.0.277-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:734165ea8feb81b0d53e3bf523adc2413fdb76f1264cde99555161dd5a725522"}, + {file = "ruff-0.0.277-py3-none-win32.whl", hash = "sha256:88d0f2afb2e0c26ac1120e7061ddda2a566196ec4007bd66d558f13b374b9efc"}, + {file = "ruff-0.0.277-py3-none-win_amd64.whl", hash = "sha256:6fe81732f788894a00f6ade1fe69e996cc9e485b7c35b0f53fb00284397284b2"}, + {file = "ruff-0.0.277-py3-none-win_arm64.whl", hash = "sha256:2d4444c60f2e705c14cd802b55cd2b561d25bf4311702c463a002392d3116b22"}, + {file = "ruff-0.0.277.tar.gz", hash = "sha256:2dab13cdedbf3af6d4427c07f47143746b6b95d9e4a254ac369a0edb9280a0d2"}, +] + [[package]] name = "setuptools" version = "68.0.0" @@ -523,43 +451,114 @@ testing = ["build[virtualenv]", "filelock (>=3.4.0)", "flake8-2020", "ini2toml[l testing-integration = ["build[virtualenv]", "filelock (>=3.4.0)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "pytest", "pytest-enabler", "pytest-xdist", "tomli", "virtualenv (>=13.0.0)", "wheel"] [[package]] -name = "six" -version = "1.16.0" -description = "Python 2 and 3 compatibility utilities" -optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" -files = [ - {file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"}, - {file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"}, -] - -[[package]] -name = "tzdata" -version = "2023.3" -description = "Provider of IANA time zone data" -optional = false -python-versions = ">=2" -files = [ - {file = "tzdata-2023.3-py2.py3-none-any.whl", hash = "sha256:7e65763eef3120314099b6939b5546db7adce1e7d6f2e179e3df563c70511eda"}, - {file = "tzdata-2023.3.tar.gz", hash = "sha256:11ef1e08e54acb0d4f95bdb1be05da659673de4acbd21bf9c69e94cc5e907a3a"}, -] - -[[package]] -name = "tzlocal" -version = "5.0.1" -description = "tzinfo object for the local timezone" +name = "sniffio" +version = "1.3.0" +description = "Sniff out which async library your code is running under" optional = false python-versions = ">=3.7" files = [ - {file = "tzlocal-5.0.1-py3-none-any.whl", hash = "sha256:f3596e180296aaf2dbd97d124fe76ae3a0e3d32b258447de7b939b3fd4be992f"}, - {file = "tzlocal-5.0.1.tar.gz", hash = "sha256:46eb99ad4bdb71f3f72b7d24f4267753e240944ecfc16f25d2719ba89827a803"}, + {file = "sniffio-1.3.0-py3-none-any.whl", hash = "sha256:eecefdce1e5bbfb7ad2eeaabf7c1eeb404d7757c379bd1f7e5cce9d8bf425384"}, + {file = "sniffio-1.3.0.tar.gz", hash = "sha256:e60305c5e5d314f5389259b7f22aaa33d8f7dee49763119234af3755c55b9101"}, +] + +[[package]] +name = "sqlalchemy" +version = "1.4.49" +description = "Database Abstraction Library" +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,>=2.7" +files = [ + {file = "SQLAlchemy-1.4.49-cp27-cp27m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:2e126cf98b7fd38f1e33c64484406b78e937b1a280e078ef558b95bf5b6895f6"}, + {file = "SQLAlchemy-1.4.49-cp27-cp27mu-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:03db81b89fe7ef3857b4a00b63dedd632d6183d4ea5a31c5d8a92e000a41fc71"}, + {file = "SQLAlchemy-1.4.49-cp310-cp310-macosx_11_0_x86_64.whl", hash = "sha256:95b9df9afd680b7a3b13b38adf6e3a38995da5e162cc7524ef08e3be4e5ed3e1"}, + {file = "SQLAlchemy-1.4.49-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a63e43bf3f668c11bb0444ce6e809c1227b8f067ca1068898f3008a273f52b09"}, + {file = "SQLAlchemy-1.4.49-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f835c050ebaa4e48b18403bed2c0fda986525896efd76c245bdd4db995e51a4c"}, + {file = "SQLAlchemy-1.4.49-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9c21b172dfb22e0db303ff6419451f0cac891d2e911bb9fbf8003d717f1bcf91"}, + {file = "SQLAlchemy-1.4.49-cp310-cp310-win32.whl", hash = "sha256:5fb1ebdfc8373b5a291485757bd6431de8d7ed42c27439f543c81f6c8febd729"}, + {file = "SQLAlchemy-1.4.49-cp310-cp310-win_amd64.whl", hash = "sha256:f8a65990c9c490f4651b5c02abccc9f113a7f56fa482031ac8cb88b70bc8ccaa"}, + {file = "SQLAlchemy-1.4.49-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:8923dfdf24d5aa8a3adb59723f54118dd4fe62cf59ed0d0d65d940579c1170a4"}, + {file = "SQLAlchemy-1.4.49-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a9ab2c507a7a439f13ca4499db6d3f50423d1d65dc9b5ed897e70941d9e135b0"}, + {file = "SQLAlchemy-1.4.49-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5debe7d49b8acf1f3035317e63d9ec8d5e4d904c6e75a2a9246a119f5f2fdf3d"}, + {file = "SQLAlchemy-1.4.49-cp311-cp311-win32.whl", hash = "sha256:82b08e82da3756765c2e75f327b9bf6b0f043c9c3925fb95fb51e1567fa4ee87"}, + {file = "SQLAlchemy-1.4.49-cp311-cp311-win_amd64.whl", hash = "sha256:171e04eeb5d1c0d96a544caf982621a1711d078dbc5c96f11d6469169bd003f1"}, + {file = "SQLAlchemy-1.4.49-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:36e58f8c4fe43984384e3fbe6341ac99b6b4e083de2fe838f0fdb91cebe9e9cb"}, + {file = "SQLAlchemy-1.4.49-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b31e67ff419013f99ad6f8fc73ee19ea31585e1e9fe773744c0f3ce58c039c30"}, + {file = "SQLAlchemy-1.4.49-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:c14b29d9e1529f99efd550cd04dbb6db6ba5d690abb96d52de2bff4ed518bc95"}, + {file = "SQLAlchemy-1.4.49-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c40f3470e084d31247aea228aa1c39bbc0904c2b9ccbf5d3cfa2ea2dac06f26d"}, + {file = "SQLAlchemy-1.4.49-cp36-cp36m-win32.whl", hash = "sha256:706bfa02157b97c136547c406f263e4c6274a7b061b3eb9742915dd774bbc264"}, + {file = "SQLAlchemy-1.4.49-cp36-cp36m-win_amd64.whl", hash = "sha256:a7f7b5c07ae5c0cfd24c2db86071fb2a3d947da7bd487e359cc91e67ac1c6d2e"}, + {file = "SQLAlchemy-1.4.49-cp37-cp37m-macosx_11_0_x86_64.whl", hash = "sha256:4afbbf5ef41ac18e02c8dc1f86c04b22b7a2125f2a030e25bbb4aff31abb224b"}, + {file = "SQLAlchemy-1.4.49-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:24e300c0c2147484a002b175f4e1361f102e82c345bf263242f0449672a4bccf"}, + {file = "SQLAlchemy-1.4.49-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:201de072b818f8ad55c80d18d1a788729cccf9be6d9dc3b9d8613b053cd4836d"}, + {file = "SQLAlchemy-1.4.49-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7653ed6817c710d0c95558232aba799307d14ae084cc9b1f4c389157ec50df5c"}, + {file = "SQLAlchemy-1.4.49-cp37-cp37m-win32.whl", hash = "sha256:647e0b309cb4512b1f1b78471fdaf72921b6fa6e750b9f891e09c6e2f0e5326f"}, + {file = "SQLAlchemy-1.4.49-cp37-cp37m-win_amd64.whl", hash = "sha256:ab73ed1a05ff539afc4a7f8cf371764cdf79768ecb7d2ec691e3ff89abbc541e"}, + {file = "SQLAlchemy-1.4.49-cp38-cp38-macosx_11_0_x86_64.whl", hash = "sha256:37ce517c011560d68f1ffb28af65d7e06f873f191eb3a73af5671e9c3fada08a"}, + {file = "SQLAlchemy-1.4.49-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a1878ce508edea4a879015ab5215546c444233881301e97ca16fe251e89f1c55"}, + {file = "SQLAlchemy-1.4.49-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:0e8e608983e6f85d0852ca61f97e521b62e67969e6e640fe6c6b575d4db68557"}, + {file = "SQLAlchemy-1.4.49-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ccf956da45290df6e809ea12c54c02ace7f8ff4d765d6d3dfb3655ee876ce58d"}, + {file = "SQLAlchemy-1.4.49-cp38-cp38-win32.whl", hash = "sha256:f167c8175ab908ce48bd6550679cc6ea20ae169379e73c7720a28f89e53aa532"}, + {file = "SQLAlchemy-1.4.49-cp38-cp38-win_amd64.whl", hash = "sha256:45806315aae81a0c202752558f0df52b42d11dd7ba0097bf71e253b4215f34f4"}, + {file = "SQLAlchemy-1.4.49-cp39-cp39-macosx_11_0_x86_64.whl", hash = "sha256:b6d0c4b15d65087738a6e22e0ff461b407533ff65a73b818089efc8eb2b3e1de"}, + {file = "SQLAlchemy-1.4.49-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a843e34abfd4c797018fd8d00ffffa99fd5184c421f190b6ca99def4087689bd"}, + {file = "SQLAlchemy-1.4.49-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:1c890421651b45a681181301b3497e4d57c0d01dc001e10438a40e9a9c25ee77"}, + {file = "SQLAlchemy-1.4.49-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d26f280b8f0a8f497bc10573849ad6dc62e671d2468826e5c748d04ed9e670d5"}, + {file = "SQLAlchemy-1.4.49-cp39-cp39-win32.whl", hash = "sha256:ec2268de67f73b43320383947e74700e95c6770d0c68c4e615e9897e46296294"}, + {file = "SQLAlchemy-1.4.49-cp39-cp39-win_amd64.whl", hash = "sha256:bbdf16372859b8ed3f4d05f925a984771cd2abd18bd187042f24be4886c2a15f"}, + {file = "SQLAlchemy-1.4.49.tar.gz", hash = "sha256:06ff25cbae30c396c4b7737464f2a7fc37a67b7da409993b182b024cec80aed9"}, ] [package.dependencies] -tzdata = {version = "*", markers = "platform_system == \"Windows\""} +greenlet = {version = "!=0.4.17", markers = "python_version >= \"3\" and (platform_machine == \"win32\" or platform_machine == \"WIN32\" or platform_machine == \"AMD64\" or platform_machine == \"amd64\" or platform_machine == \"x86_64\" or platform_machine == \"ppc64le\" or platform_machine == \"aarch64\")"} [package.extras] -devenv = ["black", "check-manifest", "flake8", "pyroma", "pytest (>=4.3)", "pytest-cov", "pytest-mock (>=3.3)", "zest.releaser"] +aiomysql = ["aiomysql", "greenlet (!=0.4.17)"] +aiosqlite = ["aiosqlite", "greenlet (!=0.4.17)", "typing-extensions (!=3.10.0.1)"] +asyncio = ["greenlet (!=0.4.17)"] +asyncmy = ["asyncmy (>=0.2.3,!=0.2.4)", "greenlet (!=0.4.17)"] +mariadb-connector = ["mariadb (>=1.0.1,!=1.1.2)"] +mssql = ["pyodbc"] +mssql-pymssql = ["pymssql"] +mssql-pyodbc = ["pyodbc"] +mypy = ["mypy (>=0.910)", "sqlalchemy2-stubs"] +mysql = ["mysqlclient (>=1.4.0)", "mysqlclient (>=1.4.0,<2)"] +mysql-connector = ["mysql-connector-python"] +oracle = ["cx-oracle (>=7)", "cx-oracle (>=7,<8)"] +postgresql = ["psycopg2 (>=2.7)"] +postgresql-asyncpg = ["asyncpg", "greenlet (!=0.4.17)"] +postgresql-pg8000 = ["pg8000 (>=1.16.6,!=1.29.0)"] +postgresql-psycopg2binary = ["psycopg2-binary"] +postgresql-psycopg2cffi = ["psycopg2cffi"] +pymysql = ["pymysql", "pymysql (<1)"] +sqlcipher = ["sqlcipher3-binary"] + +[[package]] +name = "starlette" +version = "0.27.0" +description = "The little ASGI library that shines." +optional = false +python-versions = ">=3.7" +files = [ + {file = "starlette-0.27.0-py3-none-any.whl", hash = "sha256:918416370e846586541235ccd38a474c08b80443ed31c578a418e2209b3eef91"}, + {file = "starlette-0.27.0.tar.gz", hash = "sha256:6a6b0d042acb8d469a01eba54e9cda6cbd24ac602c4cd016723117d6a7e73b75"}, +] + +[package.dependencies] +anyio = ">=3.4.0,<5" + +[package.extras] +full = ["httpx (>=0.22.0)", "itsdangerous", "jinja2", "python-multipart", "pyyaml"] + +[[package]] +name = "typing-extensions" +version = "4.7.1" +description = "Backported and Experimental Type Hints for Python 3.7+" +optional = false +python-versions = ">=3.7" +files = [ + {file = "typing_extensions-4.7.1-py3-none-any.whl", hash = "sha256:440d5dd3af93b060174bf433bccd69b0babc3b15b1a8dca43789fd7f61514b36"}, + {file = "typing_extensions-4.7.1.tar.gz", hash = "sha256:b75ddc264f0ba5615db7ba217daeb99701ad295353c45f9e95963337ceeeffb2"}, +] [[package]] name = "urllib3" @@ -579,23 +578,24 @@ socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] zstd = ["zstandard (>=0.18.0)"] [[package]] -name = "werkzeug" -version = "2.3.6" -description = "The comprehensive WSGI web application library." +name = "uvicorn" +version = "0.22.0" +description = "The lightning-fast ASGI server." optional = false -python-versions = ">=3.8" +python-versions = ">=3.7" files = [ - {file = "Werkzeug-2.3.6-py3-none-any.whl", hash = "sha256:935539fa1413afbb9195b24880778422ed620c0fc09670945185cce4d91a8890"}, - {file = "Werkzeug-2.3.6.tar.gz", hash = "sha256:98c774df2f91b05550078891dee5f0eb0cb797a522c757a2452b9cee5b202330"}, + {file = "uvicorn-0.22.0-py3-none-any.whl", hash = "sha256:e9434d3bbf05f310e762147f769c9f21235ee118ba2d2bf1155a7196448bd996"}, + {file = "uvicorn-0.22.0.tar.gz", hash = "sha256:79277ae03db57ce7d9aa0567830bbb51d7a612f54d6e1e3e92da3ef24c2c8ed8"}, ] [package.dependencies] -MarkupSafe = ">=2.1.1" +click = ">=7.0" +h11 = ">=0.8" [package.extras] -watchdog = ["watchdog (>=2.3)"] +standard = ["colorama (>=0.4)", "httptools (>=0.5.0)", "python-dotenv (>=0.13)", "pyyaml (>=5.1)", "uvloop (>=0.14.0,!=0.15.0,!=0.15.1)", "watchfiles (>=0.13)", "websockets (>=10.4)"] [metadata] lock-version = "2.0" -python-versions = "^3.11" -content-hash = "b83544c2e96f0f4a8d437d6b7723918d1309cbf6063f2b2e1cf7a53ea13e6936" +python-versions = "^3.10" +content-hash = "ffb221f18cf00e0c10b030ad31eff78d5bb1f79abe5b75688ff8d0782806308a" diff --git a/pyproject.toml b/pyproject.toml index 8d7326a..a355c73 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,21 +1,73 @@ [tool.poetry] name = "pi-mta-sign" -version = "1.0.0" +version = "0.1.0" description = "" -authors = ["lucas.oskorep