diff --git a/.github/workflows/accessibility.yml b/.github/workflows/accessibility.yml
index b64c6f8..3369790 100644
--- a/.github/workflows/accessibility.yml
+++ b/.github/workflows/accessibility.yml
@@ -1,5 +1,6 @@
# Automated accessibility checks (axe-core in a real browser, plus keyboard and screen reader behaviour
-# checks), run on pushes to dev and on pull requests into main. See tests/accessibility/check.mjs.
+# checks), and simulated walks with live directions, run on pushes to dev and on pull requests into main. See
+# tests/accessibility/check.mjs and walks.mjs.
# This only checks the site; it doesn't change what's deployed. To block merging when it fails, make it a
# required check in the repository's branch protection settings for main.
name: Accessibility checks
@@ -36,3 +37,8 @@ jobs:
- name: Check accessibility
run: npm run check
+
+ # Live walking directions on the move: GPS fixes fed along routes (a normal walk, a wrong turn, poor signal,
+ # a shuttle ride). See tests/accessibility/walks.mjs.
+ - name: Simulated walks
+ run: npm run walks
diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml
index b650c2d..e1784f8 100644
--- a/.github/workflows/deploy.yml
+++ b/.github/workflows/deploy.yml
@@ -29,12 +29,12 @@ jobs:
- name: Assemble site
run: |
mkdir _site
- cp -R index.html help.html src _site/
+ cp -R index.html help.html review.html sw.js src _site/
# Browsers keep files for up to 10 minutes, so right after a deploy a returning visitor could get new
# and old files mixed together. Stamp this deploy's version onto the page's scripts and styles, and onto
# the routing modules' imports of each other (directions.js passes its own stamp to the ones it loads).
v="${GITHUB_SHA::8}"
- sed -i -E "s#(src|href)=\"(src/[^\"?]+\.(js|css))\"#\1=\"\2?v=$v\"#g" _site/index.html _site/help.html
+ sed -i -E "s#(src|href)=\"(src/[^\"?]+\.(js|css))\"#\1=\"\2?v=$v\"#g" _site/index.html _site/help.html _site/review.html
sed -i -E "s#from '(\./[^'?]+\.mjs)'#from '\1?v=$v'#g" _site/src/js/routing/*.mjs
- uses: actions/configure-pages@v6
diff --git a/.github/workflows/routing-tests.yml b/.github/workflows/routing-tests.yml
new file mode 100644
index 0000000..23f44d8
--- /dev/null
+++ b/.github/workflows/routing-tests.yml
@@ -0,0 +1,23 @@
+# Tests for the routing modules (graph building, routes, step wording, shuttle schedules, slopes), run on pushes to
+# dev and on pull requests into main. See tests/routing/. No packages to install.
+name: Routing tests
+
+on:
+ push:
+ branches: [dev]
+ pull_request:
+ branches: [main]
+ workflow_dispatch:
+
+permissions:
+ contents: read
+
+jobs:
+ test:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v7
+ - uses: actions/setup-node@v7
+ with:
+ node-version: 22
+ - run: node --test tests/routing/*.test.mjs
diff --git a/README.md b/README.md
index ed09170..9158a88 100644
--- a/README.md
+++ b/README.md
@@ -4,6 +4,58 @@ This repository contains the script for the [AccessBC](https://bcdigschol.github
This project is a collaborative project between the [BC Digital Scholarship Group](https://ds.bc.edu/), colleagues in Facilities, and feedback from BC's Council for Students with Disabilites. The purpose of this webmap is to make resources around the BC campuses more visible and findable as well as try to help users navigate campus.
+## Features at a glance
+
+**Accessible directions**
+- Step-free routes on BC's mapped accessible paths, using accessible entrances, indoor routes and elevators
+- **Avoid steep slopes** on by default (1:12, the ADA ramp limit), with one tap to turn it off, and an option to limit only uphill or only downhill
+- Avoids stairs and footpaths not checked for accessibility (unless you allow them)
+- Routes avoid elevators and entrances reported not working, and say so
+- Up to five stops on the way, such as a restroom or a lactation room
+- Time estimates at your pace (slower, gentle or brisk)
+
+**Walking directions, hands-free**
+- One tap to **Start**: follows your location, reads each step aloud, and finds a new route if you go off it
+- Clock-face directions from the phone's compass ("at your 2 o'clock"), and **Face the right way** with a tone
+- Sounds and vibration for each step, turns and arrival; the screen stays on
+- **Where am I?**: the nearest building, your progress, and what's around you
+- Works with VoiceOver, TalkBack, NVDA and JAWS, and doesn't talk over your screen reader
+
+**Beyond campus**
+- **Between campuses** (Chestnut Hill, Brighton, Newton) and from off campus, on city sidewalks from OpenStreetMap, with every street crossing as a step and whether its curb ramps are confirmed
+- **BC shuttles** in routes when they're running and quicker: "take the Newton Eagle Direct to Stuart", with BC's schedules and the next shuttle when none is running
+- **MBTA Green Line stations**, with wheelchair accessibility, live elevator and access alerts, and live next-train times
+- **Green Line trains in routes** when quicker (walk, train, maybe a shuttle, walk), boarding only at wheelchair-accessible stations when you avoid stairs
+- **Plan for later, or arrive by a time**: shuttles and trains are chosen for when you'll travel, and the route says when to leave
+- **Avoid crossings without confirmed curb ramps**, an option for wheelchair users off campus
+
+**Finding things**
+- One **Where to?** box for buildings, offices and resources inside them, T stations, and kinds of thing
+- **Find nearby**: single-stall restrooms, lactation rooms, food, printing, seating, elevators, shuttle stops, T stations and blue-light phones, by walking distance
+- **Your places**: saved and recent destinations, one tap away
+- Building information: accessible entrances (which side), elevators, and what's nearby
+
+**Safety**
+- **Blue light**: one button, always on screen, gives walking directions to the nearest working blue-light emergency phone
+- Call BC Police (617-552-4444) and 911 buttons wherever blue lights appear
+- A clear in-development notice: live directions aren't yet an assistive device to rely on
+
+**Seeing it your way**
+- Dark mode, high contrast, larger text, bigger map symbols, and a large step-by-step view
+- Works at 400% zoom, with reduce motion, and fully by keyboard
+- Everything on the map is also available as text
+
+**Reliable and shareable**
+- **Works offline** after the first visit: the whole map, directions and your places, with no signal
+- Add to your home screen like an app
+- Share a trip by link, or copy or email the directions as text
+- Report a problem (elevator out, door broken, path blocked) from the map, a building, or while walking
+
+**Built to improve**
+- Automated accessibility checks (WCAG 2.2 AA) on every change
+- Spreadsheets and a volunteer mapping guide to fill the data gaps ([docs/data-collection/](docs/data-collection/))
+- A [roadmap](ROADMAP.md) of what's next
+
## Running locally
The site is plain static files with no build step and no external services. From the repository root, run:
@@ -15,7 +67,7 @@ python3 scripts/serve.py
Then open http://localhost:8000. Use this script rather than `python3 -m http.server`, which can't serve the
`.pmtiles` basemap and terrain files (they need HTTP Range requests).
-## Accessibility features
+## Accessibility features in detail
**The interface** works like other map apps: one **Where to?** box (buildings, things in them, or kinds of
thing like single-stall restrooms, with quick buttons and a **More…** list under it), a route preview from your
@@ -52,6 +104,16 @@ On computers it's a column down the left; on phones a search bar at the top and
read each section (or the whole guide) aloud. Keep it up to date when
features change.
+**Routing tests** ([tests/routing/](tests/routing/)) cover the graph builder, routes on the real campus data, step
+wording, shuttle schedules and rides, and slopes: `node --test tests/routing/*.test.mjs` (no packages needed). They
+run in CI too ([.github/workflows/routing-tests.yml](.github/workflows/routing-tests.yml)).
+
+**Simulated walks** ([tests/accessibility/walks.mjs](tests/accessibility/walks.mjs)) test live walking directions
+on the move, feeding GPS fixes along routes: a normal walk, a wrong turn (re-routing), poor signal, and a shuttle ride.
+`cd tests/accessibility && npm run walks`, or `npm run walks -- shuttle` for one. **Timings at phone speed**
+(`npm run perf`, with the preview server on port 8765) measure the first load, routes, a re-route and Find nearby
+with the processor slowed 6x.
+
**Testing.** Automated accessibility checks run on every push to `dev` and every pull request into `main`
([.github/workflows/accessibility.yml](.github/workflows/accessibility.yml); run them locally with
`cd tests/accessibility && npm ci && npx playwright install chromium && npm run check`). Testing with
@@ -67,12 +129,15 @@ students and an orientation and mobility instructor is planned in
|---|---|
| `index.html`, `src/js/`, `src/input.css` | The app |
| `help.html`, `src/help.css` | The user guide |
+| `review.html`, `src/js/review.js`, `src/review.css` | The data review page: entrance links and gaps to check, with answers downloaded as a spreadsheet |
+| `sw.js`, `src/js/offline.js`, `src/manifest.webmanifest` | Working offline (the service worker, at the site root to cover it all) and the home screen app |
| `src/geojson/` | Campus data layers ([README](src/geojson/README.md)) |
| `src/basemap/` | Self-hosted basemap, terrain, fonts, and icons |
| `src/vendor/` | MapLibre GL JS and PMTiles ([README](src/vendor/README.md)) |
| `src/js/routing/` | Routing graph, route finder, slopes, shuttle rides, and step-by-step instructions, shared with `scripts/routing/` ([README](scripts/routing/README.md)) |
| `scripts/` | Local preview server and data/basemap tooling. Not deployed. |
| `tests/accessibility/` | Automated accessibility checks (axe-core and Playwright, used by CI only). Not deployed. |
+| `tests/routing/` | Routing tests (Node's built-in test runner). Not deployed. |
| `docs/` | Data collection sheets and the usability testing plan |
See [updatingdata.md](updatingdata.md) for editing map data. See [ROADMAP.md](ROADMAP.md) for what's planned next.
diff --git a/ROADMAP.md b/ROADMAP.md
index 1e4ee32..59a757b 100644
--- a/ROADMAP.md
+++ b/ROADMAP.md
@@ -21,14 +21,24 @@ What's planned next, and what each item needs. Roughly in priority order within
- Reports show as unconfirmed ("reported 2 h ago") and expire after a day or two unless staff confirm them in the Sheet.
- The same Sheet-and-script approach for other data staff keep up to date: building hours, closures, entrance details.
+## Data to check
+
+- **Entrance links:** 53 links drawn automatically to 49 buildings' entrances: check them on the
+ [data review page](review.html) ([or the list](docs/data-collection/entrance-links-to-check.csv), longest first). Check each on the ground, and redraw
+ checked ones as real paths. Seven entrance points are drawn well inside their building: where are the doors?
+- **Buildings still unreachable:** 9 (Brookline campus buildings, Claver Hall, 214 Beacon Street, 19 Mayflower Rd,
+ Haley House), in [buildings-without-accessible-entrance.csv](docs/data-collection/buildings-without-accessible-entrance.csv).
+
## Getting around
- **Shuttles:** live arrival times (see BC Transportation above); routes that change by day (holidays, football).
-- **MBTA Green Line:** Boston College, Chestnut Hill Ave, Reservoir and Newton Centre stations, with elevator
- outages from the MBTA's public feeds.
+- **MBTA Green Line:** stations, live alerts, live train times, and train rides in routes (with schedules by time of
+ day and weekend) are in. Next: the MBTA buses at Reservoir and Chestnut Hill.
- **City sidewalks:** 1,432 crossings around campus have no curb information in OpenStreetMap. Tagging curb ramps
there (`kerb=lowered` on a crossing's end nodes) improves routes after `node scripts/osm-sidewalks.mjs`.
-- The Brookline campus has no BC entrances mapped yet.
+- The Brookline campus has entrances mapped but no paths, in BC's data or OpenStreetMap. Volunteers can map them in
+ OpenStreetMap ([guide](docs/data-collection/openstreetmap-mapping-guide.md)), or Facilities may have a site plan
+ (it was Pine Manor College) that can be converted.
## Inside buildings
@@ -50,5 +60,8 @@ What's planned next, and what each item needs. Roughly in priority order within
## Before relying on live directions
+- Time the first load on a few real phones (`tests/accessibility/perf.mjs` slows the processor, but draws the map in
+ software, so it overstates map drawing, which a phone's graphics chip does).
+
- Test with students on real phones (iPhone and Android, with VoiceOver and TalkBack).
- Confirm the accessibility checks run on GitHub's servers ([.github/workflows/accessibility.yml](.github/workflows/accessibility.yml)).
diff --git a/docs/data-collection/README.md b/docs/data-collection/README.md
index 935817b..c4154d4 100644
--- a/docs/data-collection/README.md
+++ b/docs/data-collection/README.md
@@ -1,5 +1,13 @@
# Data collection templates
+**The easiest way to check the data:** the [data review page](https://bcdigschol.github.io/accessbc/review.html)
+(`review.html`) lists everything that needs checking (the entrance links, entrance points to check, and buildings
+directions can't reach) on a map, each with "looks right / wrong" and a note, and downloads the answers as a
+spreadsheet. It works out the list from the current data, so it's never out of date.
+
+To map walkways where none are mapped yet (the Brookline campus), see the volunteer
+[OpenStreetMap mapping guide](openstreetmap-mapping-guide.md).
+
Spreadsheets for BC Facilities and Disability Services to fill in. Each row is an entrance or elevator already on
the map (by `OBJECTID`, building, and coordinates); only the blank columns need answers. They open in Excel or
Google Sheets. Regenerate them after entrances or elevators change (this overwrites any answers, so copy those
@@ -9,6 +17,18 @@ out first):
node scripts/make-data-collection-sheets.mjs
```
+`buildings-without-accessible-entrance.csv` lists the buildings directions can't go to yet, because no accessible
+entrance is linked to the paths: most important first (buildings with restrooms, food, printing or seating, then
+those with listed resources). *What is missing* says which kind of gap it is: **no accessible entrance mapped** (someone
+needs to look at the building), or **entrance mapped, not connected to a path** (the entrance is on the map, but
+more than 15 m from any path: drawing the path to it in `accessiblepaths.geojson` is enough).
+
+`entrance-links-to-check.csv` lists the links drawn automatically from entrances that weren't connected to any
+path (by `scripts/link-entrances.mjs`), longest first. They let directions reach those buildings, but nobody has
+checked them: is the way from the door to the path paved, level, and free of steps? *Check first* marks entrances
+drawn well inside their building, where the door may be somewhere else. A checked link can be redrawn as a real
+path in `src/geojson/accessiblepaths.geojson`; re-running the script then drops the automatic one.
+
Once returned, the answers are merged into `src/geojson/entrances.geojson` and `elevators.geojson` as new
properties, and the app can then show them (automatic doors, intercom-only entrances, audible elevator
announcements, and so on) and use them in routing.
diff --git a/docs/data-collection/buildings-without-accessible-entrance.csv b/docs/data-collection/buildings-without-accessible-entrance.csv
new file mode 100644
index 0000000..730bf61
--- /dev/null
+++ b/docs/data-collection/buildings-without-accessible-entrance.csv
@@ -0,0 +1,180 @@
+priority (1 = most needed),building,campus,why it matters,what is missing,latitude,longitude,"accessible_entrance_location (which side, or a pin)",automatic_door (yes/push-button/no),level_or_ramped_entry (yes/no),no_accessible_entrance (yes/no),notes
+1,3 Lake Street,Brighton,single-stall restroom; 1 listed resource (e.g. Office of University Communications),no accessible entrance mapped,42.341210,-71.165506,,,,,
+1,36 College Road,Chestnut Hill,"indoor seating, group seating; 1 listed resource (e.g. Montserrat)",no accessible entrance mapped,42.333963,-71.172512,,,,,
+1,Administration Building,Brookline,printing,"entrance mapped, not connected to a path",42.320787,-71.156558,,,,,
+1,Manresa House,Chestnut Hill,"single-stall restroom, indoor seating; 1 listed resource (e.g. Vocations House)",no accessible entrance mapped,42.334623,-71.171993,,,,,
+3,10 Wade Street,Brighton,,no accessible entrance mapped,42.339362,-71.159750,,,,,
+3,10 Wade Street - Garage,Brighton,,no accessible entrance mapped,42.339273,-71.159626,,,,,
+3,130 Beacon Street,Chestnut Hill,,no accessible entrance mapped,42.333664,-71.163424,,,,,
+3,136 Beacon Street - Garage,Chestnut Hill,,no accessible entrance mapped,42.333518,-71.163876,,,,,
+3,14 Lane Park,Brighton,,no accessible entrance mapped,42.342008,-71.159577,,,,,
+3,14 Lane Park - Garage,Brighton,,no accessible entrance mapped,42.341886,-71.159721,,,,,
+3,14 Mayflower Rd - Garage,Chestnut Hill,,no accessible entrance mapped,42.335909,-71.172089,,,,,
+3,142 Beacon Street,Chestnut Hill,,no accessible entrance mapped,42.333575,-71.164121,,,,,
+3,156 Lake Street,Brighton,,no accessible entrance mapped,42.345854,-71.162801,,,,,
+3,16 Wade St,Brighton,,no accessible entrance mapped,42.339209,-71.159858,,,,,
+3,16 Wade St,Brighton,,no accessible entrance mapped,42.339088,-71.159787,,,,,
+3,18 Lane Park,Brighton,,no accessible entrance mapped,42.342085,-71.159778,,,,,
+3,18 Lane Park - Garage,Brighton,,no accessible entrance mapped,42.341941,-71.159887,,,,,
+3,18 Wade Street,Brighton,,no accessible entrance mapped,42.339035,-71.159980,,,,,
+3,18 Wade Street - Garage,Brighton,,no accessible entrance mapped,42.338933,-71.159878,,,,,
+3,188 Beacon Sreet Garage,Chestnut Hill,,no accessible entrance mapped,42.333216,-71.166234,,,,,
+3,188 Beacon Street,Chestnut Hill,,no accessible entrance mapped,42.333366,-71.166233,,,,,
+3,188 Foster Street,Brighton,,no accessible entrance mapped,42.343976,-71.157407,,,,,
+3,19 Lawrence Ave,Chestnut Hill,,no accessible entrance mapped,42.332674,-71.169933,,,,,
+3,19 Lawrence Ave Garage,Chestnut Hill,,no accessible entrance mapped,42.332695,-71.170159,,,,,
+3,19 Mayflower Rd,Chestnut Hill,,"entrance mapped, not connected to a path",42.335798,-71.172569,,,,,
+3,19 Mayflower Rd Garage,Chestnut Hill,,no accessible entrance mapped,42.335688,-71.172675,,,,,
+3,190 Foster Street,Brighton,,no accessible entrance mapped,42.344141,-71.156959,,,,,
+3,192 Foster Street,Brighton,,no accessible entrance mapped,42.343954,-71.156537,,,,,
+3,194 Beacon Street,Chestnut Hill,,no accessible entrance mapped,42.333327,-71.166576,,,,,
+3,194 Beacon Street Garage,Chestnut Hill,,no accessible entrance mapped,42.333175,-71.166497,,,,,
+3,194 Foster Street,Brighton,,no accessible entrance mapped,42.343575,-71.156793,,,,,
+3,196 Foster Street,Brighton,,no accessible entrance mapped,42.343599,-71.157285,,,,,
+3,2012 Commonwealth Avenue,Brighton,,no accessible entrance mapped,42.339643,-71.159257,,,,,
+3,2125 Commonwealth Avenue,Brighton,,no accessible entrance mapped,42.340655,-71.164282,,,,,
+3,214 Beacon Street,Chestnut Hill,,"entrance mapped, not connected to a path",42.333236,-71.167468,,,,,
+3,214 Beacon Street Garage,Chestnut Hill,,no accessible entrance mapped,42.333090,-71.167567,,,,,
+3,22 Lane Park,Brighton,,no accessible entrance mapped,42.342152,-71.159912,,,,,
+3,22 Lane Park - Garage,Brighton,,no accessible entrance mapped,42.342033,-71.159945,,,,,
+3,22 Stone Ave - Garage,Chestnut Hill,,no accessible entrance mapped,42.332667,-71.168032,,,,,
+3,24 Mayflower Road Garage,Chestnut Hill,,no accessible entrance mapped,42.335819,-71.172001,,,,,
+3,24 Wade Street,Brighton,,no accessible entrance mapped,42.338754,-71.160260,,,,,
+3,24 Wade Street - Garage,Brighton,,no accessible entrance mapped,42.338678,-71.160091,,,,,
+3,25 Lawrence Ave - Garage,Chestnut Hill,,no accessible entrance mapped,42.332625,-71.170294,,,,,
+3,26 Lane Park,Brighton,,no accessible entrance mapped,42.342215,-71.160098,,,,,
+3,284 Foster Street,Brighton,,no accessible entrance mapped,42.340974,-71.158904,,,,,
+3,29 Mayflower Rd,Chestnut Hill,,no accessible entrance mapped,42.335539,-71.172615,,,,,
+3,29 Mayflower Rd - Garage,Chestnut Hill,,no accessible entrance mapped,42.335523,-71.172777,,,,,
+3,29 Wade Street,Brighton,,no accessible entrance mapped,42.338889,-71.160716,,,,,
+3,29 Wade Street Garage,Brighton,,no accessible entrance mapped,42.338864,-71.160895,,,,,
+3,30 Old Colony Rd,Chestnut Hill,,no accessible entrance mapped,42.335982,-71.172761,,,,,
+3,30 Wade Street,Brighton,,no accessible entrance mapped,42.338469,-71.160398,,,,,
+3,30 Wade Street - Garage,Brighton,,no accessible entrance mapped,42.338382,-71.160338,,,,,
+3,308 Heath Street,Brookline,,no accessible entrance mapped,42.322247,-71.153690,,,,,
+3,31 Lawrence Ave - Garage,Chestnut Hill,,no accessible entrance mapped,42.332430,-71.170428,,,,,
+3,34 Lane Park,Brighton,,no accessible entrance mapped,42.342480,-71.160552,,,,,
+3,34 Lane Park - Garage,Brighton,,no accessible entrance mapped,42.342652,-71.160683,,,,,
+3,342 Beacon Street,Chestnut Hill,,no accessible entrance mapped,42.332592,-71.173318,,,,,
+3,350 Beacon Street,Chestnut Hill,,no accessible entrance mapped,42.332532,-71.173700,,,,,
+3,358 Beacon Street & Garage,Chestnut Hill,,no accessible entrance mapped,42.332506,-71.174110,,,,,
+3,36 Quincy Road,Chestnut Hill,,no accessible entrance mapped,42.334903,-71.173478,,,,,
+3,37 Wade Street,Brighton,,no accessible entrance mapped,42.338399,-71.161096,,,,,
+3,40 Lane Park & Garage,Brighton,,no accessible entrance mapped,42.342866,-71.160290,,,,,
+3,40 Mayflower Rd,Chestnut Hill,,no accessible entrance mapped,42.335118,-71.172288,,,,,
+3,40 Mayflower Rd Garage,Chestnut Hill,,no accessible entrance mapped,42.334994,-71.172180,,,,,
+3,40 Old Colony Rd - Garage,Chestnut Hill,,no accessible entrance mapped,42.335675,-71.172797,,,,,
+3,48 Old Colony Rd,Chestnut Hill,,no accessible entrance mapped,42.335584,-71.173053,,,,,
+3,48 Old Colony Rd - Garage,Chestnut Hill,,no accessible entrance mapped,42.335605,-71.172873,,,,,
+3,50 College Rd Garage,Chestnut Hill,,no accessible entrance mapped,42.334554,-71.172231,,,,,
+3,50 Quincy Road & Garage,Chestnut Hill,,no accessible entrance mapped,42.335063,-71.173869,,,,,
+3,53 Priscilla Road,Chestnut Hill,,no accessible entrance mapped,42.335360,-71.174579,,,,,
+3,53 Priscilla Road - Garage,Chestnut Hill,,no accessible entrance mapped,42.335344,-71.174771,,,,,
+3,54 Old Colony Rd,Chestnut Hill,,no accessible entrance mapped,42.335360,-71.173130,,,,,
+3,54 Old Colony Rd - Garage,Chestnut Hill,,no accessible entrance mapped,42.335400,-71.172946,,,,,
+3,60 Old Colony Rd,Chestnut Hill,,no accessible entrance mapped,42.335185,-71.173220,,,,,
+3,60 Priscilla Road,Chestnut Hill,,no accessible entrance mapped,42.335097,-71.174227,,,,,
+3,66 Priscilla Road & Garage,Chestnut Hill,,no accessible entrance mapped,42.334884,-71.174280,,,,,
+3,7-11 Wade Street,Brighton,,no accessible entrance mapped,42.339569,-71.160187,,,,,
+3,7-11 Wade Street - Garage,Brighton,,no accessible entrance mapped,42.339524,-71.160357,,,,,
+3,Academic Building,Brookline,,no accessible entrance mapped,42.321953,-71.154217,,,,,
+3,Ashby Center,Brookline,,"entrance mapped, not connected to a path",42.319903,-71.155341,,,,,
+3,Barn,Brookline,,no accessible entrance mapped,42.319203,-71.158421,,,,,
+3,Baseball Phase 2,Brighton,,no accessible entrance mapped,42.343789,-71.160906,,,,,
+3,Baseball Phase 2,Brighton,,no accessible entrance mapped,42.343789,-71.160906,,,,,
+3,BC Neighborhood Center,Brighton,,no accessible entrance mapped,42.348728,-71.160404,,,,,
+3,Bea House,Chestnut Hill,,no accessible entrance mapped,42.336880,-71.173012,,,,,
+3,Bea House - Garage,Chestnut Hill,,no accessible entrance mapped,42.336726,-71.172980,,,,,
+3,Botolph House,Chestnut Hill,,no accessible entrance mapped,42.336406,-71.172366,,,,,
+3,Bourneuf House - Garage,Chestnut Hill,,no accessible entrance mapped,42.335438,-71.171991,,,,,
+3,Bowman House - Garage,Chestnut Hill,,no accessible entrance mapped,42.335057,-71.172018,,,,,
+3,Brighton Fields - Baseball,Brighton,,no accessible entrance mapped,42.344527,-71.160663,,,,,
+3,Brighton Fields - Baseball,Brighton,,no accessible entrance mapped,42.343373,-71.160338,,,,,
+3,Brighton Fields - Baseball,Brighton,,no accessible entrance mapped,42.343489,-71.160459,,,,,
+3,Brighton Fields - Baseball,Brighton,,no accessible entrance mapped,42.343555,-71.160499,,,,,
+3,Brighton Fields - Baseball,Brighton,,no accessible entrance mapped,42.344119,-71.160584,,,,,
+3,Brighton Fields - Baseball,Brighton,,no accessible entrance mapped,42.344510,-71.160041,,,,,
+3,Brighton Fields - Baseball,Brighton,,no accessible entrance mapped,42.344583,-71.160415,,,,,
+3,Brighton Fields - Recreation,Brighton,,no accessible entrance mapped,42.345733,-71.161508,,,,,
+3,Brighton Fields - Softball,Brighton,,no accessible entrance mapped,42.344626,-71.161356,,,,,
+3,Brighton Fields - Softball,Brighton,,no accessible entrance mapped,42.344719,-71.161709,,,,,
+3,Brighton Fields - Softball,Brighton,,no accessible entrance mapped,42.345014,-71.161514,,,,,
+3,Brighton Fields - Softball,Brighton,,no accessible entrance mapped,42.345320,-71.161201,,,,,
+3,Brighton Fields - Softball,Brighton,,no accessible entrance mapped,42.345350,-71.161361,,,,,
+3,Brighton Fields - Support,Brighton,,no accessible entrance mapped,42.344270,-71.161080,,,,,
+3,Brighton Operations Center,Brighton,,no accessible entrance mapped,42.343067,-71.160965,,,,,
+3,Brock House - Garage,Chestnut Hill,,no accessible entrance mapped,42.335232,-71.172107,,,,,
+3,Children's Center,Brookline,,no accessible entrance mapped,42.319632,-71.158914,,,,,
+3,Claver Hall,Chestnut Hill,,"entrance mapped, not connected to a path",42.333077,-71.176181,,,,,
+3,Cottage Garage (Newton),Newton,,no accessible entrance mapped,42.343395,-71.193029,,,,,
+3,Daly House - Garage,Chestnut Hill,,no accessible entrance mapped,42.332951,-71.170041,,,,,
+3,East Village Building 1,Brookline,,no accessible entrance mapped,42.319416,-71.157230,,,,,
+3,East Village Building 2,Brookline,,no accessible entrance mapped,42.319262,-71.157055,,,,,
+3,East Village Building 3,Brookline,,no accessible entrance mapped,42.318906,-71.157139,,,,,
+3,East Village Building 4,Brookline,,no accessible entrance mapped,42.319149,-71.157552,,,,,
+3,East Village Building 5,Brookline,,no accessible entrance mapped,42.319295,-71.157728,,,,,
+3,East Village Building 6,Brookline,,no accessible entrance mapped,42.319637,-71.157637,,,,,
+3,Fine Arts Wing,Brookline,,no accessible entrance mapped,42.321102,-71.154318,,,,,
+3,Flanagan House,Chestnut Hill,,no accessible entrance mapped,42.334189,-71.172374,,,,,
+3,Gymnasium,Brookline,,no accessible entrance mapped,42.320990,-71.158103,,,,,
+3,Haley House,Chestnut Hill,,"entrance mapped, not connected to a path",42.331273,-71.169739,,,,,
+3,Heath Street Gatehouse,Brookline,,no accessible entrance mapped,42.322108,-71.155922,,,,,
+3,Heffernan House Garage,Chestnut Hill,,no accessible entrance mapped,42.336192,-71.172032,,,,,
+3,Information Booth,Brookline,,no accessible entrance mapped,42.321225,-71.155128,,,,,
+3,Library,Brookline,,"entrance mapped, not connected to a path",42.321402,-71.154714,,,,,
+3,Manresa House Garage,Chestnut Hill,,no accessible entrance mapped,42.334753,-71.172122,,,,,
+3,Modular Housing Unit 3,Chestnut Hill,,no accessible entrance mapped,42.337204,-71.166655,,,,,
+3,Modular Housing Unit 4,Chestnut Hill,,no accessible entrance mapped,42.337359,-71.166751,,,,,
+3,Modular Housing Unit 5,Chestnut Hill,,no accessible entrance mapped,42.337275,-71.166425,,,,,
+3,Modular Housing Unit 7,Chestnut Hill,,no accessible entrance mapped,42.337308,-71.166232,,,,,
+3,Modular Housing Unit 8,Chestnut Hill,,no accessible entrance mapped,42.337493,-71.166245,,,,,
+3,Modular Housing Unit 9,Chestnut Hill,,no accessible entrance mapped,42.337321,-71.166003,,,,,
+3,Modular Housing Unit 10,Chestnut Hill,,no accessible entrance mapped,42.337488,-71.165986,,,,,
+3,Modular Housing Unit 11,Chestnut Hill,,no accessible entrance mapped,42.337371,-71.165707,,,,,
+3,Modular Housing Unit 12,Chestnut Hill,,no accessible entrance mapped,42.337521,-71.165793,,,,,
+3,Modular Housing Unit 13,Chestnut Hill,,no accessible entrance mapped,42.337446,-71.165478,,,,,
+3,Modular Housing Unit 14,Chestnut Hill,,no accessible entrance mapped,42.337612,-71.165600,,,,,
+3,Modular Housing Unit 15,Chestnut Hill,,no accessible entrance mapped,42.337492,-71.167107,,,,,
+3,Modular Housing Unit 16,Chestnut Hill,,no accessible entrance mapped,42.337716,-71.167168,,,,,
+3,Modular Housing Unit 17,Chestnut Hill,,no accessible entrance mapped,42.337580,-71.166818,,,,,
+3,Modular Housing Unit 18,Chestnut Hill,,no accessible entrance mapped,42.337744,-71.166941,,,,,
+3,Modular Housing Unit 19,Chestnut Hill,,no accessible entrance mapped,42.337588,-71.166592,,,,,
+3,Modular Housing Unit 2,Chestnut Hill,,no accessible entrance mapped,42.337349,-71.167063,,,,,
+3,Modular Housing Unit 20,Chestnut Hill,,no accessible entrance mapped,42.337744,-71.166692,,,,,
+3,Modular Housing Unit 21,Chestnut Hill,,no accessible entrance mapped,42.337636,-71.166291,,,,,
+3,Modular Housing Unit 22,Chestnut Hill,,no accessible entrance mapped,42.337777,-71.166499,,,,,
+3,Modular Housing Unit 23,Chestnut Hill,,no accessible entrance mapped,42.337711,-71.166063,,,,,
+3,Modular Housing Unit 24,Chestnut Hill,,no accessible entrance mapped,42.337859,-71.166291,,,,,
+3,Modular Housing Unit 25,Chestnut Hill,,no accessible entrance mapped,42.337744,-71.165870,,,,,
+3,Modular Housing Unit 26,Chestnut Hill,,no accessible entrance mapped,42.337911,-71.165991,,,,,
+3,Modular Housing Unit 27,Chestnut Hill,,no accessible entrance mapped,42.337755,-71.165645,,,,,
+3,Modular Housing Unit 28,Chestnut Hill,,no accessible entrance mapped,42.338088,-71.167293,,,,,
+3,Modular Housing Unit 29,Chestnut Hill,,no accessible entrance mapped,42.337960,-71.167262,,,,,
+3,Modular Housing Unit 30,Chestnut Hill,,no accessible entrance mapped,42.338121,-71.167100,,,,,
+3,Modular Housing Unit 31,Chestnut Hill,,no accessible entrance mapped,42.337887,-71.166985,,,,,
+3,Modular Housing Unit 32,Chestnut Hill,,no accessible entrance mapped,42.338128,-71.166876,,,,,
+3,Modular Housing Unit 33,Chestnut Hill,,no accessible entrance mapped,42.337963,-71.166756,,,,,
+3,Modular Housing Unit 34,Chestnut Hill,,no accessible entrance mapped,42.338179,-71.166579,,,,,
+3,Modular Housing Unit 35,Chestnut Hill,,no accessible entrance mapped,42.337997,-71.166563,,,,,
+3,Modular Housing Unit 36,Chestnut Hill,,no accessible entrance mapped,42.338180,-71.166330,,,,,
+3,Modular Housing Unit 37,Chestnut Hill,,no accessible entrance mapped,42.338002,-71.166336,,,,,
+3,Modular Housing Unit 38,Chestnut Hill,,no accessible entrance mapped,42.338217,-71.166149,,,,,
+3,Modular Housing Unit 39,Chestnut Hill,,no accessible entrance mapped,42.338054,-71.166036,,,,,
+3,Modular Housing Unit 6,Chestnut Hill,,no accessible entrance mapped,42.337444,-71.166547,,,,,
+3,Reservoir Apartments,Brighton,,no accessible entrance mapped,42.339460,-71.158600,,,,,
+3,Science Building,Brookline,,"entrance mapped, not connected to a path",42.320813,-71.154563,,,,,
+3,South Village Building 1,Brookline,,no accessible entrance mapped,42.318374,-71.156359,,,,,
+3,South Village Building 2,Brookline,,no accessible entrance mapped,42.318247,-71.156561,,,,,
+3,South Village Building 3,Brookline,,no accessible entrance mapped,42.318174,-71.157023,,,,,
+3,South Village Building 4,Brookline,,no accessible entrance mapped,42.318483,-71.156824,,,,,
+3,South Village Building 5,Brookline,,no accessible entrance mapped,42.318614,-71.156627,,,,,
+3,South Village Building 6,Brookline,,no accessible entrance mapped,42.318670,-71.156250,,,,,
+3,Southwest Hall,Brookline,,"entrance mapped, not connected to a path",42.317731,-71.157546,,,,,
+3,St John's Seminary,Brighton,,no accessible entrance mapped,42.343964,-71.162766,,,,,
+3,West Village Building 1,Brookline,,no accessible entrance mapped,42.318773,-71.157867,,,,,
+3,West Village Building 2,Brookline,,no accessible entrance mapped,42.318574,-71.157809,,,,,
+3,West Village Building 3,Brookline,,no accessible entrance mapped,42.318201,-71.157619,,,,,
+3,West Village Building 4,Brookline,,no accessible entrance mapped,42.318201,-71.158126,,,,,
+3,West Village Building 5,Brookline,,no accessible entrance mapped,42.318356,-71.158297,,,,,
+3,West Village Building 6,Brookline,,no accessible entrance mapped,42.318764,-71.158405,,,,,
+3,Xavier Hall,Chestnut Hill,,no accessible entrance mapped,42.333820,-71.175743,,,,,
diff --git a/docs/data-collection/entrance-links-to-check.csv b/docs/data-collection/entrance-links-to-check.csv
new file mode 100644
index 0000000..9c7f5c1
--- /dev/null
+++ b/docs/data-collection/entrance-links-to-check.csv
@@ -0,0 +1,54 @@
+building,campus,entrance OBJECTID,link length (m),goes to,check first,entrance latitude,entrance longitude,link_is_accessible (yes/no),surface (paved/brick/grass/…),"obstacles (steps, curb, narrow, …)",notes
+Theater,Brookline,177,66.2,city sidewalk,,42.320051,-71.158301,,,,
+66 Lee Road,Chestnut Hill,160,63.9,city sidewalk,,42.332241,-71.169533,,,,
+Hovey House,Chestnut Hill,119,62.6,city sidewalk,,42.332324,-71.171841,,,,
+Connolly Faculty Center,Chestnut Hill,123,61.4,BC path,,42.331559,-71.170417,,,,
+Ignacio Hall,Chestnut Hill,95,59.4,city sidewalk,,42.337713,-71.169706,,,,
+Connolly Carriage House,Chestnut Hill,124,57.5,BC path,,42.331945,-71.170148,,,,
+Williams Hall,Chestnut Hill,109,55.6,city sidewalk,,42.334009,-71.173740,,,,
+Bowman House,Chestnut Hill,113,54.2,city sidewalk,,42.334958,-71.171936,,,,
+18 Quincy Road,Chestnut Hill,138,53.2,city sidewalk,,42.334446,-71.172831,,,,
+Simboli Hall,Brighton,82,51.5,city sidewalk,,42.341756,-71.164521,,,,
+Welch Hall,Chestnut Hill,110,51.4,city sidewalk,,42.334142,-71.173359,,,,
+11 Chestnut Hill Rd & Garage,Chestnut Hill,144,46.4,city sidewalk,the entrance point is 5 m inside the building: where is the door?,42.333591,-71.163010,,,,
+Murray House,Chestnut Hill,122,44.6,BC path,,42.331723,-71.170814,,,,
+24 Quincy Rd,Chestnut Hill,139,42.5,city sidewalk,the entrance point is 4 m inside the building: where is the door?,42.334583,-71.173034,,,,
+Rubenstein Hall,Chestnut Hill,96,40.7,city sidewalk,,42.338396,-71.169287,,,,
+Medeiros Townhouses,Chestnut Hill,154,39,city sidewalk,,42.333063,-71.175717,,,,
+25 Lawrence Avenue,Chestnut Hill,127,35.7,city sidewalk,,42.332507,-71.170152,,,,
+10 Stone Avenue,Chestnut Hill,132,35.3,city sidewalk,,42.333002,-71.167945,,,,
+Fitzpatrick Hall,Chestnut Hill,156,30.2,city sidewalk,,42.334233,-71.174463,,,,
+Haley Carriage House,Chestnut Hill,128,29.1,city sidewalk,,42.331901,-71.169231,,,,
+Faber House,Chestnut Hill,147,28.3,city sidewalk,,42.335981,-71.171837,,,,
+Donaldson House,Chestnut Hill,115,27.3,city sidewalk,the entrance point is 4 m inside the building: where is the door?,42.335543,-71.171794,,,,
+Joyce House,Chestnut Hill,161,26.1,city sidewalk,,42.332284,-71.170120,,,,
+Lawrence House,Chestnut Hill,116,25,city sidewalk,,42.336515,-71.172058,,,,
+Heffernan House,Chestnut Hill,117,23.2,city sidewalk,,42.336165,-71.171951,,,,
+Mary House,Newton,135,22.4,city sidewalk,,42.342869,-71.193989,,,,
+Daly House,Chestnut Hill,140,19.7,city sidewalk,,42.332944,-71.169829,,,,
+Hopkins House,Chestnut Hill,148,17.8,city sidewalk,,42.336371,-71.171944,,,,
+136 Beacon Street,Chestnut Hill,143,17.8,city sidewalk,the entrance point is 4 m inside the building: where is the door?,42.333616,-71.163908,,,,
+55 Lee Rd,Chestnut Hill,130,17.1,city sidewalk,,42.332419,-71.168756,,,,
+22 Stone Ave,Chestnut Hill,131,16.9,city sidewalk,,42.332552,-71.168259,,,,
+Connolly Carriage House,Chestnut Hill,125,16.6,city sidewalk,,42.332069,-71.170236,,,,
+Rubenstein Hall,Chestnut Hill,105,16.2,BC path,,42.338518,-71.169381,,,,
+Rahner House,Chestnut Hill,146,14.9,city sidewalk,the entrance point is 3 m inside the building: where is the door?,42.335767,-71.171775,,,,
+30 Quincy Rd,Chestnut Hill,111,14.2,city sidewalk,the entrance point is 4 m inside the building: where is the door?,42.334755,-71.173261,,,,
+Bourneuf House,Chestnut Hill,114,13.8,city sidewalk,the entrance point is 5 m inside the building: where is the door?,42.335367,-71.171823,,,,
+Brock House,Chestnut Hill,145,13.6,city sidewalk,,42.335188,-71.171850,,,,
+Shaw House,Chestnut Hill,155,11.4,city sidewalk,,42.333037,-71.175210,,,,
+50 College Rd,Chestnut Hill,112,10.7,city sidewalk,,42.334453,-71.172043,,,,
+32 Mayflower Rd & Garage,Chestnut Hill,141,10,city sidewalk,,42.335347,-71.172233,,,,
+55 Lee Rd,Chestnut Hill,129,9.8,city sidewalk,,42.332341,-71.168945,,,,
+Loyola Hall,Chestnut Hill,152,9.6,city sidewalk,,42.333378,-71.175941,,,,
+40 Old Colony Rd,Chestnut Hill,149,9.5,city sidewalk,,42.335831,-71.172943,,,,
+14 Mayflower Rd,Chestnut Hill,118,8.8,city sidewalk,,42.336053,-71.172261,,,,
+Canisius House,Chestnut Hill,159,8.7,city sidewalk,,42.332552,-71.169463,,,,
+24 Mayflower Road,Chestnut Hill,151,8.6,city sidewalk,,42.335678,-71.172168,,,,
+Roncalli Hall,Chestnut Hill,157,7,city sidewalk,,42.333563,-71.172988,,,,
+Roberts House & Garage,Chestnut Hill,162,5.5,city sidewalk,,42.333049,-71.169168,,,,
+Greycliff Hall,Brighton,163,2.7,city sidewalk,,42.340261,-71.161242,,,,
+St Ignatius Church,Chestnut Hill,100,2.6,city sidewalk,,42.339461,-71.167264,,,,
+Murray Carriage House,Chestnut Hill,126,2.5,city sidewalk,,42.332258,-71.170489,,,,
+Kostka Hall,Chestnut Hill,91,2.3,city sidewalk,,42.333208,-71.174846,,,,
+St Ignatius Church,Chestnut Hill,101,1.1,city sidewalk,,42.339254,-71.167156,,,,
diff --git a/docs/data-collection/openstreetmap-mapping-guide.md b/docs/data-collection/openstreetmap-mapping-guide.md
new file mode 100644
index 0000000..bf6c361
--- /dev/null
+++ b/docs/data-collection/openstreetmap-mapping-guide.md
@@ -0,0 +1,104 @@
+# Mapping accessible paths in OpenStreetMap: a volunteer guide
+
+Access BC can only give directions along paths it knows about. On the Brookline campus, no walkways are mapped yet,
+in BC's data or in [OpenStreetMap](https://www.openstreetmap.org) (OSM), the free map of the world that Access BC
+uses for city sidewalks. Adding them to OSM means Access BC can route there, and so can every other map app that
+uses OSM.
+
+You'll walk the campus, noting what matters for accessibility, and then draw the paths in OSM's online editor.
+Allow about two hours for the walk and two for the drawing. No experience is needed.
+
+## Before you start
+
+- **Make an OSM account** at [openstreetmap.org](https://www.openstreetmap.org/user/new), and try the editor's
+ built-in walkthrough (it opens the first time you choose **Edit**). It takes 15 minutes.
+- **Map only what you've seen, or what you can see on the editor's aerial photos.** Never copy from Google Maps,
+ Apple Maps, or other maps: their data is copyrighted, and OSM can't use it.
+- **Go in pairs**, in daylight. Stay off roadways and out of buildings and areas that aren't open to you. If anyone
+ asks, you're mapping walkways for Access BC, Boston College's accessibility map.
+- **Bring** a phone with the camera and a notes app (or the printed checklist below). A GPS track is useful but
+ optional (any free "GPX recorder" app).
+
+## 1. Walk and note (about two hours)
+
+Walk every walkway between buildings, and from the campus to the street sidewalks and bus stops. Take a photo at
+anything below; photos make the drawing much easier.
+
+| Note | Why it matters |
+|---|---|
+| **Steps**: where, how many, a handrail? Is there a ramp or level way round? | Wheelchair users can't use steps; people with canes need the count and handrails |
+| **Ramps**: where, roughly how steep (gentle, moderate, steep), handrails? | Steep ramps are hard or unsafe to use |
+| **Curbs** where a walkway meets a road or parking lot: lowered (a curb ramp), flush, or raised | A raised curb blocks a wheelchair |
+| **Surface**: asphalt, concrete, brick or pavers, gravel, grass | Gravel, grass, and broken surfaces are hard going |
+| **Narrow spots** under about 1 m (3 ft): bollards, gates, planters | Wheelchairs need about 1 m to pass |
+| **Building entrances**: which doors are step-free; automatic door, push button, or neither; card access only? | Directions go to accessible entrances |
+| **Crossings** of campus roads and drives: marked or not | Where it's safest to cross |
+| **Lighting** at night, if you know | For routes after dark |
+
+## 2. Draw it in OSM (about two hours)
+
+1. Go to [openstreetmap.org](https://www.openstreetmap.org), zoom to the Brookline campus (off Heath Street, by the
+ Reservoir), and choose **Edit**. The iD editor opens.
+2. **Choose the aerial photos:** open **Background** (the stacked-squares button, or the `B` key) and pick a
+ **MassGIS** layer if one is listed (Massachusetts' own photos, which are sharp here); otherwise Esri World Imagery
+ or Bing. Photos can be a few metres off: line up a building outline with the photo, and use **Imagery Offset**
+ in the Background panel if needed.
+3. **Draw each walkway** with **Line**: click along its middle, and double-click to finish. Choose **Foot Path** as
+ the type (`highway=footway`). Where it meets another walkway, a sidewalk, or a road, **click on that line** so the
+ two connect: unconnected lines can't be routed along.
+4. **Add the details** in the sidebar (the "Text view" button lets you type tags directly):
+
+| What you saw | Tags |
+|---|---|
+| Surface | `surface=asphalt`, `concrete`, `paving_stones` (brick and pavers), `gravel`, `grass` |
+| Width (metres) | `width=1.5` |
+| A slope you noted, in the direction you drew the line | `incline=up` or `incline=down`; or a percentage, `incline=8%` |
+| Smooth or rough | `smoothness=good`, `intermediate`, `bad` |
+| Wheelchair use | `wheelchair=yes`, `limited` (possible with difficulty), or `no` |
+| Lit at night | `lit=yes` |
+
+5. **Steps:** draw them as their own short line, type **Steps** (`highway=steps`), with `step_count=4` and
+ `handrail=yes` or `no`. Draw them from the bottom up, so `incline=up` is right.
+6. **Ramps:** draw a ramp as a Foot Path with its `incline`, and `wheelchair=yes` if a wheelchair can use it.
+7. **Crossings:** where a walkway crosses a campus road, draw the crossing as a Foot Path with `footway=crossing`
+ and `crossing=marked` or `unmarked`. On the point where it meets each curb, add `kerb=lowered`, `flush`, or
+ `raised`, and `tactile_paving=yes` or `no`.
+8. **Entrances:** add a point on the building outline where the door is, with `entrance=main` (or `yes`), and
+ `wheelchair=yes`, `limited`, or `no`, and `automatic_door=yes`, `button`, or `no`.
+9. **Save** (top right). For the comment, write what you did, such as *"Walkways, steps, and curb ramps on the
+ Boston College Brookline campus, from a survey on 2026-10-25 #AccessBC"*, and for the source, *survey; MassGIS
+ imagery*. Your changes are live in a few minutes.
+
+If you're unsure about something, leave it out, or add a note (`note=...`) saying what to check. Leaving something
+unmapped is better than guessing: Access BC would route people along it.
+
+## 3. Tell Access BC
+
+Email the Access BC team (or use the feedback form) with the date you mapped and anything you couldn't map. Send the
+photos of steps, ramps and entrances too: those details go into BC's own entrance data as well.
+
+**For the Access BC maintainers**, to bring the new paths into the app:
+
+```bash
+node scripts/osm-sidewalks.mjs
+node scripts/link-entrances.mjs
+node scripts/make-data-collection-sheets.mjs
+```
+
+The first refreshes the OSM walkways (the Brookline campus is already inside the area it covers). The second links
+the campus entrances to them. The third updates the lists of what's still missing. Then check a few routes to
+Brookline buildings in the app before deploying. The walkways count as "not checked" in Access BC, like other OSM
+data, until someone at BC confirms them.
+
+## Printable checklist
+
+| Where (building or landmark) | What (steps, ramp, curb, surface, narrow, door, crossing) | Details (count, handrail, lowered/raised, push button, …) | Photo # |
+|---|---|---|---|
+| | | | |
+| | | | |
+| | | | |
+| | | | |
+| | | | |
+| | | | |
+| | | | |
+| | | | |
diff --git a/docs/usability-testing/instruction-samples.md b/docs/usability-testing/instruction-samples.md
index 9cb4984..5bee141 100644
--- a/docs/usability-testing/instruction-samples.md
+++ b/docs/usability-testing/instruction-samples.md
@@ -100,6 +100,109 @@ you were walking the route without sight, and note anything that's unclear, unhe
2. Turn right and continue for 35 feet, with Fulton Hall on your left.
3. Arrive at the accessible entrance of Fulton Hall.
+### Gasson Hall to Kenny Cottle Library, Newton campus, walking (54 steps)
+
+1. Leave Gasson Hall by its accessible entrance and head northeast for 5 feet, with Gasson Hall on your right.
+2. Turn right and continue for 40 feet, with Gasson Hall on your right.
+3. Turn left and continue for 25 feet, with Gasson Hall on your left.
+4. Turn left and continue for 35 feet, with Gasson Hall on your left.
+5. Turn right and continue for 20 feet, with Gasson Hall on your left.
+6. Bear left and continue for 25 feet, with Gasson Hall on your left.
+7. Bear right and continue for 580 feet.
+8. Bear left and continue for 55 feet.
+9. Turn left and continue for 220 feet.
+10. Cross Commonwealth Avenue at the crosswalk. Curb ramps aren’t confirmed here.
+11. Continue outside for 30 feet.
+12. Turn right and continue for 25 feet.
+13. Cross Commonwealth Avenue Service Road at the crosswalk. Curb ramps aren’t confirmed here.
+14. Turn left and continue for 55 feet along Commonwealth Avenue Service Road.
+15. Cross Mount Alvernia Road at the crosswalk. Curb ramps aren’t confirmed here.
+16. Continue outside for 695 feet along Commonwealth Avenue Service Road.
+17. Cross Manet Road at the crosswalk. Curb ramps aren’t confirmed here.
+18. Continue outside for 545 feet along Commonwealth Avenue Service Road.
+19. Cross Garrison Street at the crosswalk. Curb ramps aren’t confirmed here.
+20. Continue outside for 410 feet along Commonwealth Avenue Service Road.
+21. Cross Hammond Street at the traffic lights. Curb ramps aren’t confirmed here.
+22. Continue outside for 670 feet along Commonwealth Avenue Service Road.
+23. Cross Nobscot Road at the crosswalk. Curb ramps aren’t confirmed here.
+24. Continue outside for 345 feet along Commonwealth Avenue Service Road.
+25. Cross Hobart Road at the crosswalk. Curb ramps aren’t confirmed here.
+26. Continue outside for 310 feet along Commonwealth Avenue Service Road.
+27. Cross Prentice Road at the crosswalk. Curb ramps aren’t confirmed here.
+28. Continue outside for 360 feet along Grant Avenue.
+29. Cross Commonwealth Avenue Service Road, then Grant Avenue at the crosswalk. There are curb ramps or level curbs at each.
+30. Bear left and continue for 205 feet along Commonwealth Avenue Service Road.
+31. Cross Avondale Road at the crosswalk. Curb ramps aren’t confirmed here.
+32. Continue outside for 255 feet along Commonwealth Avenue Service Road.
+33. Cross Westbourne Road at the crosswalk. Curb ramps aren’t confirmed here.
+34. Continue outside for 35 feet along Commonwealth Avenue Service Road.
+35. Bear right and continue for 540 feet along Westbourne Road.
+36. Cross Irving Street at the crosswalk. There are curb ramps on both sides.
+37. Bear left and continue for 550 feet along Commonwealth Avenue Service Road.
+38. Cross Sumner Street at the crosswalk. Curb ramps aren’t confirmed here.
+39. Turn right and continue for 210 feet along Commonwealth Avenue Service Road.
+40. Turn left and continue for 450 feet along Alden Street.
+41. Cross Alden Street at the crosswalk. There are curb ramps on both sides.
+42. Turn right and continue for 295 feet along Nathan Road.
+43. Cross Ward Street at the traffic lights. There are curb ramps on both sides.
+44. Continue outside for 455 feet along Ward Street.
+45. Cross Clinton Place at the crosswalk. There are curb ramps on both sides.
+46. Continue outside for 460 feet along Centre Street.
+47. Cross Mill Street at the crosswalk. There are curb ramps on both sides.
+48. Continue outside for 315 feet along Centre Street.
+49. Bear left and continue for 440 feet.
+50. Bear right and continue for 80 feet, with Stuart House on your left.
+51. Bear right and continue for 45 feet, with Stuart House on your left.
+52. Turn left and continue for 175 feet, with Barat House on your right.
+53. Bear left and continue for 10 feet, with Kenny Cottle Library on your left.
+54. Arrive at the accessible entrance of Kenny Cottle Library. It's on your left.
+
+### Gasson Hall to Kenny Cottle Library, with the shuttle (Wednesday 10 a.m.) (19 steps)
+
+1. Leave Gasson Hall by its accessible entrance and head northeast for 5 feet, with Gasson Hall on your right.
+2. Turn right and continue for 40 feet, with Gasson Hall on your right.
+3. Turn left and continue for 25 feet, with Gasson Hall on your left.
+4. Turn right and continue for 40 feet, with Gasson Hall on your right.
+5. Turn left and continue for 25 feet, with Gasson Hall on your left.
+6. Turn right and continue for 30 feet, with Gasson Hall on your right.
+7. Bear left and continue for 710 feet.
+8. Turn right and continue for 40 feet, with Voute Hall on your right.
+9. Turn left and continue for 10 feet, with Voute Hall on your left.
+10. At the Main Gate Chestnut Hill stop, take the Newton Eagle Direct shuttle to Stuart Hall Loading Dock (1 stop). Shuttles come about every 9 minutes.
+11. Get off at Stuart Hall Loading Dock and continue for 30 feet, with Stuart House on your right.
+12. Turn left and continue for 25 feet, with Stuart House on your right.
+13. Turn right and continue for 30 feet, with Stuart House on your left.
+14. Go into Stuart House and follow the indoor accessible route for 30 feet. Stuart House has an elevator.
+15. Turn left inside Stuart House and continue for 195 feet.
+16. Turn right inside Kenny Cottle Library and continue for 145 feet.
+17. Turn right inside Kenny Cottle Library and continue for 40 feet.
+18. Leave Kenny Cottle Library and continue outside for 5 feet.
+19. Arrive at the accessible entrance of Kenny Cottle Library. It's on your right.
+
+### Newton Centre T station to Gasson Hall, with the train (Wednesday 10 a.m.) (21 steps)
+
+1. Head north for 15 feet.
+2. At Newton Centre station, take a Green Line D train toward Union Square to Reservoir (2 stops). Trains come about every 8 minutes.
+3. Get off at Reservoir and continue for 20 feet.
+4. Turn right and continue for 35 feet.
+5. At the Reservoir MBTA stop, take the Comm Ave Direct shuttle to Robsham Theater (6 stops). Shuttles come about every 9 minutes.
+6. Get off at Robsham Theater and continue for 5 feet.
+7. Turn left and continue for 400 feet, with Robsham Theater on your left.
+8. Turn right and continue for 60 feet, with Commonwealth Ave Garage on your left.
+9. Go into Commonwealth Ave Garage and follow the indoor accessible route for 35 feet. Commonwealth Ave Garage has an elevator.
+10. Turn left inside Commonwealth Ave Garage and continue for 30 feet.
+11. Turn right inside Commonwealth Ave Garage and continue for 245 feet.
+12. Leave Commonwealth Ave Garage and continue outside for 55 feet.
+13. Bear left and continue for 215 feet, with St Marys Hall on your right.
+14. Turn right and continue for 230 feet, with O'Neill Library on your right.
+15. Turn left and continue for 30 feet, with Gasson Hall on your left.
+16. Turn left and continue for 25 feet, with Gasson Hall on your right.
+17. Turn sharply right and continue for 40 feet, with Gasson Hall on your left.
+18. Turn left and continue for 25 feet, with Gasson Hall on your right.
+19. Turn right and continue for 40 feet, with Gasson Hall on your left.
+20. Turn left and continue for 5 feet, with Gasson Hall on your right.
+21. Arrive at the accessible entrance of Gasson Hall.
+
Not routable with the current data: Lyons Hall to Cushing Hall.
## Other things Access BC says while guiding
@@ -121,6 +224,15 @@ Examples; distances, directions, and names change with the route.
| Where am I? | “You’re about 40 ft from Gasson Hall, at your 10 o’clock. You’re on your route. In about 35 ft: Turn left…” |
| What’s around (Where am I?) | “Accessible entrance of Devlin Hall: about 80 ft, at your 4 o’clock.” |
| Arrival | “Arrive at the accessible entrance of McElroy Commons. It’s on your right.” |
+| A street crossing (off campus) | “Cross Beacon Street at the traffic lights. There are curb ramps on both sides.” / “Cross Hammond Street, where there’s no marked crosswalk. Curb ramps aren’t confirmed here.” |
+| Crossings one after another | “Cross Commonwealth Avenue Service Road, then Grant Avenue at the crosswalk. There are curb ramps or level curbs at each.” |
+| Off campus, with no buildings to steer by | “Turn left and continue for 450 feet along Centre Street.” |
+| Off the route for a few readings (following location) | “Off route. Finding a new route from here.” then “New route. Step 1. …” |
+| Location very inaccurate (near tall buildings) | “Location is approximate (within 490 feet). Use Next and Back if steps don’t advance.” |
+| A step passed between two location readings (on a bus) | “Get off at Stuart and continue for 30 feet…”, said before the step you're on |
+| Taking a shuttle | “At the Main Gate Chestnut Hill stop, take the Newton Eagle Direct shuttle to Stuart (1 stop). Shuttles come about every 9 minutes.” |
+| Taking the train | “At Newton Centre station, take a Green Line D train toward Union Square to Reservoir (2 stops). Trains come about every 8 minutes.” |
+| Blue light (emergency) | “Emergency directions to the nearest blue-light phone, 40 ft away.” |
Sounds and vibration: one tone for a new step (from the side of a turn, with headphones); two quick high tones
for a turn coming up; two falling tones for leaving the route; three rising tones on arrival. On Android, two
diff --git a/help.html b/help.html
index 42a4204..4d24a23 100644
--- a/help.html
+++ b/help.html
@@ -4,8 +4,10 @@
How to use Access BC
+
+
@@ -28,6 +30,7 @@ Contents
Quick start
Getting directions
+ Your places, and sharing directions
Adding stops
Finding something nearby
Walking directions
@@ -80,12 +83,34 @@ Route options
Avoid stairs is on to start with. Turning it off also allows footpaths that haven't been checked for accessibility.
Routes through buildings : use them when shorter, prefer them (indoors is where the elevators are), or avoid them (for example after hours, when buildings may be locked).
Steepest slope allowed is 1:12 to start with. 1:12 is the steepest an accessible ramp may be; 1:20 is the steepest an accessible walkway should be.
+ Apply the slope limit to : uphill and downhill (to start with), uphill only, or downhill only. Some people find steep climbs hard but descents fine, and for others it's the other way round; limiting one direction can make routes much shorter.
+ Use BC shuttles and the Green Line when quicker (on to start with).
Reading the route
On the map, the route is a thick blue line, dashed where it goes indoors. Orange and red parts are steeper than 1:20 and 1:12, grey is where the slope isn't known, and dotted dark yellow is stairs. The same information is in Route details as text, and the colours are explained in Edit trip.
While a route is showing, the map only shows features along it, and other paths are faded. Turn off Only show map features along the route , in Edit trip, to see everything.
+
+ Your places, and sharing directions
+ Your places are buttons under Where to? for the places you go most, and they're in its suggestions too, so a regular trip is one press.
+
+ The last few places you've had directions to appear there by themselves (↺).
+ To keep a place, choose Save on its route (★). Edit lets you rename saved places (“Home”, “My dorm”) or remove places.
+ Your places are kept on this device only.
+
+ On a route, Copy directions copies every step as text, with the route's warnings and a link to it, to read ahead, print, or paste into a message. Email directions starts an email with them. Share this trip sends just the link.
+ My pace , in Accessibility settings, makes time estimates fit how fast you walk or wheel (slower, gentle, or brisk). It also decides when a shuttle is quicker than going on foot.
+ Without a signal
+ After your first visit, Access BC keeps a copy of the campus map and its data on your phone (about 15 MB, downloaded once in the background, and not with Data Saver on). With no signal, between buildings or indoors, the map, directions, Find nearby, Where am I? and your places still work; a note at the top says you're offline. Shuttle times may be out of date then, and reports, sharing, and the live shuttle tracker need a connection.
+ Add Access BC to your home screen
+ Access BC can go on your home screen like an app, with its own icon, opening full screen.
+
+ iPhone and iPad (Safari): choose Share, then Add to Home Screen .
+ Android (Chrome), and Chrome or Edge on a computer: choose Add Access BC to your home screen in the menu (☰), or Install in the browser's menu.
+
+
+
Adding stops
A trip can have up to five stops between the start and the destination, visited in order.
@@ -178,6 +203,7 @@ Between campuses, and from off campus
Walking directions between the Chestnut Hill, Brighton and Newton campuses, and from places near campus, use city sidewalks and street crossings from OpenStreetMap where BC's own paths don't reach. On campus, BC's checked paths are always used first.
City sidewalks haven't been checked for accessibility . The route says how much of it is on them.
+ Avoid street crossings without confirmed curb ramps (in Edit trip and Accessibility settings) keeps routes to crossings with recorded curb ramps or level curbs where there's a way round. Many curb ramps aren't recorded yet, so the route says how many unconfirmed crossings were unavoidable.
Each street crossing is a step of its own: Cross Beacon Street at the traffic lights. There are curb ramps on both sides. When curb ramps aren't recorded, the step says so, and the route says how many crossings have confirmed curb ramps. Crossings known to have a raised curb are avoided.
Off campus, directions name the street you're walking along, since there are no BC buildings to steer by.
Avoid steep slopes applies here too. Newton is hilly, so a step-free, gentle route can be much longer: the route says when a shorter, steeper one exists.
@@ -187,7 +213,15 @@ BC shuttles
Times come from BC's published schedule, with an average wait. They aren't live: check the live shuttle tracker .
Whether the shuttles have a wheelchair lift or ramp isn't confirmed yet. Check with BC Transportation before relying on one.
- To walk instead, turn off Use BC shuttles when quicker in Edit trip.
+ To walk instead, turn off Use BC shuttles and the Green Line when quicker in Edit trip.
+ Planning ahead: shuttles and trains are chosen for when you leave. To plan a trip for later (tomorrow's class, say), choose Plan for later on the route, or When in Edit trip: Leave at a time , or Arrive by a time , and the route says when to leave (To arrive by 10:00 AM, leave by 9:41 AM ). The time is kept in the trip's link when you share it.
+ The Green Line is part of routes too, when it's quicker: At Newton Centre station, take a Green Line D train toward Union Square to Reservoir . Avoiding stairs, trains are used only between wheelchair-accessible stations (they can pass through others). Times come from the MBTA's schedule, with an average wait; each station's live times are on the route.
+
+ T stations (Green Line)
+ The Green Line stations near campus are on the map (green circles; a grey ring means the station isn't wheelchair accessible), in Where to? (“Reservoir T station”), and in Find nearby (T stations ). A station's information, and any route to or from it, says whether it's wheelchair accessible, according to the MBTA, and names the nearest accessible station if not. It also shows the MBTA's live alerts there (elevators out of service, access problems, and trains not running) and the next trains in each direction, live: Green Line D toward Riverside: 5 min, 8 min . At the end of a line (Boston College, Cleveland Circle) it says when trains arrive; they leave again toward downtown a few minutes later.
+
+ Directions from here on a station starts a trip there, for when you arrive by train.
+ Train times are live, for now. For a trip planned for later, see mbta.com .
@@ -211,6 +245,8 @@ Reporting a problem
To Access BC , for a problem with the map.
Access BC copies your report and opens the form in a new tab; paste the report there and send it.
+ Links to entrances. Where a building's accessible entrance wasn't connected to any mapped path, Access BC has drawn a short link from it to the nearest path, shown on the map as a thin dashed line. These links haven't been checked on the ground (there may be a step, grass, or a curb), so routes that use them say part of the way isn't checked.
+ Missing entrances. Some buildings have no accessible entrance mapped yet, so directions can't go to them. Their building information has Tell us where its accessible entrance is : describe where it is, and it's added to the map once checked.
Avoiding it. When you report an elevator, entrance or blue-light phone as not working or blocked, your routes on this device avoid it straight away, for 3 days. Uncheck Avoid it in my routes when it's working again. Things the map data marks as not working are avoided for everyone, and shown in grey on the map. A route uses one only when there's no other way, and says so. Blue light skips phones reported not working.
diff --git a/index.html b/index.html
index f42fcae..28274f0 100644
--- a/index.html
+++ b/index.html
@@ -4,6 +4,14 @@
Access BC
+
+
+
+
+
+
+
+
@@ -16,13 +24,16 @@
+
+
+
@@ -51,7 +62,17 @@ Accessibility settings
Steepest slope allowed
- The same as the route options in Edit trip. Every route also has an Avoid steep slopes button.
+
+ Apply the slope limit to
+ Uphill and downhill Uphill only Downhill only
+
+ Avoid street crossings without confirmed curb ramps
+
+ My pace
+ Slower (about 1.8 mph) Gentle (about 2.7 mph) Brisk (about 3.1 mph)
+
+ For time estimates, and for when a shuttle is quicker than walking or wheeling.
+ Stairs and slopes are the same as the route options in Edit trip. Every route also has an Avoid steep slopes button.
Directions
@@ -107,6 +128,9 @@ Access BC
×
+ You're offline. The map, directions, Where am I? and your places still work. Shuttle times may be out of date, and reports and sharing need a connection.
+
+
Where am I?
Single-stall restrooms
@@ -155,7 +179,7 @@
Directions
- Edit trip: start, stops, and route options
+ Edit trip: start, stops, time, and route options
From
@@ -170,6 +194,19 @@
Directions
To
+
+
When
+
+ Leave now
+ Leave at a time…
+ Arrive by a time…
+
+
For which BC shuttles are running. Walking directions are the same at any time.
+
+
+ Leaving at
+
+
Route options
@@ -192,10 +229,23 @@
Route options
1:20 (5%), the steepest an accessible walkway should be
+
+ Apply the slope limit to
+
+ Uphill and downhill
+ Uphill only
+ Downhill only
+
+
+
+
+
Avoid street crossings without confirmed curb ramps
+
Off campus. Many curb ramps aren't recorded yet, so routes may be longer; if there's no way round, the route says so.
+
-
Use BC shuttles when quicker
-
Only shuttles running at the time. Whether they have a wheelchair lift or ramp isn't confirmed yet.
+
Use BC shuttles and the Green Line when quicker
+
Only those running at the time. Avoiding stairs, trains are used only between wheelchair-accessible stations. Whether BC shuttles have a wheelchair lift or ramp isn't confirmed yet.
Only show map features along the route
Route line colours
@@ -314,6 +364,7 @@
Accessibility settings
Report a problem
+
Help: how to use Access BC
About
diff --git a/review.html b/review.html
new file mode 100644
index 0000000..1fc12e1
--- /dev/null
+++ b/review.html
@@ -0,0 +1,36 @@
+
+
+
+
+Access BC data review
+
+
+
+
+
+
+
+
+
+Skip to the list to review
+
+
+
+ Loading the map data…
+
+
+
+
+
+
diff --git a/scripts/link-entrances.mjs b/scripts/link-entrances.mjs
new file mode 100644
index 0000000..6b03cfb
--- /dev/null
+++ b/scripts/link-entrances.mjs
@@ -0,0 +1,179 @@
+// Writes src/geojson/entrance-links.geojson: short links from accessible entrances that aren't connected to any
+// mapped path to the nearest path, so directions can reach buildings that otherwise can't be routed to.
+//
+// Usage: node scripts/link-entrances.mjs
+//
+// Only for buildings with no connected accessible entrance at all. Each link is a straight line from the entrance
+// to the nearest point on one of BC's outdoor accessible paths or a city sidewalk (sidewalks.geojson), and is
+// drawn only if it:
+// - is at most MAX_LINK_M long (longer ones are likelier to cross a road, a lawn, or a wall),
+// - doesn't cross a building (other than leaving its own wall at the entrance), or stairs,
+// - doesn't cross a street (any public road from OpenStreetMap; small service driveways are allowed, since
+// many entrances face one).
+// When the nearest path is on the far side of the building, the link goes round it: via one or two of the
+// building's corners (just outside its walls), up to MAX_AROUND_M in all.
+// Links haven't been checked on the ground. Routing treats them like other unchecked paths (slightly less
+// preferred, and said so on the route), and the slope limit applies to them. Check them, and replace them with
+// real paths in accessiblepaths.geojson as they're surveyed; then re-run this, and they're dropped.
+import fs from 'node:fs';
+import path from 'node:path';
+import { overpass } from './overpass.mjs';
+import { ROOT, load, buildGraph, projectBuildings, proj, unproj, dist, nearestOnSegment, nearestBuilding, campusOf } from './routing/lib.mjs';
+
+const OUT = path.join(ROOT, 'src/geojson/entrance-links.geojson');
+const MAX_LINK_M = 60;
+const MAX_AROUND_M = 90;
+const CORNER_OFFSET_M = 2.5; // how far outside a corner a link passes
+const LEAVE_WALL_M = 2; // the first stretch from the entrance may run along a wall
+const OWN_BUILDING_M = 5; // entrances are often drawn just inside their own building: the link may leave it within this
+
+// Public streets from OpenStreetMap, which links mustn't cross
+async function streets() {
+ const elements = await overpass(`[out:json][timeout:120];way["highway"~"^(residential|tertiary|secondary|primary|unclassified|trunk|primary_link|secondary_link|tertiary_link|living_street)$"](42.312,-71.207,42.355,-71.145);out geom;`);
+ return elements.map((w) => ({ type: 'Feature', properties: { Type: 'Street', name: w.tags.name }, geometry: { type: 'LineString', coordinates: w.geometry.map((g) => [g.lon, g.lat]) } }));
+}
+console.log('Downloading streets from OpenStreetMap…');
+const streetLines = await streets();
+
+const paths = load('accessiblepaths.geojson'), entrances = load('entrances.geojson'), buildingFeatures = load('buildings.geojson');
+const sidewalks = fs.existsSync(path.join(ROOT, 'src/geojson/sidewalks.geojson')) ? load('sidewalks.geojson') : [];
+const buildings = projectBuildings(buildingFeatures);
+const graph = buildGraph({ paths, entrances, buildings: buildingFeatures, elevators: load('elevators.geojson') });
+const linkedBuildings = new Set(graph.entrances.map((e) => e.building));
+const nameOf = (f) => (f.properties.Building || '').trim() || nearestBuilding(buildings, proj(f.geometry.coordinates)).name;
+
+// Lines in metres: where a link may end (outdoor paths), and what it mustn't cross (stairs, streets)
+const toLines = (features, keep) => features.filter(keep).flatMap((f) => (f.geometry.type === 'MultiLineString' ? f.geometry.coordinates : [f.geometry.coordinates]).map((c) => ({ xy: c.map(proj), f })));
+const targets = [
+ ...toLines(paths, (f) => f.properties.Type === 'Exterior').map((l) => ({ ...l, to: 'BC path' })),
+ ...toLines(sidewalks, (f) => f.properties.Type === 'Sidewalk' && !f.properties.rough && !f.properties.level).map((l) => ({ ...l, to: 'city sidewalk' })),
+];
+const barriers = [
+ ...toLines(load('paths.geojson'), (f) => f.properties.highway === 'steps'),
+ ...toLines(sidewalks, (f) => f.properties.Type === 'Stairs'),
+ ...toLines(streetLines, () => true),
+];
+
+function crosses(p1, p2, q1, q2) {
+ const d = (a, b, c) => (b[0] - a[0]) * (c[1] - a[1]) - (b[1] - a[1]) * (c[0] - a[0]);
+ return d(p1, p2, q1) * d(p1, p2, q2) < 0 && d(q1, q2, p1) * d(q1, q2, p2) < 0;
+}
+const crossesLine = (a, b, xy) => xy.some((_, i) => i > 0 && crosses(a, b, xy[i - 1], xy[i]));
+function inRing(p, ring) {
+ let inside = false;
+ for (let i = 0, j = ring.length - 1; i < ring.length; j = i++) {
+ const [xi, yi] = ring[i], [xj, yj] = ring[j];
+ if (yi > p[1] !== yj > p[1] && p[0] < ((xj - xi) * (p[1] - yi)) / (yj - yi) + xi) inside = !inside;
+ }
+ return inside;
+}
+// Whether a straight link from a (the entrance) to b is clear: no building in the way, and no stairs or street.
+// It may leave the entrance's own building within OWN_BUILDING_M of the entrance, but not cross it after that.
+function clear(a, b, own) {
+ const len = dist(a, b);
+ const along = (m) => (len > m ? [a[0] + ((b[0] - a[0]) * m) / len, a[1] + ((b[1] - a[1]) * m) / len] : b);
+ for (const bld of buildings) {
+ const start = along(bld.name === own ? OWN_BUILDING_M : LEAVE_WALL_M);
+ const [x0, y0, x1, y1] = bld.bbox;
+ if (Math.max(start[0], b[0]) < x0 || Math.min(start[0], b[0]) > x1 || Math.max(start[1], b[1]) < y0 || Math.min(start[1], b[1]) > y1) continue;
+ for (const ring of bld.rings) {
+ if (crossesLine(start, b, ring)) return `crosses ${bld.name || 'a building'}`;
+ for (let t = 0.25; t < 1; t += 0.25) if (inRing([start[0] + t * (b[0] - start[0]), start[1] + t * (b[1] - start[1])], ring)) return `crosses ${bld.name || 'a building'}`;
+ }
+ }
+ const barrier = barriers.find((l) => crossesLine(a, b, l.xy));
+ return barrier ? (barrier.f.properties.Type === 'Street' ? `crosses ${barrier.f.properties.name || 'a street'}` : 'crosses stairs') : true;
+}
+
+// The corners of a building's outline, pushed CORNER_OFFSET_M outwards (away from its middle)
+function aroundCorners(name) {
+ const out = [];
+ for (const bld of buildings.filter((b) => b.name === name)) {
+ for (const ring of bld.rings) {
+ const cx = ring.reduce((s, p) => s + p[0], 0) / ring.length, cy = ring.reduce((s, p) => s + p[1], 0) / ring.length;
+ for (const [x, y] of ring.slice(0, -1)) {
+ const d = Math.hypot(x - cx, y - cy) || 1;
+ out.push([x + ((x - cx) / d) * CORNER_OFFSET_M, y + ((y - cy) / d) * CORNER_OFFSET_M]);
+ }
+ }
+ }
+ return out;
+}
+
+const links = [], skipped = [];
+for (const f of entrances) {
+ const building = nameOf(f);
+ if (!building || linkedBuildings.has(building)) continue;
+ const a = proj(f.geometry.coordinates);
+ // How far inside its own building the entrance point is drawn (0 if on or outside the wall)
+ const own = buildings.filter((b) => b.name === building);
+ const inside = own.some((b) => b.rings.some((r) => inRing(a, r)))
+ ? Math.min(...own.flatMap((b) => b.rings.flatMap((r) => r.slice(1).map((q, i) => nearestOnSegment(a, r[i], q).d))))
+ : 0;
+ // Candidates: the nearest point on each target line, nearest first; the first clear one wins
+ const candidates = targets.map((l) => {
+ let best = { d: Infinity };
+ for (let i = 1; i < l.xy.length; i++) {
+ const r = nearestOnSegment(a, l.xy[i - 1], l.xy[i]);
+ if (r.d < best.d) best = r;
+ }
+ return { ...best, to: l.to };
+ }).filter((c) => c.d <= MAX_LINK_M).sort((x, y) => x.d - y.d);
+ const checks = candidates.map((c) => clear(a, c.point, building));
+ let pick = candidates[checks.indexOf(true)], via = [];
+ if (!pick) {
+ // Round the building: entrance → corner (→ corner) → the nearest point on a path, each leg clear
+ const corners = aroundCorners(building);
+ const legClear = (p, q) => clear(p, q, null) === true;
+ const pathsFrom = (p, budget) => targets.map((l) => {
+ let best = { d: Infinity };
+ for (let i = 1; i < l.xy.length; i++) { const r = nearestOnSegment(p, l.xy[i - 1], l.xy[i]); if (r.d < best.d) best = r; }
+ return { ...best, to: l.to };
+ }).filter((c) => c.d <= budget).sort((x, y) => x.d - y.d);
+ let best = null;
+ for (const c1 of corners) {
+ const d1 = dist(a, c1);
+ if (d1 >= MAX_AROUND_M || clear(a, c1, building) !== true) continue;
+ const tryEnd = (from, used, chain) => {
+ for (const t of pathsFrom(from, MAX_AROUND_M - used)) {
+ if (best && used + t.d >= best.total) break;
+ if (legClear(from, t.point)) { best = { ...t, total: used + t.d, via: chain }; break; }
+ }
+ };
+ tryEnd(c1, d1, [c1]);
+ for (const c2 of corners) {
+ if (c2 === c1) continue;
+ const d2 = d1 + dist(c1, c2);
+ if (d2 < MAX_AROUND_M && (!best || d2 < best.total) && legClear(c1, c2)) tryEnd(c2, d2, [c1, c2]);
+ }
+ }
+ if (best) { pick = { ...best, d: best.total }; via = best.via; }
+ }
+ if (!pick) {
+ // Why the nearest path couldn't be used, for whoever draws the path by hand
+ const why = candidates.length ? `nearest path ${candidates[0].d.toFixed(0)} m away, but the way ${checks[0]}` : `no path within ${MAX_LINK_M} m`;
+ skipped.push({ building, id: f.properties.OBJECTID, reason: why });
+ continue;
+ }
+ links.push({
+ type: 'Feature',
+ properties: { Type: 'Connector', FID: `connector-${f.properties.OBJECTID}`, Building: building, Entrance: f.properties.OBJECTID, To: pick.to, Length_m: +pick.d.toFixed(1), Campus: campusOf(f.geometry.coordinates),
+ ...(inside > 3 ? { Check: `the entrance point is ${inside.toFixed(0)} m inside the building: where is the door?` } : {}),
+ Comment: 'Drawn automatically from the entrance to the nearest path; not checked on the ground' },
+ geometry: { type: 'LineString', coordinates: [f.geometry.coordinates, ...via.map(unproj), unproj(pick.point)] },
+ });
+}
+
+fs.writeFileSync(OUT, `{"type":"FeatureCollection","features":[\n${links.map((l) => JSON.stringify(l)).join(',\n')}\n]}\n`);
+const reached = new Set(links.map((l) => l.properties.Building));
+const missing = [...new Set(skipped.map((s) => s.building))].filter((b) => !reached.has(b));
+console.log(`Wrote ${path.relative(ROOT, OUT)}: ${links.length} links for ${reached.size} buildings (${links.filter((l) => l.properties.To === 'BC path').length} to BC paths, ${links.filter((l) => l.properties.To === 'city sidewalk').length} to city sidewalks); median ${links.map((l) => l.properties.Length_m).sort((x, y) => x - y)[Math.floor(links.length / 2)] ?? 0} m`);
+if (missing.length) {
+ console.log(`Not linked (${missing.length} buildings):`);
+ for (const b of missing) console.log(` ${b}: ${skipped.find((s) => s.building === b).reason}`);
+}
+const check = links.filter((l) => l.properties.Check);
+if (check.length) {
+ console.log(`Entrance points to check (drawn well inside their building, so the door may be elsewhere): ${check.length}`);
+ for (const l of check) console.log(` ${l.properties.Building} (entrance ${l.properties.Entrance}): ${l.properties.Check}`);
+}
diff --git a/scripts/make-data-collection-sheets.mjs b/scripts/make-data-collection-sheets.mjs
index 82ba277..3bd3212 100644
--- a/scripts/make-data-collection-sheets.mjs
+++ b/scripts/make-data-collection-sheets.mjs
@@ -1,10 +1,11 @@
// Writes the fill-in spreadsheets in docs/data-collection/: one row per entrance and per elevator on the map,
-// with ID, building, and coordinates filled in and blank columns for Facilities to answer.
+// with ID, building, and coordinates filled in and blank columns for Facilities to answer; and the buildings that
+// can't be routed to yet (no accessible entrance linked to the paths), most important first.
//
// Usage: node scripts/make-data-collection-sheets.mjs
import fs from 'node:fs';
import path from 'node:path';
-import { ROOT, load, nearestBuilding, projectBuildings, proj } from './routing/lib.mjs';
+import { ROOT, load, nearestBuilding, projectBuildings, proj, buildGraph, campusOf } from './routing/lib.mjs';
const OUT = path.join(ROOT, 'docs/data-collection');
const buildings = projectBuildings(load('buildings.geojson'));
@@ -23,3 +24,44 @@ load('entrances.geojson'));
write('elevators.csv', ['OBJECTID', 'building', 'latitude', 'longitude', 'floors_served', 'hours_available', 'key_or_card_required (yes/no)',
'audible_floor_announcements (yes/no)', 'braille_and_raised_buttons (yes/no)', 'notes'],
load('elevators.geojson'));
+
+// Buildings with no accessible entrance linked to the paths, so directions can't go to them. Most important first:
+// buildings with resources, restrooms, food, or other things people search for; then those with a name and a
+// description; then the rest (garages, sheds and houses, mostly).
+const AMENITIES = { Single_res: 'single-stall restroom', Lactation: 'lactation room', Food_dinin: 'dining hall', Food_cafe: 'café',
+ Food_vend: 'vending', Printing: 'printing', Seating_in: 'indoor seating', Seating_gr: 'group seating' };
+const raw = load('buildings.geojson');
+const links = load('entrance-links.geojson'); // drawn by scripts/link-entrances.mjs: these buildings can be routed to
+const graph = buildGraph({ paths: [...load('accessiblepaths.geojson'), ...links], entrances: load('entrances.geojson'), buildings: raw, elevators: load('elevators.geojson') });
+const linked = new Set(graph.entrances.map((e) => e.building));
+const withEntrance = new Set(load('entrances.geojson').map(nameOf)); // on the map, but maybe not near a path
+const centre = (f) => {
+ const ring = (f.geometry.type === 'Polygon' ? f.geometry.coordinates : f.geometry.coordinates[0])[0];
+ return [ring.reduce((s, c) => s + c[0], 0) / ring.length, ring.reduce((s, c) => s + c[1], 0) / ring.length];
+};
+const rows = raw.map((f) => {
+ const name = (f.properties.NAME || '').trim();
+ if (!name || linked.has(name)) return null;
+ const has = Object.entries(AMENITIES).filter(([k]) => f.properties[k] === 'Yes').map(([, label]) => label);
+ const resources = (f.properties.Descriptio || '').split('\n').map((l) => l.trim()).filter((l) => l && !l.endsWith(':'));
+ const priority = has.length ? 1 : resources.length ? 2 : 3;
+ const why = [has.join(', '), resources.length ? `${resources.length} listed ${resources.length === 1 ? 'resource' : 'resources'} (e.g. ${resources[0]})` : ''].filter(Boolean).join('; ');
+ const [lon, lat] = centre(f);
+ return { priority, name, campus: campusOf([lon, lat]), why, lat, lon, onMap: withEntrance.has(name) };
+}).filter(Boolean).sort((a, b) => a.priority - b.priority || a.name.localeCompare(b.name));
+// "entrance mapped, not connected": an entrance is on the map but more than 15 m from any path, so a path to it is
+// what's missing (a data fix), not a survey of the building
+const header = ['priority (1 = most needed)', 'building', 'campus', 'why it matters', 'what is missing', 'latitude', 'longitude',
+ 'accessible_entrance_location (which side, or a pin)', 'automatic_door (yes/push-button/no)', 'level_or_ramped_entry (yes/no)', 'no_accessible_entrance (yes/no)', 'notes'];
+fs.writeFileSync(path.join(OUT, 'buildings-without-accessible-entrance.csv'),
+ [header, ...rows.map((r) => [r.priority, r.name, r.campus, r.why, r.onMap ? 'entrance mapped, not connected to a path' : 'no accessible entrance mapped', r.lat.toFixed(6), r.lon.toFixed(6), '', '', '', '', ''])].map((r) => r.map(cell).join(',')).join('\n') + '\n');
+console.log(`buildings-without-accessible-entrance.csv: ${rows.length} rows, ${rows.filter((r) => r.onMap).length} with an entrance mapped but not connected (${rows.filter((r) => r.priority === 1).length} with restrooms, food or other amenities; ${rows.filter((r) => r.priority === 2).length} with listed resources)`);
+
+// The links drawn automatically to entrances that weren't connected to a path: to check on the ground, longest first
+// (or replace with real paths in accessiblepaths.geojson, then re-run scripts/link-entrances.mjs)
+const linkHeader = ['building', 'campus', 'entrance OBJECTID', 'link length (m)', 'goes to', 'check first', 'entrance latitude', 'entrance longitude',
+ 'link_is_accessible (yes/no)', 'surface (paved/brick/grass/…)', 'obstacles (steps, curb, narrow, …)', 'notes'];
+const linkRows = [...links].sort((a, b) => b.properties.Length_m - a.properties.Length_m).map(({ properties: p, geometry: g }) =>
+ [p.Building, p.Campus, p.Entrance, p.Length_m, p.To, p.Check || '', g.coordinates[0][1].toFixed(6), g.coordinates[0][0].toFixed(6), '', '', '', '']);
+fs.writeFileSync(path.join(OUT, 'entrance-links-to-check.csv'), [linkHeader, ...linkRows].map((r) => r.map(cell).join(',')).join('\n') + '\n');
+console.log(`entrance-links-to-check.csv: ${linkRows.length} rows`);
diff --git a/scripts/mbta.mjs b/scripts/mbta.mjs
new file mode 100644
index 0000000..455bebd
--- /dev/null
+++ b/scripts/mbta.mjs
@@ -0,0 +1,184 @@
+// Writes src/geojson/mbta-stations.geojson: the MBTA Green Line stations near the campuses (B, C, and D branches),
+// with whether each is wheelchair accessible, from the MBTA's public API (api-v3.mbta.com). And
+// src/geojson/mbta-trains.json: each branch and direction through those stations, in order, with the scheduled ride
+// time between them, how often trains run (from today's late-morning schedule), and the track's line, in the same
+// shape as shuttles.json, so routes can include a train ride.
+//
+// Usage: node scripts/mbta.mjs (re-run if stations change; live alerts are fetched by the app itself)
+import fs from 'node:fs';
+import path from 'node:path';
+
+const ROOT = path.resolve(path.dirname(new URL(import.meta.url).pathname), '..');
+const OUT = path.join(ROOT, 'src/geojson/mbta-stations.geojson');
+const TRAINS_OUT = path.join(ROOT, 'src/geojson/mbta-trains.json');
+// Parts of the day whose train frequency is measured separately (hours; 24+ is after midnight)
+const DAY_PARTS = [[0, 7], [7, 9.5], [9.5, 15.5], [15.5, 19], [19, 30]];
+const pad = (n) => String(n).padStart(2, '0');
+const hhmm = (minutes) => `${pad(Math.floor(minutes / 60))}:${pad(Math.round(minutes % 60))}`;
+// The next weekday (Tuesday to Thursday, a typical day), Saturday and Sunday from today, as YYYY-MM-DD in Boston
+function nextDates() {
+ const out = {};
+ for (let d = 1; d <= 8; d++) {
+ const date = new Date(Date.now() + d * 864e5);
+ const day = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'].indexOf(date.toLocaleString('en-US', { timeZone: 'America/New_York', weekday: 'short' }));
+ const iso = date.toLocaleDateString('en-CA', { timeZone: 'America/New_York' });
+ if ([2, 3, 4].includes(day)) out.weekday ||= iso;
+ if (day === 6) out.saturday ||= iso;
+ if (day === 0) out.sunday ||= iso;
+ }
+ return out;
+}
+const API = 'https://api-v3.mbta.com';
+const CENTRE = { latitude: 42.335, longitude: -71.172 }, RADIUS_DEG = 0.035; // the campuses and a little beyond
+const BRANCHES = { 'Green-B': 'Green Line B', 'Green-C': 'Green Line C', 'Green-D': 'Green Line D' };
+const WHEELCHAIR = { 1: 'yes', 2: 'no' }; // 0: not known
+
+// Without an API key the MBTA allows 20 requests a minute: when it says to slow down, wait and try again
+async function get(pathAndQuery) {
+ let res;
+ for (let attempt = 0; attempt < 6; attempt++) {
+ res = await fetch(API + pathAndQuery, { headers: { 'User-Agent': 'AccessBC/1.0 (Boston College accessibility map)' } });
+ if (res.status !== 429) break;
+ const reset = Number(res.headers.get('x-ratelimit-reset')) * 1000;
+ const wait = Math.min(65000, Math.max(5000, reset ? reset - Date.now() + 1000 : 15000));
+ console.log(` the MBTA asks to slow down; waiting ${Math.round(wait / 1000)} s`);
+ await new Promise((r) => setTimeout(r, wait));
+ }
+ if (!res.ok) throw new Error(`${pathAndQuery}: ${res.status}`);
+ return res.json();
+}
+
+const stations = new Map(); // parent station id -> {name, lonlat, wheelchair, lines, platforms}
+for (const [route, line] of Object.entries(BRANCHES)) {
+ const query = new URLSearchParams({ 'filter[route]': route, 'filter[latitude]': CENTRE.latitude, 'filter[longitude]': CENTRE.longitude, 'filter[radius]': RADIUS_DEG, include: 'parent_station' });
+ const { data, included = [] } = await get(`/stops?${query}`);
+ const parents = new Map(included.map((p) => [p.id, p.attributes]));
+ for (const platform of data) {
+ const parentId = platform.relationships.parent_station.data?.id || platform.id;
+ const parent = parents.get(parentId) || platform.attributes;
+ const station = stations.get(parentId) || { name: parent.name, lonlat: [parent.longitude, parent.latitude], wheelchair: WHEELCHAIR[parent.wheelchair_boarding] || 'unknown', lines: [], platforms: [] };
+ if (!station.lines.includes(line)) station.lines.push(line);
+ station.platforms.push({ toward: platform.attributes.platform_name, wheelchair: WHEELCHAIR[platform.attributes.wheelchair_boarding] || 'unknown' });
+ stations.set(parentId, station);
+ }
+}
+
+const features = [...stations].map(([id, s]) => ({
+ type: 'Feature',
+ properties: {
+ Id: id, Name: s.name, Lines: s.lines.join(', '), Wheelchair: s.wheelchair,
+ // Platforms that aren't step-free at a station that is (e.g. one direction only), for the popup
+ Platforms: s.platforms.map((p) => `${p.toward}: ${p.wheelchair === 'yes' ? 'accessible' : p.wheelchair === 'no' ? 'not accessible' : 'not known'}`).join('; '),
+ },
+ geometry: { type: 'Point', coordinates: s.lonlat.map((n) => +n.toFixed(6)) },
+})).sort((a, b) => a.properties.Name.localeCompare(b.properties.Name));
+fs.writeFileSync(OUT, `{"type":"FeatureCollection","source":"MBTA V3 API, ${new Date().toISOString().slice(0, 10)}","features":[\n${features.map((f) => JSON.stringify(f)).join(',\n')}\n]}\n`);
+console.log(`Wrote ${path.relative(ROOT, OUT)}: ${features.length} stations (${features.filter((f) => f.properties.Wheelchair === 'yes').length} wheelchair accessible)`);
+for (const f of features) console.log(` ${f.properties.Name} (${f.properties.Lines}): ${f.properties.Wheelchair}`);
+
+// ---- Train rides through these stations ----
+
+// Google's encoded polyline format (precision 5) to [[lon, lat]]
+function decodePolyline(str) {
+ const out = [];
+ let i = 0, lat = 0, lon = 0;
+ const next = () => {
+ let result = 0, shift = 0, b;
+ do { b = str.charCodeAt(i++) - 63; result |= (b & 0x1f) << shift; shift += 5; } while (b >= 0x20);
+ return result & 1 ? ~(result >> 1) : result >> 1;
+ };
+ while (i < str.length) { lat += next(); lon += next(); out.push([+(lon / 1e5).toFixed(5), +(lat / 1e5).toFixed(5)]); }
+ return out;
+}
+const metres = ([lon1, lat1], [lon2, lat2]) => Math.hypot((lon2 - lon1) * 111320 * Math.cos((lat1 * Math.PI) / 180), (lat2 - lat1) * 110540);
+
+const DATES = nextDates();
+console.log(`Measuring train frequency on ${Object.entries(DATES).map(([k, v]) => `${k} ${v}`).join(', ')}`);
+const trainRoutes = [];
+for (const [route, line] of Object.entries(BRANCHES)) {
+ const { data: [routeInfo] } = await get(`/routes?filter[id]=${route}`);
+ for (const direction of [0, 1]) {
+ // Today's late-morning trips in this direction: the stations each passes, in order, with times
+ const query = new URLSearchParams({ 'filter[route]': route, 'filter[direction_id]': direction, 'filter[min_time]': '10:00', 'filter[max_time]': '11:30', include: 'stop' });
+ const { data, included = [] } = await get(`/schedules?${query}`);
+ const parentOf = new Map(included.map((st) => [st.id, st.relationships.parent_station.data?.id || st.id]));
+ const trips = new Map();
+ for (const row of data) {
+ const station = parentOf.get(row.relationships.stop.data.id);
+ const time = Date.parse(row.attributes.departure_time || row.attributes.arrival_time);
+ const trip = row.relationships.trip.data.id;
+ if (!trips.has(trip)) trips.set(trip, []);
+ trips.get(trip).push({ seq: row.attributes.stop_sequence, station, time });
+ }
+ const longest = [...trips.values()].sort((a, b) => b.length - a.length)[0]?.sort((a, b) => a.seq - b.seq) || [];
+ const ours = longest.filter((x) => stations.has(x.station));
+ if (ours.length < 2) continue;
+ // How often: the median gap between departures from the middle station here
+ const middle = ours[Math.floor(ours.length / 2)].station;
+ const times = [...trips.values()].flatMap((t) => t.filter((x) => x.station === middle).map((x) => x.time)).sort((a, b) => a - b);
+ const gaps = times.slice(1).map((t, i) => (t - times[i]) / 60000).sort((a, b) => a - b);
+ const every = Math.max(4, Math.round(gaps[Math.floor(gaps.length / 2)] || 10));
+ // When trains run there, and how often, through the day, on a weekday, a Saturday and a Sunday
+ const service = [];
+ for (const [dayType, date] of Object.entries(DATES)) {
+ const q = new URLSearchParams({ 'filter[route]': route, 'filter[direction_id]': direction, 'filter[stop]': middle, 'filter[date]': date });
+ const { data: day } = await get(`/schedules?${q}`);
+ // Minutes after that day's midnight, from the times' own Boston clock time ("2026-10-21T05:12:00-04:00");
+ // trains after midnight belong to the service day before, so count past 24:00
+ const leaves = day.map((r) => r.attributes.departure_time || r.attributes.arrival_time).filter(Boolean).map((t) => {
+ const [, d, h, m] = /^(\d{4}-\d\d-\d\d)T(\d\d):(\d\d)/.exec(t);
+ return Number(h) * 60 + Number(m) + (d > date ? 1440 : 0);
+ }).sort((a, b) => a - b);
+ if (leaves.length < 2) continue;
+ const days = { weekday: [1, 2, 3, 4, 5], saturday: [6], sunday: [0] }[dayType];
+ // Parts meet at their boundaries (no gap between, say, 6:58 and 7:05); the day starts with the first train
+ // and ends with the last
+ const first = leaves[0], last = leaves.at(-1) + 1;
+ for (const [from, to] of DAY_PARTS) {
+ const start = Math.max(from * 60, first), end = Math.min(to * 60, last);
+ if (start >= end) continue;
+ const inPart = leaves.filter((m) => m >= from * 60 && m < to * 60);
+ const partGaps = inPart.slice(1).map((m, i) => m - inPart[i]).sort((a, b) => a - b);
+ const partEvery = partGaps.length ? Math.round(partGaps[Math.floor(partGaps.length / 2)]) : every;
+ service.push({ days, from: hhmm(start), to: hhmm(end), every: Math.max(4, partEvery) });
+ }
+ }
+ // The track's line, from one of these trips
+ const tripId = [...trips.keys()].find((id) => trips.get(id) === longest);
+ const { included: shapes = [] } = await get(`/trips/${tripId}?include=shape`);
+ const track = decodePolyline(shapes[0]?.attributes.polyline || '');
+ let from = 0;
+ const stops = ours.map((x, k) => {
+ const st = stations.get(x.station);
+ let best = { i: from, d: Infinity };
+ for (let i = from; i < track.length; i++) { const d = metres(track[i], st.lonlat); if (d < best.d) best = { i, d }; }
+ from = best.i;
+ return { name: st.name, id: x.station, lonlat: st.lonlat.map((n) => +n.toFixed(6)), wheelchair: st.wheelchair,
+ rideToNext: k + 1 < ours.length ? Math.round((ours[k + 1].time - x.time) / 1000) : 0, dwell: 0, at: best.i };
+ });
+ const first = stops[0].at, last = stops.at(-1).at;
+ trainRoutes.push({
+ id: `${route}-${direction}`, name: line, mode: 'train', toward: routeInfo.attributes.direction_destinations[direction],
+ loop: false, service: service.length ? service : [{ days: [0, 1, 2, 3, 4, 5, 6], from: '05:00', to: '25:00', every }],
+ stops: stops.map((st) => ({ ...st, at: st.at - first })), line: track.slice(first, last + 1),
+ });
+ console.log(` ${line} toward ${routeInfo.attributes.direction_destinations[direction]}: ${stops.map((st) => st.name).join(' → ')}`);
+ for (const sv of service) console.log(` ${sv.days.length === 5 ? 'weekdays' : sv.days[0] === 6 ? 'Saturday' : 'Sunday'} ${sv.from}–${sv.to}: every ${sv.every} min`);
+ }
+}
+// A branch with no trains through here in the window that day (a diversion, buses replacing trains, a holiday) keeps
+// its previous data, so one unusual day doesn't take it out of routing
+const previous = fs.existsSync(TRAINS_OUT) ? JSON.parse(fs.readFileSync(TRAINS_OUT, 'utf8')).routes : [];
+for (const old of previous) {
+ if (trainRoutes.some((r) => r.id === old.id)) continue;
+ console.warn(` ${old.name} toward ${old.toward}: no trains in today's schedule here; keeping the previous data`);
+ trainRoutes.push(old);
+}
+const expected = Object.keys(BRANCHES).length * 2;
+if (trainRoutes.length < expected) console.warn(` Only ${trainRoutes.length} of ${expected} branch directions: check the MBTA's service changes, and run this again on a normal weekday`);
+fs.writeFileSync(TRAINS_OUT, JSON.stringify({
+ source: `MBTA V3 API schedules, ${new Date().toISOString().slice(0, 10)}`,
+ note: 'From the MBTA schedule for a typical weekday, a Saturday and a Sunday: first and last trains, and how often they run in each part of the day.',
+ routes: trainRoutes,
+}) + '\n');
+console.log(`Wrote ${path.relative(ROOT, TRAINS_OUT)}: ${trainRoutes.length} train routes`);
diff --git a/scripts/osm-sidewalks.mjs b/scripts/osm-sidewalks.mjs
index f4ccfa5..9006e0e 100644
--- a/scripts/osm-sidewalks.mjs
+++ b/scripts/osm-sidewalks.mjs
@@ -19,42 +19,18 @@
// osm the way's id
import fs from 'node:fs';
import path from 'node:path';
+import { overpass } from './overpass.mjs';
const ROOT = path.resolve(path.dirname(new URL(import.meta.url).pathname), '..');
const OUT = path.join(ROOT, 'src/geojson/sidewalks.geojson');
// The campuses and the streets between them, with a margin for arriving from nearby (south, west, north, east)
const BBOX = [42.312, -71.207, 42.355, -71.145];
-const ENDPOINTS = ['https://overpass-api.de/api/interpreter', 'https://overpass.private.coffee/api/interpreter'];
const WALKABLE = new Set(['footway', 'pedestrian', 'path', 'steps', 'living_street', 'cycleway', 'track']);
const ROADS = new Set(['residential', 'tertiary', 'secondary', 'primary', 'unclassified', 'trunk', 'service', 'primary_link', 'secondary_link', 'tertiary_link']);
const ROUGH = new Set(['dirt', 'gravel', 'fine_gravel', 'grass', 'sand', 'ground', 'earth', 'mud', 'unpaved', 'woodchips', 'pebblestone', 'rock', 'compacted', 'grass_paver']);
const KERB_RANK = { raised: 3, rolled: 2, yes: 2, unknown: 1, lowered: 0, flush: 0, no: 0 };
-// The public Overpass servers are often busy: try each in turn, waiting longer each round
-async function overpass(query) {
- let wait = 5;
- for (let round = 1; round <= 5; round++) {
- for (const endpoint of ENDPOINTS) {
- try {
- const res = await fetch(endpoint, {
- method: 'POST',
- headers: { 'User-Agent': 'AccessBC/1.0 (Boston College accessibility map)', 'Content-Type': 'application/x-www-form-urlencoded' },
- body: `data=${encodeURIComponent(query)}`,
- });
- if (res.ok) return (await res.json()).elements;
- console.log(` ${new URL(endpoint).host}: ${res.status}`);
- } catch (err) {
- console.log(` ${new URL(endpoint).host}: ${err.message}`);
- }
- }
- console.log(` busy; trying again in ${wait} s`);
- await new Promise((r) => setTimeout(r, wait * 1000));
- wait *= 2;
- }
- throw new Error('Overpass servers are busy. Try again later.');
-}
-
// ---- Geometry (flat metres around the campus, as in src/js/routing/network.mjs) ----
const LON0 = -71.175, LAT0 = 42.335;
const KX = 111320 * Math.cos((LAT0 * Math.PI) / 180), KY = 110540;
@@ -94,18 +70,26 @@ async function main() {
const namedRoads = ways.filter((w) => ROADS.has(w.tags.highway) && w.tags.name)
.map((w) => ({ name: w.tags.name, xy: w.geometry.map((g) => proj([g.lon, g.lat])) }));
- const nearestRoadName = (xy) => {
- // The road nearest the middle of the way, within 30 m
- const mid = xy[Math.floor(xy.length / 2)];
+ // The road nearest a point, within 30 m
+ const roadAt = (p) => {
let best = { d: 30, name: '' };
for (const r of namedRoads) {
for (let i = 1; i < r.xy.length; i++) {
- const d = distToSegment(mid, r.xy[i - 1], r.xy[i]);
+ const d = distToSegment(p, r.xy[i - 1], r.xy[i]);
if (d < best.d) best = { d, name: r.name };
}
}
return best.name;
};
+ // A crossing is named after the road at its middle (the one it crosses). A sidewalk is named after the road
+ // nearest most of it: at its middle alone, a long sidewalk can pick up a side street it passes.
+ const nearestRoadName = (xy, crossing = false) => {
+ if (crossing) return roadAt(xy[Math.floor(xy.length / 2)]);
+ const samples = xy.length <= 7 ? xy : Array.from({ length: 7 }, (_, k) => xy[Math.round((k * (xy.length - 1)) / 6)]);
+ const votes = {};
+ for (const p of samples) { const name = roadAt(p); if (name) votes[name] = (votes[name] || 0) + 1; }
+ return Object.entries(votes).sort((a, b) => b[1] - a[1])[0]?.[0] || '';
+ };
const features = [];
for (const w of ways) {
@@ -124,7 +108,7 @@ async function main() {
const xy = coordinates.map(proj);
const props = { Type, osm: w.id };
// Sidewalks are named after the street beside them, crossings after the street they cross
- const name = Type === 'Street' ? t.name : t.name || ((Type === 'Sidewalk' && t.footway === 'sidewalk') || Type === 'Crossing' ? nearestRoadName(xy) : '');
+ const name = Type === 'Street' ? t.name : t.name || (Type === 'Crossing' ? nearestRoadName(xy, true) : Type === 'Sidewalk' && t.footway === 'sidewalk' ? nearestRoadName(xy) : '');
if (name) props.name = name;
for (const k of ['surface', 'width', 'incline', 'wheelchair']) if (t[k]) props[k] = t[k];
if (t.tactile_paving) props.tactile = t.tactile_paving;
diff --git a/scripts/overpass.mjs b/scripts/overpass.mjs
new file mode 100644
index 0000000..eb7a3d2
--- /dev/null
+++ b/scripts/overpass.mjs
@@ -0,0 +1,26 @@
+// Queries OpenStreetMap's public Overpass API, shared by the data scripts. The public servers are often busy: each
+// is tried in turn, waiting longer each round. Returns the result's elements.
+const ENDPOINTS = ['https://overpass-api.de/api/interpreter', 'https://overpass.private.coffee/api/interpreter'];
+
+export async function overpass(query) {
+ let wait = 5;
+ for (let round = 1; round <= 5; round++) {
+ for (const endpoint of ENDPOINTS) {
+ try {
+ const res = await fetch(endpoint, {
+ method: 'POST',
+ headers: { 'User-Agent': 'AccessBC/1.0 (Boston College accessibility map)', 'Content-Type': 'application/x-www-form-urlencoded' },
+ body: `data=${encodeURIComponent(query)}`,
+ });
+ if (res.ok) return (await res.json()).elements;
+ console.log(` ${new URL(endpoint).host}: ${res.status}`);
+ } catch (err) {
+ console.log(` ${new URL(endpoint).host}: ${err.message}`);
+ }
+ }
+ console.log(` busy; trying again in ${wait} s`);
+ await new Promise((r) => setTimeout(r, wait * 1000));
+ wait *= 2;
+ }
+ throw new Error('Overpass servers are busy. Try again later.');
+}
diff --git a/scripts/routing/check-routes.mjs b/scripts/routing/check-routes.mjs
index 6c8a617..75f0662 100644
--- a/scripts/routing/check-routes.mjs
+++ b/scripts/routing/check-routes.mjs
@@ -7,7 +7,7 @@ import { terrainTileLoader } from '../terrain.mjs';
import { createTerrain, segmentGrades } from '../../src/js/routing/elevation.mjs';
const t0 = performance.now();
-const graph = buildGraph({ paths: load('accessiblepaths.geojson'), entrances: load('entrances.geojson'), buildings: load('buildings.geojson') });
+const graph = buildGraph({ paths: [...load('accessiblepaths.geojson'), ...load('entrance-links.geojson')], entrances: load('entrances.geojson'), buildings: load('buildings.geojson') });
const buildMs = performance.now() - t0;
const edgeCount = graph.adjacency.reduce((s, a) => s + a.length, 0) / 2;
console.log(`Graph: ${graph.nodes.length} nodes, ${edgeCount} edges, ${graph.entrances.length} linked entrances, built in ${buildMs.toFixed(0)} ms\n`);
diff --git a/scripts/routing/sample-instructions.mjs b/scripts/routing/sample-instructions.mjs
index 668693b..e0ca6db 100644
--- a/scripts/routing/sample-instructions.mjs
+++ b/scripts/routing/sample-instructions.mjs
@@ -5,8 +5,11 @@
// Usage: node scripts/routing/sample-instructions.mjs
import fs from 'node:fs';
import path from 'node:path';
-import { ROOT, load, buildGraph, routeBetweenBuildings } from './lib.mjs';
+import { ROOT, load, buildGraph, routeBetweenBuildings, shortestRoute, nearestNode } from './lib.mjs';
import { buildSteps } from '../../src/js/routing/guidance.mjs';
+import { addShuttles, shuttleCost, runningService } from '../../src/js/routing/transit.mjs';
+import { createTerrain, segmentGrades } from '../../src/js/routing/elevation.mjs';
+import { terrainTileLoader } from '../terrain.mjs';
// Routes chosen to cover short and long walks, indoor stretches, and busy parts of Middle Campus.
// Pairs that can't be routed (no accessible entrance on the network) are skipped and listed.
@@ -21,8 +24,9 @@ const PAIRS = [
['Lyons Hall', 'Cushing Hall'],
];
-const data = { paths: load('accessiblepaths.geojson'), entrances: load('entrances.geojson'), buildings: load('buildings.geojson'), elevators: load('elevators.geojson') };
+const data = { paths: [...load('accessiblepaths.geojson'), ...load('entrance-links.geojson')], entrances: load('entrances.geojson'), buildings: load('buildings.geojson'), elevators: load('elevators.geojson') };
const graph = buildGraph(data);
+const readJson = (name) => JSON.parse(fs.readFileSync(path.join(ROOT, 'src/geojson', name), 'utf8'));
const feet = (m) => `${Math.round(m * 3.28084).toLocaleString()} ft`;
const sections = [], skipped = [];
@@ -33,6 +37,33 @@ for (const [from, to] of PAIRS) {
sections.push(`### ${from} to ${to} (${feet(route.length)}, ${steps.length} steps)\n\n${steps.map((s, i) => `${i + 1}. ${s.text}`).join('\n')}\n`);
}
+// Off campus, by shuttle, and by train: on campus paths plus city sidewalks (as the site does when a trip needs
+// them, avoiding stairs and slopes steeper than 1:12, its defaults), on a Wednesday at 10 a.m. Boston time, when
+// the shuttles and trains are running
+const city = buildGraph({ ...data, sidewalks: load('sidewalks.geojson').filter(({ properties: p }) => p.Type !== 'Stairs' && !p.rough && p.kerb !== 'raised' && p.wheelchair !== 'no') });
+const when = new Date('2026-10-21T10:00:00-04:00');
+const running = [...readJson('shuttles.json').routes, ...readJson('mbta-trains.json').routes]
+ .map((route) => ({ route, service: runningService(route, when) })).filter((r) => r.service).map(({ route, service }) => ({ route, every: service.every }));
+city.grades = await segmentGrades(createTerrain(terrainTileLoader(), city.buildings), city);
+const rides = addShuttles(city, running, { stepFree: true });
+const doors = (g, name) => g.entrances.filter((e) => e.building === name).map((e) => e.node);
+const ridingCost = (e) => {
+ if (e.seg >= 0 && city.grades[e.seg] > 1 / 12) return Infinity; // the default slope limit
+ return shuttleCost(e) ?? e.length * (e.type === 'Sidewalk' || e.type === 'Crossing' ? 1.15 : 1);
+};
+const station = (name) => readJson('mbta-stations.geojson').features.find((f) => f.properties.Name === name).geometry.coordinates;
+const OFF_CAMPUS = [
+ { title: 'Gasson Hall to Kenny Cottle Library, Newton campus, walking', g: city, from: doors(city, 'Gasson Hall'), to: 'Kenny Cottle Library', cost: (e) => ridingCost(e) },
+ { title: 'Gasson Hall to Kenny Cottle Library, with the shuttle (Wednesday 10 a.m.)', g: rides, from: doors(rides, 'Gasson Hall'), to: 'Kenny Cottle Library', cost: ridingCost },
+ { title: 'Newton Centre T station to Gasson Hall, with the train (Wednesday 10 a.m.)', g: rides, fromPlace: 'Newton Centre station', from: [nearestNode(city, station('Newton Centre')).node], to: 'Gasson Hall', cost: ridingCost },
+];
+for (const trip of OFF_CAMPUS) {
+ const route = shortestRoute(trip.g, trip.from, doors(trip.g, trip.to), trip.cost);
+ if (!route) { skipped.push(trip.title); continue; }
+ const steps = buildSteps(trip.g, route, { from: trip.fromPlace || 'Gasson Hall', to: trip.to, fromBuilding: !trip.fromPlace });
+ sections.push(`### ${trip.title} (${steps.length} steps)\n\n${steps.map((st, i) => `${i + 1}. ${st.text}`).join('\n')}\n`);
+}
+
const out = `# Sample directions for review
Generated by \`scripts/routing/sample-instructions.mjs\` from the live routing data. Regenerate it after changing
@@ -64,6 +95,15 @@ Examples; distances, directions, and names change with the route.
| Where am I? | “You’re about 40 ft from Gasson Hall, at your 10 o’clock. You’re on your route. In about 35 ft: Turn left…” |
| What’s around (Where am I?) | “Accessible entrance of Devlin Hall: about 80 ft, at your 4 o’clock.” |
| Arrival | “Arrive at the accessible entrance of McElroy Commons. It’s on your right.” |
+| A street crossing (off campus) | “Cross Beacon Street at the traffic lights. There are curb ramps on both sides.” / “Cross Hammond Street, where there’s no marked crosswalk. Curb ramps aren’t confirmed here.” |
+| Crossings one after another | “Cross Commonwealth Avenue Service Road, then Grant Avenue at the crosswalk. There are curb ramps or level curbs at each.” |
+| Off campus, with no buildings to steer by | “Turn left and continue for 450 feet along Centre Street.” |
+| Off the route for a few readings (following location) | “Off route. Finding a new route from here.” then “New route. Step 1. …” |
+| Location very inaccurate (near tall buildings) | “Location is approximate (within 490 feet). Use Next and Back if steps don’t advance.” |
+| A step passed between two location readings (on a bus) | “Get off at Stuart and continue for 30 feet…”, said before the step you're on |
+| Taking a shuttle | “At the Main Gate Chestnut Hill stop, take the Newton Eagle Direct shuttle to Stuart (1 stop). Shuttles come about every 9 minutes.” |
+| Taking the train | “At Newton Centre station, take a Green Line D train toward Union Square to Reservoir (2 stops). Trains come about every 8 minutes.” |
+| Blue light (emergency) | “Emergency directions to the nearest blue-light phone, 40 ft away.” |
Sounds and vibration: one tone for a new step (from the side of a turn, with headphones); two quick high tones
for a turn coming up; two falling tones for leaving the route; three rising tones on arrival. On Android, two
diff --git a/scripts/shuttles.mjs b/scripts/shuttles.mjs
index 484af98..e60a522 100644
--- a/scripts/shuttles.mjs
+++ b/scripts/shuttles.mjs
@@ -15,12 +15,14 @@ import path from 'node:path';
const ROOT = path.resolve(path.dirname(new URL(import.meta.url).pathname), '..');
const OUT = path.join(ROOT, 'src/geojson/shuttles.json');
+const STOPS_OUT = path.join(ROOT, 'src/geojson/shuttlestops.geojson'); // the stops, for the map and Find nearby
const TRACKER = 'https://bostoncollege.transloc.com/Services/JSONPRelay.svc/';
const SCHEDULE_PAGE = 'https://www.bc.edu/bc-web/offices/aux-services/sites/transportation-parking/shuttles.html';
// When each route runs, from BC's shuttle page (checked 2026-10-16). Keyed by tracker route id.
// days: 0 = Sunday … 6 = Saturday. Times are 24-hour "HH:MM"; past midnight continues the day ("26:00" = 2 a.m.).
// every: minutes between shuttles (the middle of a range like "8–10 minutes"). loop: the last stop runs on to the first.
+// endAt: the last stop riders can get off at, when the tracker lists the bus's empty run back too.
// Event routes (football, holidays) aren't included.
const WEEKDAYS = [1, 2, 3, 4, 5], WEEKEND = [0, 6];
const SERVICE = {
@@ -50,7 +52,8 @@ const SERVICE = {
21: { name: 'Law School Express (afternoon)', loop: false, service: [{ days: WEEKDAYS, from: '15:05', to: '17:05', every: 110 }] },
9: { name: 'Mall and Grocery Shuttle (Saturday)', loop: false, service: [{ days: [6], from: '11:00', to: '15:05', every: 60 }] },
25: { name: 'Mall and Grocery Shuttle (Sunday)', loop: false, service: [{ days: [0], from: '11:00', to: '16:05', every: 60 }] },
- 24: { name: 'Early Morning Shuttle (Newton)', loop: false, service: [
+ // BC's page: "Direct service from Stuart stop to Conte Forum"; the tracker's last stop is the bus going back
+ 24: { name: 'Early Morning Shuttle (Newton)', loop: false, endAt: 'Conte Forum', service: [
{ days: WEEKDAYS, from: '05:55', to: '06:35', every: 30 },
{ days: WEEKEND, from: '06:55', to: '07:35', every: 30 },
] },
@@ -114,6 +117,7 @@ async function main() {
rideToNext: s.SecondsToNextStop,
dwell: s.SecondsAtStop,
}));
+ if (info.endAt) stops = stops.slice(0, stops.findIndex((st) => st.name === info.endAt) + 1 || stops.length);
// A loop listed with its first stop again at the end: keep it once
if (stops.length > 1 && metres(stops[0].lonlat, stops.at(-1).lonlat) < 30 && stops[0].name === stops.at(-1).name) stops = stops.slice(0, -1);
const at = stopIndexes(line, stops);
@@ -129,6 +133,27 @@ async function main() {
};
fs.writeFileSync(OUT, JSON.stringify(data) + '\n');
console.log(`Wrote ${path.relative(ROOT, OUT)}: ${out.length} routes, ${(fs.statSync(OUT).size / 1e3).toFixed(0)} kB`);
+
+ // The stops as map points: one per place (within 20 m, or 30 m with the same name), with the routes that stop there.
+ // Shelter and heater details carry over from the stops already in the file, where one is within 30 m.
+ const old = fs.existsSync(STOPS_OUT) ? JSON.parse(fs.readFileSync(STOPS_OUT, 'utf8')).features : [];
+ const places = [];
+ for (const route of out) {
+ for (const stop of route.stops) {
+ // The same stop can have different names on different routes ("Reservoir T Stop", "Reservoir MBTA stop")
+ let place = places.find((p) => metres(p.lonlat, stop.lonlat) < (p.name === stop.name ? 30 : 20));
+ if (!place) places.push(place = { name: stop.name, lonlat: stop.lonlat, routes: [] });
+ if (!place.routes.includes(route.name)) place.routes.push(route.name);
+ }
+ }
+ const features = places.map((p, i) => {
+ const before = old.find((f) => metres(f.geometry.coordinates, p.lonlat) < 30)?.properties || {};
+ const properties = { OBJECTID: i + 1, Name: p.name, Routes: p.routes.join('; ') };
+ for (const k of ['Sheltered', 'Heater']) if (before[k]) properties[k] = before[k];
+ return { type: 'Feature', properties, geometry: { type: 'Point', coordinates: p.lonlat } };
+ });
+ fs.writeFileSync(STOPS_OUT, `{"type":"FeatureCollection","features":[\n${features.map((f) => JSON.stringify(f)).join(',\n')}\n]}\n`);
+ console.log(`Wrote ${path.relative(ROOT, STOPS_OUT)}: ${features.length} stops`);
}
main().catch((err) => { console.error(err); process.exit(1); });
diff --git a/src/geojson/README.md b/src/geojson/README.md
index 75950b1..7b4693e 100644
--- a/src/geojson/README.md
+++ b/src/geojson/README.md
@@ -40,6 +40,16 @@ It's the main roof height, so towers and spires aren't included. 258 of 298 buil
small garages and sheds with too few lidar points, so they're `null` (the 3D view shows them at 3 m). Re-run
the script after adding or reshaping buildings.
+## Entrance links (`entrance-links.geojson`)
+
+Short links from accessible entrances that weren't connected to any path, to the nearest BC path or city sidewalk,
+drawn by [scripts/link-entrances.mjs](../../scripts/link-entrances.mjs): straight, or round the building by its
+corners, at most 60 m (90 m going round), never through a building, across stairs, or across a public street.
+`Type` is `Connector`. They haven't been checked on the ground: routes say so, prefer checked paths, and apply the
+slope limit to them; the map shows them as thin dashed lines. The ones to check are listed in
+[docs/data-collection/entrance-links-to-check.csv](../../docs/data-collection/entrance-links-to-check.csv). Re-run the
+script after adding paths or entrances: buildings that become connected no longer get a link.
+
## City sidewalks (`sidewalks.geojson`)
City sidewalks, street crossings and footways around the campuses, from OpenStreetMap, built by
@@ -57,6 +67,20 @@ unpaved ways, ways inside a BC campus boundary, and bridges and tunnels. None of
accessibility, and the app says so on every route that uses it. Many curb ramps aren't tagged in OpenStreetMap
yet; adding them there (`kerb=lowered` on the crossing's end nodes) improves the routes after the next refresh.
+## MBTA stations (`mbta-stations.geojson`)
+
+The Green Line stations near the campuses (B, C and D branches), from the MBTA's public
+[V3 API](https://www.mbta.com/developers/v3-api), built by [scripts/mbta.mjs](../../scripts/mbta.mjs): name, branch,
+and whether the station and each platform are wheelchair accessible (`Wheelchair`: `yes`, `no`, or `unknown`). Live
+alerts (elevator closures, access problems, suspensions) and train times aren't stored: the app fetches them from the
+MBTA when they're shown.
+
+`mbta-trains.json` (from the same script) has each Green Line branch and direction through those stations, in
+order, with the scheduled ride time between them, the track's line, and when trains run: the first and last train
+and how often they come in each part of the day (early, morning rush, midday, evening rush, night), measured from
+the MBTA's schedule for a typical weekday, a Saturday, and a Sunday. Same form as `shuttles.json`, so routes can
+include a train ride.
+
## BC shuttles (`shuttles.json`)
BC's regular shuttle routes, built by [scripts/shuttles.mjs](../../scripts/shuttles.mjs) from a snapshot of BC's
diff --git a/src/geojson/entrance-links.geojson b/src/geojson/entrance-links.geojson
new file mode 100644
index 0000000..32469e7
--- /dev/null
+++ b/src/geojson/entrance-links.geojson
@@ -0,0 +1,55 @@
+{"type":"FeatureCollection","features":[
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-135","Building":"Mary House","Entrance":135,"To":"city sidewalk","Length_m":22.4,"Campus":"Newton","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1939892,42.3428693],[-71.1937256,42.3428196]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-96","Building":"Rubenstein Hall","Entrance":96,"To":"city sidewalk","Length_m":40.7,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1692874,42.3383956],[-71.1689316,42.3381398]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-105","Building":"Rubenstein Hall","Entrance":105,"To":"BC path","Length_m":16.2,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1693813,42.3385176],[-71.1694801,42.3386442]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-95","Building":"Ignacio Hall","Entrance":95,"To":"city sidewalk","Length_m":59.4,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1697058,42.3377126],[-71.1695714,42.3377365],[-71.1689937,42.3377959]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-110","Building":"Welch Hall","Entrance":110,"To":"city sidewalk","Length_m":51.4,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.173359,42.3341418],[-71.1733342,42.3342317],[-71.1732003,42.3342024],[-71.1729941,42.3339808]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-111","Building":"30 Quincy Rd","Entrance":111,"To":"city sidewalk","Length_m":14.2,"Campus":"Chestnut Hill","Check":"the entrance point is 4 m inside the building: where is the door?","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1732611,42.3347554],[-71.1731343,42.3348423]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-112","Building":"50 College Rd","Entrance":112,"To":"city sidewalk","Length_m":10.7,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1720434,42.3344531],[-71.171935,42.3343998]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-113","Building":"Bowman House","Entrance":113,"To":"city sidewalk","Length_m":54.2,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1719361,42.3349577],[-71.1725378,42.334759]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-114","Building":"Bourneuf House","Entrance":114,"To":"city sidewalk","Length_m":13.8,"Campus":"Chestnut Hill","Check":"the entrance point is 5 m inside the building: where is the door?","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1718234,42.3353671],[-71.1716569,42.3353523]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-115","Building":"Donaldson House","Entrance":115,"To":"city sidewalk","Length_m":27.3,"Campus":"Chestnut Hill","Check":"the entrance point is 4 m inside the building: where is the door?","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1717939,42.3355426],[-71.1718733,42.3355073],[-71.1716353,42.3354861]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-116","Building":"Lawrence House","Entrance":116,"To":"city sidewalk","Length_m":25,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1720581,42.3365151],[-71.1721134,42.3366133],[-71.1720067,42.3366465],[-71.1719905,42.3366154]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-117","Building":"Heffernan House","Entrance":117,"To":"city sidewalk","Length_m":23.2,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1719508,42.3361651],[-71.1718711,42.3362124],[-71.1716952,42.3362405]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-118","Building":"14 Mayflower Rd","Entrance":118,"To":"city sidewalk","Length_m":8.8,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1722606,42.3360531],[-71.1723604,42.3360238]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-138","Building":"18 Quincy Road","Entrance":138,"To":"city sidewalk","Length_m":53.2,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1728306,42.3344461],[-71.1729941,42.3339808]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-139","Building":"24 Quincy Rd","Entrance":139,"To":"city sidewalk","Length_m":42.5,"Campus":"Chestnut Hill","Check":"the entrance point is 4 m inside the building: where is the door?","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1730345,42.3345829],[-71.1730783,42.3344861],[-71.1730261,42.3344583],[-71.1728229,42.3346373]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-141","Building":"32 Mayflower Rd & Garage","Entrance":141,"To":"city sidewalk","Length_m":10,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1722325,42.3353473],[-71.1723464,42.3353787]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-145","Building":"Brock House","Entrance":145,"To":"city sidewalk","Length_m":13.6,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1718503,42.3351877],[-71.1716857,42.335173]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-146","Building":"Rahner House","Entrance":146,"To":"city sidewalk","Length_m":14.9,"Campus":"Chestnut Hill","Check":"the entrance point is 3 m inside the building: where is the door?","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1717752,42.3357666],[-71.1715947,42.3357718]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-147","Building":"Faber House","Entrance":147,"To":"city sidewalk","Length_m":28.3,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1718369,42.3359807],[-71.1718993,42.3360257],[-71.1716467,42.3360616]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-148","Building":"Hopkins House","Entrance":148,"To":"city sidewalk","Length_m":17.8,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1719441,42.3363713],[-71.1719157,42.3364266],[-71.1717878,42.3364619]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-149","Building":"40 Old Colony Rd","Entrance":149,"To":"city sidewalk","Length_m":9.5,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1729433,42.3358311],[-71.1730513,42.3358605]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-151","Building":"24 Mayflower Road","Entrance":151,"To":"city sidewalk","Length_m":8.6,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1721681,42.3356784],[-71.1722727,42.3356777]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-156","Building":"Fitzpatrick Hall","Entrance":156,"To":"city sidewalk","Length_m":30.2,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1744627,42.334233],[-71.1745292,42.3339641]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-91","Building":"Kostka Hall","Entrance":91,"To":"city sidewalk","Length_m":2.3,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1748463,42.3332079],[-71.1748519,42.3332286]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-109","Building":"Williams Hall","Entrance":109,"To":"city sidewalk","Length_m":55.6,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1737399,42.3340089],[-71.1734679,42.3335487]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-119","Building":"Hovey House","Entrance":119,"To":"city sidewalk","Length_m":62.6,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1718409,42.3323235],[-71.1718498,42.3323453],[-71.1719604,42.3328823]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-122","Building":"Murray House","Entrance":122,"To":"BC path","Length_m":44.6,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1708136,42.3317227],[-71.1708605,42.3316643],[-71.1709866,42.3317757],[-71.1708471,42.3319349]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-123","Building":"Connolly Faculty Center","Entrance":123,"To":"BC path","Length_m":61.4,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1704166,42.3315591],[-71.1705097,42.3315745],[-71.1704635,42.3316373],[-71.1708471,42.3319349]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-124","Building":"Connolly Carriage House","Entrance":124,"To":"BC path","Length_m":57.5,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1701484,42.3319448],[-71.1708471,42.3319349]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-125","Building":"Connolly Carriage House","Entrance":125,"To":"city sidewalk","Length_m":16.6,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1702356,42.3320687],[-71.1703928,42.3321627]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-126","Building":"Murray Carriage House","Entrance":126,"To":"city sidewalk","Length_m":2.5,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.170489,42.3322581],[-71.1704673,42.3322428]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-127","Building":"25 Lawrence Avenue","Entrance":127,"To":"city sidewalk","Length_m":35.7,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1701524,42.3325069],[-71.1705773,42.3325706]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-140","Building":"Daly House","Entrance":140,"To":"city sidewalk","Length_m":19.7,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1698292,42.3329442],[-71.1698755,42.3330072],[-71.1698968,42.3331125]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-157","Building":"Roncalli Hall","Entrance":157,"To":"city sidewalk","Length_m":7,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1729875,42.3335628],[-71.1729519,42.3335051]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-159","Building":"Canisius House","Entrance":159,"To":"city sidewalk","Length_m":8.7,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1694631,42.3325525],[-71.1695161,42.3324842]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-160","Building":"66 Lee Road","Entrance":160,"To":"city sidewalk","Length_m":63.9,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1695328,42.3322412],[-71.1694045,42.3322237],[-71.1688417,42.3319867]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-161","Building":"Joyce House","Entrance":161,"To":"city sidewalk","Length_m":26.1,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1701202,42.3322839],[-71.1703928,42.3321627]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-82","Building":"Simboli Hall","Entrance":82,"To":"city sidewalk","Length_m":51.5,"Campus":"Brighton","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1645211,42.3417561],[-71.1642736,42.341634],[-71.164215,42.3416045],[-71.1640637,42.3414486]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-100","Building":"St Ignatius Church","Entrance":100,"To":"city sidewalk","Length_m":2.6,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1672637,42.3394613],[-71.1672775,42.339482]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-101","Building":"St Ignatius Church","Entrance":101,"To":"city sidewalk","Length_m":1.1,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1671564,42.3392541],[-71.1671504,42.339245]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-152","Building":"Loyola Hall","Entrance":152,"To":"city sidewalk","Length_m":9.6,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1759406,42.3333784],[-71.1758354,42.3334167]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-154","Building":"Medeiros Townhouses","Entrance":154,"To":"city sidewalk","Length_m":39,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1757167,42.3330631],[-71.1757732,42.3329905],[-71.1757435,42.3328896],[-71.1755232,42.3329145]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-155","Building":"Shaw House","Entrance":155,"To":"city sidewalk","Length_m":11.4,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1752097,42.3330373],[-71.1752933,42.3331191]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-128","Building":"Haley Carriage House","Entrance":128,"To":"city sidewalk","Length_m":29.1,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1692311,42.3319012],[-71.1688801,42.3319362]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-129","Building":"55 Lee Rd","Entrance":129,"To":"city sidewalk","Length_m":9.8,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1689454,42.3323414],[-71.1690052,42.3322644]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-130","Building":"55 Lee Rd","Entrance":130,"To":"city sidewalk","Length_m":17.1,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1687563,42.3324187],[-71.1685702,42.332349]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-131","Building":"22 Stone Ave","Entrance":131,"To":"city sidewalk","Length_m":16.9,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1682588,42.3325516],[-71.1684642,42.3325616]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-132","Building":"10 Stone Avenue","Entrance":132,"To":"city sidewalk","Length_m":35.3,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.167945,42.3330017],[-71.1680053,42.3333183]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-143","Building":"136 Beacon Street","Entrance":143,"To":"city sidewalk","Length_m":17.8,"Campus":"Chestnut Hill","Check":"the entrance point is 4 m inside the building: where is the door?","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1639082,42.3336163],[-71.1639346,42.3336898],[-71.1639506,42.3337742]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-162","Building":"Roberts House & Garage","Entrance":162,"To":"city sidewalk","Length_m":5.5,"Campus":"Chestnut Hill","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1691681,42.3330492],[-71.1691038,42.3330628]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-163","Building":"Greycliff Hall","Entrance":163,"To":"city sidewalk","Length_m":2.7,"Campus":"Brighton","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1612421,42.3402613],[-71.1612427,42.3402367]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-144","Building":"11 Chestnut Hill Rd & Garage","Entrance":144,"To":"city sidewalk","Length_m":46.4,"Campus":"Chestnut Hill","Check":"the entrance point is 5 m inside the building: where is the door?","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1630097,42.3335915],[-71.1630506,42.3335358],[-71.1631231,42.3335744],[-71.1631897,42.3338597]]}},
+{"type":"Feature","properties":{"Type":"Connector","FID":"connector-177","Building":"Theater","Entrance":177,"To":"city sidewalk","Length_m":66.2,"Campus":"Brookline","Comment":"Drawn automatically from the entrance to the nearest path; not checked on the ground"},"geometry":{"type":"LineString","coordinates":[[-71.1583011,42.3200506],[-71.158369,42.3200344],[-71.1590579,42.3198477]]}}
+]}
diff --git a/src/geojson/mbta-stations.geojson b/src/geojson/mbta-stations.geojson
new file mode 100644
index 0000000..1b6093a
--- /dev/null
+++ b/src/geojson/mbta-stations.geojson
@@ -0,0 +1,17 @@
+{"type":"FeatureCollection","source":"MBTA V3 API, 2026-10-19","features":[
+{"type":"Feature","properties":{"Id":"place-bcnfd","Name":"Beaconsfield","Lines":"Green Line D","Wheelchair":"yes","Platforms":"null: accessible"},"geometry":{"type":"Point","coordinates":[-71.140455,42.335765]}},
+{"type":"Feature","properties":{"Id":"place-lake","Name":"Boston College","Lines":"Green Line B","Wheelchair":"yes","Platforms":"null: accessible"},"geometry":{"type":"Point","coordinates":[-71.166769,42.340081]}},
+{"type":"Feature","properties":{"Id":"place-chhil","Name":"Chestnut Hill","Lines":"Green Line D","Wheelchair":"yes","Platforms":"null: accessible"},"geometry":{"type":"Point","coordinates":[-71.164699,42.326753]}},
+{"type":"Feature","properties":{"Id":"place-chill","Name":"Chestnut Hill Avenue","Lines":"Green Line B","Wheelchair":"no","Platforms":"null: not accessible"},"geometry":{"type":"Point","coordinates":[-71.15316,42.338169]}},
+{"type":"Feature","properties":{"Id":"place-chswk","Name":"Chiswick Road","Lines":"Green Line B","Wheelchair":"no","Platforms":"null: not accessible"},"geometry":{"type":"Point","coordinates":[-71.150711,42.340805]}},
+{"type":"Feature","properties":{"Id":"place-clmnl","Name":"Cleveland Circle","Lines":"Green Line C","Wheelchair":"yes","Platforms":"null: accessible"},"geometry":{"type":"Point","coordinates":[-71.149326,42.336142]}},
+{"type":"Feature","properties":{"Id":"place-denrd","Name":"Dean Road","Lines":"Green Line C","Wheelchair":"no","Platforms":"null: not accessible"},"geometry":{"type":"Point","coordinates":[-71.142156,42.337656]}},
+{"type":"Feature","properties":{"Id":"place-engav","Name":"Englewood Avenue","Lines":"Green Line C","Wheelchair":"yes","Platforms":"null: accessible"},"geometry":{"type":"Point","coordinates":[-71.144852,42.337104]}},
+{"type":"Feature","properties":{"Id":"place-newto","Name":"Newton Centre","Lines":"Green Line D","Wheelchair":"yes","Platforms":"null: accessible"},"geometry":{"type":"Point","coordinates":[-71.192414,42.329443]}},
+{"type":"Feature","properties":{"Id":"place-rsmnl","Name":"Reservoir","Lines":"Green Line D","Wheelchair":"yes","Platforms":"null: accessible"},"geometry":{"type":"Point","coordinates":[-71.148758,42.335088]}},
+{"type":"Feature","properties":{"Id":"place-sougr","Name":"South Street","Lines":"Green Line B","Wheelchair":"no","Platforms":"null: not accessible"},"geometry":{"type":"Point","coordinates":[-71.157661,42.3396]}},
+{"type":"Feature","properties":{"Id":"place-sthld","Name":"Sutherland Road","Lines":"Green Line B","Wheelchair":"no","Platforms":"null: not accessible"},"geometry":{"type":"Point","coordinates":[-71.146202,42.341614]}},
+{"type":"Feature","properties":{"Id":"place-tapst","Name":"Tappan Street","Lines":"Green Line C","Wheelchair":"yes","Platforms":"null: accessible"},"geometry":{"type":"Point","coordinates":[-71.138702,42.338459]}},
+{"type":"Feature","properties":{"Id":"place-wrnst","Name":"Warren Street","Lines":"Green Line B","Wheelchair":"no","Platforms":"null: not accessible"},"geometry":{"type":"Point","coordinates":[-71.140457,42.348343]}},
+{"type":"Feature","properties":{"Id":"place-wascm","Name":"Washington Street","Lines":"Green Line B","Wheelchair":"yes","Platforms":"null: accessible"},"geometry":{"type":"Point","coordinates":[-71.142853,42.343864]}}
+]}
diff --git a/src/geojson/mbta-trains.json b/src/geojson/mbta-trains.json
new file mode 100644
index 0000000..a83fc66
--- /dev/null
+++ b/src/geojson/mbta-trains.json
@@ -0,0 +1 @@
+{"source":"MBTA V3 API schedules, 2026-10-19","note":"From the MBTA schedule for a typical weekday, a Saturday and a Sunday: first and last trains, and how often they run in each part of the day.","routes":[{"id":"Green-B-0","name":"Green Line B","mode":"train","toward":"Boston College","loop":false,"service":[{"days":[1,2,3,4,5],"from":"06:19","to":"07:00","every":10},{"days":[1,2,3,4,5],"from":"07:00","to":"09:30","every":8},{"days":[1,2,3,4,5],"from":"09:30","to":"15:30","every":8},{"days":[1,2,3,4,5],"from":"15:30","to":"19:00","every":9},{"days":[1,2,3,4,5],"from":"19:00","to":"25:40","every":9},{"days":[6],"from":"06:17","to":"07:00","every":12},{"days":[6],"from":"07:00","to":"09:30","every":13},{"days":[6],"from":"09:30","to":"15:30","every":10},{"days":[6],"from":"15:30","to":"19:00","every":10},{"days":[6],"from":"19:00","to":"26:34","every":10},{"days":[0],"from":"06:38","to":"07:00","every":15},{"days":[0],"from":"07:00","to":"09:30","every":13},{"days":[0],"from":"09:30","to":"15:30","every":10},{"days":[0],"from":"15:30","to":"19:00","every":11},{"days":[0],"from":"19:00","to":"25:37","every":11}],"stops":[{"name":"Warren Street","id":"place-wrnst","lonlat":[-71.140457,42.348343],"wheelchair":"no","rideToNext":180,"dwell":0,"at":0},{"name":"Washington Street","id":"place-wascm","lonlat":[-71.142853,42.343864],"wheelchair":"yes","rideToNext":120,"dwell":0,"at":14},{"name":"Sutherland Road","id":"place-sthld","lonlat":[-71.146202,42.341614],"wheelchair":"no","rideToNext":60,"dwell":0,"at":30},{"name":"Chiswick Road","id":"place-chswk","lonlat":[-71.150711,42.340805],"wheelchair":"no","rideToNext":120,"dwell":0,"at":45},{"name":"Chestnut Hill Avenue","id":"place-chill","lonlat":[-71.15316,42.338169],"wheelchair":"no","rideToNext":120,"dwell":0,"at":61},{"name":"South Street","id":"place-sougr","lonlat":[-71.157661,42.3396],"wheelchair":"no","rideToNext":180,"dwell":0,"at":78},{"name":"Boston College","id":"place-lake","lonlat":[-71.166769,42.340081],"wheelchair":"yes","rideToNext":0,"dwell":0,"at":95}],"line":[[-71.14041,42.34833],[-71.14041,42.34833],[-71.14054,42.34804],[-71.14061,42.34784],[-71.14072,42.34715],[-71.14077,42.34697],[-71.14087,42.34672],[-71.14109,42.34627],[-71.14139,42.34579],[-71.1415,42.34565],[-71.14155,42.34556],[-71.14169,42.34533],[-71.1422,42.34458],[-71.14243,42.34428],[-71.14272,42.34385],[-71.14273,42.34382],[-71.14273,42.34382],[-71.14297,42.34347],[-71.14318,42.34319],[-71.14338,42.34295],[-71.14353,42.3428],[-71.1437,42.34265],[-71.14389,42.34249],[-71.14429,42.34222],[-71.14451,42.3421],[-71.1448,42.34196],[-71.14515,42.34181],[-71.14547,42.34171],[-71.14571,42.34164],[-71.14594,42.34159],[-71.14619,42.34156],[-71.14619,42.34156],[-71.14633,42.34154],[-71.14654,42.34151],[-71.14701,42.34148],[-71.14732,42.34148],[-71.14785,42.3415],[-71.14807,42.34151],[-71.14857,42.34149],[-71.14889,42.34145],[-71.14913,42.34141],[-71.14944,42.34132],[-71.14986,42.34118],[-71.15024,42.34101],[-71.15064,42.34079],[-71.15067,42.34077],[-71.15067,42.34077],[-71.15112,42.34046],[-71.15148,42.34018],[-71.15164,42.34004],[-71.1518,42.33987],[-71.15196,42.33969],[-71.15208,42.33951],[-71.15224,42.33927],[-71.15234,42.33909],[-71.15245,42.33889],[-71.15255,42.33869],[-71.15264,42.33856],[-71.15284,42.33833],[-71.15287,42.3383],[-71.15296,42.33823],[-71.15309,42.33813],[-71.15309,42.33813],[-71.15309,42.33813],[-71.1531,42.33811],[-71.15322,42.33805],[-71.15332,42.33802],[-71.15343,42.338],[-71.15392,42.33807],[-71.15405,42.3381],[-71.15427,42.33817],[-71.15447,42.33824],[-71.15501,42.33848],[-71.15575,42.33883],[-71.15613,42.33902],[-71.15652,42.33919],[-71.1568,42.33931],[-71.15724,42.33945],[-71.15768,42.33958],[-71.15768,42.33958],[-71.1578,42.33961],[-71.15818,42.33971],[-71.15846,42.33977],[-71.15912,42.33989],[-71.15958,42.33995],[-71.15998,42.34],[-71.16047,42.34003],[-71.16146,42.34004],[-71.16353,42.3401],[-71.16442,42.34009],[-71.16487,42.34008],[-71.16542,42.34004],[-71.16597,42.33998],[-71.16628,42.33999],[-71.1664,42.34],[-71.16656,42.34002]]},{"id":"Green-B-1","name":"Green Line B","mode":"train","toward":"Government Center","loop":false,"service":[{"days":[1,2,3,4,5],"from":"05:07","to":"07:00","every":9},{"days":[1,2,3,4,5],"from":"07:00","to":"09:30","every":8},{"days":[1,2,3,4,5],"from":"09:30","to":"15:30","every":8},{"days":[1,2,3,4,5],"from":"15:30","to":"19:00","every":8},{"days":[1,2,3,4,5],"from":"19:00","to":"24:24","every":9},{"days":[6],"from":"05:06","to":"07:00","every":12},{"days":[6],"from":"07:00","to":"09:30","every":10},{"days":[6],"from":"09:30","to":"15:30","every":10},{"days":[6],"from":"15:30","to":"19:00","every":10},{"days":[6],"from":"19:00","to":"25:17","every":11},{"days":[0],"from":"05:25","to":"07:00","every":13},{"days":[0],"from":"07:00","to":"09:30","every":10},{"days":[0],"from":"09:30","to":"15:30","every":10},{"days":[0],"from":"15:30","to":"19:00","every":11},{"days":[0],"from":"19:00","to":"24:20","every":12}],"stops":[{"name":"Boston College","id":"place-lake","lonlat":[-71.166769,42.340081],"wheelchair":"yes","rideToNext":180,"dwell":0,"at":0},{"name":"South Street","id":"place-sougr","lonlat":[-71.157661,42.3396],"wheelchair":"no","rideToNext":60,"dwell":0,"at":17},{"name":"Chestnut Hill Avenue","id":"place-chill","lonlat":[-71.15316,42.338169],"wheelchair":"no","rideToNext":120,"dwell":0,"at":35},{"name":"Chiswick Road","id":"place-chswk","lonlat":[-71.150711,42.340805],"wheelchair":"no","rideToNext":60,"dwell":0,"at":50},{"name":"Sutherland Road","id":"place-sthld","lonlat":[-71.146202,42.341614],"wheelchair":"no","rideToNext":120,"dwell":0,"at":65},{"name":"Washington Street","id":"place-wascm","lonlat":[-71.142853,42.343864],"wheelchair":"yes","rideToNext":180,"dwell":0,"at":80},{"name":"Warren Street","id":"place-wrnst","lonlat":[-71.140457,42.348343],"wheelchair":"no","rideToNext":0,"dwell":0,"at":95}],"line":[[-71.16681,42.34008],[-71.16656,42.34002],[-71.1664,42.34],[-71.16628,42.33999],[-71.16597,42.33998],[-71.16542,42.34004],[-71.16487,42.34008],[-71.16442,42.34009],[-71.16353,42.3401],[-71.16146,42.34004],[-71.16047,42.34003],[-71.15998,42.34],[-71.15958,42.33995],[-71.15912,42.33989],[-71.15846,42.33977],[-71.15818,42.33971],[-71.1578,42.33961],[-71.15771,42.33959],[-71.15771,42.33959],[-71.15724,42.33945],[-71.1568,42.33931],[-71.15652,42.33919],[-71.15613,42.33902],[-71.15575,42.33883],[-71.15501,42.33848],[-71.15447,42.33824],[-71.15427,42.33817],[-71.15405,42.3381],[-71.15392,42.33807],[-71.15343,42.338],[-71.15332,42.33802],[-71.15322,42.33805],[-71.1531,42.33811],[-71.1531,42.33812],[-71.1531,42.33812],[-71.15309,42.33813],[-71.15296,42.33823],[-71.15287,42.3383],[-71.15284,42.33833],[-71.15264,42.33856],[-71.15255,42.33869],[-71.15245,42.33889],[-71.15234,42.33909],[-71.15224,42.33927],[-71.15208,42.33951],[-71.15196,42.33969],[-71.1518,42.33987],[-71.15164,42.34004],[-71.15148,42.34018],[-71.15112,42.34046],[-71.15064,42.34079],[-71.1505,42.34087],[-71.1505,42.34087],[-71.15024,42.34101],[-71.14986,42.34118],[-71.14944,42.34132],[-71.14913,42.34141],[-71.14889,42.34145],[-71.14857,42.34149],[-71.14807,42.34151],[-71.14785,42.3415],[-71.14732,42.34148],[-71.14701,42.34148],[-71.14654,42.34151],[-71.14633,42.34154],[-71.14618,42.34156],[-71.14618,42.34156],[-71.14594,42.34159],[-71.14571,42.34164],[-71.14547,42.34171],[-71.14515,42.34181],[-71.1448,42.34196],[-71.14451,42.3421],[-71.14429,42.34222],[-71.14389,42.34249],[-71.1437,42.34265],[-71.14353,42.3428],[-71.14338,42.34295],[-71.14318,42.34319],[-71.14297,42.34347],[-71.14274,42.34382],[-71.14274,42.34382],[-71.14272,42.34385],[-71.14243,42.34428],[-71.1422,42.34458],[-71.14169,42.34533],[-71.14155,42.34556],[-71.1415,42.34565],[-71.14139,42.34579],[-71.14109,42.34627],[-71.14087,42.34672],[-71.14077,42.34697],[-71.14072,42.34715],[-71.14061,42.34784],[-71.14054,42.34804],[-71.14042,42.34831]]},{"id":"Green-C-0","name":"Green Line C","mode":"train","toward":"Cleveland Circle","loop":false,"service":[{"days":[1,2,3,4,5],"from":"06:03","to":"07:00","every":10},{"days":[1,2,3,4,5],"from":"07:00","to":"09:30","every":8},{"days":[1,2,3,4,5],"from":"09:30","to":"15:30","every":8},{"days":[1,2,3,4,5],"from":"15:30","to":"19:00","every":8},{"days":[1,2,3,4,5],"from":"19:00","to":"25:23","every":9},{"days":[6],"from":"06:04","to":"07:00","every":14},{"days":[6],"from":"07:00","to":"09:30","every":11},{"days":[6],"from":"09:30","to":"15:30","every":9},{"days":[6],"from":"15:30","to":"19:00","every":9},{"days":[6],"from":"19:00","to":"26:24","every":10},{"days":[0],"from":"06:30","to":"07:00","every":21},{"days":[0],"from":"07:00","to":"09:30","every":11},{"days":[0],"from":"09:30","to":"15:30","every":10},{"days":[0],"from":"15:30","to":"19:00","every":10},{"days":[0],"from":"19:00","to":"25:26","every":11}],"stops":[{"name":"Tappan Street","id":"place-tapst","lonlat":[-71.138702,42.338459],"wheelchair":"yes","rideToNext":60,"dwell":0,"at":0},{"name":"Dean Road","id":"place-denrd","lonlat":[-71.142156,42.337656],"wheelchair":"no","rideToNext":120,"dwell":0,"at":9},{"name":"Englewood Avenue","id":"place-engav","lonlat":[-71.144852,42.337104],"wheelchair":"yes","rideToNext":60,"dwell":0,"at":14},{"name":"Cleveland Circle","id":"place-clmnl","lonlat":[-71.149326,42.336142],"wheelchair":"yes","rideToNext":0,"dwell":0,"at":23}],"line":[[-71.13869,42.33844],[-71.13869,42.33844],[-71.13886,42.3384],[-71.13877,42.33841],[-71.13944,42.33826],[-71.14028,42.33806],[-71.14121,42.33784],[-71.14182,42.33772],[-71.14182,42.33772],[-71.14211,42.33766],[-71.14228,42.33763],[-71.14271,42.33754],[-71.1436,42.33736],[-71.14436,42.3372],[-71.14489,42.3371],[-71.14517,42.33704],[-71.1455,42.33697],[-71.14564,42.33693],[-71.14564,42.33693],[-71.14711,42.33663],[-71.14797,42.33643],[-71.1481,42.3364],[-71.14844,42.33631],[-71.14919,42.33615]]},{"id":"Green-C-1","name":"Green Line C","mode":"train","toward":"Government Center","loop":false,"service":[{"days":[1,2,3,4,5],"from":"05:03","to":"07:00","every":8},{"days":[1,2,3,4,5],"from":"07:00","to":"09:30","every":8},{"days":[1,2,3,4,5],"from":"09:30","to":"15:30","every":8},{"days":[1,2,3,4,5],"from":"15:30","to":"19:00","every":9},{"days":[1,2,3,4,5],"from":"19:00","to":"24:22","every":9},{"days":[6],"from":"05:03","to":"07:00","every":12},{"days":[6],"from":"07:00","to":"09:30","every":10},{"days":[6],"from":"09:30","to":"15:30","every":9},{"days":[6],"from":"15:30","to":"19:00","every":9},{"days":[6],"from":"19:00","to":"25:21","every":11},{"days":[0],"from":"05:28","to":"07:00","every":11},{"days":[0],"from":"07:00","to":"09:30","every":10},{"days":[0],"from":"09:30","to":"15:30","every":10},{"days":[0],"from":"15:30","to":"19:00","every":10},{"days":[0],"from":"19:00","to":"24:23","every":11}],"stops":[{"name":"Cleveland Circle","id":"place-clmnl","lonlat":[-71.149326,42.336142],"wheelchair":"yes","rideToNext":60,"dwell":0,"at":0},{"name":"Englewood Avenue","id":"place-engav","lonlat":[-71.144852,42.337104],"wheelchair":"yes","rideToNext":120,"dwell":0,"at":9},{"name":"Dean Road","id":"place-denrd","lonlat":[-71.142156,42.337656],"wheelchair":"no","rideToNext":60,"dwell":0,"at":14},{"name":"Tappan Street","id":"place-tapst","lonlat":[-71.138702,42.338459],"wheelchair":"yes","rideToNext":0,"dwell":0,"at":22}],"line":[[-71.14919,42.33615],[-71.14844,42.33631],[-71.1481,42.3364],[-71.14797,42.33643],[-71.14711,42.33663],[-71.1455,42.33697],[-71.14532,42.33701],[-71.14532,42.33701],[-71.14517,42.33704],[-71.14489,42.3371],[-71.14436,42.3372],[-71.1436,42.33736],[-71.14271,42.33754],[-71.14228,42.33763],[-71.14211,42.33766],[-71.14165,42.33775],[-71.14165,42.33775],[-71.14121,42.33784],[-71.14028,42.33806],[-71.13944,42.33826],[-71.13877,42.33841],[-71.13886,42.3384],[-71.13869,42.33844]]},{"id":"Green-D-0","name":"Green Line D","mode":"train","toward":"Riverside","loop":false,"service":[{"days":[1,2,3,4,5],"from":"05:57","to":"07:00","every":9},{"days":[1,2,3,4,5],"from":"07:00","to":"09:30","every":9},{"days":[1,2,3,4,5],"from":"09:30","to":"15:30","every":8},{"days":[1,2,3,4,5],"from":"15:30","to":"19:00","every":9},{"days":[1,2,3,4,5],"from":"19:00","to":"25:41","every":8},{"days":[6],"from":"06:05","to":"07:00","every":14},{"days":[6],"from":"07:00","to":"09:30","every":12},{"days":[6],"from":"09:30","to":"15:30","every":9},{"days":[6],"from":"15:30","to":"19:00","every":10},{"days":[6],"from":"19:00","to":"26:31","every":10},{"days":[0],"from":"06:19","to":"07:00","every":20},{"days":[0],"from":"07:00","to":"09:30","every":12},{"days":[0],"from":"09:30","to":"15:30","every":10},{"days":[0],"from":"15:30","to":"19:00","every":10},{"days":[0],"from":"19:00","to":"25:29","every":11}],"stops":[{"name":"Beaconsfield","id":"place-bcnfd","lonlat":[-71.140455,42.335765],"wheelchair":"yes","rideToNext":180,"dwell":0,"at":0},{"name":"Reservoir","id":"place-rsmnl","lonlat":[-71.148758,42.335088],"wheelchair":"yes","rideToNext":180,"dwell":0,"at":26},{"name":"Chestnut Hill","id":"place-chhil","lonlat":[-71.164699,42.326753],"wheelchair":"yes","rideToNext":240,"dwell":0,"at":56},{"name":"Newton Centre","id":"place-newto","lonlat":[-71.192414,42.329443],"wheelchair":"yes","rideToNext":0,"dwell":0,"at":97}],"line":[[-71.14035,42.3357],[-71.14082,42.33582],[-71.14083,42.33583],[-71.14083,42.33583],[-71.14113,42.33588],[-71.14152,42.33591],[-71.14162,42.33591],[-71.14174,42.33592],[-71.14212,42.33594],[-71.14267,42.33594],[-71.1431,42.33593],[-71.14344,42.33591],[-71.1437,42.33587],[-71.14395,42.33582],[-71.14421,42.33575],[-71.14436,42.33569],[-71.14452,42.33565],[-71.14494,42.33557],[-71.14522,42.33552],[-71.14666,42.33528],[-71.14698,42.33524],[-71.1473,42.3352],[-71.14754,42.3352],[-71.14784,42.33517],[-71.14811,42.33514],[-71.14838,42.3351],[-71.14873,42.33503],[-71.14908,42.33495],[-71.14908,42.33495],[-71.14934,42.33488],[-71.14948,42.33484],[-71.14968,42.33478],[-71.15007,42.33462],[-71.15048,42.33441],[-71.1508,42.33424],[-71.15115,42.33404],[-71.15148,42.33383],[-71.15218,42.33339],[-71.15411,42.33223],[-71.15458,42.33196],[-71.15577,42.33123],[-71.15626,42.33095],[-71.15632,42.33091],[-71.15642,42.33086],[-71.1568,42.33061],[-71.15929,42.32909],[-71.16041,42.32842],[-71.1612,42.32793],[-71.16148,42.32777],[-71.16209,42.32745],[-71.16241,42.32731],[-71.16285,42.32715],[-71.16323,42.32702],[-71.16363,42.32691],[-71.16394,42.32683],[-71.16461,42.32672],[-71.16465,42.32671],[-71.16532,42.32665],[-71.16532,42.32665],[-71.16544,42.32664],[-71.1655,42.32664],[-71.16558,42.32664],[-71.16622,42.32665],[-71.16661,42.32667],[-71.1671,42.32672],[-71.16767,42.32682],[-71.16867,42.32702],[-71.1703,42.32733],[-71.17114,42.3275],[-71.17195,42.32765],[-71.17329,42.32792],[-71.17448,42.32815],[-71.1751,42.32827],[-71.17786,42.3288],[-71.17803,42.32883],[-71.17823,42.32887],[-71.1789,42.32899],[-71.17975,42.32917],[-71.1805,42.3293],[-71.18136,42.32948],[-71.18234,42.32967],[-71.18277,42.32976],[-71.1845,42.33011],[-71.18537,42.33027],[-71.18605,42.33034],[-71.18683,42.33038],[-71.18723,42.33039],[-71.18758,42.33039],[-71.18808,42.33037],[-71.18885,42.3303],[-71.18964,42.33018],[-71.19032,42.33004],[-71.19089,42.32991],[-71.19098,42.32988],[-71.19112,42.32983],[-71.19141,42.32974],[-71.19208,42.3295],[-71.19236,42.32939]]},{"id":"Green-D-1","name":"Green Line D","mode":"train","toward":"Union Square","loop":false,"service":[{"days":[1,2,3,4,5],"from":"04:45","to":"07:00","every":9},{"days":[1,2,3,4,5],"from":"07:00","to":"09:30","every":8},{"days":[1,2,3,4,5],"from":"09:30","to":"15:30","every":8},{"days":[1,2,3,4,5],"from":"15:30","to":"19:00","every":8},{"days":[1,2,3,4,5],"from":"19:00","to":"24:27","every":9},{"days":[6],"from":"05:15","to":"07:00","every":14},{"days":[6],"from":"07:00","to":"09:30","every":11},{"days":[6],"from":"09:30","to":"15:30","every":9},{"days":[6],"from":"15:30","to":"19:00","every":10},{"days":[6],"from":"19:00","to":"25:31","every":10},{"days":[0],"from":"05:40","to":"07:00","every":12},{"days":[0],"from":"07:00","to":"09:30","every":11},{"days":[0],"from":"09:30","to":"15:30","every":10},{"days":[0],"from":"15:30","to":"19:00","every":11},{"days":[0],"from":"19:00","to":"24:30","every":13}],"stops":[{"name":"Newton Centre","id":"place-newto","lonlat":[-71.192414,42.329443],"wheelchair":"yes","rideToNext":240,"dwell":0,"at":0},{"name":"Chestnut Hill","id":"place-chhil","lonlat":[-71.164699,42.326753],"wheelchair":"yes","rideToNext":180,"dwell":0,"at":41},{"name":"Reservoir","id":"place-rsmnl","lonlat":[-71.148758,42.335088],"wheelchair":"yes","rideToNext":180,"dwell":0,"at":71},{"name":"Beaconsfield","id":"place-bcnfd","lonlat":[-71.140455,42.335765],"wheelchair":"yes","rideToNext":0,"dwell":0,"at":97}],"line":[[-71.19236,42.32939],[-71.19208,42.3295],[-71.19141,42.32974],[-71.19112,42.32983],[-71.19098,42.32988],[-71.19089,42.32991],[-71.19032,42.33004],[-71.18964,42.33018],[-71.18885,42.3303],[-71.18808,42.33037],[-71.18758,42.33039],[-71.18723,42.33039],[-71.18683,42.33038],[-71.18605,42.33034],[-71.18537,42.33027],[-71.1845,42.33011],[-71.18277,42.32976],[-71.18234,42.32967],[-71.18136,42.32948],[-71.1805,42.3293],[-71.17975,42.32917],[-71.1789,42.32899],[-71.17823,42.32887],[-71.17803,42.32883],[-71.17786,42.3288],[-71.1751,42.32827],[-71.17448,42.32815],[-71.17329,42.32792],[-71.17195,42.32765],[-71.17114,42.3275],[-71.1703,42.32733],[-71.16867,42.32702],[-71.16767,42.32682],[-71.1671,42.32672],[-71.16661,42.32667],[-71.16622,42.32665],[-71.16558,42.32664],[-71.1655,42.32664],[-71.16544,42.32664],[-71.1653,42.32665],[-71.1653,42.32665],[-71.16465,42.32671],[-71.16461,42.32672],[-71.16394,42.32683],[-71.16363,42.32691],[-71.16323,42.32702],[-71.16285,42.32715],[-71.16241,42.32731],[-71.16209,42.32745],[-71.16148,42.32777],[-71.1612,42.32793],[-71.16041,42.32842],[-71.15929,42.32909],[-71.1568,42.33061],[-71.15642,42.33086],[-71.15632,42.33091],[-71.15626,42.33095],[-71.15577,42.33123],[-71.15458,42.33196],[-71.15411,42.33223],[-71.15218,42.33339],[-71.15148,42.33383],[-71.15115,42.33404],[-71.1508,42.33424],[-71.15048,42.33441],[-71.15007,42.33462],[-71.14968,42.33478],[-71.14948,42.33484],[-71.14934,42.33488],[-71.14908,42.33495],[-71.14908,42.33495],[-71.14873,42.33503],[-71.14838,42.3351],[-71.14811,42.33514],[-71.14784,42.33517],[-71.14754,42.3352],[-71.1473,42.3352],[-71.14698,42.33524],[-71.14666,42.33528],[-71.14522,42.33552],[-71.14494,42.33557],[-71.14452,42.33565],[-71.14436,42.33569],[-71.14421,42.33575],[-71.14395,42.33582],[-71.1437,42.33587],[-71.14344,42.33591],[-71.1431,42.33593],[-71.14267,42.33594],[-71.14212,42.33594],[-71.14174,42.33592],[-71.14162,42.33591],[-71.14152,42.33591],[-71.14113,42.33588],[-71.14084,42.33583],[-71.14084,42.33583],[-71.14082,42.33582],[-71.14035,42.3357]]}]}
diff --git a/src/geojson/shuttles.json b/src/geojson/shuttles.json
index 80bff29..eb922de 100644
--- a/src/geojson/shuttles.json
+++ b/src/geojson/shuttles.json
@@ -1 +1 @@
-{"source":"Snapshot of BC’s public shuttle tracker (bostoncollege.transloc.com); schedules from BC’s shuttle page","schedulePage":"https://www.bc.edu/bc-web/offices/aux-services/sites/transportation-parking/shuttles.html","snapshot":"2026-10-16","routes":[{"id":5,"name":"Comm Ave All Stops","tracker":"Comm Ave All Stops","color":"#CC9933","loop":true,"service":[{"days":[1,2,3,4,5],"from":"17:00","to":"26:00","every":12},{"days":[0,6],"from":"08:00","to":"11:30","every":30},{"days":[0,6],"from":"11:30","to":"26:00","every":12}],"stops":[{"name":"Conte Forum","lonlat":[-71.167135,42.335986],"rideToNext":113,"dwell":10,"at":0},{"name":"McElroy – Beacon St.","lonlat":[-71.170819,42.333187],"rideToNext":74,"dwell":10,"at":89},{"name":"College Road","lonlat":[-71.1716,42.335236],"rideToNext":40,"dwell":10,"at":120},{"name":"Main Gate Chestnut Hill","lonlat":[-71.171094,42.337928],"rideToNext":109,"dwell":10,"at":146},{"name":"Evergreen Cemetery","lonlat":[-71.161254,42.339938],"rideToNext":23,"dwell":10,"at":215},{"name":"2000 Commonwealth Ave","lonlat":[-71.158475,42.33965],"rideToNext":207,"dwell":10,"at":233},{"name":"Reservoir MBTA stop","lonlat":[-71.148891,42.335054],"rideToNext":113,"dwell":10,"at":325},{"name":"Chestnut Hill Ave","lonlat":[-71.151027,42.336106],"rideToNext":229,"dwell":10,"at":348},{"name":"Chiswick Road","lonlat":[-71.151324,42.340564],"rideToNext":81,"dwell":10,"at":412},{"name":"Corner of Commonwealth Ave. and Chestnut Hill Ave","lonlat":[-71.15408,42.338326],"rideToNext":47,"dwell":10,"at":462},{"name":"South Street","lonlat":[-71.157531,42.339738],"rideToNext":37,"dwell":10,"at":483},{"name":"Greycliff Hall","lonlat":[-71.161684,42.340238],"rideToNext":151,"dwell":10,"at":499},{"name":"Robsham Theater","lonlat":[-71.169006,42.337958],"rideToNext":124,"dwell":10,"at":554}],"line":[[-71.16718,42.33605],[-71.1671,42.33609],[-71.16701,42.33612],[-71.16692,42.33615],[-71.16683,42.33618],[-71.16676,42.3362],[-71.16665,42.33622],[-71.1665,42.33623],[-71.16634,42.33622],[-71.16632,42.33622],[-71.16626,42.33622],[-71.16622,42.33621],[-71.16615,42.3362],[-71.16611,42.3362],[-71.16606,42.33619],[-71.16595,42.33617],[-71.16585,42.33614],[-71.16577,42.33611],[-71.16575,42.3361],[-71.16571,42.33609],[-71.1656,42.33603],[-71.16553,42.33597],[-71.16543,42.33589],[-71.16524,42.33577],[-71.16507,42.33572],[-71.16481,42.33565],[-71.16456,42.33559],[-71.16444,42.33555],[-71.16434,42.33552],[-71.16431,42.33551],[-71.16409,42.33546],[-71.16394,42.33542],[-71.16363,42.33534],[-71.16349,42.33531],[-71.16344,42.3353],[-71.16331,42.33526],[-71.1633,42.33526],[-71.16323,42.33525],[-71.16317,42.33524],[-71.16311,42.33525],[-71.16305,42.33526],[-71.16296,42.33528],[-71.16296,42.33528],[-71.16287,42.33517],[-71.1628,42.33507],[-71.16277,42.33502],[-71.16271,42.33494],[-71.1626,42.33477],[-71.16258,42.33474],[-71.1625,42.33462],[-71.16245,42.33455],[-71.16241,42.33449],[-71.16236,42.33436],[-71.16236,42.33436],[-71.16242,42.33425],[-71.16246,42.3342],[-71.16249,42.33416],[-71.16254,42.33411],[-71.16259,42.33405],[-71.16268,42.33397],[-71.16288,42.33396],[-71.16291,42.33396],[-71.16303,42.33395],[-71.16337,42.33391],[-71.16347,42.33389],[-71.16363,42.33387],[-71.1644,42.33378],[-71.16447,42.33378],[-71.16467,42.33376],[-71.16471,42.33376],[-71.16473,42.33376],[-71.16475,42.33376],[-71.16479,42.33375],[-71.16518,42.33371],[-71.16547,42.33368],[-71.16604,42.33362],[-71.16623,42.3336],[-71.16679,42.33353],[-71.16761,42.33345],[-71.16768,42.33344],[-71.16777,42.33343],[-71.168,42.3334],[-71.16833,42.33337],[-71.169,42.33329],[-71.1693,42.33326],[-71.16969,42.33322],[-71.16993,42.33319],[-71.17043,42.33312],[-71.17067,42.3331],[-71.1708,42.33308],[-71.1708,42.33308],[-71.17103,42.33305],[-71.17126,42.33303],[-71.17157,42.333],[-71.17175,42.33298],[-71.17188,42.33296],[-71.17199,42.33295],[-71.17223,42.33292],[-71.17277,42.33287],[-71.17277,42.33287],[-71.173,42.33306],[-71.17303,42.33308],[-71.17303,42.33308],[-71.17295,42.33318],[-71.17287,42.33329],[-71.17282,42.33335],[-71.17268,42.3335],[-71.17258,42.33362],[-71.1725,42.3337],[-71.17244,42.33377],[-71.17218,42.33407],[-71.17205,42.33421],[-71.17182,42.33447],[-71.17178,42.33451],[-71.17175,42.33456],[-71.17174,42.33459],[-71.17173,42.33462],[-71.17172,42.33467],[-71.1717,42.3348],[-71.17167,42.33499],[-71.17163,42.33524],[-71.17163,42.33524],[-71.1716,42.33542],[-71.17156,42.33566],[-71.17155,42.33572],[-71.17155,42.33575],[-71.17155,42.33579],[-71.17157,42.33591],[-71.17158,42.33596],[-71.17158,42.33599],[-71.1716,42.33607],[-71.17165,42.33624],[-71.17166,42.33629],[-71.17173,42.33646],[-71.17186,42.33669],[-71.17195,42.33683],[-71.17206,42.33699],[-71.17221,42.33718],[-71.17221,42.33718],[-71.17212,42.33722],[-71.17187,42.33737],[-71.17148,42.33769],[-71.17144,42.33773],[-71.17139,42.33778],[-71.17134,42.33782],[-71.17131,42.33785],[-71.17117,42.33799],[-71.17117,42.33799],[-71.17111,42.33804],[-71.17105,42.3381],[-71.1708,42.33835],[-71.17075,42.33839],[-71.17068,42.33845],[-71.17061,42.33851],[-71.17053,42.33857],[-71.17044,42.33863],[-71.17036,42.33869],[-71.17035,42.3387],[-71.17028,42.33875],[-71.1702,42.3388],[-71.17011,42.33885],[-71.17,42.33891],[-71.16977,42.33903],[-71.16966,42.33908],[-71.16952,42.33914],[-71.16937,42.3392],[-71.16917,42.33927],[-71.16887,42.33937],[-71.16855,42.33947],[-71.16839,42.33952],[-71.16834,42.33954],[-71.16832,42.33955],[-71.1683,42.33955],[-71.16822,42.33955],[-71.16819,42.33955],[-71.16817,42.33956],[-71.16814,42.33957],[-71.16813,42.33957],[-71.16806,42.33959],[-71.16796,42.33962],[-71.16784,42.33964],[-71.16757,42.3397],[-71.16734,42.33974],[-71.16701,42.3398],[-71.16677,42.33984],[-71.1667,42.33985],[-71.16662,42.33986],[-71.16645,42.33987],[-71.16612,42.33991],[-71.16597,42.33993],[-71.1658,42.33995],[-71.16558,42.33998],[-71.1654,42.33999],[-71.16534,42.34],[-71.16523,42.34001],[-71.16519,42.34001],[-71.16516,42.34001],[-71.16511,42.34001],[-71.1649,42.34003],[-71.16467,42.34004],[-71.16461,42.34004],[-71.16447,42.34005],[-71.16419,42.34005],[-71.16398,42.34006],[-71.16388,42.34006],[-71.16374,42.34006],[-71.16355,42.34005],[-71.16343,42.34005],[-71.16337,42.34005],[-71.16321,42.34005],[-71.16281,42.34003],[-71.16264,42.34003],[-71.16179,42.34],[-71.16177,42.34],[-71.16135,42.33999],[-71.16125,42.33999],[-71.16125,42.33999],[-71.16106,42.33998],[-71.16092,42.33998],[-71.16078,42.33998],[-71.16062,42.33997],[-71.16047,42.33996],[-71.16038,42.33996],[-71.16031,42.33995],[-71.16016,42.33994],[-71.16001,42.33993],[-71.15987,42.33992],[-71.1596,42.33988],[-71.1593,42.33984],[-71.15898,42.33979],[-71.15884,42.33977],[-71.15865,42.33973],[-71.15848,42.3397],[-71.15846,42.33969],[-71.15846,42.33969],[-71.15835,42.33967],[-71.15815,42.33962],[-71.158,42.33959],[-71.15789,42.33956],[-71.15768,42.3395],[-71.15751,42.33946],[-71.15735,42.33941],[-71.15722,42.33936],[-71.15708,42.33932],[-71.15694,42.33927],[-71.1568,42.33922],[-71.15666,42.33917],[-71.15654,42.33912],[-71.15637,42.33906],[-71.15625,42.33901],[-71.15613,42.33896],[-71.15589,42.33885],[-71.15537,42.33859],[-71.15517,42.33849],[-71.15506,42.33845],[-71.15497,42.33841],[-71.15489,42.33837],[-71.15475,42.33831],[-71.15462,42.33825],[-71.1545,42.33819],[-71.15438,42.33815],[-71.1543,42.33812],[-71.15422,42.33809],[-71.15413,42.33805],[-71.15403,42.33802],[-71.15399,42.33801],[-71.15396,42.33801],[-71.15395,42.338],[-71.15391,42.338],[-71.15374,42.33797],[-71.1536,42.33796],[-71.15351,42.33795],[-71.15348,42.33795],[-71.15347,42.33795],[-71.15346,42.33795],[-71.15345,42.33795],[-71.15344,42.33795],[-71.15342,42.33795],[-71.15329,42.33798],[-71.15327,42.33799],[-71.15325,42.338],[-71.15321,42.33802],[-71.15321,42.33802],[-71.15317,42.33797],[-71.15307,42.33787],[-71.15305,42.33784],[-71.15254,42.3374],[-71.15229,42.33717],[-71.15203,42.33696],[-71.15188,42.33684],[-71.15145,42.3365],[-71.15129,42.33636],[-71.15123,42.33632],[-71.15118,42.33628],[-71.15113,42.33624],[-71.15107,42.33619],[-71.15105,42.33617],[-71.15092,42.33604],[-71.15092,42.33604],[-71.1508,42.33592],[-71.15059,42.33571],[-71.15051,42.33563],[-71.15042,42.33555],[-71.15039,42.33552],[-71.15028,42.33544],[-71.15019,42.33537],[-71.15004,42.33528],[-71.15003,42.33527],[-71.15001,42.33526],[-71.14997,42.33523],[-71.14986,42.33517],[-71.14985,42.33516],[-71.14972,42.3351],[-71.14964,42.33506],[-71.14952,42.33499],[-71.14943,42.33495],[-71.14937,42.33492],[-71.14936,42.33491],[-71.14928,42.33487],[-71.14917,42.33482],[-71.14891,42.3347],[-71.14891,42.3347],[-71.14882,42.33466],[-71.14876,42.33485],[-71.1488,42.33496],[-71.14891,42.33501],[-71.14891,42.33501],[-71.14913,42.33504],[-71.14936,42.33491],[-71.14937,42.33492],[-71.14943,42.33495],[-71.14952,42.33499],[-71.14964,42.33506],[-71.14972,42.3351],[-71.14985,42.33516],[-71.14986,42.33517],[-71.14997,42.33523],[-71.15001,42.33526],[-71.15003,42.33527],[-71.15004,42.33528],[-71.15019,42.33537],[-71.15028,42.33544],[-71.15039,42.33552],[-71.15042,42.33555],[-71.15051,42.33563],[-71.15059,42.33571],[-71.1508,42.33592],[-71.15092,42.33604],[-71.15105,42.33617],[-71.15107,42.33619],[-71.15113,42.33624],[-71.15118,42.33628],[-71.15123,42.33632],[-71.15129,42.33636],[-71.15145,42.3365],[-71.15188,42.33684],[-71.15203,42.33696],[-71.15209,42.337],[-71.15209,42.337],[-71.15229,42.33717],[-71.15254,42.3374],[-71.15305,42.33784],[-71.15307,42.33787],[-71.15317,42.33797],[-71.15321,42.33802],[-71.15321,42.33802],[-71.15318,42.33803],[-71.15314,42.33805],[-71.15309,42.33807],[-71.15306,42.33809],[-71.15303,42.33811],[-71.1529,42.33821],[-71.15277,42.33832],[-71.15273,42.33836],[-71.15268,42.33841],[-71.15262,42.33849],[-71.15256,42.33856],[-71.15252,42.33862],[-71.15249,42.33866],[-71.15247,42.3387],[-71.15246,42.33872],[-71.15239,42.33885],[-71.15227,42.3391],[-71.1522,42.33922],[-71.15212,42.33936],[-71.15207,42.33943],[-71.15207,42.33944],[-71.152,42.33953],[-71.15194,42.33961],[-71.15189,42.33967],[-71.1518,42.33977],[-71.15168,42.33991],[-71.15159,42.34],[-71.15149,42.34009],[-71.1513,42.34025],[-71.15122,42.34032],[-71.15115,42.3404],[-71.15113,42.34042],[-71.15104,42.34048],[-71.15087,42.3406],[-71.15083,42.34063],[-71.15062,42.34077],[-71.15054,42.34083],[-71.15039,42.34091],[-71.15052,42.34103],[-71.15069,42.3409],[-71.15084,42.3408],[-71.15086,42.34079],[-71.15095,42.34073],[-71.15102,42.34068],[-71.15114,42.3406],[-71.1512,42.34056],[-71.15128,42.3405],[-71.15128,42.3405],[-71.15129,42.34049],[-71.15137,42.34042],[-71.15144,42.34037],[-71.15149,42.34033],[-71.15156,42.34026],[-71.15166,42.34018],[-71.15175,42.34009],[-71.15184,42.34],[-71.15193,42.33991],[-71.152,42.33982],[-71.15205,42.33976],[-71.15209,42.33971],[-71.15216,42.33962],[-71.15224,42.33951],[-71.1523,42.33942],[-71.15236,42.33934],[-71.15237,42.33931],[-71.15241,42.33925],[-71.15243,42.33921],[-71.15249,42.3391],[-71.15255,42.33899],[-71.15258,42.33891],[-71.15263,42.3388],[-71.15265,42.33876],[-71.15267,42.33873],[-71.15269,42.3387],[-71.15273,42.33864],[-71.15278,42.33857],[-71.15286,42.33849],[-71.15288,42.33847],[-71.15291,42.33845],[-71.15299,42.33839],[-71.15308,42.33833],[-71.15316,42.33829],[-71.15323,42.33826],[-71.15329,42.33823],[-71.15335,42.3382],[-71.15339,42.33818],[-71.1535,42.33818],[-71.15356,42.33817],[-71.15359,42.33817],[-71.15362,42.33817],[-71.15379,42.33818],[-71.1539,42.33819],[-71.154,42.33821],[-71.15404,42.33822],[-71.15413,42.33825],[-71.15413,42.33825],[-71.15415,42.33826],[-71.15429,42.33831],[-71.15442,42.33835],[-71.15455,42.3384],[-71.15469,42.33846],[-71.15481,42.33851],[-71.15494,42.33857],[-71.15508,42.33863],[-71.15509,42.33864],[-71.15522,42.3387],[-71.15534,42.33876],[-71.15546,42.33882],[-71.15558,42.33888],[-71.15584,42.339],[-71.15608,42.33911],[-71.15623,42.33917],[-71.15648,42.33928],[-71.1565,42.33928],[-71.15676,42.33938],[-71.15726,42.33955],[-71.15729,42.33956],[-71.15757,42.33964],[-71.15757,42.33964],[-71.15782,42.33971],[-71.15835,42.33983],[-71.15866,42.3399],[-71.15898,42.33996],[-71.15936,42.34001],[-71.15975,42.34007],[-71.16006,42.3401],[-71.16032,42.34012],[-71.16035,42.34012],[-71.16059,42.34014],[-71.16106,42.34015],[-71.1613,42.34016],[-71.16143,42.34017],[-71.16162,42.34018],[-71.16169,42.34018],[-71.16169,42.34018],[-71.16205,42.34019],[-71.1626,42.34021],[-71.16308,42.34022],[-71.16341,42.34023],[-71.16355,42.34023],[-71.16393,42.34024],[-71.16403,42.34024],[-71.16414,42.34024],[-71.16421,42.34024],[-71.16428,42.34024],[-71.16443,42.34024],[-71.16457,42.34023],[-71.16471,42.34023],[-71.16505,42.34021],[-71.16567,42.34014],[-71.16614,42.34009],[-71.16614,42.34009],[-71.16613,42.34],[-71.16613,42.33997],[-71.16612,42.33991],[-71.16611,42.33981],[-71.1661,42.33978],[-71.16609,42.33967],[-71.16604,42.3394],[-71.16603,42.33933],[-71.16602,42.33921],[-71.16602,42.33921],[-71.16605,42.33921],[-71.16609,42.33921],[-71.16614,42.3392],[-71.1662,42.33919],[-71.16626,42.33917],[-71.16632,42.33915],[-71.16666,42.33902],[-71.16685,42.33895],[-71.16685,42.33895],[-71.16718,42.33882],[-71.16721,42.33881],[-71.16728,42.33879],[-71.16792,42.33855],[-71.1681,42.33849],[-71.16849,42.33835],[-71.1685,42.33834],[-71.16857,42.33832],[-71.16865,42.33828],[-71.1687,42.33825],[-71.16873,42.33822],[-71.16879,42.33817],[-71.16883,42.33812],[-71.16886,42.33808],[-71.16889,42.33804],[-71.16891,42.33798],[-71.16892,42.33795],[-71.16901,42.3379],[-71.16892,42.33789],[-71.16892,42.33785],[-71.16891,42.33778],[-71.1689,42.33773],[-71.16888,42.33767],[-71.16882,42.33758],[-71.16875,42.3375],[-71.1687,42.33746],[-71.16867,42.33744],[-71.1686,42.33739],[-71.16857,42.33736],[-71.16854,42.33733],[-71.16852,42.3373],[-71.16852,42.33729],[-71.16851,42.33728],[-71.1685,42.33726],[-71.16849,42.33724],[-71.16848,42.3372],[-71.16847,42.33716],[-71.16845,42.33709],[-71.16841,42.337],[-71.16838,42.33692],[-71.16832,42.33676],[-71.16829,42.33666],[-71.16825,42.33656],[-71.16817,42.33633],[-71.16812,42.33619],[-71.1681,42.33613],[-71.16808,42.3361],[-71.16807,42.33607],[-71.16806,42.33605],[-71.16803,42.33601],[-71.168,42.33598],[-71.16797,42.33596],[-71.16788,42.33592],[-71.16786,42.33591],[-71.16783,42.33591],[-71.1678,42.3359],[-71.16777,42.3359],[-71.16773,42.3359],[-71.16769,42.3359],[-71.16764,42.3359],[-71.16759,42.33591],[-71.16757,42.33591],[-71.1675,42.33594],[-71.16718,42.33605]]},{"id":6,"name":"Comm Ave Direct","tracker":"Comm Ave Direct","color":"#089988","loop":true,"service":[{"days":[1,2,3,4,5],"from":"07:00","to":"17:00","every":9}],"stops":[{"name":"Conte Forum","lonlat":[-71.167135,42.335986],"rideToNext":163,"dwell":10,"at":477},{"name":"Evergreen Cemetery","lonlat":[-71.161254,42.339938],"rideToNext":23,"dwell":10,"at":495},{"name":"2000 Commonwealth Ave","lonlat":[-71.158475,42.33965],"rideToNext":207,"dwell":10,"at":497},{"name":"Reservoir MBTA stop","lonlat":[-71.148891,42.335054],"rideToNext":113,"dwell":10,"at":497},{"name":"Chestnut Hill Ave","lonlat":[-71.151027,42.336106],"rideToNext":234,"dwell":10,"at":497},{"name":"Chiswick Road","lonlat":[-71.151324,42.340564],"rideToNext":81,"dwell":10,"at":497},{"name":"Corner of Commonwealth Ave. and Chestnut Hill Ave","lonlat":[-71.15408,42.338326],"rideToNext":47,"dwell":10,"at":497},{"name":"South Street","lonlat":[-71.157531,42.339738],"rideToNext":37,"dwell":10,"at":497},{"name":"Greycliff Hall","lonlat":[-71.161684,42.340238],"rideToNext":149,"dwell":10,"at":497},{"name":"Robsham Theater","lonlat":[-71.169006,42.337958],"rideToNext":115,"dwell":10,"at":497}],"line":[[-71.16543,42.3359],[-71.16523,42.33578],[-71.16507,42.33573],[-71.16481,42.33566],[-71.16456,42.3356],[-71.16443,42.33556],[-71.16434,42.33554],[-71.1643,42.33553],[-71.16407,42.33546],[-71.16363,42.33535],[-71.16349,42.33531],[-71.16344,42.3353],[-71.1633,42.33526],[-71.16323,42.33524],[-71.16317,42.33524],[-71.16311,42.33525],[-71.16305,42.33526],[-71.16296,42.33528],[-71.16296,42.33528],[-71.163,42.33533],[-71.16317,42.33558],[-71.1632,42.33562],[-71.16321,42.33563],[-71.16325,42.33569],[-71.16342,42.33594],[-71.16358,42.33616],[-71.16358,42.33616],[-71.16366,42.33628],[-71.16373,42.33641],[-71.16374,42.33644],[-71.16382,42.33657],[-71.16383,42.33658],[-71.16391,42.33672],[-71.16401,42.3369],[-71.16413,42.33716],[-71.16427,42.33747],[-71.16428,42.33749],[-71.1644,42.33779],[-71.16445,42.3379],[-71.16455,42.33812],[-71.16458,42.3382],[-71.16462,42.33827],[-71.16466,42.33834],[-71.16471,42.33842],[-71.16478,42.33849],[-71.1648,42.33852],[-71.16485,42.33856],[-71.16492,42.33864],[-71.16498,42.33868],[-71.16503,42.33872],[-71.1651,42.33877],[-71.16522,42.33885],[-71.16543,42.33897],[-71.1655,42.339],[-71.16558,42.33904],[-71.16566,42.33907],[-71.16572,42.3391],[-71.16582,42.33914],[-71.16602,42.33921],[-71.16603,42.33933],[-71.16604,42.3394],[-71.16609,42.33967],[-71.1661,42.33978],[-71.16611,42.33981],[-71.16612,42.33991],[-71.16612,42.33991],[-71.16597,42.33993],[-71.1658,42.33995],[-71.16558,42.33998],[-71.1654,42.33999],[-71.16534,42.34],[-71.16523,42.34001],[-71.16519,42.34001],[-71.16516,42.34001],[-71.16511,42.34001],[-71.1649,42.34003],[-71.16467,42.34004],[-71.16461,42.34004],[-71.16447,42.34005],[-71.16419,42.34005],[-71.16398,42.34006],[-71.16388,42.34006],[-71.16374,42.34006],[-71.16355,42.34005],[-71.16343,42.34005],[-71.16337,42.34005],[-71.16321,42.34005],[-71.16281,42.34003],[-71.16264,42.34003],[-71.16179,42.34],[-71.16177,42.34],[-71.16135,42.33999],[-71.16125,42.33999],[-71.16125,42.33999],[-71.16106,42.33998],[-71.16092,42.33998],[-71.16078,42.33998],[-71.16062,42.33997],[-71.16047,42.33996],[-71.16038,42.33996],[-71.16031,42.33995],[-71.16016,42.33994],[-71.16001,42.33993],[-71.15987,42.33992],[-71.1596,42.33988],[-71.1593,42.33984],[-71.15898,42.33979],[-71.15884,42.33977],[-71.15865,42.33973],[-71.15848,42.3397],[-71.15846,42.33969],[-71.15846,42.33969],[-71.15835,42.33967],[-71.15815,42.33962],[-71.158,42.33959],[-71.15789,42.33956],[-71.15768,42.3395],[-71.15751,42.33946],[-71.15735,42.33941],[-71.15722,42.33936],[-71.15708,42.33932],[-71.15694,42.33927],[-71.1568,42.33922],[-71.15666,42.33917],[-71.15654,42.33912],[-71.15637,42.33906],[-71.15625,42.33901],[-71.15613,42.33896],[-71.15589,42.33885],[-71.15537,42.33859],[-71.15517,42.33849],[-71.15506,42.33845],[-71.15497,42.33841],[-71.15489,42.33837],[-71.15475,42.33831],[-71.15462,42.33825],[-71.1545,42.33819],[-71.15438,42.33815],[-71.1543,42.33812],[-71.15422,42.33809],[-71.15413,42.33805],[-71.15403,42.33802],[-71.15399,42.33801],[-71.15396,42.33801],[-71.15395,42.338],[-71.15391,42.338],[-71.15374,42.33797],[-71.1536,42.33796],[-71.15351,42.33795],[-71.15348,42.33795],[-71.15347,42.33795],[-71.15346,42.33795],[-71.15345,42.33795],[-71.15344,42.33795],[-71.15342,42.33795],[-71.15329,42.33798],[-71.15327,42.33799],[-71.15325,42.338],[-71.15321,42.33802],[-71.15321,42.33802],[-71.15317,42.33797],[-71.15307,42.33787],[-71.15305,42.33784],[-71.15254,42.3374],[-71.15229,42.33717],[-71.15203,42.33696],[-71.15188,42.33684],[-71.15145,42.3365],[-71.15129,42.33636],[-71.15123,42.33632],[-71.15118,42.33628],[-71.15113,42.33624],[-71.15107,42.33619],[-71.15105,42.33617],[-71.15092,42.33604],[-71.15092,42.33604],[-71.1508,42.33592],[-71.15059,42.33571],[-71.15051,42.33563],[-71.15042,42.33555],[-71.15039,42.33552],[-71.15028,42.33544],[-71.15019,42.33537],[-71.15004,42.33528],[-71.15003,42.33527],[-71.15001,42.33526],[-71.14997,42.33523],[-71.14986,42.33517],[-71.14985,42.33516],[-71.14972,42.3351],[-71.14964,42.33506],[-71.14952,42.33499],[-71.14943,42.33495],[-71.14937,42.33492],[-71.14936,42.33491],[-71.14928,42.33487],[-71.14917,42.33482],[-71.14891,42.3347],[-71.14891,42.3347],[-71.14883,42.33466],[-71.14877,42.33483],[-71.14881,42.33494],[-71.1489,42.33499],[-71.1489,42.33499],[-71.14903,42.33502],[-71.14936,42.33491],[-71.14937,42.33492],[-71.14943,42.33495],[-71.14952,42.33499],[-71.14964,42.33506],[-71.14972,42.3351],[-71.14985,42.33516],[-71.14986,42.33517],[-71.14997,42.33523],[-71.15001,42.33526],[-71.15003,42.33527],[-71.15004,42.33528],[-71.15019,42.33537],[-71.15028,42.33544],[-71.15039,42.33552],[-71.15042,42.33555],[-71.15051,42.33563],[-71.15059,42.33571],[-71.1508,42.33592],[-71.15092,42.33604],[-71.15105,42.33617],[-71.15107,42.33619],[-71.15113,42.33624],[-71.15118,42.33628],[-71.15123,42.33632],[-71.15129,42.33636],[-71.15145,42.3365],[-71.15188,42.33684],[-71.15203,42.33696],[-71.15209,42.337],[-71.15209,42.337],[-71.15229,42.33717],[-71.15254,42.3374],[-71.15305,42.33784],[-71.15307,42.33787],[-71.15317,42.33797],[-71.15321,42.33802],[-71.15321,42.33802],[-71.15318,42.33803],[-71.15314,42.33805],[-71.15309,42.33807],[-71.15306,42.33809],[-71.15303,42.33811],[-71.1529,42.33821],[-71.15277,42.33832],[-71.15273,42.33836],[-71.15268,42.33841],[-71.15262,42.33849],[-71.15256,42.33856],[-71.15252,42.33862],[-71.15249,42.33866],[-71.15247,42.3387],[-71.15246,42.33872],[-71.15239,42.33885],[-71.15227,42.3391],[-71.1522,42.33922],[-71.15212,42.33936],[-71.15207,42.33943],[-71.15207,42.33944],[-71.152,42.33953],[-71.15194,42.33961],[-71.15189,42.33967],[-71.1518,42.33977],[-71.15168,42.33991],[-71.15159,42.34],[-71.15149,42.34009],[-71.1513,42.34025],[-71.15122,42.34032],[-71.15115,42.3404],[-71.15113,42.34042],[-71.15104,42.34048],[-71.15087,42.3406],[-71.15083,42.34063],[-71.15062,42.34077],[-71.15054,42.34083],[-71.15039,42.34091],[-71.15052,42.34103],[-71.15069,42.3409],[-71.15084,42.3408],[-71.15086,42.34079],[-71.15095,42.34073],[-71.15102,42.34068],[-71.15114,42.3406],[-71.1512,42.34056],[-71.15128,42.3405],[-71.15128,42.3405],[-71.15129,42.34049],[-71.15137,42.34042],[-71.15144,42.34037],[-71.15149,42.34033],[-71.15156,42.34026],[-71.15166,42.34018],[-71.15175,42.34009],[-71.15184,42.34],[-71.15193,42.33991],[-71.152,42.33982],[-71.15205,42.33976],[-71.15209,42.33971],[-71.15216,42.33962],[-71.15224,42.33951],[-71.1523,42.33942],[-71.15236,42.33934],[-71.15237,42.33931],[-71.15241,42.33925],[-71.15243,42.33921],[-71.15249,42.3391],[-71.15255,42.33899],[-71.15258,42.33891],[-71.15263,42.3388],[-71.15265,42.33876],[-71.15267,42.33873],[-71.15269,42.3387],[-71.15273,42.33864],[-71.15278,42.33857],[-71.15286,42.33849],[-71.15288,42.33847],[-71.15291,42.33845],[-71.15299,42.33839],[-71.15308,42.33833],[-71.15316,42.33829],[-71.15323,42.33826],[-71.15329,42.33823],[-71.15335,42.3382],[-71.15339,42.33818],[-71.1535,42.33818],[-71.15356,42.33817],[-71.15359,42.33817],[-71.15362,42.33817],[-71.15379,42.33818],[-71.1539,42.33819],[-71.154,42.33821],[-71.15404,42.33822],[-71.15413,42.33825],[-71.15413,42.33825],[-71.15415,42.33826],[-71.15429,42.33831],[-71.15442,42.33835],[-71.15455,42.3384],[-71.15469,42.33846],[-71.15481,42.33851],[-71.15494,42.33857],[-71.15508,42.33863],[-71.15509,42.33864],[-71.15522,42.3387],[-71.15534,42.33876],[-71.15546,42.33882],[-71.15558,42.33888],[-71.15584,42.339],[-71.15608,42.33911],[-71.15623,42.33917],[-71.15648,42.33928],[-71.1565,42.33928],[-71.15676,42.33938],[-71.15726,42.33955],[-71.15729,42.33956],[-71.15757,42.33964],[-71.15757,42.33964],[-71.15782,42.33971],[-71.15835,42.33983],[-71.15866,42.3399],[-71.15898,42.33996],[-71.15936,42.34001],[-71.15975,42.34007],[-71.16006,42.3401],[-71.16032,42.34012],[-71.16035,42.34012],[-71.16059,42.34014],[-71.16106,42.34015],[-71.1613,42.34016],[-71.16143,42.34017],[-71.16162,42.34018],[-71.16169,42.34018],[-71.16169,42.34018],[-71.16205,42.34019],[-71.1626,42.34021],[-71.16308,42.34022],[-71.16341,42.34023],[-71.16355,42.34023],[-71.16393,42.34024],[-71.16403,42.34024],[-71.16414,42.34024],[-71.16421,42.34024],[-71.16428,42.34024],[-71.16443,42.34024],[-71.16457,42.34023],[-71.16471,42.34023],[-71.16505,42.34021],[-71.16567,42.34014],[-71.16614,42.34009],[-71.16614,42.34009],[-71.16613,42.34],[-71.16613,42.33997],[-71.16612,42.33991],[-71.16611,42.33981],[-71.1661,42.33978],[-71.16609,42.33967],[-71.16604,42.3394],[-71.16603,42.33933],[-71.16602,42.33921],[-71.16602,42.33921],[-71.16605,42.33921],[-71.16609,42.33921],[-71.16614,42.3392],[-71.1662,42.33919],[-71.16626,42.33917],[-71.16632,42.33915],[-71.16666,42.33902],[-71.16685,42.33895],[-71.16685,42.33895],[-71.16718,42.33882],[-71.16721,42.33881],[-71.16728,42.33879],[-71.16792,42.33855],[-71.1681,42.33849],[-71.16849,42.33835],[-71.1685,42.33834],[-71.16857,42.33832],[-71.16865,42.33828],[-71.1687,42.33825],[-71.16873,42.33822],[-71.16879,42.33817],[-71.16883,42.33812],[-71.16886,42.33808],[-71.16889,42.33804],[-71.16891,42.33798],[-71.16892,42.33795],[-71.16892,42.33795],[-71.16892,42.33789],[-71.16892,42.33785],[-71.16891,42.33778],[-71.1689,42.33773],[-71.16888,42.33767],[-71.16883,42.33757],[-71.16875,42.3375],[-71.16869,42.33746],[-71.16867,42.33743],[-71.16861,42.33739],[-71.16857,42.33736],[-71.16854,42.33733],[-71.16852,42.33731],[-71.16851,42.33729],[-71.16851,42.33728],[-71.1685,42.33726],[-71.16849,42.33724],[-71.16848,42.33721],[-71.16847,42.33717],[-71.16845,42.3371],[-71.16841,42.337],[-71.16838,42.33692],[-71.16832,42.33676],[-71.16829,42.33666],[-71.16826,42.33656],[-71.16818,42.33633],[-71.16813,42.33619],[-71.16811,42.33613],[-71.16809,42.3361],[-71.16808,42.33607],[-71.16806,42.33605],[-71.16803,42.33601],[-71.168,42.33598],[-71.16797,42.33596],[-71.16789,42.33591],[-71.16786,42.3359],[-71.16784,42.33589],[-71.16781,42.33589],[-71.16777,42.33588],[-71.16773,42.33588],[-71.16769,42.33589],[-71.16764,42.33589],[-71.16759,42.3359],[-71.16757,42.33591],[-71.1675,42.33593],[-71.1671,42.33608],[-71.16701,42.33612],[-71.16692,42.33615],[-71.16683,42.33618],[-71.16676,42.3362],[-71.16665,42.33621],[-71.1665,42.33623],[-71.16635,42.33622],[-71.16626,42.33622],[-71.16622,42.33622],[-71.16615,42.33621],[-71.16611,42.3362],[-71.16606,42.33619],[-71.16595,42.33617],[-71.16585,42.33614],[-71.16577,42.33611],[-71.16575,42.3361],[-71.16571,42.33609],[-71.1656,42.33603],[-71.16552,42.33598],[-71.16543,42.3359]]},{"id":9,"name":"Mall and Grocery Shuttle (Saturday)","tracker":"Grocery/Chestnut Hill Mall Shuttle - Saturday","color":"#FA8100","loop":false,"service":[{"days":[6],"from":"11:00","to":"15:05","every":60}],"stops":[{"name":"Stuart Hall Loading Dock","lonlat":[-71.194075,42.341378],"rideToNext":591,"dwell":10,"at":0},{"name":"Robsham Theater","lonlat":[-71.169006,42.337958],"rideToNext":91,"dwell":10,"at":251},{"name":"Conte Forum","lonlat":[-71.167135,42.335986],"rideToNext":134,"dwell":10,"at":298},{"name":"McElroy – Beacon St.","lonlat":[-71.170819,42.333187],"rideToNext":288,"dwell":10,"at":382},{"name":"Chestnut Hill Mall (MBTA Stop)","lonlat":[-71.17775,42.321861],"rideToNext":155,"dwell":10,"at":577},{"name":"Chestnut Hill Square (Wegmans)","lonlat":[-71.17622,42.319547],"rideToNext":183,"dwell":10,"at":616},{"name":"The Street (Bus Shelter)","lonlat":[-71.166517,42.323108],"rideToNext":440,"dwell":10,"at":680},{"name":"College Road","lonlat":[-71.1716,42.335236],"rideToNext":337,"dwell":10,"at":922}],"line":[[-71.19408,42.34133],[-71.19437,42.34137],[-71.19479,42.34143],[-71.19528,42.34149],[-71.19539,42.34151],[-71.19546,42.34153],[-71.19548,42.34154],[-71.19548,42.34154],[-71.19549,42.34147],[-71.19549,42.34142],[-71.19547,42.34138],[-71.19546,42.34136],[-71.19546,42.34135],[-71.19545,42.34135],[-71.19542,42.34134],[-71.19536,42.34133],[-71.1953,42.34132],[-71.195,42.34129],[-71.19483,42.34126],[-71.19469,42.34124],[-71.19466,42.34124],[-71.19428,42.34118],[-71.19424,42.34117],[-71.19405,42.34116],[-71.194,42.34115],[-71.19396,42.34115],[-71.19391,42.34116],[-71.19389,42.34116],[-71.19387,42.34117],[-71.19385,42.34118],[-71.19383,42.3412],[-71.19382,42.34121],[-71.1938,42.3413],[-71.1938,42.3413],[-71.1937,42.34129],[-71.19352,42.34125],[-71.19329,42.34121],[-71.19321,42.3412],[-71.19315,42.34119],[-71.1931,42.3412],[-71.19305,42.3412],[-71.19298,42.34122],[-71.19293,42.34124],[-71.19288,42.34127],[-71.19284,42.34129],[-71.19282,42.34131],[-71.19275,42.34139],[-71.1927,42.34148],[-71.19268,42.3416],[-71.19267,42.34171],[-71.19266,42.34181],[-71.19264,42.34186],[-71.19261,42.34192],[-71.19247,42.34205],[-71.19247,42.34205],[-71.19193,42.34177],[-71.19193,42.34177],[-71.19206,42.34163],[-71.19222,42.3415],[-71.19229,42.34143],[-71.19237,42.34133],[-71.19241,42.34127],[-71.19246,42.34119],[-71.1925,42.34109],[-71.19254,42.341],[-71.19256,42.34093],[-71.19258,42.34084],[-71.19266,42.34057],[-71.1927,42.34036],[-71.19281,42.33959],[-71.19283,42.33948],[-71.19303,42.33812],[-71.1931,42.33765],[-71.19318,42.33719],[-71.1932,42.33701],[-71.19328,42.33654],[-71.19332,42.33624],[-71.19333,42.33617],[-71.19333,42.33609],[-71.19334,42.33602],[-71.19334,42.33602],[-71.19287,42.33612],[-71.19264,42.33615],[-71.19249,42.33617],[-71.19216,42.3362],[-71.19208,42.3362],[-71.19139,42.3362],[-71.19087,42.33619],[-71.19068,42.33619],[-71.18996,42.3362],[-71.18935,42.33621],[-71.18873,42.33624],[-71.18795,42.33628],[-71.18747,42.33632],[-71.18713,42.33634],[-71.18688,42.33636],[-71.1867,42.33637],[-71.18653,42.33638],[-71.18645,42.33639],[-71.18641,42.3364],[-71.18638,42.3364],[-71.18635,42.33641],[-71.1863,42.33641],[-71.18622,42.33643],[-71.18598,42.33646],[-71.18586,42.33648],[-71.18564,42.33651],[-71.18522,42.33658],[-71.18516,42.33658],[-71.18505,42.33659],[-71.18485,42.33661],[-71.18439,42.33663],[-71.18403,42.33662],[-71.18396,42.33662],[-71.18386,42.33661],[-71.18355,42.3366],[-71.18349,42.3366],[-71.18339,42.33659],[-71.18314,42.33657],[-71.18285,42.33655],[-71.18281,42.33655],[-71.18262,42.33653],[-71.18242,42.33651],[-71.18211,42.33648],[-71.18196,42.33646],[-71.18187,42.33645],[-71.18139,42.33639],[-71.18115,42.33636],[-71.18098,42.33634],[-71.18055,42.33628],[-71.18016,42.33624],[-71.18,42.33622],[-71.17988,42.3362],[-71.17973,42.33618],[-71.17922,42.33614],[-71.17915,42.33613],[-71.17896,42.33612],[-71.1789,42.33612],[-71.17871,42.33612],[-71.17857,42.33611],[-71.17832,42.33613],[-71.17819,42.33615],[-71.17817,42.33615],[-71.17803,42.33618],[-71.17791,42.3362],[-71.17768,42.33627],[-71.17757,42.33631],[-71.17738,42.33639],[-71.17706,42.33655],[-71.17694,42.33661],[-71.17691,42.33662],[-71.17685,42.33666],[-71.17683,42.33667],[-71.17681,42.33668],[-71.17678,42.33669],[-71.17671,42.33673],[-71.17665,42.33676],[-71.17651,42.33684],[-71.17644,42.33688],[-71.17639,42.33691],[-71.17627,42.33697],[-71.17614,42.33702],[-71.17609,42.33704],[-71.17602,42.33707],[-71.17588,42.33712],[-71.17583,42.33713],[-71.17577,42.33715],[-71.17567,42.33718],[-71.17566,42.33718],[-71.17533,42.33725],[-71.17503,42.33727],[-71.17488,42.33727],[-71.17472,42.33727],[-71.17459,42.33727],[-71.17445,42.33726],[-71.17435,42.33724],[-71.17385,42.33716],[-71.17354,42.33711],[-71.17334,42.33709],[-71.17319,42.33708],[-71.17303,42.33707],[-71.17284,42.33708],[-71.17264,42.3371],[-71.17244,42.33714],[-71.17223,42.33718],[-71.17212,42.33723],[-71.172,42.3373],[-71.17188,42.33738],[-71.17174,42.33747],[-71.17163,42.33756],[-71.1715,42.33768],[-71.17142,42.33775],[-71.17137,42.3378],[-71.17132,42.33784],[-71.17129,42.33788],[-71.17117,42.338],[-71.17111,42.33805],[-71.17103,42.33813],[-71.17079,42.33835],[-71.17072,42.33841],[-71.17067,42.33844],[-71.17059,42.3385],[-71.17051,42.33856],[-71.17043,42.33862],[-71.17037,42.33866],[-71.17034,42.33869],[-71.17026,42.33874],[-71.17019,42.33878],[-71.17009,42.33884],[-71.16999,42.3389],[-71.16976,42.33901],[-71.16965,42.33907],[-71.16959,42.33909],[-71.16951,42.33912],[-71.16936,42.33918],[-71.16916,42.33925],[-71.16888,42.33936],[-71.16867,42.33943],[-71.16855,42.33947],[-71.16836,42.33953],[-71.16828,42.33956],[-71.16811,42.33957],[-71.16805,42.33959],[-71.16796,42.33961],[-71.16784,42.33964],[-71.16757,42.3397],[-71.16735,42.33974],[-71.16703,42.3398],[-71.16677,42.33983],[-71.16677,42.33983],[-71.16668,42.3397],[-71.16653,42.33947],[-71.16647,42.33936],[-71.16631,42.33912],[-71.16631,42.33912],[-71.16665,42.33902],[-71.16685,42.33895],[-71.16719,42.33883],[-71.16722,42.33882],[-71.16728,42.33879],[-71.1681,42.3385],[-71.1685,42.33835],[-71.16857,42.33833],[-71.16865,42.33828],[-71.16869,42.33825],[-71.16873,42.33822],[-71.16878,42.33816],[-71.16882,42.33812],[-71.16885,42.33808],[-71.16887,42.33803],[-71.1689,42.33798],[-71.16891,42.33794],[-71.16891,42.33794],[-71.16892,42.33789],[-71.16892,42.33785],[-71.16891,42.33778],[-71.16889,42.33773],[-71.16887,42.33767],[-71.16882,42.33758],[-71.16874,42.33751],[-71.16869,42.33746],[-71.16866,42.33744],[-71.16861,42.33739],[-71.16857,42.33736],[-71.16854,42.33733],[-71.16852,42.33731],[-71.16852,42.33729],[-71.16851,42.33728],[-71.1685,42.33726],[-71.16849,42.33724],[-71.16848,42.33721],[-71.16847,42.33717],[-71.16844,42.3371],[-71.1684,42.337],[-71.16837,42.33692],[-71.16831,42.33676],[-71.16828,42.33666],[-71.16824,42.33656],[-71.16816,42.33633],[-71.16811,42.33619],[-71.16809,42.33613],[-71.16808,42.3361],[-71.16807,42.33607],[-71.16805,42.33605],[-71.16803,42.33602],[-71.16799,42.33598],[-71.16797,42.33596],[-71.16788,42.33592],[-71.16786,42.33591],[-71.16783,42.33591],[-71.1678,42.3359],[-71.16777,42.3359],[-71.16773,42.3359],[-71.16769,42.3359],[-71.16765,42.33591],[-71.16759,42.33591],[-71.16758,42.33592],[-71.1675,42.33594],[-71.16718,42.33606],[-71.16718,42.33606],[-71.1671,42.33609],[-71.16701,42.33612],[-71.16693,42.33615],[-71.16683,42.33618],[-71.16676,42.3362],[-71.16665,42.33622],[-71.1665,42.33623],[-71.16635,42.33623],[-71.16626,42.33622],[-71.16622,42.33622],[-71.16615,42.33621],[-71.16611,42.3362],[-71.16606,42.33619],[-71.16595,42.33617],[-71.16585,42.33614],[-71.16577,42.33611],[-71.16575,42.3361],[-71.16571,42.33609],[-71.1656,42.33603],[-71.16553,42.33598],[-71.16543,42.33589],[-71.16524,42.33577],[-71.16507,42.33573],[-71.16481,42.33566],[-71.16456,42.33559],[-71.16444,42.33556],[-71.16434,42.33553],[-71.16431,42.33552],[-71.16407,42.33546],[-71.16363,42.33534],[-71.16349,42.33531],[-71.16344,42.3353],[-71.1633,42.33526],[-71.16323,42.33524],[-71.16317,42.33524],[-71.16311,42.33525],[-71.16305,42.33526],[-71.16296,42.33528],[-71.16296,42.33528],[-71.16287,42.33516],[-71.1628,42.33507],[-71.16272,42.33494],[-71.1626,42.33477],[-71.16258,42.33474],[-71.1625,42.33462],[-71.16245,42.33455],[-71.16242,42.33448],[-71.16239,42.33435],[-71.16239,42.33435],[-71.16242,42.33426],[-71.16245,42.33422],[-71.16249,42.33417],[-71.16255,42.3341],[-71.16261,42.33406],[-71.1627,42.33397],[-71.16291,42.33395],[-71.16303,42.33393],[-71.16319,42.33392],[-71.16347,42.33389],[-71.16363,42.33387],[-71.1644,42.33379],[-71.16447,42.33378],[-71.16468,42.33376],[-71.16471,42.33376],[-71.16474,42.33375],[-71.16475,42.33375],[-71.16479,42.33374],[-71.1652,42.3337],[-71.16546,42.33367],[-71.16603,42.3336],[-71.16623,42.33358],[-71.1668,42.33351],[-71.16761,42.33343],[-71.16768,42.33343],[-71.16777,42.33342],[-71.16803,42.33339],[-71.169,42.33328],[-71.16934,42.33324],[-71.16969,42.3332],[-71.16993,42.33318],[-71.17043,42.33312],[-71.17067,42.33309],[-71.1708,42.33308],[-71.1708,42.33308],[-71.17103,42.33305],[-71.17126,42.33303],[-71.17174,42.33298],[-71.17199,42.33295],[-71.17223,42.33292],[-71.17278,42.33287],[-71.17325,42.33281],[-71.17343,42.33279],[-71.17356,42.33277],[-71.17359,42.33277],[-71.17384,42.33273],[-71.17405,42.3327],[-71.17449,42.33266],[-71.17487,42.33261],[-71.17501,42.33259],[-71.1751,42.33257],[-71.17518,42.33256],[-71.1753,42.33253],[-71.17547,42.33248],[-71.1756,42.33243],[-71.17568,42.3324],[-71.17585,42.33232],[-71.17603,42.33225],[-71.17605,42.33224],[-71.17622,42.33218],[-71.17629,42.33215],[-71.17638,42.33213],[-71.17648,42.3321],[-71.17654,42.33208],[-71.17659,42.33208],[-71.17669,42.33206],[-71.17677,42.33205],[-71.17678,42.33205],[-71.17686,42.33204],[-71.17695,42.33204],[-71.17702,42.33204],[-71.17704,42.33204],[-71.17717,42.33204],[-71.17727,42.33205],[-71.1774,42.33207],[-71.1775,42.33208],[-71.17762,42.33211],[-71.17773,42.33213],[-71.17774,42.33214],[-71.17784,42.33217],[-71.17797,42.3322],[-71.17814,42.33225],[-71.17819,42.33226],[-71.17826,42.33229],[-71.17838,42.33232],[-71.17849,42.33235],[-71.17858,42.33237],[-71.17872,42.33239],[-71.17873,42.33239],[-71.17884,42.33241],[-71.17895,42.33241],[-71.17907,42.33242],[-71.17917,42.33241],[-71.1792,42.33241],[-71.17926,42.33241],[-71.17939,42.3324],[-71.17953,42.33238],[-71.17965,42.33236],[-71.17982,42.33234],[-71.17998,42.33231],[-71.18043,42.33225],[-71.18087,42.33218],[-71.18121,42.33213],[-71.18121,42.33213],[-71.18116,42.33207],[-71.1811,42.332],[-71.18104,42.33193],[-71.18101,42.33189],[-71.18091,42.33177],[-71.18079,42.33164],[-71.18063,42.33148],[-71.18055,42.3314],[-71.18033,42.33118],[-71.18019,42.33104],[-71.18005,42.3309],[-71.17991,42.33075],[-71.17983,42.33066],[-71.17977,42.3306],[-71.17962,42.33046],[-71.17952,42.33035],[-71.17934,42.33017],[-71.17922,42.33004],[-71.17894,42.32976],[-71.17892,42.32973],[-71.17862,42.32944],[-71.17843,42.32925],[-71.17815,42.32896],[-71.17812,42.32893],[-71.17781,42.32861],[-71.17773,42.32853],[-71.17762,42.32842],[-71.17753,42.32833],[-71.1774,42.32821],[-71.17736,42.32818],[-71.17728,42.32811],[-71.17719,42.32803],[-71.17705,42.32792],[-71.17704,42.32791],[-71.17695,42.32784],[-71.17681,42.32774],[-71.17666,42.32762],[-71.17652,42.32752],[-71.17641,42.32741],[-71.1763,42.32732],[-71.17622,42.32724],[-71.17619,42.32721],[-71.17613,42.32714],[-71.17604,42.32703],[-71.17597,42.32694],[-71.17591,42.32684],[-71.17584,42.32672],[-71.17578,42.3266],[-71.17573,42.32647],[-71.17569,42.32636],[-71.17566,42.32627],[-71.17564,42.32614],[-71.17562,42.326],[-71.17562,42.32599],[-71.1756,42.32591],[-71.1756,42.32578],[-71.17562,42.32567],[-71.17563,42.32561],[-71.17564,42.32555],[-71.17567,42.32541],[-71.17571,42.32528],[-71.17578,42.32511],[-71.17582,42.32504],[-71.17591,42.32485],[-71.17594,42.32479],[-71.17599,42.32473],[-71.17605,42.32465],[-71.17608,42.32462],[-71.17611,42.32458],[-71.17618,42.3245],[-71.17635,42.32429],[-71.17645,42.32417],[-71.17654,42.32407],[-71.17663,42.32396],[-71.17663,42.32396],[-71.17667,42.32394],[-71.1767,42.32389],[-71.17694,42.32393],[-71.17741,42.324],[-71.17765,42.32404],[-71.17789,42.32407],[-71.17811,42.3241],[-71.17823,42.32411],[-71.17825,42.3241],[-71.17827,42.3241],[-71.17828,42.3241],[-71.17829,42.32409],[-71.1783,42.32409],[-71.17832,42.32408],[-71.17833,42.32407],[-71.17835,42.32406],[-71.1784,42.32402],[-71.17845,42.32394],[-71.17845,42.32383],[-71.17848,42.32357],[-71.17848,42.32298],[-71.17847,42.32271],[-71.17847,42.32271],[-71.1782,42.32272],[-71.1782,42.32272],[-71.17819,42.32272],[-71.17819,42.3227],[-71.1782,42.32268],[-71.1782,42.32265],[-71.17818,42.32232],[-71.17818,42.32231],[-71.17818,42.3223],[-71.17817,42.3223],[-71.17816,42.32229],[-71.17815,42.32229],[-71.17814,42.32228],[-71.17812,42.32228],[-71.17795,42.32225],[-71.17795,42.32225],[-71.17796,42.32199],[-71.17796,42.32196],[-71.17795,42.32195],[-71.17795,42.32194],[-71.17794,42.32192],[-71.17793,42.32191],[-71.17792,42.3219],[-71.1779,42.3219],[-71.17788,42.32189],[-71.17787,42.32189],[-71.17775,42.32189],[-71.17775,42.32189],[-71.17759,42.32189],[-71.17759,42.32189],[-71.17757,42.3217],[-71.17757,42.32166],[-71.17758,42.32154],[-71.17758,42.32151],[-71.17758,42.32148],[-71.17759,42.32144],[-71.17761,42.32139],[-71.17763,42.32135],[-71.17765,42.32129],[-71.17767,42.32125],[-71.17771,42.32116],[-71.17772,42.32116],[-71.17776,42.32109],[-71.17779,42.32101],[-71.17782,42.32092],[-71.17782,42.32085],[-71.17781,42.3208],[-71.1778,42.32065],[-71.1778,42.32062],[-71.17778,42.32031],[-71.17777,42.32027],[-71.17776,42.32024],[-71.17773,42.32015],[-71.17768,42.32002],[-71.1776,42.31985],[-71.17755,42.31975],[-71.17755,42.31975],[-71.17751,42.3197],[-71.17748,42.31967],[-71.1774,42.31963],[-71.17713,42.31969],[-71.17713,42.31969],[-71.17559,42.3202],[-71.17536,42.32011],[-71.17513,42.31982],[-71.17618,42.31947],[-71.17618,42.31947],[-71.17641,42.31939],[-71.17659,42.31932],[-71.17667,42.3193],[-71.17686,42.31924],[-71.17686,42.31924],[-71.17688,42.31928],[-71.17703,42.31954],[-71.17712,42.31971],[-71.17712,42.31971],[-71.17645,42.31992],[-71.17638,42.31994],[-71.17611,42.32002],[-71.17564,42.32019],[-71.17561,42.3202],[-71.17549,42.32024],[-71.17534,42.3203],[-71.1753,42.32031],[-71.17512,42.32037],[-71.17457,42.32055],[-71.17437,42.32061],[-71.17431,42.32063],[-71.17409,42.32069],[-71.17351,42.32085],[-71.17292,42.32101],[-71.17263,42.32109],[-71.17239,42.32116],[-71.17217,42.32122],[-71.17216,42.32122],[-71.17161,42.32138],[-71.1714,42.32143],[-71.17096,42.32154],[-71.17078,42.32158],[-71.17054,42.32164],[-71.16997,42.32179],[-71.16936,42.32196],[-71.16891,42.32209],[-71.16855,42.32218],[-71.16841,42.32222],[-71.16828,42.32225],[-71.16799,42.32233],[-71.16755,42.32245],[-71.16721,42.32254],[-71.16678,42.32265],[-71.16633,42.32277],[-71.16605,42.32284],[-71.16592,42.32287],[-71.16567,42.32294],[-71.16535,42.32302],[-71.16515,42.32308],[-71.16515,42.32308],[-71.16505,42.32311],[-71.16511,42.32322],[-71.16516,42.32327],[-71.16518,42.32328],[-71.1652,42.32329],[-71.16522,42.3233],[-71.16526,42.32331],[-71.16535,42.32332],[-71.16545,42.32332],[-71.16559,42.3233],[-71.16603,42.32318],[-71.16636,42.3231],[-71.16649,42.32306],[-71.16649,42.32306],[-71.16664,42.32301],[-71.16671,42.32298],[-71.1668,42.32295],[-71.16717,42.32286],[-71.16729,42.3228],[-71.16737,42.32278],[-71.16769,42.3227],[-71.1678,42.32268],[-71.16822,42.32259],[-71.16835,42.32255],[-71.16902,42.32237],[-71.1691,42.32235],[-71.16965,42.32222],[-71.16965,42.32222],[-71.17064,42.32197],[-71.17066,42.32197],[-71.17068,42.32196],[-71.171,42.32198],[-71.17108,42.32199],[-71.17129,42.32198],[-71.17166,42.32192],[-71.17168,42.32191],[-71.1721,42.32184],[-71.17212,42.32184],[-71.17213,42.32184],[-71.17214,42.32184],[-71.17215,42.32185],[-71.17215,42.32185],[-71.17238,42.3218],[-71.17251,42.32177],[-71.17251,42.32177],[-71.17255,42.32184],[-71.17264,42.32198],[-71.17267,42.32202],[-71.17275,42.32209],[-71.17292,42.32223],[-71.173,42.32227],[-71.17301,42.32228],[-71.17311,42.32233],[-71.17321,42.32236],[-71.17328,42.32237],[-71.17337,42.32239],[-71.17341,42.3224],[-71.17353,42.32241],[-71.1737,42.32241],[-71.17387,42.32239],[-71.17404,42.32236],[-71.17421,42.32232],[-71.17437,42.32228],[-71.17457,42.32224],[-71.17478,42.32224],[-71.17501,42.32224],[-71.17517,42.32226],[-71.17531,42.32229],[-71.17541,42.32231],[-71.17555,42.32235],[-71.17563,42.32238],[-71.17566,42.32239],[-71.17571,42.32241],[-71.17584,42.32247],[-71.17586,42.32248],[-71.1759,42.3225],[-71.17595,42.32253],[-71.17603,42.32258],[-71.17605,42.3226],[-71.17616,42.32267],[-71.17622,42.32273],[-71.17625,42.32276],[-71.17631,42.32282],[-71.17639,42.3229],[-71.1764,42.32291],[-71.17647,42.32301],[-71.17648,42.32303],[-71.17654,42.32313],[-71.17658,42.32322],[-71.1766,42.3233],[-71.17662,42.32338],[-71.17663,42.32347],[-71.17663,42.32358],[-71.17663,42.32376],[-71.1766,42.32387],[-71.17663,42.32396],[-71.17654,42.32407],[-71.17645,42.32417],[-71.17635,42.32429],[-71.17618,42.3245],[-71.17611,42.32458],[-71.17608,42.32462],[-71.17605,42.32465],[-71.17599,42.32473],[-71.17594,42.32479],[-71.17591,42.32485],[-71.17582,42.32504],[-71.17578,42.32511],[-71.17571,42.32528],[-71.17567,42.32541],[-71.17564,42.32555],[-71.17563,42.32561],[-71.17562,42.32567],[-71.1756,42.32578],[-71.1756,42.32591],[-71.17562,42.32599],[-71.17562,42.326],[-71.17564,42.32614],[-71.17566,42.32627],[-71.17569,42.32636],[-71.17573,42.32647],[-71.17578,42.3266],[-71.17584,42.32672],[-71.17591,42.32684],[-71.17597,42.32694],[-71.17604,42.32703],[-71.17613,42.32714],[-71.17619,42.32721],[-71.17622,42.32724],[-71.1763,42.32732],[-71.17641,42.32741],[-71.17652,42.32752],[-71.17666,42.32762],[-71.17681,42.32774],[-71.17695,42.32784],[-71.17704,42.32791],[-71.17705,42.32792],[-71.17719,42.32803],[-71.17728,42.32811],[-71.17736,42.32818],[-71.1774,42.32821],[-71.17753,42.32833],[-71.17762,42.32842],[-71.17773,42.32853],[-71.17781,42.32861],[-71.17812,42.32893],[-71.17815,42.32896],[-71.17843,42.32925],[-71.17862,42.32944],[-71.17892,42.32973],[-71.17894,42.32976],[-71.17922,42.33004],[-71.17934,42.33017],[-71.17952,42.33035],[-71.17962,42.33046],[-71.17977,42.3306],[-71.17983,42.33066],[-71.17991,42.33075],[-71.18005,42.3309],[-71.18019,42.33104],[-71.18033,42.33118],[-71.18055,42.3314],[-71.18063,42.33148],[-71.18079,42.33164],[-71.18091,42.33177],[-71.18101,42.33189],[-71.18101,42.33189],[-71.18097,42.33197],[-71.18097,42.332],[-71.18096,42.33203],[-71.18095,42.33205],[-71.18093,42.33208],[-71.18087,42.33218],[-71.18043,42.33225],[-71.17998,42.33231],[-71.17982,42.33234],[-71.17965,42.33236],[-71.17953,42.33238],[-71.17939,42.3324],[-71.17926,42.33241],[-71.1792,42.33241],[-71.17917,42.33241],[-71.17907,42.33242],[-71.17895,42.33241],[-71.17884,42.33241],[-71.17873,42.33239],[-71.17872,42.33239],[-71.17858,42.33237],[-71.17849,42.33235],[-71.17838,42.33232],[-71.17826,42.33229],[-71.17819,42.33226],[-71.17814,42.33225],[-71.17797,42.3322],[-71.17784,42.33217],[-71.17774,42.33214],[-71.17773,42.33213],[-71.17762,42.33211],[-71.1775,42.33208],[-71.1774,42.33207],[-71.17727,42.33205],[-71.17717,42.33204],[-71.17704,42.33204],[-71.17702,42.33204],[-71.17695,42.33204],[-71.17686,42.33204],[-71.17678,42.33205],[-71.17677,42.33205],[-71.17669,42.33206],[-71.17659,42.33208],[-71.17654,42.33208],[-71.17648,42.3321],[-71.17638,42.33213],[-71.17629,42.33215],[-71.17622,42.33218],[-71.17605,42.33224],[-71.17603,42.33225],[-71.17585,42.33232],[-71.17568,42.3324],[-71.1756,42.33243],[-71.17547,42.33248],[-71.1753,42.33253],[-71.17518,42.33256],[-71.1751,42.33257],[-71.17501,42.33259],[-71.17487,42.33261],[-71.17449,42.33266],[-71.17405,42.3327],[-71.17384,42.33273],[-71.17359,42.33277],[-71.17356,42.33277],[-71.17343,42.33279],[-71.17325,42.33281],[-71.17278,42.33287],[-71.17278,42.33287],[-71.17303,42.33308],[-71.17303,42.33308],[-71.17295,42.33317],[-71.17287,42.33329],[-71.17281,42.33335],[-71.17268,42.3335],[-71.17258,42.33362],[-71.1725,42.3337],[-71.17244,42.33377],[-71.17218,42.33407],[-71.17205,42.33421],[-71.17182,42.33447],[-71.17178,42.33451],[-71.17175,42.33456],[-71.17174,42.33459],[-71.17173,42.33462],[-71.17171,42.33467],[-71.1717,42.3348],[-71.17167,42.33499],[-71.17163,42.33524],[-71.17163,42.33524],[-71.1716,42.33542],[-71.17156,42.33566],[-71.17155,42.33572],[-71.17155,42.33575],[-71.17155,42.33579],[-71.17157,42.33591],[-71.17158,42.33596],[-71.17158,42.33599],[-71.1716,42.33607],[-71.17165,42.33625],[-71.17166,42.3363],[-71.17173,42.33646],[-71.17186,42.33669],[-71.17195,42.33683],[-71.17207,42.33701],[-71.17221,42.33718],[-71.17221,42.33718],[-71.17245,42.33712],[-71.17263,42.33709],[-71.17284,42.33707],[-71.17303,42.33706],[-71.17318,42.33707],[-71.17333,42.33708],[-71.17354,42.33711],[-71.17385,42.33716],[-71.17434,42.33724],[-71.17446,42.33725],[-71.1746,42.33727],[-71.17471,42.33727],[-71.17488,42.33727],[-71.17503,42.33727],[-71.17536,42.33723],[-71.17566,42.33718],[-71.17567,42.33718],[-71.17577,42.33715],[-71.17583,42.33714],[-71.17588,42.33712],[-71.17602,42.33707],[-71.17609,42.33705],[-71.17615,42.33703],[-71.17627,42.33697],[-71.17639,42.33691],[-71.17644,42.33688],[-71.17651,42.33685],[-71.17666,42.33677],[-71.17672,42.33673],[-71.17678,42.3367],[-71.17682,42.33668],[-71.17685,42.33666],[-71.17691,42.33663],[-71.17694,42.33661],[-71.17707,42.33655],[-71.17739,42.3364],[-71.17757,42.33632],[-71.17769,42.33627],[-71.17791,42.3362],[-71.17803,42.33617],[-71.17817,42.33614],[-71.17831,42.33612],[-71.17856,42.33612],[-71.1787,42.33611],[-71.17889,42.33613],[-71.17917,42.33614],[-71.17927,42.33616],[-71.17973,42.33621],[-71.17987,42.33623],[-71.18,42.33624],[-71.18015,42.33626],[-71.18055,42.33631],[-71.18098,42.33636],[-71.18114,42.33638],[-71.18138,42.33641],[-71.18186,42.33646],[-71.18195,42.33648],[-71.18211,42.33649],[-71.18241,42.33653],[-71.18262,42.33655],[-71.18281,42.33656],[-71.18285,42.33657],[-71.18314,42.33659],[-71.18339,42.3366],[-71.18354,42.33661],[-71.18355,42.33661],[-71.18386,42.33662],[-71.18403,42.33662],[-71.18439,42.33663],[-71.18476,42.33662],[-71.18498,42.3366],[-71.18517,42.33658],[-71.18521,42.33657],[-71.18565,42.33651],[-71.1859,42.33648],[-71.18613,42.33645],[-71.1865,42.33641],[-71.18652,42.3364],[-71.18662,42.33639],[-71.18671,42.33638],[-71.1871,42.33633],[-71.18712,42.33633],[-71.18748,42.33631],[-71.18795,42.33628],[-71.18876,42.33623],[-71.18935,42.33621],[-71.18995,42.3362],[-71.19068,42.3362],[-71.19073,42.3362],[-71.19087,42.3362],[-71.1914,42.3362],[-71.19206,42.3362],[-71.1922,42.33619],[-71.19221,42.33619],[-71.19227,42.33618],[-71.19237,42.33617],[-71.19255,42.33615],[-71.19263,42.33614],[-71.19286,42.33612],[-71.19308,42.33607],[-71.19336,42.336],[-71.19336,42.336],[-71.19335,42.33608],[-71.19332,42.33617],[-71.19331,42.33622],[-71.19326,42.33651],[-71.19317,42.33719],[-71.19316,42.33724],[-71.19311,42.33758],[-71.19303,42.33813],[-71.19282,42.33948],[-71.1928,42.33958],[-71.19268,42.34035],[-71.19264,42.34057],[-71.19259,42.34082],[-71.19257,42.34092],[-71.19254,42.341],[-71.1925,42.34109],[-71.19245,42.34118],[-71.1924,42.34127],[-71.19236,42.34133],[-71.19228,42.34143],[-71.19222,42.34149],[-71.19207,42.34164],[-71.19193,42.34177],[-71.19193,42.34177],[-71.19243,42.34204],[-71.19243,42.34204],[-71.19261,42.34192],[-71.19265,42.34186],[-71.19266,42.34181],[-71.19267,42.34171],[-71.19269,42.3416],[-71.19271,42.34148],[-71.19275,42.3414],[-71.19281,42.34132],[-71.19283,42.3413],[-71.19286,42.34128],[-71.19292,42.34125],[-71.19298,42.34122],[-71.19305,42.3412],[-71.1931,42.3412],[-71.19315,42.34119],[-71.19321,42.3412],[-71.19329,42.34121],[-71.19352,42.34125],[-71.1937,42.34128],[-71.1938,42.3413],[-71.19408,42.34133]]},{"id":12,"name":"Law School Express (morning)","tracker":"Law Express - AM","color":"#8CB811","loop":false,"service":[{"days":[1,2,3,4,5],"from":"06:55","to":"09:25","every":45}],"stops":[{"name":"Reservoir MBTA stop","lonlat":[-71.148891,42.335054],"rideToNext":599,"dwell":10,"at":0},{"name":"Chestnut Hill Ave","lonlat":[-71.151027,42.336106],"rideToNext":68,"dwell":0,"at":25},{"name":"Commonwealth Ave @ Chestnut Hill Ave.","lonlat":[-71.15408,42.338326],"rideToNext":46,"dwell":0,"at":54},{"name":"South Street","lonlat":[-71.157531,42.339738],"rideToNext":38,"dwell":0,"at":75},{"name":"Greycliff Hall","lonlat":[-71.161684,42.340238],"rideToNext":451,"dwell":0,"at":91},{"name":"Stuart Hall Loading Dock","lonlat":[-71.194075,42.341378],"rideToNext":725,"dwell":0,"at":324}],"line":[[-71.1488,42.33483],[-71.14891,42.3347],[-71.14891,42.3347],[-71.14917,42.33482],[-71.14928,42.33487],[-71.14936,42.33491],[-71.14937,42.33492],[-71.14943,42.33495],[-71.14952,42.33499],[-71.14964,42.33506],[-71.14972,42.3351],[-71.14985,42.33516],[-71.14986,42.33517],[-71.14997,42.33523],[-71.15001,42.33526],[-71.15003,42.33527],[-71.15004,42.33528],[-71.15019,42.33537],[-71.15028,42.33544],[-71.15039,42.33552],[-71.15042,42.33555],[-71.15051,42.33563],[-71.15059,42.33571],[-71.1508,42.33592],[-71.15092,42.33604],[-71.15105,42.33617],[-71.15107,42.33619],[-71.15113,42.33624],[-71.15118,42.33628],[-71.15123,42.33632],[-71.15129,42.33636],[-71.15145,42.3365],[-71.15188,42.33684],[-71.15203,42.33696],[-71.15209,42.337],[-71.15209,42.337],[-71.15229,42.33717],[-71.15254,42.3374],[-71.15305,42.33784],[-71.15307,42.33787],[-71.15317,42.33797],[-71.15321,42.33802],[-71.15321,42.33802],[-71.15339,42.33818],[-71.1535,42.33818],[-71.15356,42.33817],[-71.15359,42.33817],[-71.15362,42.33817],[-71.15379,42.33818],[-71.1539,42.33819],[-71.154,42.33821],[-71.15404,42.33822],[-71.15413,42.33825],[-71.15413,42.33825],[-71.15415,42.33826],[-71.15429,42.33831],[-71.15442,42.33835],[-71.15455,42.3384],[-71.15469,42.33846],[-71.15481,42.33851],[-71.15494,42.33857],[-71.15508,42.33863],[-71.15509,42.33864],[-71.15522,42.3387],[-71.15534,42.33876],[-71.15546,42.33882],[-71.15558,42.33888],[-71.15584,42.339],[-71.15608,42.33911],[-71.15623,42.33917],[-71.15648,42.33928],[-71.1565,42.33928],[-71.15676,42.33938],[-71.15726,42.33955],[-71.15729,42.33956],[-71.15758,42.33964],[-71.15758,42.33964],[-71.15782,42.33971],[-71.15835,42.33983],[-71.15866,42.3399],[-71.15898,42.33996],[-71.15936,42.34001],[-71.15975,42.34007],[-71.16006,42.3401],[-71.16032,42.34012],[-71.16035,42.34012],[-71.16059,42.34014],[-71.16106,42.34015],[-71.1613,42.34016],[-71.16143,42.34017],[-71.16162,42.34018],[-71.16169,42.34018],[-71.16169,42.34018],[-71.16205,42.34019],[-71.1626,42.34021],[-71.16308,42.34022],[-71.16341,42.34023],[-71.16355,42.34023],[-71.16393,42.34024],[-71.16403,42.34024],[-71.16414,42.34024],[-71.16421,42.34024],[-71.16428,42.34024],[-71.16443,42.34024],[-71.16457,42.34023],[-71.16471,42.34023],[-71.16505,42.34021],[-71.16567,42.34014],[-71.16614,42.34009],[-71.1665,42.34006],[-71.16652,42.34006],[-71.16659,42.34005],[-71.16671,42.34003],[-71.16683,42.34],[-71.167,42.33997],[-71.16733,42.33991],[-71.16774,42.33976],[-71.16817,42.33961],[-71.16824,42.33959],[-71.16827,42.33957],[-71.1683,42.33955],[-71.16832,42.33955],[-71.16834,42.33954],[-71.16839,42.33952],[-71.16855,42.33947],[-71.16887,42.33937],[-71.16917,42.33927],[-71.16937,42.3392],[-71.16952,42.33914],[-71.16966,42.33908],[-71.16977,42.33903],[-71.17,42.33891],[-71.17011,42.33885],[-71.1702,42.3388],[-71.17028,42.33875],[-71.17035,42.3387],[-71.17036,42.33869],[-71.17044,42.33863],[-71.17053,42.33857],[-71.17061,42.33851],[-71.17068,42.33845],[-71.17075,42.33839],[-71.1708,42.33835],[-71.17105,42.3381],[-71.17111,42.33804],[-71.17117,42.33799],[-71.17131,42.33785],[-71.17134,42.33782],[-71.17139,42.33778],[-71.17144,42.33773],[-71.17148,42.33769],[-71.17187,42.33737],[-71.17212,42.33722],[-71.17221,42.33718],[-71.17245,42.33712],[-71.17263,42.33709],[-71.17284,42.33707],[-71.17303,42.33706],[-71.17318,42.33707],[-71.17333,42.33708],[-71.17354,42.33711],[-71.17385,42.33716],[-71.17434,42.33724],[-71.17446,42.33725],[-71.1746,42.33727],[-71.17471,42.33727],[-71.17488,42.33727],[-71.17503,42.33727],[-71.17536,42.33723],[-71.17566,42.33718],[-71.17567,42.33718],[-71.17577,42.33715],[-71.17583,42.33714],[-71.17588,42.33712],[-71.17602,42.33707],[-71.17609,42.33705],[-71.17615,42.33703],[-71.17627,42.33697],[-71.17639,42.33691],[-71.17644,42.33688],[-71.17651,42.33685],[-71.17666,42.33677],[-71.17672,42.33673],[-71.17678,42.3367],[-71.17682,42.33668],[-71.17685,42.33666],[-71.17691,42.33663],[-71.17694,42.33661],[-71.17707,42.33655],[-71.17739,42.3364],[-71.17757,42.33632],[-71.17769,42.33627],[-71.17791,42.3362],[-71.17803,42.33617],[-71.17817,42.33614],[-71.17831,42.33612],[-71.17856,42.33612],[-71.1787,42.33611],[-71.17889,42.33613],[-71.17917,42.33614],[-71.17927,42.33615],[-71.17973,42.33619],[-71.17987,42.33621],[-71.18,42.33622],[-71.18015,42.33624],[-71.18055,42.33629],[-71.18098,42.33635],[-71.18114,42.33637],[-71.18138,42.3364],[-71.18195,42.33648],[-71.18211,42.33649],[-71.18241,42.33653],[-71.18262,42.33655],[-71.18285,42.33657],[-71.18314,42.33659],[-71.18339,42.3366],[-71.18354,42.33661],[-71.18355,42.33661],[-71.18386,42.33662],[-71.18439,42.33663],[-71.18476,42.33662],[-71.18498,42.3366],[-71.18517,42.33658],[-71.18521,42.33657],[-71.18565,42.33651],[-71.1859,42.33647],[-71.18613,42.33644],[-71.18649,42.3364],[-71.18652,42.33639],[-71.18662,42.33638],[-71.18671,42.33637],[-71.1871,42.33633],[-71.18712,42.33633],[-71.18748,42.33631],[-71.18795,42.33628],[-71.18876,42.33623],[-71.18935,42.33621],[-71.18995,42.3362],[-71.19068,42.33621],[-71.19073,42.33621],[-71.19087,42.33621],[-71.1914,42.3362],[-71.19206,42.3362],[-71.1922,42.33619],[-71.19221,42.33619],[-71.19227,42.33618],[-71.19237,42.33617],[-71.19255,42.33615],[-71.19263,42.33614],[-71.19286,42.33612],[-71.19308,42.33608],[-71.19336,42.336],[-71.19336,42.336],[-71.19335,42.33608],[-71.19332,42.33617],[-71.19331,42.33622],[-71.19326,42.33651],[-71.19317,42.33719],[-71.19316,42.33724],[-71.19311,42.33758],[-71.19302,42.33813],[-71.19282,42.33947],[-71.1928,42.33958],[-71.19267,42.34035],[-71.19264,42.34057],[-71.1926,42.34081],[-71.19257,42.34092],[-71.19254,42.341],[-71.1925,42.34109],[-71.19245,42.34118],[-71.1924,42.34127],[-71.19236,42.34133],[-71.19228,42.34143],[-71.19222,42.34149],[-71.19207,42.34164],[-71.19193,42.34177],[-71.19193,42.34177],[-71.19242,42.34205],[-71.19242,42.34205],[-71.19261,42.34192],[-71.19264,42.34186],[-71.19266,42.34181],[-71.19267,42.34171],[-71.19268,42.3416],[-71.19271,42.34148],[-71.19275,42.34139],[-71.19281,42.34132],[-71.19283,42.3413],[-71.19286,42.34127],[-71.19291,42.34124],[-71.19297,42.34121],[-71.19305,42.34119],[-71.1931,42.34118],[-71.19315,42.34118],[-71.19321,42.34119],[-71.19329,42.3412],[-71.19352,42.34124],[-71.1937,42.34128],[-71.1938,42.34129],[-71.19447,42.34139],[-71.19512,42.34146],[-71.19535,42.3415],[-71.19547,42.34153],[-71.19559,42.34158],[-71.19558,42.34161],[-71.19555,42.34163],[-71.19553,42.34165],[-71.19553,42.34168],[-71.19554,42.34171],[-71.19557,42.34175],[-71.19561,42.34177],[-71.19565,42.34178],[-71.19572,42.34177],[-71.19578,42.34173],[-71.19579,42.34167],[-71.19578,42.34164],[-71.19574,42.34161],[-71.1957,42.34159],[-71.19566,42.34158],[-71.19563,42.34159],[-71.19559,42.34159],[-71.1955,42.34155],[-71.19544,42.34152],[-71.1953,42.34149],[-71.19409,42.34133],[-71.19409,42.34133],[-71.1938,42.34129],[-71.1937,42.34128],[-71.19352,42.34124],[-71.19329,42.3412],[-71.19321,42.34119],[-71.19315,42.34118],[-71.1931,42.34118],[-71.19305,42.34119],[-71.19297,42.34121],[-71.19291,42.34124],[-71.19286,42.34127],[-71.19283,42.3413],[-71.19281,42.34132],[-71.19275,42.34139],[-71.19271,42.34148],[-71.19268,42.3416],[-71.19267,42.34171],[-71.19266,42.34181],[-71.19264,42.34186],[-71.19261,42.34192],[-71.19242,42.34205],[-71.19242,42.34205],[-71.19193,42.34177],[-71.19193,42.34177],[-71.19207,42.34164],[-71.19222,42.34149],[-71.19228,42.34143],[-71.19236,42.34133],[-71.1924,42.34127],[-71.19245,42.34118],[-71.1925,42.34109],[-71.19254,42.341],[-71.19257,42.34092],[-71.1926,42.34081],[-71.19264,42.34057],[-71.19267,42.34035],[-71.1928,42.33958],[-71.19282,42.33947],[-71.19302,42.33813],[-71.19311,42.33758],[-71.19316,42.33724],[-71.19317,42.33719],[-71.19326,42.33651],[-71.19331,42.33622],[-71.19332,42.33617],[-71.19335,42.33608],[-71.19336,42.336],[-71.19336,42.336],[-71.19308,42.33608],[-71.19286,42.33612],[-71.19263,42.33614],[-71.19255,42.33615],[-71.19237,42.33617],[-71.19227,42.33618],[-71.19221,42.33619],[-71.1922,42.33619],[-71.19206,42.3362],[-71.1914,42.3362],[-71.19087,42.33621],[-71.19073,42.33621],[-71.19068,42.33621],[-71.18995,42.3362],[-71.18935,42.33621],[-71.18876,42.33623],[-71.18795,42.33628],[-71.18748,42.33631],[-71.18712,42.33633],[-71.1871,42.33633],[-71.18671,42.33637],[-71.18662,42.33638],[-71.18652,42.33639],[-71.18649,42.3364],[-71.18613,42.33644],[-71.1859,42.33647],[-71.18565,42.33651],[-71.18521,42.33657],[-71.18517,42.33658],[-71.18498,42.3366],[-71.18476,42.33662],[-71.18439,42.33663],[-71.18386,42.33662],[-71.18355,42.33661],[-71.18354,42.33661],[-71.18339,42.3366],[-71.18314,42.33659],[-71.18285,42.33657],[-71.18262,42.33655],[-71.18241,42.33653],[-71.18211,42.33649],[-71.18195,42.33648],[-71.18138,42.3364],[-71.18114,42.33637],[-71.18098,42.33635],[-71.18055,42.33629],[-71.18015,42.33624],[-71.18,42.33622],[-71.17987,42.33621],[-71.17973,42.33619],[-71.17927,42.33615],[-71.17917,42.33614],[-71.17889,42.33613],[-71.1787,42.33611],[-71.17856,42.33612],[-71.17831,42.33612],[-71.17817,42.33614],[-71.17803,42.33617],[-71.17791,42.3362],[-71.17769,42.33627],[-71.17757,42.33632],[-71.17739,42.3364],[-71.17707,42.33655],[-71.17694,42.33661],[-71.17691,42.33663],[-71.17685,42.33666],[-71.17682,42.33668],[-71.17678,42.3367],[-71.17672,42.33673],[-71.17666,42.33677],[-71.17651,42.33685],[-71.17644,42.33688],[-71.17639,42.33691],[-71.17627,42.33697],[-71.17615,42.33703],[-71.17609,42.33705],[-71.17602,42.33707],[-71.17588,42.33712],[-71.17583,42.33714],[-71.17577,42.33715],[-71.17567,42.33718],[-71.17566,42.33718],[-71.17536,42.33723],[-71.17503,42.33727],[-71.17488,42.33727],[-71.17471,42.33727],[-71.1746,42.33727],[-71.17446,42.33725],[-71.17434,42.33724],[-71.17385,42.33716],[-71.17354,42.33711],[-71.17333,42.33708],[-71.17318,42.33707],[-71.17303,42.33706],[-71.17284,42.33707],[-71.17263,42.33709],[-71.17245,42.33712],[-71.17221,42.33718],[-71.17212,42.33722],[-71.17187,42.33737],[-71.17148,42.33769],[-71.17144,42.33773],[-71.17139,42.33778],[-71.17134,42.33782],[-71.17131,42.33785],[-71.17117,42.33799],[-71.17111,42.33804],[-71.17105,42.3381],[-71.1708,42.33835],[-71.17075,42.33839],[-71.17068,42.33845],[-71.17061,42.33851],[-71.17053,42.33857],[-71.17044,42.33863],[-71.17036,42.33869],[-71.17035,42.3387],[-71.17028,42.33875],[-71.1702,42.3388],[-71.17011,42.33885],[-71.17,42.33891],[-71.16977,42.33903],[-71.16966,42.33908],[-71.16952,42.33914],[-71.16937,42.3392],[-71.16917,42.33927],[-71.16887,42.33937],[-71.16855,42.33947],[-71.16839,42.33952],[-71.16834,42.33954],[-71.16832,42.33955],[-71.1683,42.33955],[-71.16822,42.33955],[-71.16819,42.33955],[-71.16817,42.33956],[-71.16814,42.33957],[-71.16813,42.33957],[-71.16806,42.33959],[-71.16796,42.33962],[-71.16784,42.33964],[-71.16757,42.3397],[-71.16734,42.33974],[-71.16701,42.3398],[-71.16677,42.33984],[-71.1667,42.33985],[-71.16662,42.33986],[-71.16645,42.33987],[-71.16612,42.33991],[-71.16597,42.33993],[-71.1658,42.33995],[-71.16558,42.33998],[-71.1654,42.33999],[-71.16534,42.34],[-71.16523,42.34001],[-71.16519,42.34001],[-71.16516,42.34001],[-71.16511,42.34001],[-71.1649,42.34003],[-71.16467,42.34004],[-71.16461,42.34004],[-71.16447,42.34005],[-71.16419,42.34005],[-71.16398,42.34006],[-71.16388,42.34006],[-71.16374,42.34006],[-71.16355,42.34005],[-71.16343,42.34005],[-71.16337,42.34005],[-71.16321,42.34005],[-71.16281,42.34003],[-71.16264,42.34003],[-71.16179,42.34],[-71.16177,42.34],[-71.16135,42.33999],[-71.16106,42.33998],[-71.16092,42.33998],[-71.16078,42.33998],[-71.16062,42.33997],[-71.16047,42.33996],[-71.16038,42.33996],[-71.16031,42.33995],[-71.16016,42.33994],[-71.16001,42.33993],[-71.15987,42.33992],[-71.1596,42.33988],[-71.1593,42.33984],[-71.15898,42.33979],[-71.15884,42.33977],[-71.15865,42.33973],[-71.15848,42.3397],[-71.15835,42.33967],[-71.15815,42.33962],[-71.158,42.33959],[-71.15789,42.33956],[-71.15768,42.3395],[-71.15751,42.33946],[-71.15735,42.33941],[-71.15722,42.33936],[-71.15708,42.33932],[-71.15694,42.33927],[-71.1568,42.33922],[-71.15666,42.33917],[-71.15654,42.33912],[-71.15637,42.33906],[-71.15625,42.33901],[-71.15613,42.33896],[-71.15589,42.33885],[-71.15537,42.33859],[-71.15517,42.33849],[-71.15506,42.33845],[-71.15497,42.33841],[-71.15489,42.33837],[-71.15475,42.33831],[-71.15462,42.33825],[-71.1545,42.33819],[-71.15438,42.33815],[-71.1543,42.33812],[-71.15422,42.33809],[-71.15413,42.33805],[-71.15403,42.33802],[-71.15399,42.33801],[-71.15396,42.33801],[-71.15395,42.338],[-71.15391,42.338],[-71.15374,42.33797],[-71.1536,42.33796],[-71.15351,42.33795],[-71.15348,42.33795],[-71.15347,42.33795],[-71.15346,42.33795],[-71.15345,42.33795],[-71.15344,42.33795],[-71.15342,42.33795],[-71.15329,42.33798],[-71.15327,42.33799],[-71.15325,42.338],[-71.15321,42.33802],[-71.15321,42.33802],[-71.15317,42.33797],[-71.15307,42.33787],[-71.15305,42.33784],[-71.15254,42.3374],[-71.15229,42.33717],[-71.15203,42.33696],[-71.15188,42.33684],[-71.15145,42.3365],[-71.15129,42.33636],[-71.15123,42.33632],[-71.15118,42.33628],[-71.15113,42.33624],[-71.15107,42.33619],[-71.15105,42.33617],[-71.15092,42.33604],[-71.15092,42.33604],[-71.1508,42.33592],[-71.15059,42.33571],[-71.15051,42.33563],[-71.15042,42.33555],[-71.15039,42.33552],[-71.15028,42.33544],[-71.15019,42.33537],[-71.15004,42.33528],[-71.15003,42.33527],[-71.15001,42.33526],[-71.14997,42.33523],[-71.14986,42.33517],[-71.14985,42.33516],[-71.14972,42.3351],[-71.14964,42.33506],[-71.14952,42.33499],[-71.14943,42.33495],[-71.14937,42.33492],[-71.14936,42.33491],[-71.14928,42.33487],[-71.14917,42.33482],[-71.14891,42.3347],[-71.14891,42.3347],[-71.1488,42.33483]]},{"id":13,"name":"Newton All Stops","tracker":"Newton Eagle All Stops","color":"#430000","loop":true,"service":[{"days":[1,2,3,4,5],"from":"18:00","to":"26:00","every":12},{"days":[0,6],"from":"11:00","to":"13:45","every":30},{"days":[0,6],"from":"13:45","to":"26:00","every":12}],"stops":[{"name":"Stuart","lonlat":[-71.193791,42.341133],"rideToNext":44,"dwell":10,"at":3},{"name":"Newton Main Gate","lonlat":[-71.192625,42.341653],"rideToNext":312,"dwell":10,"at":22},{"name":"Main Gate Chestnut Hill","lonlat":[-71.171094,42.337928],"rideToNext":126,"dwell":10,"at":161},{"name":"Robsham Theater","lonlat":[-71.169006,42.337958],"rideToNext":115,"dwell":10,"at":225},{"name":"Conte Forum","lonlat":[-71.167135,42.335986],"rideToNext":114,"dwell":10,"at":272},{"name":"McElroy – Beacon St.","lonlat":[-71.170819,42.333187],"rideToNext":75,"dwell":10,"at":354},{"name":"College Road","lonlat":[-71.1716,42.335236],"rideToNext":339,"dwell":10,"at":379},{"name":"Duchesne","lonlat":[-71.192611,42.343467],"rideToNext":143,"dwell":10,"at":544}],"line":[[-71.19389,42.34116],[-71.19387,42.34117],[-71.19385,42.34118],[-71.19383,42.34119],[-71.19382,42.34121],[-71.1938,42.34129],[-71.1938,42.34129],[-71.1937,42.34128],[-71.19352,42.34124],[-71.19329,42.3412],[-71.19321,42.34119],[-71.19315,42.34118],[-71.1931,42.34118],[-71.19305,42.34119],[-71.19297,42.34121],[-71.19291,42.34124],[-71.19286,42.34127],[-71.19283,42.3413],[-71.19281,42.34132],[-71.19275,42.34139],[-71.19271,42.34148],[-71.19268,42.3416],[-71.19267,42.34166],[-71.19267,42.34166],[-71.19267,42.34171],[-71.19266,42.34181],[-71.19264,42.34186],[-71.19261,42.34192],[-71.19242,42.34205],[-71.19242,42.34205],[-71.19193,42.34177],[-71.19193,42.34177],[-71.19207,42.34164],[-71.19222,42.34149],[-71.19228,42.34143],[-71.19236,42.34133],[-71.1924,42.34127],[-71.19245,42.34118],[-71.1925,42.34109],[-71.19254,42.341],[-71.19257,42.34092],[-71.1926,42.34081],[-71.19264,42.34057],[-71.19267,42.34035],[-71.1928,42.33958],[-71.19282,42.33947],[-71.19302,42.33813],[-71.19311,42.33758],[-71.19316,42.33724],[-71.19317,42.33719],[-71.19326,42.33651],[-71.19331,42.33622],[-71.19332,42.33617],[-71.19335,42.33608],[-71.19336,42.336],[-71.19336,42.336],[-71.19308,42.33608],[-71.19286,42.33612],[-71.19263,42.33614],[-71.19255,42.33615],[-71.19237,42.33617],[-71.19227,42.33618],[-71.19221,42.33619],[-71.1922,42.33619],[-71.19206,42.3362],[-71.1914,42.3362],[-71.19087,42.33621],[-71.19073,42.33621],[-71.19068,42.33621],[-71.18995,42.3362],[-71.18935,42.33621],[-71.18876,42.33623],[-71.18795,42.33628],[-71.18748,42.33631],[-71.18712,42.33633],[-71.1871,42.33633],[-71.18671,42.33637],[-71.18662,42.33638],[-71.18652,42.33639],[-71.18649,42.3364],[-71.18613,42.33644],[-71.1859,42.33647],[-71.18565,42.33651],[-71.18521,42.33657],[-71.18517,42.33658],[-71.18498,42.3366],[-71.18476,42.33662],[-71.18439,42.33663],[-71.18386,42.33662],[-71.18355,42.33661],[-71.18354,42.33661],[-71.18339,42.3366],[-71.18314,42.33659],[-71.18285,42.33657],[-71.18262,42.33655],[-71.18241,42.33653],[-71.18211,42.33649],[-71.18195,42.33648],[-71.18138,42.3364],[-71.18114,42.33637],[-71.18098,42.33635],[-71.18055,42.33629],[-71.18015,42.33624],[-71.18,42.33622],[-71.17987,42.33621],[-71.17973,42.33619],[-71.17927,42.33615],[-71.17917,42.33614],[-71.17889,42.33613],[-71.1787,42.33611],[-71.17856,42.33612],[-71.17831,42.33612],[-71.17817,42.33614],[-71.17803,42.33617],[-71.17791,42.3362],[-71.17769,42.33627],[-71.17757,42.33632],[-71.17739,42.3364],[-71.17707,42.33655],[-71.17694,42.33661],[-71.17691,42.33663],[-71.17685,42.33666],[-71.17682,42.33668],[-71.17678,42.3367],[-71.17672,42.33673],[-71.17666,42.33677],[-71.17651,42.33685],[-71.17644,42.33688],[-71.17639,42.33691],[-71.17627,42.33697],[-71.17615,42.33703],[-71.17609,42.33705],[-71.17602,42.33707],[-71.17588,42.33712],[-71.17583,42.33714],[-71.17577,42.33715],[-71.17567,42.33718],[-71.17566,42.33718],[-71.17536,42.33723],[-71.17503,42.33727],[-71.17488,42.33727],[-71.17471,42.33727],[-71.1746,42.33727],[-71.17446,42.33725],[-71.17434,42.33724],[-71.17385,42.33716],[-71.17354,42.33711],[-71.17333,42.33708],[-71.17318,42.33707],[-71.17303,42.33706],[-71.17284,42.33707],[-71.17263,42.33709],[-71.17245,42.33712],[-71.17221,42.33718],[-71.17212,42.33722],[-71.17187,42.33737],[-71.17148,42.33769],[-71.17144,42.33773],[-71.17139,42.33778],[-71.17134,42.33782],[-71.17131,42.33785],[-71.17117,42.33799],[-71.17117,42.33799],[-71.17111,42.33804],[-71.17105,42.3381],[-71.1708,42.33835],[-71.17075,42.33839],[-71.17068,42.33845],[-71.17061,42.33851],[-71.17053,42.33857],[-71.17044,42.33863],[-71.17036,42.33869],[-71.17035,42.3387],[-71.17028,42.33875],[-71.1702,42.3388],[-71.17011,42.33885],[-71.17,42.33891],[-71.16977,42.33903],[-71.16966,42.33908],[-71.16952,42.33914],[-71.16937,42.3392],[-71.16917,42.33927],[-71.16887,42.33937],[-71.16855,42.33947],[-71.16839,42.33952],[-71.16834,42.33954],[-71.16832,42.33955],[-71.1683,42.33955],[-71.16822,42.33955],[-71.16819,42.33955],[-71.16817,42.33956],[-71.16814,42.33957],[-71.16813,42.33957],[-71.16806,42.33959],[-71.16796,42.33962],[-71.16784,42.33964],[-71.16757,42.3397],[-71.16734,42.33974],[-71.16701,42.3398],[-71.16677,42.33984],[-71.16677,42.33984],[-71.16668,42.3397],[-71.16653,42.33947],[-71.16647,42.33936],[-71.16632,42.33915],[-71.16632,42.33915],[-71.16666,42.33902],[-71.16685,42.33895],[-71.16685,42.33895],[-71.16718,42.33882],[-71.16721,42.33881],[-71.16728,42.33879],[-71.16792,42.33855],[-71.1681,42.33849],[-71.16849,42.33835],[-71.1685,42.33834],[-71.16857,42.33832],[-71.16865,42.33828],[-71.1687,42.33825],[-71.16873,42.33822],[-71.16879,42.33817],[-71.16883,42.33812],[-71.16886,42.33808],[-71.16889,42.33804],[-71.16891,42.33798],[-71.16892,42.33795],[-71.16892,42.33795],[-71.16892,42.33789],[-71.16892,42.33785],[-71.16891,42.33778],[-71.1689,42.33773],[-71.16888,42.33767],[-71.16883,42.33757],[-71.16875,42.3375],[-71.16869,42.33746],[-71.16867,42.33743],[-71.16861,42.33739],[-71.16857,42.33736],[-71.16854,42.33733],[-71.16852,42.33731],[-71.16851,42.33729],[-71.16851,42.33728],[-71.1685,42.33726],[-71.16849,42.33724],[-71.16848,42.33721],[-71.16847,42.33717],[-71.16845,42.3371],[-71.16841,42.337],[-71.16838,42.33692],[-71.16832,42.33676],[-71.16829,42.33666],[-71.16826,42.33656],[-71.16818,42.33633],[-71.16813,42.33619],[-71.16811,42.33613],[-71.16809,42.3361],[-71.16808,42.33607],[-71.16806,42.33605],[-71.16803,42.33601],[-71.168,42.33598],[-71.16797,42.33596],[-71.16789,42.33591],[-71.16786,42.3359],[-71.16784,42.33589],[-71.16781,42.33589],[-71.16777,42.33588],[-71.16773,42.33588],[-71.16769,42.33589],[-71.16764,42.33589],[-71.16759,42.3359],[-71.16757,42.33591],[-71.1675,42.33593],[-71.1671,42.33608],[-71.16701,42.33612],[-71.16692,42.33615],[-71.16683,42.33618],[-71.16676,42.3362],[-71.16665,42.33621],[-71.1665,42.33623],[-71.16635,42.33622],[-71.16626,42.33622],[-71.16622,42.33622],[-71.16615,42.33621],[-71.16611,42.3362],[-71.16606,42.33619],[-71.16595,42.33617],[-71.16585,42.33614],[-71.16577,42.33611],[-71.16575,42.3361],[-71.16571,42.33609],[-71.1656,42.33603],[-71.16552,42.33598],[-71.16545,42.33592],[-71.16545,42.33592],[-71.16523,42.33578],[-71.16507,42.33573],[-71.16481,42.33566],[-71.16456,42.3356],[-71.16443,42.33556],[-71.16434,42.33554],[-71.1643,42.33553],[-71.16407,42.33546],[-71.16363,42.33535],[-71.16349,42.33531],[-71.16344,42.3353],[-71.1633,42.33526],[-71.16323,42.33524],[-71.16317,42.33524],[-71.16311,42.33525],[-71.16305,42.33526],[-71.16296,42.33528],[-71.16296,42.33528],[-71.16287,42.33516],[-71.1628,42.33507],[-71.16272,42.33494],[-71.1626,42.33477],[-71.16258,42.33474],[-71.1625,42.33462],[-71.16245,42.33455],[-71.16242,42.33448],[-71.16239,42.33435],[-71.16239,42.33435],[-71.16242,42.33426],[-71.16245,42.33422],[-71.16249,42.33417],[-71.16255,42.3341],[-71.16261,42.33406],[-71.16261,42.33406],[-71.1627,42.33397],[-71.16292,42.33396],[-71.16303,42.33395],[-71.1632,42.33393],[-71.16347,42.33388],[-71.16362,42.33386],[-71.1644,42.33378],[-71.16447,42.33377],[-71.16467,42.33375],[-71.16471,42.33375],[-71.16474,42.33375],[-71.16475,42.33375],[-71.16479,42.33374],[-71.1652,42.3337],[-71.16546,42.33367],[-71.16603,42.3336],[-71.16623,42.33357],[-71.1668,42.33351],[-71.16761,42.33343],[-71.16768,42.33343],[-71.16777,42.33342],[-71.16803,42.33339],[-71.169,42.33328],[-71.16934,42.33324],[-71.16993,42.33318],[-71.17067,42.33309],[-71.1708,42.33308],[-71.1708,42.33308],[-71.17103,42.33305],[-71.17174,42.33297],[-71.17222,42.33292],[-71.17278,42.33287],[-71.17278,42.33287],[-71.17303,42.33308],[-71.17303,42.33308],[-71.17295,42.33317],[-71.17287,42.33329],[-71.17281,42.33335],[-71.17268,42.3335],[-71.1725,42.3337],[-71.17244,42.33377],[-71.17218,42.33407],[-71.17205,42.33421],[-71.17182,42.33447],[-71.17178,42.33451],[-71.17176,42.33456],[-71.17174,42.33459],[-71.17173,42.33462],[-71.17172,42.33467],[-71.1717,42.3348],[-71.17167,42.33499],[-71.17163,42.33524],[-71.17163,42.33524],[-71.1716,42.33542],[-71.17156,42.33566],[-71.17155,42.33572],[-71.17155,42.33575],[-71.17155,42.33579],[-71.17157,42.33591],[-71.17158,42.33596],[-71.17158,42.33599],[-71.1716,42.33607],[-71.17165,42.33624],[-71.17166,42.33629],[-71.17173,42.33646],[-71.17186,42.33669],[-71.17195,42.33683],[-71.17206,42.33699],[-71.17221,42.33718],[-71.17221,42.33718],[-71.17245,42.33712],[-71.17263,42.33709],[-71.17284,42.33707],[-71.17303,42.33706],[-71.17318,42.33707],[-71.17333,42.33708],[-71.17354,42.33711],[-71.17385,42.33716],[-71.17434,42.33724],[-71.17446,42.33725],[-71.1746,42.33727],[-71.17471,42.33727],[-71.17488,42.33727],[-71.17503,42.33727],[-71.17536,42.33723],[-71.17566,42.33718],[-71.17567,42.33718],[-71.17577,42.33715],[-71.17583,42.33714],[-71.17588,42.33712],[-71.17602,42.33707],[-71.17609,42.33705],[-71.17615,42.33703],[-71.17627,42.33697],[-71.17639,42.33691],[-71.17644,42.33688],[-71.17651,42.33685],[-71.17666,42.33677],[-71.17672,42.33673],[-71.17678,42.3367],[-71.17682,42.33668],[-71.17685,42.33666],[-71.17691,42.33663],[-71.17694,42.33661],[-71.17707,42.33655],[-71.17739,42.3364],[-71.17757,42.33632],[-71.17769,42.33627],[-71.17791,42.3362],[-71.17803,42.33617],[-71.17817,42.33614],[-71.17831,42.33612],[-71.17856,42.33612],[-71.1787,42.33611],[-71.17889,42.33613],[-71.17917,42.33614],[-71.17927,42.33615],[-71.17973,42.33619],[-71.17987,42.33621],[-71.18,42.33622],[-71.18015,42.33624],[-71.18055,42.33629],[-71.18098,42.33635],[-71.18114,42.33637],[-71.18138,42.3364],[-71.18195,42.33648],[-71.18211,42.33649],[-71.18241,42.33653],[-71.18262,42.33655],[-71.18285,42.33657],[-71.18314,42.33659],[-71.18339,42.3366],[-71.18354,42.33661],[-71.18355,42.33661],[-71.18386,42.33662],[-71.18439,42.33663],[-71.18476,42.33662],[-71.18498,42.3366],[-71.18517,42.33658],[-71.18521,42.33657],[-71.18565,42.33651],[-71.1859,42.33647],[-71.18613,42.33644],[-71.18649,42.3364],[-71.18652,42.33639],[-71.18662,42.33638],[-71.18671,42.33637],[-71.1871,42.33633],[-71.18712,42.33633],[-71.18748,42.33631],[-71.18795,42.33628],[-71.18876,42.33623],[-71.18935,42.33621],[-71.18995,42.3362],[-71.19068,42.33621],[-71.19073,42.33621],[-71.19087,42.33621],[-71.1914,42.3362],[-71.19206,42.3362],[-71.1922,42.33619],[-71.19221,42.33619],[-71.19227,42.33618],[-71.19237,42.33617],[-71.19255,42.33615],[-71.19263,42.33614],[-71.19286,42.33612],[-71.19308,42.33608],[-71.19336,42.336],[-71.19336,42.336],[-71.19335,42.33608],[-71.19332,42.33617],[-71.19331,42.33622],[-71.19326,42.33651],[-71.19317,42.33719],[-71.19316,42.33724],[-71.19311,42.33758],[-71.19302,42.33813],[-71.19282,42.33947],[-71.1928,42.33958],[-71.19267,42.34035],[-71.19264,42.34057],[-71.1926,42.34081],[-71.19257,42.34092],[-71.19254,42.341],[-71.1925,42.34109],[-71.19245,42.34118],[-71.1924,42.34127],[-71.19236,42.34133],[-71.19228,42.34143],[-71.19222,42.34149],[-71.19207,42.34164],[-71.19193,42.34177],[-71.19193,42.34177],[-71.19242,42.34205],[-71.19251,42.34213],[-71.19262,42.34223],[-71.19269,42.34228],[-71.19272,42.3423],[-71.19284,42.34234],[-71.19309,42.34241],[-71.19309,42.34241],[-71.19303,42.34251],[-71.19302,42.34257],[-71.19302,42.34264],[-71.193,42.34271],[-71.19299,42.34272],[-71.19297,42.34277],[-71.19296,42.34278],[-71.19292,42.34284],[-71.19289,42.34287],[-71.19287,42.34289],[-71.19284,42.34294],[-71.19281,42.34299],[-71.19267,42.34338],[-71.19266,42.3434],[-71.19264,42.34345],[-71.19263,42.34347],[-71.19263,42.34347],[-71.19258,42.34357],[-71.19258,42.34357],[-71.19285,42.3436],[-71.19304,42.34361],[-71.19322,42.3436],[-71.19348,42.34356],[-71.19373,42.34353],[-71.194,42.34351],[-71.19403,42.34351],[-71.19421,42.34352],[-71.19442,42.34356],[-71.19463,42.34362],[-71.19465,42.34362],[-71.19484,42.34369],[-71.1951,42.34379],[-71.1951,42.34379],[-71.19524,42.34349],[-71.1953,42.34337],[-71.19547,42.34287],[-71.19548,42.34284],[-71.19548,42.34283],[-71.19549,42.34283],[-71.1955,42.34282],[-71.19551,42.34282],[-71.19553,42.34281],[-71.19569,42.3428],[-71.19569,42.3428],[-71.19572,42.34279],[-71.19574,42.34278],[-71.19576,42.34276],[-71.19577,42.34273],[-71.19577,42.34269],[-71.19577,42.34266],[-71.19577,42.34262],[-71.1957,42.34238],[-71.1957,42.34228],[-71.19571,42.34218],[-71.19574,42.3421],[-71.19581,42.3419],[-71.19581,42.34187],[-71.1958,42.34184],[-71.19575,42.34176],[-71.19575,42.34176],[-71.19576,42.34175],[-71.19578,42.34173],[-71.19579,42.34172],[-71.1958,42.3417],[-71.1958,42.34168],[-71.19579,42.34166],[-71.19579,42.34164],[-71.19577,42.34162],[-71.19576,42.34161],[-71.19574,42.3416],[-71.19571,42.34159],[-71.19569,42.34158],[-71.19566,42.34158],[-71.19564,42.34158],[-71.19562,42.34159],[-71.1956,42.34159],[-71.19548,42.34154],[-71.19548,42.34154],[-71.19549,42.34147],[-71.19549,42.34142],[-71.19547,42.34138],[-71.19546,42.34136],[-71.19546,42.34135],[-71.19545,42.34135],[-71.19542,42.34134],[-71.19536,42.34133],[-71.1953,42.34132],[-71.195,42.34129],[-71.19483,42.34126],[-71.19469,42.34124],[-71.19466,42.34124],[-71.19428,42.34118],[-71.19424,42.34117],[-71.19405,42.34116],[-71.194,42.34115],[-71.19396,42.34115],[-71.19391,42.34116],[-71.19389,42.34116]]},{"id":14,"name":"Newton Eagle Direct","tracker":"Newton Eagle Direct","color":"#9B1F03","loop":true,"service":[{"days":[1,2,3,4,5],"from":"07:00","to":"17:00","every":9}],"stops":[{"name":"Stuart","lonlat":[-71.193791,42.341133],"rideToNext":44,"dwell":10,"at":3},{"name":"Newton Main Gate","lonlat":[-71.192625,42.341653],"rideToNext":312,"dwell":10,"at":22},{"name":"Main Gate Chestnut Hill","lonlat":[-71.171094,42.337928],"rideToNext":460,"dwell":10,"at":161},{"name":"Stuart Hall Loading Dock","lonlat":[-71.194075,42.341378],"rideToNext":60,"dwell":0,"at":413}],"line":[[-71.19389,42.34116],[-71.19387,42.34117],[-71.19385,42.34118],[-71.19383,42.34119],[-71.19382,42.34121],[-71.1938,42.34129],[-71.1938,42.34129],[-71.1937,42.34128],[-71.19352,42.34124],[-71.19329,42.3412],[-71.19321,42.34119],[-71.19315,42.34118],[-71.1931,42.34118],[-71.19305,42.34119],[-71.19297,42.34121],[-71.19291,42.34124],[-71.19286,42.34127],[-71.19283,42.3413],[-71.19281,42.34132],[-71.19275,42.34139],[-71.19271,42.34148],[-71.19268,42.3416],[-71.19267,42.34166],[-71.19267,42.34166],[-71.19267,42.34171],[-71.19266,42.34181],[-71.19264,42.34186],[-71.19261,42.34192],[-71.19242,42.34205],[-71.19242,42.34205],[-71.19193,42.34177],[-71.19193,42.34177],[-71.19207,42.34164],[-71.19222,42.34149],[-71.19228,42.34143],[-71.19236,42.34133],[-71.1924,42.34127],[-71.19245,42.34118],[-71.1925,42.34109],[-71.19254,42.341],[-71.19257,42.34092],[-71.1926,42.34081],[-71.19264,42.34057],[-71.19267,42.34035],[-71.1928,42.33958],[-71.19282,42.33947],[-71.19302,42.33813],[-71.19311,42.33758],[-71.19316,42.33724],[-71.19317,42.33719],[-71.19326,42.33651],[-71.19331,42.33622],[-71.19332,42.33617],[-71.19335,42.33608],[-71.19336,42.336],[-71.19336,42.336],[-71.19308,42.33608],[-71.19286,42.33612],[-71.19263,42.33614],[-71.19255,42.33615],[-71.19237,42.33617],[-71.19227,42.33618],[-71.19221,42.33619],[-71.1922,42.33619],[-71.19206,42.3362],[-71.1914,42.3362],[-71.19087,42.33621],[-71.19073,42.33621],[-71.19068,42.33621],[-71.18995,42.3362],[-71.18935,42.33621],[-71.18876,42.33623],[-71.18795,42.33628],[-71.18748,42.33631],[-71.18712,42.33633],[-71.1871,42.33633],[-71.18671,42.33637],[-71.18662,42.33638],[-71.18652,42.33639],[-71.18649,42.3364],[-71.18613,42.33644],[-71.1859,42.33647],[-71.18565,42.33651],[-71.18521,42.33657],[-71.18517,42.33658],[-71.18498,42.3366],[-71.18476,42.33662],[-71.18439,42.33663],[-71.18386,42.33662],[-71.18355,42.33661],[-71.18354,42.33661],[-71.18339,42.3366],[-71.18314,42.33659],[-71.18285,42.33657],[-71.18262,42.33655],[-71.18241,42.33653],[-71.18211,42.33649],[-71.18195,42.33648],[-71.18138,42.3364],[-71.18114,42.33637],[-71.18098,42.33635],[-71.18055,42.33629],[-71.18015,42.33624],[-71.18,42.33622],[-71.17987,42.33621],[-71.17973,42.33619],[-71.17927,42.33615],[-71.17917,42.33614],[-71.17889,42.33613],[-71.1787,42.33611],[-71.17856,42.33612],[-71.17831,42.33612],[-71.17817,42.33614],[-71.17803,42.33617],[-71.17791,42.3362],[-71.17769,42.33627],[-71.17757,42.33632],[-71.17739,42.3364],[-71.17707,42.33655],[-71.17694,42.33661],[-71.17691,42.33663],[-71.17685,42.33666],[-71.17682,42.33668],[-71.17678,42.3367],[-71.17672,42.33673],[-71.17666,42.33677],[-71.17651,42.33685],[-71.17644,42.33688],[-71.17639,42.33691],[-71.17627,42.33697],[-71.17615,42.33703],[-71.17609,42.33705],[-71.17602,42.33707],[-71.17588,42.33712],[-71.17583,42.33714],[-71.17577,42.33715],[-71.17567,42.33718],[-71.17566,42.33718],[-71.17536,42.33723],[-71.17503,42.33727],[-71.17488,42.33727],[-71.17471,42.33727],[-71.1746,42.33727],[-71.17446,42.33725],[-71.17434,42.33724],[-71.17385,42.33716],[-71.17354,42.33711],[-71.17333,42.33708],[-71.17318,42.33707],[-71.17303,42.33706],[-71.17284,42.33707],[-71.17263,42.33709],[-71.17245,42.33712],[-71.17221,42.33718],[-71.17212,42.33722],[-71.17187,42.33737],[-71.17148,42.33769],[-71.17144,42.33773],[-71.17139,42.33778],[-71.17134,42.33782],[-71.17131,42.33785],[-71.17117,42.33799],[-71.17117,42.33799],[-71.17111,42.33804],[-71.17105,42.3381],[-71.1708,42.33835],[-71.17075,42.33839],[-71.17068,42.33845],[-71.17061,42.33851],[-71.17053,42.33857],[-71.17044,42.33863],[-71.17036,42.33869],[-71.17035,42.3387],[-71.17028,42.33875],[-71.1702,42.3388],[-71.17011,42.33885],[-71.17,42.33891],[-71.16977,42.33903],[-71.16966,42.33908],[-71.16952,42.33914],[-71.16937,42.3392],[-71.16917,42.33927],[-71.16887,42.33937],[-71.16855,42.33947],[-71.16839,42.33952],[-71.16834,42.33954],[-71.16832,42.33955],[-71.1683,42.33955],[-71.16822,42.33955],[-71.16819,42.33955],[-71.16817,42.33956],[-71.16814,42.33957],[-71.16813,42.33957],[-71.16806,42.33959],[-71.16796,42.33962],[-71.16784,42.33964],[-71.16757,42.3397],[-71.16734,42.33974],[-71.16701,42.3398],[-71.16677,42.33984],[-71.16677,42.33984],[-71.16668,42.3397],[-71.16653,42.33947],[-71.16647,42.33936],[-71.16632,42.33915],[-71.16632,42.33915],[-71.16626,42.33917],[-71.1662,42.33919],[-71.16614,42.3392],[-71.16609,42.33921],[-71.16605,42.33921],[-71.16602,42.33921],[-71.16602,42.33921],[-71.16603,42.33933],[-71.16604,42.3394],[-71.16609,42.33967],[-71.1661,42.33978],[-71.16611,42.33981],[-71.16612,42.33991],[-71.16612,42.33991],[-71.16613,42.33997],[-71.16613,42.34],[-71.16614,42.34009],[-71.1665,42.34006],[-71.16652,42.34006],[-71.16659,42.34005],[-71.16671,42.34003],[-71.16683,42.34],[-71.167,42.33997],[-71.16733,42.33991],[-71.16774,42.33976],[-71.16817,42.33961],[-71.16824,42.33959],[-71.16827,42.33957],[-71.1683,42.33955],[-71.16832,42.33955],[-71.16834,42.33954],[-71.16839,42.33952],[-71.16855,42.33947],[-71.16887,42.33937],[-71.16917,42.33927],[-71.16937,42.3392],[-71.16952,42.33914],[-71.16966,42.33908],[-71.16977,42.33903],[-71.17,42.33891],[-71.17011,42.33885],[-71.1702,42.3388],[-71.17028,42.33875],[-71.17035,42.3387],[-71.17036,42.33869],[-71.17044,42.33863],[-71.17053,42.33857],[-71.17061,42.33851],[-71.17068,42.33845],[-71.17075,42.33839],[-71.1708,42.33835],[-71.17105,42.3381],[-71.17111,42.33804],[-71.17117,42.33799],[-71.17131,42.33785],[-71.17134,42.33782],[-71.17139,42.33778],[-71.17144,42.33773],[-71.17148,42.33769],[-71.17187,42.33737],[-71.17212,42.33722],[-71.17221,42.33718],[-71.17245,42.33712],[-71.17263,42.33709],[-71.17284,42.33707],[-71.17303,42.33706],[-71.17318,42.33707],[-71.17333,42.33708],[-71.17354,42.33711],[-71.17385,42.33716],[-71.17434,42.33724],[-71.17446,42.33725],[-71.1746,42.33727],[-71.17471,42.33727],[-71.17488,42.33727],[-71.17503,42.33727],[-71.17536,42.33723],[-71.17566,42.33718],[-71.17567,42.33718],[-71.17577,42.33715],[-71.17583,42.33714],[-71.17588,42.33712],[-71.17602,42.33707],[-71.17609,42.33705],[-71.17615,42.33703],[-71.17627,42.33697],[-71.17639,42.33691],[-71.17644,42.33688],[-71.17651,42.33685],[-71.17666,42.33677],[-71.17672,42.33673],[-71.17678,42.3367],[-71.17682,42.33668],[-71.17685,42.33666],[-71.17691,42.33663],[-71.17694,42.33661],[-71.17707,42.33655],[-71.17739,42.3364],[-71.17757,42.33632],[-71.17769,42.33627],[-71.17791,42.3362],[-71.17803,42.33617],[-71.17817,42.33614],[-71.17831,42.33612],[-71.17856,42.33612],[-71.1787,42.33611],[-71.17889,42.33613],[-71.17917,42.33614],[-71.17927,42.33615],[-71.17973,42.33619],[-71.17987,42.33621],[-71.18,42.33622],[-71.18015,42.33624],[-71.18055,42.33629],[-71.18098,42.33635],[-71.18114,42.33637],[-71.18138,42.3364],[-71.18195,42.33648],[-71.18211,42.33649],[-71.18241,42.33653],[-71.18262,42.33655],[-71.18285,42.33657],[-71.18314,42.33659],[-71.18339,42.3366],[-71.18354,42.33661],[-71.18355,42.33661],[-71.18386,42.33662],[-71.18439,42.33663],[-71.18476,42.33662],[-71.18498,42.3366],[-71.18517,42.33658],[-71.18521,42.33657],[-71.18565,42.33651],[-71.1859,42.33647],[-71.18613,42.33644],[-71.18649,42.3364],[-71.18652,42.33639],[-71.18662,42.33638],[-71.18671,42.33637],[-71.1871,42.33633],[-71.18712,42.33633],[-71.18748,42.33631],[-71.18795,42.33628],[-71.18876,42.33623],[-71.18935,42.33621],[-71.18995,42.3362],[-71.19068,42.33621],[-71.19073,42.33621],[-71.19087,42.33621],[-71.1914,42.3362],[-71.19206,42.3362],[-71.1922,42.33619],[-71.19221,42.33619],[-71.19227,42.33618],[-71.19237,42.33617],[-71.19255,42.33615],[-71.19263,42.33614],[-71.19286,42.33612],[-71.19308,42.33608],[-71.19336,42.336],[-71.19336,42.336],[-71.19335,42.33608],[-71.19332,42.33617],[-71.19331,42.33622],[-71.19326,42.33651],[-71.19317,42.33719],[-71.19316,42.33724],[-71.19311,42.33758],[-71.19302,42.33813],[-71.19282,42.33947],[-71.1928,42.33958],[-71.19267,42.34035],[-71.19264,42.34057],[-71.1926,42.34081],[-71.19257,42.34092],[-71.19254,42.341],[-71.1925,42.34109],[-71.19245,42.34118],[-71.1924,42.34127],[-71.19236,42.34133],[-71.19228,42.34143],[-71.19222,42.34149],[-71.19207,42.34164],[-71.19193,42.34177],[-71.19193,42.34177],[-71.19242,42.34205],[-71.19242,42.34205],[-71.19261,42.34192],[-71.19264,42.34186],[-71.19266,42.34181],[-71.19267,42.34171],[-71.19268,42.3416],[-71.19271,42.34148],[-71.19275,42.34139],[-71.19281,42.34132],[-71.19283,42.3413],[-71.19286,42.34127],[-71.19291,42.34124],[-71.19297,42.34121],[-71.19305,42.34119],[-71.1931,42.34118],[-71.19315,42.34118],[-71.19321,42.34119],[-71.19329,42.3412],[-71.19352,42.34124],[-71.1937,42.34128],[-71.1938,42.34129],[-71.19409,42.34133],[-71.19409,42.34133],[-71.19437,42.34137],[-71.19454,42.34139],[-71.19465,42.34141],[-71.19469,42.34124],[-71.19471,42.34119],[-71.19472,42.34116],[-71.19471,42.34114],[-71.1947,42.34111],[-71.19465,42.34108],[-71.19449,42.34106],[-71.19435,42.34104],[-71.19432,42.34106],[-71.19431,42.34108],[-71.1943,42.3411],[-71.19429,42.34113],[-71.19428,42.34115],[-71.19424,42.34117],[-71.19405,42.34116],[-71.194,42.34115],[-71.19396,42.34115],[-71.19391,42.34116],[-71.19389,42.34116]]},{"id":15,"name":"Newton Limited","tracker":"Newton Eagle Limited","color":"#5261A3","loop":true,"service":[{"days":[1,2,3,4,5],"from":"17:00","to":"18:00","every":10},{"days":[0,6],"from":"08:15","to":"11:00","every":30}],"stops":[{"name":"Stuart","lonlat":[-71.193791,42.341133],"rideToNext":44,"dwell":10,"at":3},{"name":"Newton Main Gate","lonlat":[-71.192625,42.341653],"rideToNext":312,"dwell":10,"at":22},{"name":"Main Gate Chestnut Hill","lonlat":[-71.171094,42.337928],"rideToNext":224,"dwell":10,"at":161},{"name":"McElroy – Beacon St.","lonlat":[-71.170819,42.333187],"rideToNext":75,"dwell":10,"at":294},{"name":"College Road","lonlat":[-71.1716,42.335236],"rideToNext":339,"dwell":10,"at":319},{"name":"Duchesne","lonlat":[-71.192611,42.343467],"rideToNext":143,"dwell":10,"at":484}],"line":[[-71.19389,42.34116],[-71.19387,42.34117],[-71.19385,42.34118],[-71.19383,42.34119],[-71.19382,42.34121],[-71.1938,42.34129],[-71.1938,42.34129],[-71.1937,42.34128],[-71.19352,42.34124],[-71.19329,42.3412],[-71.19321,42.34119],[-71.19315,42.34118],[-71.1931,42.34118],[-71.19305,42.34119],[-71.19297,42.34121],[-71.19291,42.34124],[-71.19286,42.34127],[-71.19283,42.3413],[-71.19281,42.34132],[-71.19275,42.34139],[-71.19271,42.34148],[-71.19268,42.3416],[-71.19267,42.34166],[-71.19267,42.34166],[-71.19267,42.34171],[-71.19266,42.34181],[-71.19264,42.34186],[-71.19261,42.34192],[-71.19242,42.34205],[-71.19242,42.34205],[-71.19193,42.34177],[-71.19193,42.34177],[-71.19207,42.34164],[-71.19222,42.34149],[-71.19228,42.34143],[-71.19236,42.34133],[-71.1924,42.34127],[-71.19245,42.34118],[-71.1925,42.34109],[-71.19254,42.341],[-71.19257,42.34092],[-71.1926,42.34081],[-71.19264,42.34057],[-71.19267,42.34035],[-71.1928,42.33958],[-71.19282,42.33947],[-71.19302,42.33813],[-71.19311,42.33758],[-71.19316,42.33724],[-71.19317,42.33719],[-71.19326,42.33651],[-71.19331,42.33622],[-71.19332,42.33617],[-71.19335,42.33608],[-71.19336,42.336],[-71.19336,42.336],[-71.19308,42.33608],[-71.19286,42.33612],[-71.19263,42.33614],[-71.19255,42.33615],[-71.19237,42.33617],[-71.19227,42.33618],[-71.19221,42.33619],[-71.1922,42.33619],[-71.19206,42.3362],[-71.1914,42.3362],[-71.19087,42.33621],[-71.19073,42.33621],[-71.19068,42.33621],[-71.18995,42.3362],[-71.18935,42.33621],[-71.18876,42.33623],[-71.18795,42.33628],[-71.18748,42.33631],[-71.18712,42.33633],[-71.1871,42.33633],[-71.18671,42.33637],[-71.18662,42.33638],[-71.18652,42.33639],[-71.18649,42.3364],[-71.18613,42.33644],[-71.1859,42.33647],[-71.18565,42.33651],[-71.18521,42.33657],[-71.18517,42.33658],[-71.18498,42.3366],[-71.18476,42.33662],[-71.18439,42.33663],[-71.18386,42.33662],[-71.18355,42.33661],[-71.18354,42.33661],[-71.18339,42.3366],[-71.18314,42.33659],[-71.18285,42.33657],[-71.18262,42.33655],[-71.18241,42.33653],[-71.18211,42.33649],[-71.18195,42.33648],[-71.18138,42.3364],[-71.18114,42.33637],[-71.18098,42.33635],[-71.18055,42.33629],[-71.18015,42.33624],[-71.18,42.33622],[-71.17987,42.33621],[-71.17973,42.33619],[-71.17927,42.33615],[-71.17917,42.33614],[-71.17889,42.33613],[-71.1787,42.33611],[-71.17856,42.33612],[-71.17831,42.33612],[-71.17817,42.33614],[-71.17803,42.33617],[-71.17791,42.3362],[-71.17769,42.33627],[-71.17757,42.33632],[-71.17739,42.3364],[-71.17707,42.33655],[-71.17694,42.33661],[-71.17691,42.33663],[-71.17685,42.33666],[-71.17682,42.33668],[-71.17678,42.3367],[-71.17672,42.33673],[-71.17666,42.33677],[-71.17651,42.33685],[-71.17644,42.33688],[-71.17639,42.33691],[-71.17627,42.33697],[-71.17615,42.33703],[-71.17609,42.33705],[-71.17602,42.33707],[-71.17588,42.33712],[-71.17583,42.33714],[-71.17577,42.33715],[-71.17567,42.33718],[-71.17566,42.33718],[-71.17536,42.33723],[-71.17503,42.33727],[-71.17488,42.33727],[-71.17471,42.33727],[-71.1746,42.33727],[-71.17446,42.33725],[-71.17434,42.33724],[-71.17385,42.33716],[-71.17354,42.33711],[-71.17333,42.33708],[-71.17318,42.33707],[-71.17303,42.33706],[-71.17284,42.33707],[-71.17263,42.33709],[-71.17245,42.33712],[-71.17221,42.33718],[-71.17212,42.33722],[-71.17187,42.33737],[-71.17148,42.33769],[-71.17144,42.33773],[-71.17139,42.33778],[-71.17134,42.33782],[-71.17131,42.33785],[-71.17117,42.33799],[-71.17117,42.33799],[-71.17111,42.33804],[-71.17105,42.3381],[-71.1708,42.33835],[-71.17075,42.33839],[-71.17068,42.33845],[-71.17061,42.33851],[-71.17053,42.33857],[-71.17044,42.33863],[-71.17036,42.33869],[-71.17035,42.3387],[-71.17028,42.33875],[-71.1702,42.3388],[-71.17011,42.33885],[-71.17,42.33891],[-71.16977,42.33903],[-71.16966,42.33908],[-71.16952,42.33914],[-71.16937,42.3392],[-71.16917,42.33927],[-71.16887,42.33937],[-71.16855,42.33947],[-71.16839,42.33952],[-71.16834,42.33954],[-71.16832,42.33955],[-71.1683,42.33955],[-71.16822,42.33955],[-71.16819,42.33955],[-71.16817,42.33956],[-71.16814,42.33957],[-71.16813,42.33957],[-71.16806,42.33959],[-71.16796,42.33962],[-71.16784,42.33964],[-71.16757,42.3397],[-71.16734,42.33974],[-71.16701,42.3398],[-71.16677,42.33984],[-71.1667,42.33985],[-71.16662,42.33986],[-71.16645,42.33987],[-71.16612,42.33991],[-71.16612,42.33991],[-71.16611,42.33981],[-71.1661,42.33978],[-71.16609,42.33967],[-71.16604,42.3394],[-71.16603,42.33933],[-71.16602,42.33921],[-71.16582,42.33914],[-71.16572,42.3391],[-71.16566,42.33907],[-71.16558,42.33904],[-71.16558,42.33904],[-71.1655,42.339],[-71.16543,42.33897],[-71.16522,42.33885],[-71.1651,42.33877],[-71.16503,42.33872],[-71.16498,42.33868],[-71.16492,42.33864],[-71.16485,42.33856],[-71.1648,42.33852],[-71.16478,42.33849],[-71.16471,42.33842],[-71.16466,42.33834],[-71.16462,42.33827],[-71.16458,42.3382],[-71.16455,42.33812],[-71.16445,42.3379],[-71.1644,42.33779],[-71.16428,42.33749],[-71.16427,42.33747],[-71.16413,42.33716],[-71.16401,42.3369],[-71.16391,42.33672],[-71.16383,42.33658],[-71.16382,42.33657],[-71.16374,42.33644],[-71.16373,42.33641],[-71.16366,42.33628],[-71.16358,42.33616],[-71.16358,42.33616],[-71.16342,42.33594],[-71.16325,42.33569],[-71.16321,42.33563],[-71.1632,42.33562],[-71.16317,42.33558],[-71.163,42.33533],[-71.16296,42.33528],[-71.16287,42.33516],[-71.1628,42.33507],[-71.16272,42.33494],[-71.1626,42.33477],[-71.16258,42.33474],[-71.1625,42.33462],[-71.16245,42.33455],[-71.16242,42.33448],[-71.16239,42.33435],[-71.16239,42.33435],[-71.16242,42.33426],[-71.16245,42.33422],[-71.16249,42.33417],[-71.16255,42.3341],[-71.16261,42.33406],[-71.16261,42.33406],[-71.1627,42.33397],[-71.16292,42.33396],[-71.16303,42.33395],[-71.1632,42.33393],[-71.16347,42.33388],[-71.16362,42.33386],[-71.1644,42.33378],[-71.16447,42.33377],[-71.16467,42.33375],[-71.16471,42.33375],[-71.16474,42.33375],[-71.16475,42.33375],[-71.16479,42.33374],[-71.1652,42.3337],[-71.16546,42.33367],[-71.16603,42.3336],[-71.16623,42.33357],[-71.1668,42.33351],[-71.16761,42.33343],[-71.16768,42.33343],[-71.16777,42.33342],[-71.16803,42.33339],[-71.169,42.33328],[-71.16934,42.33324],[-71.16993,42.33318],[-71.17067,42.33309],[-71.1708,42.33308],[-71.1708,42.33308],[-71.17103,42.33305],[-71.17174,42.33297],[-71.17222,42.33292],[-71.17278,42.33287],[-71.17278,42.33287],[-71.17303,42.33308],[-71.17303,42.33308],[-71.17295,42.33317],[-71.17287,42.33329],[-71.17281,42.33335],[-71.17268,42.3335],[-71.1725,42.3337],[-71.17244,42.33377],[-71.17218,42.33407],[-71.17205,42.33421],[-71.17182,42.33447],[-71.17178,42.33451],[-71.17176,42.33456],[-71.17174,42.33459],[-71.17173,42.33462],[-71.17172,42.33467],[-71.1717,42.3348],[-71.17167,42.33499],[-71.17163,42.33524],[-71.17163,42.33524],[-71.1716,42.33542],[-71.17156,42.33566],[-71.17155,42.33572],[-71.17155,42.33575],[-71.17155,42.33579],[-71.17157,42.33591],[-71.17158,42.33596],[-71.17158,42.33599],[-71.1716,42.33607],[-71.17165,42.33624],[-71.17166,42.33629],[-71.17173,42.33646],[-71.17186,42.33669],[-71.17195,42.33683],[-71.17206,42.33699],[-71.17221,42.33718],[-71.17221,42.33718],[-71.17245,42.33712],[-71.17263,42.33709],[-71.17284,42.33707],[-71.17303,42.33706],[-71.17318,42.33707],[-71.17333,42.33708],[-71.17354,42.33711],[-71.17385,42.33716],[-71.17434,42.33724],[-71.17446,42.33725],[-71.1746,42.33727],[-71.17471,42.33727],[-71.17488,42.33727],[-71.17503,42.33727],[-71.17536,42.33723],[-71.17566,42.33718],[-71.17567,42.33718],[-71.17577,42.33715],[-71.17583,42.33714],[-71.17588,42.33712],[-71.17602,42.33707],[-71.17609,42.33705],[-71.17615,42.33703],[-71.17627,42.33697],[-71.17639,42.33691],[-71.17644,42.33688],[-71.17651,42.33685],[-71.17666,42.33677],[-71.17672,42.33673],[-71.17678,42.3367],[-71.17682,42.33668],[-71.17685,42.33666],[-71.17691,42.33663],[-71.17694,42.33661],[-71.17707,42.33655],[-71.17739,42.3364],[-71.17757,42.33632],[-71.17769,42.33627],[-71.17791,42.3362],[-71.17803,42.33617],[-71.17817,42.33614],[-71.17831,42.33612],[-71.17856,42.33612],[-71.1787,42.33611],[-71.17889,42.33613],[-71.17917,42.33614],[-71.17927,42.33615],[-71.17973,42.33619],[-71.17987,42.33621],[-71.18,42.33622],[-71.18015,42.33624],[-71.18055,42.33629],[-71.18098,42.33635],[-71.18114,42.33637],[-71.18138,42.3364],[-71.18195,42.33648],[-71.18211,42.33649],[-71.18241,42.33653],[-71.18262,42.33655],[-71.18285,42.33657],[-71.18314,42.33659],[-71.18339,42.3366],[-71.18354,42.33661],[-71.18355,42.33661],[-71.18386,42.33662],[-71.18439,42.33663],[-71.18476,42.33662],[-71.18498,42.3366],[-71.18517,42.33658],[-71.18521,42.33657],[-71.18565,42.33651],[-71.1859,42.33647],[-71.18613,42.33644],[-71.18649,42.3364],[-71.18652,42.33639],[-71.18662,42.33638],[-71.18671,42.33637],[-71.1871,42.33633],[-71.18712,42.33633],[-71.18748,42.33631],[-71.18795,42.33628],[-71.18876,42.33623],[-71.18935,42.33621],[-71.18995,42.3362],[-71.19068,42.33621],[-71.19073,42.33621],[-71.19087,42.33621],[-71.1914,42.3362],[-71.19206,42.3362],[-71.1922,42.33619],[-71.19221,42.33619],[-71.19227,42.33618],[-71.19237,42.33617],[-71.19255,42.33615],[-71.19263,42.33614],[-71.19286,42.33612],[-71.19308,42.33608],[-71.19336,42.336],[-71.19336,42.336],[-71.19335,42.33608],[-71.19332,42.33617],[-71.19331,42.33622],[-71.19326,42.33651],[-71.19317,42.33719],[-71.19316,42.33724],[-71.19311,42.33758],[-71.19302,42.33813],[-71.19282,42.33947],[-71.1928,42.33958],[-71.19267,42.34035],[-71.19264,42.34057],[-71.1926,42.34081],[-71.19257,42.34092],[-71.19254,42.341],[-71.1925,42.34109],[-71.19245,42.34118],[-71.1924,42.34127],[-71.19236,42.34133],[-71.19228,42.34143],[-71.19222,42.34149],[-71.19207,42.34164],[-71.19193,42.34177],[-71.19193,42.34177],[-71.19242,42.34205],[-71.19251,42.34213],[-71.19262,42.34223],[-71.19269,42.34228],[-71.19272,42.3423],[-71.19284,42.34234],[-71.19309,42.34241],[-71.19309,42.34241],[-71.19303,42.34251],[-71.19302,42.34257],[-71.19302,42.34264],[-71.193,42.34271],[-71.19299,42.34272],[-71.19297,42.34277],[-71.19296,42.34278],[-71.19292,42.34284],[-71.19289,42.34287],[-71.19287,42.34289],[-71.19284,42.34294],[-71.19281,42.34299],[-71.19267,42.34338],[-71.19266,42.3434],[-71.19264,42.34345],[-71.19263,42.34347],[-71.19263,42.34347],[-71.19258,42.34357],[-71.19258,42.34357],[-71.19285,42.3436],[-71.19304,42.34361],[-71.19322,42.3436],[-71.19348,42.34356],[-71.19373,42.34353],[-71.194,42.34351],[-71.19403,42.34351],[-71.19421,42.34352],[-71.19442,42.34356],[-71.19463,42.34362],[-71.19465,42.34362],[-71.19484,42.34369],[-71.1951,42.34379],[-71.1951,42.34379],[-71.19524,42.34349],[-71.1953,42.34337],[-71.19547,42.34287],[-71.19548,42.34284],[-71.19548,42.34283],[-71.19549,42.34283],[-71.1955,42.34282],[-71.19551,42.34282],[-71.19553,42.34281],[-71.19569,42.3428],[-71.19569,42.3428],[-71.19572,42.34279],[-71.19574,42.34278],[-71.19576,42.34276],[-71.19577,42.34273],[-71.19577,42.34269],[-71.19577,42.34266],[-71.19577,42.34262],[-71.1957,42.34238],[-71.1957,42.34228],[-71.19571,42.34218],[-71.19574,42.3421],[-71.19581,42.3419],[-71.19581,42.34187],[-71.1958,42.34184],[-71.19575,42.34176],[-71.19575,42.34176],[-71.19576,42.34175],[-71.19578,42.34173],[-71.19579,42.34172],[-71.1958,42.3417],[-71.1958,42.34168],[-71.19579,42.34166],[-71.19579,42.34164],[-71.19577,42.34162],[-71.19576,42.34161],[-71.19574,42.3416],[-71.19571,42.34159],[-71.19569,42.34158],[-71.19566,42.34158],[-71.19564,42.34158],[-71.19562,42.34159],[-71.1956,42.34159],[-71.19548,42.34154],[-71.19548,42.34154],[-71.19549,42.34147],[-71.19549,42.34142],[-71.19547,42.34138],[-71.19546,42.34136],[-71.19546,42.34135],[-71.19545,42.34135],[-71.19542,42.34134],[-71.19536,42.34133],[-71.1953,42.34132],[-71.195,42.34129],[-71.19483,42.34126],[-71.19469,42.34124],[-71.19466,42.34124],[-71.19428,42.34118],[-71.19424,42.34117],[-71.19405,42.34116],[-71.194,42.34115],[-71.19396,42.34115],[-71.19391,42.34116],[-71.19389,42.34116]]},{"id":21,"name":"Law School Express (afternoon)","tracker":"Law Express - PM","color":"#8CB811","loop":false,"service":[{"days":[1,2,3,4,5],"from":"15:05","to":"17:05","every":110}],"stops":[{"name":"Stuart Hall Loading Dock","lonlat":[-71.194075,42.341378],"rideToNext":511,"dwell":0,"at":0},{"name":"Greycliff Hall","lonlat":[-71.161684,42.340238],"rideToNext":239,"dwell":0,"at":228},{"name":"South Street","lonlat":[-71.157531,42.339738],"rideToNext":219,"dwell":0,"at":330},{"name":"Reservoir MBTA stop","lonlat":[-71.148891,42.335054],"rideToNext":717,"dwell":0,"at":415},{"name":"Chestnut Hill Ave","lonlat":[-71.151027,42.336106],"rideToNext":601,"dwell":0,"at":442}],"line":[[-71.19409,42.34133],[-71.1938,42.34129],[-71.1937,42.34128],[-71.19352,42.34124],[-71.19329,42.3412],[-71.19321,42.34119],[-71.19315,42.34118],[-71.1931,42.34118],[-71.19305,42.34119],[-71.19297,42.34121],[-71.19291,42.34124],[-71.19286,42.34127],[-71.19283,42.3413],[-71.19281,42.34132],[-71.19275,42.34139],[-71.19271,42.34148],[-71.19268,42.3416],[-71.19267,42.34171],[-71.19266,42.34181],[-71.19264,42.34186],[-71.19261,42.34192],[-71.19242,42.34205],[-71.19242,42.34205],[-71.19193,42.34177],[-71.19193,42.34177],[-71.19207,42.34164],[-71.19222,42.34149],[-71.19228,42.34143],[-71.19236,42.34133],[-71.1924,42.34127],[-71.19245,42.34118],[-71.1925,42.34109],[-71.19254,42.341],[-71.19257,42.34092],[-71.1926,42.34081],[-71.19264,42.34057],[-71.19267,42.34035],[-71.1928,42.33958],[-71.19282,42.33947],[-71.19302,42.33813],[-71.19311,42.33758],[-71.19316,42.33724],[-71.19317,42.33719],[-71.19326,42.33651],[-71.19331,42.33622],[-71.19332,42.33617],[-71.19335,42.33608],[-71.19336,42.336],[-71.19336,42.336],[-71.19308,42.33608],[-71.19286,42.33612],[-71.19263,42.33614],[-71.19255,42.33615],[-71.19237,42.33617],[-71.19227,42.33618],[-71.19221,42.33619],[-71.1922,42.33619],[-71.19206,42.3362],[-71.1914,42.3362],[-71.19087,42.33621],[-71.19073,42.33621],[-71.19068,42.33621],[-71.18995,42.3362],[-71.18935,42.33621],[-71.18876,42.33623],[-71.18795,42.33628],[-71.18748,42.33631],[-71.18712,42.33633],[-71.1871,42.33633],[-71.18671,42.33637],[-71.18662,42.33638],[-71.18652,42.33639],[-71.18649,42.3364],[-71.18613,42.33644],[-71.1859,42.33647],[-71.18565,42.33651],[-71.18521,42.33657],[-71.18517,42.33658],[-71.18498,42.3366],[-71.18476,42.33662],[-71.18439,42.33663],[-71.18386,42.33662],[-71.18355,42.33661],[-71.18354,42.33661],[-71.18339,42.3366],[-71.18314,42.33659],[-71.18285,42.33657],[-71.18262,42.33655],[-71.18241,42.33653],[-71.18211,42.33649],[-71.18195,42.33648],[-71.18138,42.3364],[-71.18114,42.33637],[-71.18098,42.33635],[-71.18055,42.33629],[-71.18015,42.33624],[-71.18,42.33622],[-71.17987,42.33621],[-71.17973,42.33619],[-71.17927,42.33615],[-71.17917,42.33614],[-71.17889,42.33613],[-71.1787,42.33611],[-71.17856,42.33612],[-71.17831,42.33612],[-71.17817,42.33614],[-71.17803,42.33617],[-71.17791,42.3362],[-71.17769,42.33627],[-71.17757,42.33632],[-71.17739,42.3364],[-71.17707,42.33655],[-71.17694,42.33661],[-71.17691,42.33663],[-71.17685,42.33666],[-71.17682,42.33668],[-71.17678,42.3367],[-71.17672,42.33673],[-71.17666,42.33677],[-71.17651,42.33685],[-71.17644,42.33688],[-71.17639,42.33691],[-71.17627,42.33697],[-71.17615,42.33703],[-71.17609,42.33705],[-71.17602,42.33707],[-71.17588,42.33712],[-71.17583,42.33714],[-71.17577,42.33715],[-71.17567,42.33718],[-71.17566,42.33718],[-71.17536,42.33723],[-71.17503,42.33727],[-71.17488,42.33727],[-71.17471,42.33727],[-71.1746,42.33727],[-71.17446,42.33725],[-71.17434,42.33724],[-71.17385,42.33716],[-71.17354,42.33711],[-71.17333,42.33708],[-71.17318,42.33707],[-71.17303,42.33706],[-71.17284,42.33707],[-71.17263,42.33709],[-71.17245,42.33712],[-71.17221,42.33718],[-71.17212,42.33722],[-71.17187,42.33737],[-71.17148,42.33769],[-71.17144,42.33773],[-71.17139,42.33778],[-71.17134,42.33782],[-71.17131,42.33785],[-71.17117,42.33799],[-71.17111,42.33804],[-71.17105,42.3381],[-71.1708,42.33835],[-71.17075,42.33839],[-71.17068,42.33845],[-71.17061,42.33851],[-71.17053,42.33857],[-71.17044,42.33863],[-71.17036,42.33869],[-71.17035,42.3387],[-71.17028,42.33875],[-71.1702,42.3388],[-71.17011,42.33885],[-71.17,42.33891],[-71.16977,42.33903],[-71.16966,42.33908],[-71.16952,42.33914],[-71.16937,42.3392],[-71.16917,42.33927],[-71.16887,42.33937],[-71.16855,42.33947],[-71.16839,42.33952],[-71.16834,42.33954],[-71.16832,42.33955],[-71.1683,42.33955],[-71.16822,42.33955],[-71.16819,42.33955],[-71.16817,42.33956],[-71.16814,42.33957],[-71.16813,42.33957],[-71.16806,42.33959],[-71.16796,42.33962],[-71.16784,42.33964],[-71.16757,42.3397],[-71.16734,42.33974],[-71.16701,42.3398],[-71.16677,42.33984],[-71.1667,42.33985],[-71.16662,42.33986],[-71.16645,42.33987],[-71.16612,42.33991],[-71.16597,42.33993],[-71.1658,42.33995],[-71.16558,42.33998],[-71.1654,42.33999],[-71.16534,42.34],[-71.16523,42.34001],[-71.16519,42.34001],[-71.16516,42.34001],[-71.16511,42.34001],[-71.1649,42.34003],[-71.16467,42.34004],[-71.16461,42.34004],[-71.16447,42.34005],[-71.16419,42.34005],[-71.16398,42.34006],[-71.16388,42.34006],[-71.16374,42.34006],[-71.16355,42.34005],[-71.16343,42.34005],[-71.16337,42.34005],[-71.16321,42.34005],[-71.16281,42.34003],[-71.16264,42.34003],[-71.16179,42.34],[-71.16177,42.34],[-71.16135,42.33999],[-71.16106,42.33998],[-71.16106,42.33998],[-71.16106,42.34015],[-71.1613,42.34016],[-71.16143,42.34017],[-71.16162,42.34018],[-71.16169,42.34018],[-71.16169,42.34018],[-71.16205,42.34019],[-71.1626,42.34021],[-71.16308,42.34022],[-71.16341,42.34023],[-71.16355,42.34023],[-71.16393,42.34024],[-71.16403,42.34024],[-71.16414,42.34024],[-71.16421,42.34024],[-71.16428,42.34024],[-71.16443,42.34024],[-71.16457,42.34023],[-71.16471,42.34023],[-71.16505,42.34021],[-71.16567,42.34014],[-71.16614,42.34009],[-71.16614,42.34009],[-71.16613,42.34],[-71.16613,42.33997],[-71.16612,42.33991],[-71.16597,42.33993],[-71.1658,42.33995],[-71.16558,42.33998],[-71.1654,42.33999],[-71.16534,42.34],[-71.16523,42.34001],[-71.16519,42.34001],[-71.16516,42.34001],[-71.16511,42.34001],[-71.1649,42.34003],[-71.16467,42.34004],[-71.16461,42.34004],[-71.16447,42.34005],[-71.16419,42.34005],[-71.16398,42.34006],[-71.16388,42.34006],[-71.16374,42.34006],[-71.16355,42.34005],[-71.16343,42.34005],[-71.16337,42.34005],[-71.16321,42.34005],[-71.16281,42.34003],[-71.16264,42.34003],[-71.16179,42.34],[-71.16177,42.34],[-71.16135,42.33999],[-71.16106,42.33998],[-71.16092,42.33998],[-71.16078,42.33998],[-71.16062,42.33997],[-71.16047,42.33996],[-71.16038,42.33996],[-71.16031,42.33995],[-71.16016,42.33994],[-71.16001,42.33993],[-71.15987,42.33992],[-71.1596,42.33988],[-71.1593,42.33984],[-71.15898,42.33979],[-71.15884,42.33977],[-71.15865,42.33973],[-71.15848,42.3397],[-71.15835,42.33967],[-71.15815,42.33962],[-71.158,42.33959],[-71.15789,42.33956],[-71.15768,42.3395],[-71.15751,42.33946],[-71.15735,42.33941],[-71.15722,42.33936],[-71.15708,42.33932],[-71.15694,42.33927],[-71.1568,42.33922],[-71.15666,42.33917],[-71.15654,42.33912],[-71.15637,42.33906],[-71.15625,42.33901],[-71.15613,42.33896],[-71.15589,42.33885],[-71.15537,42.33859],[-71.15517,42.33849],[-71.15506,42.33845],[-71.15506,42.33845],[-71.15501,42.33849],[-71.15499,42.33852],[-71.15494,42.33857],[-71.15508,42.33863],[-71.15509,42.33864],[-71.15522,42.3387],[-71.15534,42.33876],[-71.15546,42.33882],[-71.15558,42.33888],[-71.15584,42.339],[-71.15608,42.33911],[-71.15623,42.33917],[-71.15648,42.33928],[-71.1565,42.33928],[-71.15676,42.33938],[-71.15726,42.33955],[-71.15729,42.33956],[-71.15758,42.33964],[-71.15758,42.33964],[-71.15782,42.33971],[-71.15782,42.33971],[-71.15789,42.33956],[-71.15768,42.3395],[-71.15751,42.33946],[-71.15735,42.33941],[-71.15722,42.33936],[-71.15708,42.33932],[-71.15694,42.33927],[-71.1568,42.33922],[-71.15666,42.33917],[-71.15654,42.33912],[-71.15637,42.33906],[-71.15625,42.33901],[-71.15613,42.33896],[-71.15589,42.33885],[-71.15537,42.33859],[-71.15517,42.33849],[-71.15506,42.33845],[-71.15497,42.33841],[-71.15489,42.33837],[-71.15475,42.33831],[-71.15462,42.33825],[-71.1545,42.33819],[-71.15438,42.33815],[-71.1543,42.33812],[-71.15422,42.33809],[-71.15413,42.33805],[-71.15403,42.33802],[-71.15399,42.33801],[-71.15396,42.33801],[-71.15395,42.338],[-71.15391,42.338],[-71.15374,42.33797],[-71.1536,42.33796],[-71.15351,42.33795],[-71.15348,42.33795],[-71.15347,42.33795],[-71.15346,42.33795],[-71.15345,42.33795],[-71.15344,42.33795],[-71.15342,42.33795],[-71.15329,42.33798],[-71.15327,42.33799],[-71.15325,42.338],[-71.15321,42.33802],[-71.15321,42.33802],[-71.15317,42.33797],[-71.15307,42.33787],[-71.15305,42.33784],[-71.15254,42.3374],[-71.15229,42.33717],[-71.15203,42.33696],[-71.15188,42.33684],[-71.15145,42.3365],[-71.15129,42.33636],[-71.15123,42.33632],[-71.15118,42.33628],[-71.15113,42.33624],[-71.15107,42.33619],[-71.15105,42.33617],[-71.15092,42.33604],[-71.15092,42.33604],[-71.1508,42.33592],[-71.15059,42.33571],[-71.15051,42.33563],[-71.15042,42.33555],[-71.15039,42.33552],[-71.15028,42.33544],[-71.15019,42.33537],[-71.15004,42.33528],[-71.15003,42.33527],[-71.15001,42.33526],[-71.14997,42.33523],[-71.14986,42.33517],[-71.14985,42.33516],[-71.14972,42.3351],[-71.14964,42.33506],[-71.14952,42.33499],[-71.14943,42.33495],[-71.14937,42.33492],[-71.14936,42.33491],[-71.14914,42.33499],[-71.14893,42.3349],[-71.1488,42.33483],[-71.1488,42.33483],[-71.14891,42.3347],[-71.14891,42.3347],[-71.14917,42.33482],[-71.14928,42.33487],[-71.14936,42.33491],[-71.14937,42.33492],[-71.14943,42.33495],[-71.14952,42.33499],[-71.14964,42.33506],[-71.14972,42.3351],[-71.14985,42.33516],[-71.14986,42.33517],[-71.14997,42.33523],[-71.15001,42.33526],[-71.15003,42.33527],[-71.15004,42.33528],[-71.15019,42.33537],[-71.15028,42.33544],[-71.15039,42.33552],[-71.15042,42.33555],[-71.15051,42.33563],[-71.15059,42.33571],[-71.1508,42.33592],[-71.15092,42.33604],[-71.15105,42.33617],[-71.15107,42.33619],[-71.15113,42.33624],[-71.15118,42.33628],[-71.15123,42.33632],[-71.15129,42.33636],[-71.15145,42.3365],[-71.15188,42.33684],[-71.15203,42.33696],[-71.15209,42.337],[-71.15209,42.337],[-71.15229,42.33717],[-71.15254,42.3374],[-71.15305,42.33784],[-71.15307,42.33787],[-71.15317,42.33797],[-71.15321,42.33802],[-71.15321,42.33802],[-71.15339,42.33818],[-71.1535,42.33818],[-71.15356,42.33817],[-71.15359,42.33817],[-71.15362,42.33817],[-71.15379,42.33818],[-71.1539,42.33819],[-71.154,42.33821],[-71.15404,42.33822],[-71.15415,42.33826],[-71.15429,42.33831],[-71.15442,42.33835],[-71.15455,42.3384],[-71.15469,42.33846],[-71.15481,42.33851],[-71.15494,42.33857],[-71.15508,42.33863],[-71.15509,42.33864],[-71.15522,42.3387],[-71.15534,42.33876],[-71.15546,42.33882],[-71.15558,42.33888],[-71.15584,42.339],[-71.15608,42.33911],[-71.15623,42.33917],[-71.15648,42.33928],[-71.1565,42.33928],[-71.15676,42.33938],[-71.15726,42.33955],[-71.15729,42.33956],[-71.15782,42.33971],[-71.15835,42.33983],[-71.15866,42.3399],[-71.15898,42.33996],[-71.15936,42.34001],[-71.15975,42.34007],[-71.16006,42.3401],[-71.16032,42.34012],[-71.16035,42.34012],[-71.16059,42.34014],[-71.16106,42.34015],[-71.1613,42.34016],[-71.16143,42.34017],[-71.16162,42.34018],[-71.16205,42.34019],[-71.1626,42.34021],[-71.16308,42.34022],[-71.16341,42.34023],[-71.16355,42.34023],[-71.16393,42.34024],[-71.16403,42.34024],[-71.16414,42.34024],[-71.16421,42.34024],[-71.16428,42.34024],[-71.16443,42.34024],[-71.16457,42.34023],[-71.16471,42.34023],[-71.16505,42.34021],[-71.16567,42.34014],[-71.16614,42.34009],[-71.1665,42.34006],[-71.16652,42.34006],[-71.16659,42.34005],[-71.16671,42.34003],[-71.16683,42.34],[-71.167,42.33997],[-71.16733,42.33991],[-71.16774,42.33976],[-71.16817,42.33961],[-71.16824,42.33959],[-71.16827,42.33957],[-71.1683,42.33955],[-71.16832,42.33955],[-71.16834,42.33954],[-71.16839,42.33952],[-71.16855,42.33947],[-71.16887,42.33937],[-71.16917,42.33927],[-71.16937,42.3392],[-71.16952,42.33914],[-71.16966,42.33908],[-71.16977,42.33903],[-71.17,42.33891],[-71.17011,42.33885],[-71.1702,42.3388],[-71.17028,42.33875],[-71.17035,42.3387],[-71.17036,42.33869],[-71.17044,42.33863],[-71.17053,42.33857],[-71.17061,42.33851],[-71.17068,42.33845],[-71.17075,42.33839],[-71.1708,42.33835],[-71.17105,42.3381],[-71.17111,42.33804],[-71.17117,42.33799],[-71.17131,42.33785],[-71.17134,42.33782],[-71.17139,42.33778],[-71.17144,42.33773],[-71.17148,42.33769],[-71.17187,42.33737],[-71.17212,42.33722],[-71.17221,42.33718],[-71.17245,42.33712],[-71.17263,42.33709],[-71.17284,42.33707],[-71.17303,42.33706],[-71.17318,42.33707],[-71.17333,42.33708],[-71.17354,42.33711],[-71.17385,42.33716],[-71.17434,42.33724],[-71.17446,42.33725],[-71.1746,42.33727],[-71.17471,42.33727],[-71.17488,42.33727],[-71.17503,42.33727],[-71.17536,42.33723],[-71.17566,42.33718],[-71.17567,42.33718],[-71.17577,42.33715],[-71.17583,42.33714],[-71.17588,42.33712],[-71.17602,42.33707],[-71.17609,42.33705],[-71.17615,42.33703],[-71.17627,42.33697],[-71.17639,42.33691],[-71.17644,42.33688],[-71.17651,42.33685],[-71.17666,42.33677],[-71.17672,42.33673],[-71.17678,42.3367],[-71.17682,42.33668],[-71.17685,42.33666],[-71.17691,42.33663],[-71.17694,42.33661],[-71.17707,42.33655],[-71.17739,42.3364],[-71.17757,42.33632],[-71.17769,42.33627],[-71.17791,42.3362],[-71.17803,42.33617],[-71.17817,42.33614],[-71.17831,42.33612],[-71.17856,42.33612],[-71.1787,42.33611],[-71.17889,42.33613],[-71.17917,42.33614],[-71.17927,42.33615],[-71.17973,42.33619],[-71.17987,42.33621],[-71.18,42.33622],[-71.18015,42.33624],[-71.18055,42.33629],[-71.18098,42.33635],[-71.18114,42.33637],[-71.18138,42.3364],[-71.18195,42.33648],[-71.18211,42.33649],[-71.18241,42.33653],[-71.18262,42.33655],[-71.18285,42.33657],[-71.18314,42.33659],[-71.18339,42.3366],[-71.18354,42.33661],[-71.18355,42.33661],[-71.18386,42.33662],[-71.18439,42.33663],[-71.18476,42.33662],[-71.18498,42.3366],[-71.18517,42.33658],[-71.18521,42.33657],[-71.18565,42.33651],[-71.1859,42.33647],[-71.18613,42.33644],[-71.18649,42.3364],[-71.18652,42.33639],[-71.18662,42.33638],[-71.18671,42.33637],[-71.1871,42.33633],[-71.18712,42.33633],[-71.18748,42.33631],[-71.18795,42.33628],[-71.18876,42.33623],[-71.18935,42.33621],[-71.18995,42.3362],[-71.19068,42.33621],[-71.19073,42.33621],[-71.19087,42.33621],[-71.1914,42.3362],[-71.19206,42.3362],[-71.1922,42.33619],[-71.19221,42.33619],[-71.19227,42.33618],[-71.19237,42.33617],[-71.19255,42.33615],[-71.19263,42.33614],[-71.19286,42.33612],[-71.19308,42.33608],[-71.19336,42.336],[-71.19336,42.336],[-71.19335,42.33608],[-71.19332,42.33617],[-71.19331,42.33622],[-71.19326,42.33651],[-71.19317,42.33719],[-71.19316,42.33724],[-71.19311,42.33758],[-71.19302,42.33813],[-71.19282,42.33947],[-71.1928,42.33958],[-71.19267,42.34035],[-71.19264,42.34057],[-71.1926,42.34081],[-71.19257,42.34092],[-71.19254,42.341],[-71.1925,42.34109],[-71.19245,42.34118],[-71.1924,42.34127],[-71.19236,42.34133],[-71.19228,42.34143],[-71.19222,42.34149],[-71.19207,42.34164],[-71.19193,42.34177],[-71.19193,42.34177],[-71.19242,42.34205],[-71.19242,42.34205],[-71.19261,42.34192],[-71.19264,42.34186],[-71.19266,42.34181],[-71.19267,42.34171],[-71.19268,42.3416],[-71.19271,42.34148],[-71.19275,42.34139],[-71.19281,42.34132],[-71.19283,42.3413],[-71.19286,42.34127],[-71.19291,42.34124],[-71.19297,42.34121],[-71.19305,42.34119],[-71.1931,42.34118],[-71.19315,42.34118],[-71.19321,42.34119],[-71.19329,42.3412],[-71.19352,42.34124],[-71.1937,42.34128],[-71.1938,42.34129],[-71.19409,42.34133]]},{"id":24,"name":"Early Morning Shuttle (Newton)","tracker":"Newton Early Morning Shuttle","color":"#003366","loop":false,"service":[{"days":[1,2,3,4,5],"from":"05:55","to":"06:35","every":30},{"days":[0,6],"from":"06:55","to":"07:35","every":30}],"stops":[{"name":"Stuart","lonlat":[-71.193791,42.341133],"rideToNext":44,"dwell":10,"at":3},{"name":"Newton Main Gate","lonlat":[-71.192625,42.341653],"rideToNext":312,"dwell":10,"at":22},{"name":"Conte Forum","lonlat":[-71.167135,42.335986],"rideToNext":529,"dwell":10,"at":274},{"name":"Stuart Hall Loading Dock","lonlat":[-71.194075,42.341378],"rideToNext":89,"dwell":0,"at":560}],"line":[[-71.19389,42.34116],[-71.19387,42.34117],[-71.19385,42.34118],[-71.19383,42.34119],[-71.19382,42.34121],[-71.1938,42.34129],[-71.1938,42.34129],[-71.1937,42.34128],[-71.19352,42.34124],[-71.19329,42.3412],[-71.19321,42.34119],[-71.19315,42.34118],[-71.1931,42.34118],[-71.19305,42.34119],[-71.19297,42.34121],[-71.19291,42.34124],[-71.19286,42.34127],[-71.19283,42.3413],[-71.19281,42.34132],[-71.19275,42.34139],[-71.19271,42.34148],[-71.19268,42.3416],[-71.19267,42.34166],[-71.19267,42.34166],[-71.19267,42.34171],[-71.19266,42.34181],[-71.19264,42.34186],[-71.19261,42.34192],[-71.19242,42.34205],[-71.19242,42.34205],[-71.19193,42.34177],[-71.19193,42.34177],[-71.19207,42.34164],[-71.19222,42.34149],[-71.19228,42.34143],[-71.19236,42.34133],[-71.1924,42.34127],[-71.19245,42.34118],[-71.1925,42.34109],[-71.19254,42.341],[-71.19257,42.34092],[-71.1926,42.34081],[-71.19264,42.34057],[-71.19267,42.34035],[-71.1928,42.33958],[-71.19282,42.33947],[-71.19302,42.33813],[-71.19311,42.33758],[-71.19316,42.33724],[-71.19317,42.33719],[-71.19326,42.33651],[-71.19331,42.33622],[-71.19332,42.33617],[-71.19335,42.33608],[-71.19336,42.336],[-71.19336,42.336],[-71.19308,42.33608],[-71.19286,42.33612],[-71.19263,42.33614],[-71.19255,42.33615],[-71.19237,42.33617],[-71.19227,42.33618],[-71.19221,42.33619],[-71.1922,42.33619],[-71.19206,42.3362],[-71.1914,42.3362],[-71.19087,42.33621],[-71.19073,42.33621],[-71.19068,42.33621],[-71.18995,42.3362],[-71.18935,42.33621],[-71.18876,42.33623],[-71.18795,42.33628],[-71.18748,42.33631],[-71.18712,42.33633],[-71.1871,42.33633],[-71.18671,42.33637],[-71.18662,42.33638],[-71.18652,42.33639],[-71.18649,42.3364],[-71.18613,42.33644],[-71.1859,42.33647],[-71.18565,42.33651],[-71.18521,42.33657],[-71.18517,42.33658],[-71.18498,42.3366],[-71.18476,42.33662],[-71.18439,42.33663],[-71.18403,42.33662],[-71.18386,42.33662],[-71.18355,42.33661],[-71.18354,42.33661],[-71.18339,42.3366],[-71.18314,42.33659],[-71.18285,42.33657],[-71.18281,42.33656],[-71.18262,42.33655],[-71.18241,42.33653],[-71.18211,42.33649],[-71.18195,42.33648],[-71.18186,42.33646],[-71.18138,42.3364],[-71.18114,42.33637],[-71.18098,42.33635],[-71.18055,42.33629],[-71.18015,42.33624],[-71.18,42.33622],[-71.17987,42.33621],[-71.17973,42.33619],[-71.17927,42.33615],[-71.17917,42.33614],[-71.17889,42.33613],[-71.1787,42.33611],[-71.17856,42.33612],[-71.17831,42.33612],[-71.17817,42.33614],[-71.17803,42.33617],[-71.17791,42.3362],[-71.17769,42.33627],[-71.17757,42.33632],[-71.17739,42.3364],[-71.17707,42.33655],[-71.17694,42.33661],[-71.17691,42.33663],[-71.17685,42.33666],[-71.17682,42.33668],[-71.17678,42.3367],[-71.17672,42.33673],[-71.17666,42.33677],[-71.17651,42.33685],[-71.17644,42.33688],[-71.17639,42.33691],[-71.17627,42.33697],[-71.17615,42.33703],[-71.17609,42.33705],[-71.17602,42.33707],[-71.17588,42.33712],[-71.17583,42.33714],[-71.17577,42.33715],[-71.17567,42.33718],[-71.17566,42.33718],[-71.17536,42.33723],[-71.17503,42.33727],[-71.17488,42.33727],[-71.17471,42.33727],[-71.1746,42.33727],[-71.17446,42.33725],[-71.17434,42.33724],[-71.17385,42.33716],[-71.17354,42.33711],[-71.17333,42.33708],[-71.17318,42.33707],[-71.17303,42.33706],[-71.17284,42.33707],[-71.17263,42.33709],[-71.17245,42.33712],[-71.17221,42.33718],[-71.17212,42.33722],[-71.17187,42.33737],[-71.17148,42.33769],[-71.17144,42.33773],[-71.17139,42.33778],[-71.17134,42.33782],[-71.17131,42.33785],[-71.17117,42.33799],[-71.17111,42.33804],[-71.17105,42.3381],[-71.1708,42.33835],[-71.17075,42.33839],[-71.17068,42.33845],[-71.17061,42.33851],[-71.17053,42.33857],[-71.17044,42.33863],[-71.17036,42.33869],[-71.17035,42.3387],[-71.17028,42.33875],[-71.1702,42.3388],[-71.17011,42.33885],[-71.17,42.33891],[-71.16977,42.33903],[-71.16966,42.33908],[-71.1696,42.3391],[-71.16952,42.33914],[-71.16937,42.3392],[-71.16917,42.33927],[-71.16887,42.33937],[-71.16855,42.33947],[-71.16839,42.33952],[-71.16834,42.33954],[-71.16832,42.33955],[-71.1683,42.33955],[-71.16822,42.33955],[-71.16819,42.33955],[-71.16817,42.33956],[-71.16814,42.33957],[-71.16813,42.33957],[-71.16806,42.33959],[-71.16796,42.33962],[-71.16784,42.33964],[-71.16757,42.3397],[-71.16734,42.33974],[-71.16701,42.3398],[-71.16677,42.33984],[-71.16677,42.33984],[-71.16668,42.3397],[-71.16653,42.33947],[-71.16647,42.33936],[-71.16632,42.33915],[-71.16632,42.33915],[-71.16666,42.33902],[-71.16685,42.33895],[-71.16685,42.33895],[-71.16718,42.33882],[-71.16721,42.33881],[-71.16728,42.33879],[-71.16792,42.33855],[-71.1681,42.33849],[-71.16827,42.33843],[-71.16849,42.33835],[-71.1685,42.33834],[-71.16857,42.33832],[-71.16865,42.33828],[-71.1687,42.33825],[-71.16873,42.33822],[-71.16879,42.33817],[-71.16883,42.33812],[-71.16886,42.33808],[-71.16889,42.33804],[-71.16891,42.33798],[-71.16892,42.33789],[-71.16892,42.33785],[-71.16891,42.33778],[-71.1689,42.33773],[-71.16888,42.33767],[-71.16883,42.33757],[-71.16875,42.3375],[-71.16869,42.33746],[-71.16867,42.33743],[-71.16861,42.33739],[-71.16857,42.33736],[-71.16854,42.33733],[-71.16852,42.33731],[-71.16851,42.33729],[-71.16851,42.33728],[-71.1685,42.33726],[-71.16849,42.33724],[-71.16848,42.33721],[-71.16847,42.33717],[-71.16845,42.3371],[-71.16841,42.337],[-71.16838,42.33692],[-71.16832,42.33676],[-71.16829,42.33666],[-71.16826,42.33656],[-71.16818,42.33633],[-71.16813,42.33619],[-71.16811,42.33613],[-71.16809,42.3361],[-71.16808,42.33607],[-71.16806,42.33605],[-71.16803,42.33601],[-71.168,42.33598],[-71.16797,42.33596],[-71.16789,42.33591],[-71.16786,42.3359],[-71.16784,42.33589],[-71.16781,42.33589],[-71.16777,42.33588],[-71.16773,42.33588],[-71.16769,42.33589],[-71.16764,42.33589],[-71.16759,42.3359],[-71.16757,42.33591],[-71.1675,42.33593],[-71.16718,42.33605],[-71.16718,42.33605],[-71.1671,42.33608],[-71.16701,42.33612],[-71.16692,42.33615],[-71.16683,42.33618],[-71.16676,42.3362],[-71.16665,42.33621],[-71.1665,42.33623],[-71.16635,42.33622],[-71.16626,42.33622],[-71.16622,42.33622],[-71.16615,42.33621],[-71.16611,42.3362],[-71.16606,42.33619],[-71.16595,42.33617],[-71.16585,42.33614],[-71.16577,42.33611],[-71.16575,42.3361],[-71.16571,42.33609],[-71.1656,42.33603],[-71.16552,42.33598],[-71.16542,42.3359],[-71.16523,42.33578],[-71.16507,42.33573],[-71.16481,42.33566],[-71.16456,42.3356],[-71.16443,42.33556],[-71.16434,42.33554],[-71.1643,42.33553],[-71.16407,42.33546],[-71.16363,42.33535],[-71.16349,42.33531],[-71.16344,42.3353],[-71.1633,42.33526],[-71.16323,42.33524],[-71.16317,42.33524],[-71.16311,42.33525],[-71.16305,42.33526],[-71.16296,42.33528],[-71.16296,42.33528],[-71.163,42.33533],[-71.16317,42.33558],[-71.1632,42.33562],[-71.16321,42.33563],[-71.16325,42.33569],[-71.16342,42.33594],[-71.16358,42.33616],[-71.16358,42.33616],[-71.16366,42.33628],[-71.16373,42.33641],[-71.16374,42.33644],[-71.16382,42.33657],[-71.16383,42.33658],[-71.16391,42.33672],[-71.16401,42.3369],[-71.16413,42.33716],[-71.16427,42.33747],[-71.16428,42.33749],[-71.1644,42.33779],[-71.16445,42.3379],[-71.16455,42.33812],[-71.16458,42.3382],[-71.16462,42.33827],[-71.16466,42.33834],[-71.16471,42.33842],[-71.16478,42.33849],[-71.1648,42.33852],[-71.16485,42.33856],[-71.16492,42.33864],[-71.16498,42.33868],[-71.16503,42.33872],[-71.1651,42.33877],[-71.16522,42.33885],[-71.16543,42.33897],[-71.1655,42.339],[-71.16558,42.33904],[-71.16566,42.33907],[-71.16572,42.3391],[-71.16582,42.33914],[-71.16602,42.33921],[-71.16603,42.33933],[-71.16604,42.3394],[-71.16609,42.33967],[-71.1661,42.33978],[-71.16611,42.33981],[-71.16612,42.33991],[-71.16612,42.33991],[-71.16613,42.33997],[-71.16613,42.34],[-71.16614,42.34009],[-71.1665,42.34006],[-71.16652,42.34006],[-71.16659,42.34005],[-71.16671,42.34003],[-71.16683,42.34],[-71.167,42.33997],[-71.16733,42.33991],[-71.16774,42.33976],[-71.16817,42.33961],[-71.16818,42.33961],[-71.16824,42.33959],[-71.16827,42.33957],[-71.1683,42.33955],[-71.16832,42.33955],[-71.16834,42.33954],[-71.16839,42.33952],[-71.16855,42.33947],[-71.16887,42.33937],[-71.16917,42.33927],[-71.16937,42.3392],[-71.16952,42.33914],[-71.1696,42.3391],[-71.16966,42.33908],[-71.16977,42.33903],[-71.17,42.33891],[-71.17011,42.33885],[-71.1702,42.3388],[-71.17028,42.33875],[-71.17035,42.3387],[-71.17036,42.33869],[-71.17044,42.33863],[-71.17053,42.33857],[-71.17061,42.33851],[-71.17068,42.33845],[-71.17075,42.33839],[-71.1708,42.33835],[-71.17105,42.3381],[-71.17111,42.33804],[-71.17117,42.33799],[-71.17131,42.33785],[-71.17134,42.33782],[-71.17139,42.33778],[-71.17144,42.33773],[-71.17148,42.33769],[-71.17187,42.33737],[-71.17212,42.33722],[-71.17221,42.33718],[-71.17245,42.33712],[-71.17263,42.33709],[-71.17284,42.33707],[-71.17303,42.33706],[-71.17318,42.33707],[-71.17333,42.33708],[-71.17354,42.33711],[-71.17385,42.33716],[-71.17434,42.33724],[-71.17446,42.33725],[-71.1746,42.33727],[-71.17471,42.33727],[-71.17488,42.33727],[-71.17503,42.33727],[-71.17536,42.33723],[-71.17566,42.33718],[-71.17567,42.33718],[-71.17577,42.33715],[-71.17583,42.33714],[-71.17588,42.33712],[-71.17602,42.33707],[-71.17609,42.33705],[-71.17615,42.33703],[-71.17627,42.33697],[-71.17639,42.33691],[-71.17644,42.33688],[-71.17651,42.33685],[-71.17666,42.33677],[-71.17672,42.33673],[-71.17678,42.3367],[-71.17682,42.33668],[-71.17685,42.33666],[-71.17691,42.33663],[-71.17694,42.33661],[-71.17707,42.33655],[-71.17739,42.3364],[-71.17757,42.33632],[-71.17769,42.33627],[-71.17791,42.3362],[-71.17803,42.33617],[-71.17817,42.33614],[-71.17831,42.33612],[-71.17856,42.33612],[-71.1787,42.33611],[-71.17889,42.33613],[-71.17917,42.33614],[-71.17927,42.33615],[-71.17973,42.33619],[-71.17987,42.33621],[-71.18,42.33622],[-71.18015,42.33624],[-71.18055,42.33629],[-71.18098,42.33635],[-71.18114,42.33637],[-71.18138,42.3364],[-71.18186,42.33646],[-71.18195,42.33648],[-71.18211,42.33649],[-71.18241,42.33653],[-71.18262,42.33655],[-71.18281,42.33656],[-71.18285,42.33657],[-71.18314,42.33659],[-71.18339,42.3366],[-71.18354,42.33661],[-71.18355,42.33661],[-71.18386,42.33662],[-71.18403,42.33662],[-71.18439,42.33663],[-71.18476,42.33662],[-71.18498,42.3366],[-71.18517,42.33658],[-71.18521,42.33657],[-71.18565,42.33651],[-71.1859,42.33647],[-71.18613,42.33644],[-71.18649,42.3364],[-71.18652,42.33639],[-71.18662,42.33638],[-71.18671,42.33637],[-71.1871,42.33633],[-71.18712,42.33633],[-71.18748,42.33631],[-71.18795,42.33628],[-71.18876,42.33623],[-71.18935,42.33621],[-71.18995,42.3362],[-71.19068,42.33621],[-71.19073,42.33621],[-71.19087,42.33621],[-71.1914,42.3362],[-71.19206,42.3362],[-71.1922,42.33619],[-71.19221,42.33619],[-71.19227,42.33618],[-71.19237,42.33617],[-71.19255,42.33615],[-71.19263,42.33614],[-71.19286,42.33612],[-71.19308,42.33608],[-71.19336,42.336],[-71.19336,42.336],[-71.19335,42.33608],[-71.19332,42.33617],[-71.19331,42.33622],[-71.19326,42.33651],[-71.19317,42.33719],[-71.19316,42.33724],[-71.19311,42.33758],[-71.19302,42.33813],[-71.19282,42.33947],[-71.1928,42.33958],[-71.19267,42.34035],[-71.19264,42.34057],[-71.1926,42.34081],[-71.19257,42.34092],[-71.19254,42.341],[-71.1925,42.34109],[-71.19245,42.34118],[-71.1924,42.34127],[-71.19236,42.34133],[-71.19228,42.34143],[-71.19222,42.34149],[-71.19207,42.34164],[-71.19193,42.34177],[-71.19193,42.34177],[-71.19242,42.34205],[-71.19242,42.34205],[-71.19261,42.34192],[-71.19264,42.34186],[-71.19266,42.34181],[-71.19267,42.34171],[-71.19268,42.3416],[-71.19271,42.34148],[-71.19275,42.34139],[-71.19281,42.34132],[-71.19283,42.3413],[-71.19286,42.34127],[-71.19291,42.34124],[-71.19297,42.34121],[-71.19305,42.34119],[-71.1931,42.34118],[-71.19315,42.34118],[-71.19321,42.34119],[-71.19329,42.3412],[-71.19352,42.34124],[-71.1937,42.34128],[-71.1938,42.34129],[-71.19409,42.34133],[-71.19409,42.34133],[-71.19437,42.34137],[-71.19469,42.34142],[-71.19471,42.34133],[-71.19469,42.34124],[-71.19469,42.34124],[-71.19428,42.34118],[-71.19428,42.34118],[-71.19424,42.34117],[-71.19405,42.34116],[-71.194,42.34115],[-71.19396,42.34115],[-71.19391,42.34116],[-71.19389,42.34116]]},{"id":25,"name":"Mall and Grocery Shuttle (Sunday)","tracker":"Grocery/Chestnut Hill Mall Shuttle - Sunday","color":"#FA8100","loop":false,"service":[{"days":[0],"from":"11:00","to":"16:05","every":60}],"stops":[{"name":"Robsham Theater","lonlat":[-71.169006,42.337958],"rideToNext":91,"dwell":10,"at":0},{"name":"Conte Forum","lonlat":[-71.167135,42.335986],"rideToNext":133,"dwell":10,"at":46},{"name":"McElroy – Beacon St.","lonlat":[-71.170819,42.333187],"rideToNext":288,"dwell":10,"at":130},{"name":"Chestnut Hill Mall (MBTA Stop)","lonlat":[-71.17775,42.321861],"rideToNext":155,"dwell":10,"at":325},{"name":"Chestnut Hill Square (Wegmans)","lonlat":[-71.17622,42.319547],"rideToNext":183,"dwell":10,"at":364},{"name":"The Street (Bus Shelter)","lonlat":[-71.166517,42.323108],"rideToNext":400,"dwell":10,"at":428},{"name":"College Road","lonlat":[-71.1716,42.335236],"rideToNext":44,"dwell":10,"at":651},{"name":"Main Gate Chestnut Hill","lonlat":[-71.170961,42.338074],"rideToNext":138,"dwell":10,"at":679}],"line":[[-71.16891,42.33794],[-71.16892,42.3379],[-71.16892,42.33785],[-71.16891,42.33778],[-71.16889,42.33773],[-71.16887,42.33767],[-71.16882,42.33758],[-71.16874,42.33751],[-71.16869,42.33746],[-71.16866,42.33744],[-71.16861,42.33739],[-71.16857,42.33736],[-71.16854,42.33733],[-71.16852,42.33731],[-71.16852,42.33729],[-71.16851,42.33728],[-71.1685,42.33726],[-71.16849,42.33724],[-71.16848,42.33721],[-71.16847,42.33717],[-71.16844,42.3371],[-71.1684,42.337],[-71.16837,42.33692],[-71.16831,42.33676],[-71.16828,42.33666],[-71.16824,42.33656],[-71.16816,42.33633],[-71.16811,42.33619],[-71.16809,42.33613],[-71.16808,42.3361],[-71.16807,42.33607],[-71.16805,42.33605],[-71.16803,42.33602],[-71.16799,42.33598],[-71.16797,42.33596],[-71.16788,42.33592],[-71.16786,42.33591],[-71.16783,42.33591],[-71.1678,42.3359],[-71.16777,42.3359],[-71.16773,42.3359],[-71.16769,42.3359],[-71.16765,42.33591],[-71.16759,42.33591],[-71.16758,42.33592],[-71.1675,42.33594],[-71.16718,42.33606],[-71.16718,42.33606],[-71.1671,42.33609],[-71.16701,42.33612],[-71.16693,42.33615],[-71.16683,42.33618],[-71.16676,42.3362],[-71.16665,42.33622],[-71.1665,42.33623],[-71.16635,42.33623],[-71.16626,42.33622],[-71.16622,42.33622],[-71.16615,42.33621],[-71.16611,42.3362],[-71.16606,42.33619],[-71.16595,42.33617],[-71.16585,42.33614],[-71.16577,42.33611],[-71.16575,42.3361],[-71.16571,42.33609],[-71.1656,42.33603],[-71.16553,42.33598],[-71.16543,42.33589],[-71.16524,42.33577],[-71.16507,42.33573],[-71.16481,42.33566],[-71.16456,42.33559],[-71.16444,42.33556],[-71.16434,42.33553],[-71.16431,42.33552],[-71.16407,42.33546],[-71.16363,42.33534],[-71.16349,42.33531],[-71.16344,42.3353],[-71.1633,42.33526],[-71.16323,42.33524],[-71.16317,42.33524],[-71.16311,42.33525],[-71.16305,42.33526],[-71.16296,42.33528],[-71.16296,42.33528],[-71.16287,42.33516],[-71.1628,42.33507],[-71.16272,42.33494],[-71.1626,42.33477],[-71.16258,42.33474],[-71.1625,42.33462],[-71.16245,42.33455],[-71.16242,42.33448],[-71.16239,42.33435],[-71.16239,42.33435],[-71.16242,42.33426],[-71.16245,42.33422],[-71.16249,42.33417],[-71.16255,42.3341],[-71.16261,42.33406],[-71.1627,42.33397],[-71.16291,42.33395],[-71.16303,42.33393],[-71.16319,42.33392],[-71.16347,42.33389],[-71.16363,42.33387],[-71.1644,42.33379],[-71.16447,42.33378],[-71.16468,42.33376],[-71.16471,42.33376],[-71.16474,42.33375],[-71.16475,42.33375],[-71.16479,42.33374],[-71.1652,42.3337],[-71.16546,42.33367],[-71.16603,42.3336],[-71.16623,42.33358],[-71.1668,42.33351],[-71.16761,42.33343],[-71.16768,42.33343],[-71.16777,42.33342],[-71.16803,42.33339],[-71.169,42.33328],[-71.16934,42.33324],[-71.16969,42.3332],[-71.16993,42.33318],[-71.17043,42.33312],[-71.17067,42.33309],[-71.1708,42.33308],[-71.1708,42.33308],[-71.17103,42.33305],[-71.17126,42.33303],[-71.17174,42.33298],[-71.17199,42.33295],[-71.17223,42.33292],[-71.17278,42.33287],[-71.17325,42.33281],[-71.17343,42.33279],[-71.17356,42.33277],[-71.17359,42.33277],[-71.17384,42.33273],[-71.17405,42.3327],[-71.17449,42.33266],[-71.17487,42.33261],[-71.17501,42.33259],[-71.1751,42.33257],[-71.17518,42.33256],[-71.1753,42.33253],[-71.17547,42.33248],[-71.1756,42.33243],[-71.17568,42.3324],[-71.17585,42.33232],[-71.17603,42.33225],[-71.17605,42.33224],[-71.17622,42.33218],[-71.17629,42.33215],[-71.17638,42.33213],[-71.17648,42.3321],[-71.17654,42.33208],[-71.17659,42.33208],[-71.17669,42.33206],[-71.17677,42.33205],[-71.17678,42.33205],[-71.17686,42.33204],[-71.17695,42.33204],[-71.17702,42.33204],[-71.17704,42.33204],[-71.17717,42.33204],[-71.17727,42.33205],[-71.1774,42.33207],[-71.1775,42.33208],[-71.17762,42.33211],[-71.17773,42.33213],[-71.17774,42.33214],[-71.17784,42.33217],[-71.17797,42.3322],[-71.17814,42.33225],[-71.17819,42.33226],[-71.17826,42.33229],[-71.17838,42.33232],[-71.17849,42.33235],[-71.17858,42.33237],[-71.17872,42.33239],[-71.17873,42.33239],[-71.17884,42.33241],[-71.17895,42.33241],[-71.17907,42.33242],[-71.17917,42.33241],[-71.1792,42.33241],[-71.17926,42.33241],[-71.17939,42.3324],[-71.17953,42.33238],[-71.17965,42.33236],[-71.17982,42.33234],[-71.17998,42.33231],[-71.18043,42.33225],[-71.18087,42.33218],[-71.18121,42.33213],[-71.18121,42.33213],[-71.18116,42.33207],[-71.1811,42.332],[-71.18104,42.33193],[-71.18101,42.33189],[-71.18091,42.33177],[-71.18079,42.33164],[-71.18063,42.33148],[-71.18055,42.3314],[-71.18033,42.33118],[-71.18019,42.33104],[-71.18005,42.3309],[-71.17991,42.33075],[-71.17983,42.33066],[-71.17977,42.3306],[-71.17962,42.33046],[-71.17952,42.33035],[-71.17934,42.33017],[-71.17922,42.33004],[-71.17894,42.32976],[-71.17892,42.32973],[-71.17862,42.32944],[-71.17843,42.32925],[-71.17815,42.32896],[-71.17812,42.32893],[-71.17781,42.32861],[-71.17773,42.32853],[-71.17762,42.32842],[-71.17753,42.32833],[-71.1774,42.32821],[-71.17736,42.32818],[-71.17728,42.32811],[-71.17719,42.32803],[-71.17705,42.32792],[-71.17704,42.32791],[-71.17695,42.32784],[-71.17681,42.32774],[-71.17666,42.32762],[-71.17652,42.32752],[-71.17641,42.32741],[-71.1763,42.32732],[-71.17622,42.32724],[-71.17619,42.32721],[-71.17613,42.32714],[-71.17604,42.32703],[-71.17597,42.32694],[-71.17591,42.32684],[-71.17584,42.32672],[-71.17578,42.3266],[-71.17573,42.32647],[-71.17569,42.32636],[-71.17566,42.32627],[-71.17564,42.32614],[-71.17562,42.326],[-71.17562,42.32599],[-71.1756,42.32591],[-71.1756,42.32578],[-71.17562,42.32567],[-71.17563,42.32561],[-71.17564,42.32555],[-71.17567,42.32541],[-71.17571,42.32528],[-71.17578,42.32511],[-71.17582,42.32504],[-71.17591,42.32485],[-71.17594,42.32479],[-71.17599,42.32473],[-71.17605,42.32465],[-71.17608,42.32462],[-71.17611,42.32458],[-71.17618,42.3245],[-71.17635,42.32429],[-71.17645,42.32417],[-71.17654,42.32407],[-71.17663,42.32396],[-71.17663,42.32396],[-71.17667,42.32394],[-71.1767,42.32389],[-71.17694,42.32393],[-71.17741,42.324],[-71.17765,42.32404],[-71.17789,42.32407],[-71.17811,42.3241],[-71.17823,42.32411],[-71.17825,42.3241],[-71.17827,42.3241],[-71.17828,42.3241],[-71.17829,42.32409],[-71.1783,42.32409],[-71.17832,42.32408],[-71.17833,42.32407],[-71.17835,42.32406],[-71.1784,42.32402],[-71.17845,42.32394],[-71.17845,42.32383],[-71.17848,42.32357],[-71.17848,42.32298],[-71.17847,42.32271],[-71.17847,42.32271],[-71.1782,42.32272],[-71.1782,42.32272],[-71.17819,42.32272],[-71.17819,42.3227],[-71.1782,42.32268],[-71.1782,42.32265],[-71.17818,42.32232],[-71.17818,42.32231],[-71.17818,42.3223],[-71.17817,42.3223],[-71.17816,42.32229],[-71.17815,42.32229],[-71.17814,42.32228],[-71.17812,42.32228],[-71.17795,42.32225],[-71.17795,42.32225],[-71.17796,42.32199],[-71.17796,42.32196],[-71.17795,42.32195],[-71.17795,42.32194],[-71.17794,42.32192],[-71.17793,42.32191],[-71.17792,42.3219],[-71.1779,42.3219],[-71.17788,42.32189],[-71.17787,42.32189],[-71.17775,42.32189],[-71.17775,42.32189],[-71.17759,42.32189],[-71.17759,42.32189],[-71.17757,42.3217],[-71.17757,42.32166],[-71.17758,42.32154],[-71.17758,42.32151],[-71.17758,42.32148],[-71.17759,42.32144],[-71.17761,42.32139],[-71.17763,42.32135],[-71.17765,42.32129],[-71.17767,42.32125],[-71.17771,42.32116],[-71.17772,42.32116],[-71.17776,42.32109],[-71.17779,42.32101],[-71.17782,42.32092],[-71.17782,42.32085],[-71.17781,42.3208],[-71.1778,42.32065],[-71.1778,42.32062],[-71.17778,42.32031],[-71.17777,42.32027],[-71.17776,42.32024],[-71.17773,42.32015],[-71.17768,42.32002],[-71.1776,42.31985],[-71.17755,42.31975],[-71.17755,42.31975],[-71.17751,42.3197],[-71.17748,42.31967],[-71.1774,42.31963],[-71.17713,42.31969],[-71.17713,42.31969],[-71.17558,42.32019],[-71.17536,42.32011],[-71.17513,42.31982],[-71.17617,42.31947],[-71.17617,42.31947],[-71.17641,42.31939],[-71.17659,42.31932],[-71.17667,42.3193],[-71.17686,42.31924],[-71.17686,42.31924],[-71.17688,42.31928],[-71.17703,42.31954],[-71.17712,42.31971],[-71.17712,42.31971],[-71.17645,42.31992],[-71.17638,42.31994],[-71.17611,42.32002],[-71.17564,42.32019],[-71.17561,42.3202],[-71.17549,42.32024],[-71.17534,42.3203],[-71.1753,42.32031],[-71.17512,42.32037],[-71.17457,42.32055],[-71.17437,42.32061],[-71.17431,42.32063],[-71.17409,42.32069],[-71.17351,42.32085],[-71.17292,42.32101],[-71.17263,42.32109],[-71.17239,42.32116],[-71.17217,42.32122],[-71.17216,42.32122],[-71.17161,42.32138],[-71.1714,42.32143],[-71.17096,42.32154],[-71.17078,42.32158],[-71.17054,42.32164],[-71.16997,42.32179],[-71.16936,42.32196],[-71.16891,42.32209],[-71.16855,42.32218],[-71.16841,42.32222],[-71.16828,42.32225],[-71.16799,42.32233],[-71.16755,42.32245],[-71.16721,42.32254],[-71.16678,42.32265],[-71.16633,42.32277],[-71.16605,42.32284],[-71.16592,42.32287],[-71.16567,42.32294],[-71.16535,42.32302],[-71.16515,42.32308],[-71.16515,42.32308],[-71.16505,42.32311],[-71.16511,42.32322],[-71.16516,42.32327],[-71.16518,42.32328],[-71.1652,42.32329],[-71.16522,42.3233],[-71.16526,42.32331],[-71.16535,42.32332],[-71.16545,42.32332],[-71.16559,42.3233],[-71.16603,42.32318],[-71.16636,42.3231],[-71.16649,42.32306],[-71.16649,42.32306],[-71.16652,42.32305],[-71.16654,42.32305],[-71.16655,42.32305],[-71.16664,42.323],[-71.16676,42.32295],[-71.16689,42.32292],[-71.16712,42.32286],[-71.16729,42.3228],[-71.16737,42.32278],[-71.16769,42.3227],[-71.1678,42.32268],[-71.16822,42.32258],[-71.16835,42.32255],[-71.16902,42.32237],[-71.1691,42.32235],[-71.16965,42.32222],[-71.16965,42.32222],[-71.16979,42.32203],[-71.16979,42.32203],[-71.17055,42.3218],[-71.17055,42.3218],[-71.17071,42.3218],[-71.17073,42.3218],[-71.17099,42.32178],[-71.17104,42.32178],[-71.17108,42.32178],[-71.1711,42.32177],[-71.17113,42.32177],[-71.17131,42.32174],[-71.17148,42.32171],[-71.17178,42.32165],[-71.17241,42.32153],[-71.17241,42.32153],[-71.17251,42.32178],[-71.17255,42.32185],[-71.17261,42.32193],[-71.17268,42.32201],[-71.17277,42.32211],[-71.17284,42.32218],[-71.1729,42.32222],[-71.17298,42.32227],[-71.17302,42.32229],[-71.17311,42.32233],[-71.17321,42.32236],[-71.17327,42.32238],[-71.17339,42.3224],[-71.17353,42.32242],[-71.1737,42.32242],[-71.17387,42.3224],[-71.17405,42.32236],[-71.17421,42.32232],[-71.1743,42.3223],[-71.17441,42.32228],[-71.17455,42.32226],[-71.17473,42.32224],[-71.17501,42.32224],[-71.17517,42.32226],[-71.17532,42.32228],[-71.17542,42.32231],[-71.17553,42.32234],[-71.17569,42.3224],[-71.17571,42.3224],[-71.17582,42.32245],[-71.17596,42.32253],[-71.17604,42.32258],[-71.17607,42.3226],[-71.17609,42.32261],[-71.17617,42.32267],[-71.17623,42.32272],[-71.17626,42.32275],[-71.17632,42.32282],[-71.17637,42.32287],[-71.17644,42.32296],[-71.17649,42.32305],[-71.17654,42.32317],[-71.17656,42.32325],[-71.17658,42.32333],[-71.1766,42.32347],[-71.17661,42.32359],[-71.17662,42.32376],[-71.17663,42.32388],[-71.17665,42.32395],[-71.17662,42.32404],[-71.17658,42.32411],[-71.17654,42.32418],[-71.1765,42.32424],[-71.17645,42.32431],[-71.1764,42.32437],[-71.17631,42.32448],[-71.17595,42.32486],[-71.17581,42.32512],[-71.17576,42.32525],[-71.17571,42.32539],[-71.17568,42.32551],[-71.17566,42.32564],[-71.17564,42.32581],[-71.17564,42.32602],[-71.17567,42.32622],[-71.17573,42.32644],[-71.17581,42.32665],[-71.17588,42.32677],[-71.17597,42.32693],[-71.17607,42.32706],[-71.1762,42.32722],[-71.17633,42.32735],[-71.17645,42.32746],[-71.17649,42.32748],[-71.17653,42.32752],[-71.17675,42.32769],[-71.17701,42.3279],[-71.17705,42.32792],[-71.17707,42.32794],[-71.17724,42.32808],[-71.17744,42.32825],[-71.17762,42.32842],[-71.17783,42.32864],[-71.17804,42.32885],[-71.17811,42.32892],[-71.17815,42.32895],[-71.17843,42.32924],[-71.17894,42.32976],[-71.1792,42.33005],[-71.17934,42.33019],[-71.17964,42.33049],[-71.17973,42.33058],[-71.17977,42.33063],[-71.18006,42.33092],[-71.1802,42.33106],[-71.18034,42.33121],[-71.18072,42.33159],[-71.18074,42.33162],[-71.18078,42.33165],[-71.18082,42.33169],[-71.18092,42.33179],[-71.18101,42.33189],[-71.18101,42.33189],[-71.18095,42.332],[-71.18091,42.33206],[-71.18087,42.33213],[-71.18084,42.33219],[-71.18048,42.33224],[-71.17994,42.33232],[-71.17976,42.33235],[-71.17952,42.33239],[-71.17919,42.33242],[-71.17886,42.33242],[-71.17869,42.3324],[-71.17856,42.33238],[-71.17847,42.33235],[-71.17836,42.33232],[-71.17826,42.33229],[-71.17819,42.33227],[-71.17814,42.33225],[-71.17797,42.3322],[-71.17784,42.33217],[-71.17774,42.33214],[-71.17769,42.33213],[-71.17761,42.33211],[-71.1775,42.33209],[-71.17739,42.33208],[-71.17727,42.33206],[-71.17717,42.33205],[-71.17704,42.33205],[-71.17702,42.33205],[-71.17699,42.33205],[-71.17695,42.33205],[-71.17687,42.33205],[-71.17678,42.33206],[-71.17675,42.33207],[-71.17669,42.33208],[-71.1766,42.33209],[-71.17655,42.3321],[-71.17649,42.33211],[-71.17636,42.33215],[-71.17626,42.33218],[-71.17618,42.3322],[-71.1761,42.33223],[-71.17604,42.33225],[-71.17597,42.33229],[-71.17587,42.33232],[-71.17569,42.3324],[-71.1756,42.33243],[-71.17547,42.33248],[-71.1753,42.33253],[-71.17518,42.33257],[-71.17514,42.33257],[-71.17511,42.33258],[-71.1751,42.33258],[-71.17502,42.3326],[-71.1749,42.33261],[-71.17449,42.33266],[-71.17405,42.33271],[-71.17384,42.33273],[-71.17359,42.33276],[-71.17356,42.33276],[-71.17336,42.33279],[-71.17325,42.33281],[-71.17304,42.33283],[-71.17279,42.33286],[-71.17279,42.33286],[-71.17301,42.33305],[-71.17303,42.33308],[-71.17303,42.33308],[-71.17295,42.33318],[-71.17286,42.33329],[-71.17281,42.33335],[-71.17268,42.3335],[-71.17258,42.33362],[-71.1725,42.3337],[-71.17244,42.33377],[-71.17218,42.33407],[-71.17205,42.33421],[-71.17182,42.33447],[-71.17178,42.33451],[-71.17175,42.33456],[-71.17174,42.33459],[-71.17173,42.33462],[-71.17172,42.33467],[-71.17169,42.3348],[-71.17167,42.33499],[-71.17164,42.33514],[-71.17162,42.33524],[-71.17162,42.33524],[-71.1716,42.33542],[-71.17156,42.33566],[-71.17155,42.33572],[-71.17155,42.33575],[-71.17155,42.33579],[-71.17157,42.33591],[-71.17158,42.33596],[-71.17158,42.33599],[-71.1716,42.33607],[-71.17165,42.33625],[-71.17166,42.3363],[-71.17173,42.33646],[-71.17186,42.33669],[-71.17195,42.33683],[-71.17207,42.33701],[-71.17221,42.33718],[-71.17221,42.33718],[-71.17212,42.33722],[-71.17187,42.33737],[-71.17148,42.33769],[-71.17144,42.33773],[-71.17139,42.33778],[-71.17134,42.33782],[-71.17131,42.33785],[-71.17117,42.33799],[-71.17111,42.33804],[-71.17105,42.3381],[-71.17105,42.3381],[-71.1708,42.33835],[-71.17075,42.33839],[-71.17068,42.33845],[-71.17061,42.33851],[-71.17053,42.33857],[-71.17044,42.33863],[-71.17036,42.33869],[-71.17035,42.3387],[-71.17028,42.33875],[-71.1702,42.3388],[-71.17011,42.33885],[-71.17,42.33891],[-71.16977,42.33903],[-71.16966,42.33908],[-71.1696,42.3391],[-71.16952,42.33914],[-71.16937,42.3392],[-71.16917,42.33927],[-71.16887,42.33937],[-71.16855,42.33947],[-71.16839,42.33952],[-71.16835,42.33954],[-71.16832,42.33955],[-71.1683,42.33955],[-71.16822,42.33955],[-71.16819,42.33955],[-71.16817,42.33956],[-71.16814,42.33957],[-71.16813,42.33957],[-71.16806,42.33959],[-71.16796,42.33962],[-71.16784,42.33964],[-71.16757,42.33969],[-71.16734,42.33973],[-71.16701,42.33979],[-71.16677,42.33984],[-71.16677,42.33984],[-71.16668,42.3397],[-71.16654,42.33947],[-71.16647,42.33936],[-71.16632,42.33915],[-71.16632,42.33915],[-71.16666,42.33902],[-71.16685,42.33895],[-71.16685,42.33895],[-71.16719,42.33882],[-71.16721,42.33881],[-71.16728,42.33878],[-71.16792,42.33854],[-71.16809,42.33848],[-71.16826,42.33841],[-71.16849,42.33834],[-71.1685,42.33834],[-71.16857,42.33833],[-71.16866,42.33829],[-71.1687,42.33825],[-71.16873,42.33822],[-71.16879,42.33817],[-71.16882,42.33812],[-71.16885,42.33808],[-71.16888,42.33803],[-71.1689,42.33798],[-71.16891,42.33794]]},{"id":45,"name":"Brookline Campus","tracker":"BC Brookline Academic Route","color":"#0b9fd1","loop":true,"service":[{"days":[0,1,2,3,4],"from":"07:00","to":"22:00","every":20},{"days":[0,1,2,3,4],"from":"22:00","to":"26:00","every":40},{"days":[5,6],"from":"07:00","to":"26:00","every":20}],"stops":[{"name":"Conte Forum","lonlat":[-71.167135,42.335986],"rideToNext":267,"dwell":10,"at":0},{"name":"Reservoir T Stop","lonlat":[-71.148995,42.334935],"rideToNext":445,"dwell":10,"at":244},{"name":"Ashby Stop","lonlat":[-71.155028,42.320988],"rideToNext":83,"dwell":10,"at":549},{"name":"South Dorms Stop","lonlat":[-71.157272,42.318057],"rideToNext":626,"dwell":10,"at":588},{"name":"Reservoir T Stop","lonlat":[-71.148995,42.334935],"rideToNext":412,"dwell":10,"at":1025}],"line":[[-71.16718,42.33605],[-71.1671,42.33609],[-71.16708,42.33609],[-71.16701,42.33612],[-71.16692,42.33615],[-71.16683,42.33618],[-71.16676,42.3362],[-71.16665,42.33622],[-71.1665,42.33623],[-71.16634,42.33622],[-71.16632,42.33622],[-71.16626,42.33622],[-71.16622,42.33621],[-71.16615,42.3362],[-71.16611,42.3362],[-71.16606,42.33619],[-71.16595,42.33617],[-71.16585,42.33614],[-71.16577,42.33611],[-71.16575,42.3361],[-71.16571,42.33609],[-71.1656,42.33603],[-71.16553,42.33597],[-71.16543,42.33589],[-71.16524,42.33577],[-71.16518,42.33575],[-71.16507,42.33572],[-71.16481,42.33565],[-71.16456,42.33559],[-71.16444,42.33555],[-71.16434,42.33552],[-71.16431,42.33551],[-71.16409,42.33546],[-71.16405,42.33545],[-71.16396,42.33542],[-71.16384,42.3354],[-71.16363,42.33534],[-71.16349,42.33531],[-71.16346,42.3353],[-71.16344,42.3353],[-71.16331,42.33526],[-71.1633,42.33526],[-71.16327,42.33525],[-71.16323,42.33525],[-71.16317,42.33524],[-71.16311,42.33525],[-71.16309,42.33525],[-71.16305,42.33526],[-71.16295,42.33527],[-71.16295,42.33527],[-71.16289,42.33519],[-71.16288,42.33517],[-71.16281,42.33506],[-71.16278,42.33503],[-71.16277,42.33502],[-71.16272,42.33494],[-71.1626,42.33477],[-71.16258,42.33474],[-71.1625,42.33462],[-71.16246,42.33455],[-71.16241,42.33448],[-71.16236,42.33439],[-71.16236,42.33436],[-71.16231,42.33416],[-71.16229,42.33405],[-71.16228,42.33402],[-71.16227,42.33395],[-71.16227,42.33395],[-71.16193,42.33391],[-71.16181,42.33389],[-71.16173,42.33388],[-71.16161,42.33385],[-71.16153,42.33384],[-71.16141,42.3338],[-71.16128,42.33377],[-71.16116,42.33373],[-71.16104,42.33368],[-71.16094,42.33364],[-71.16091,42.33363],[-71.16081,42.33358],[-71.16074,42.33355],[-71.16065,42.3335],[-71.16051,42.33343],[-71.16038,42.33337],[-71.16024,42.3333],[-71.16002,42.3332],[-71.15998,42.33317],[-71.15987,42.33311],[-71.15974,42.33305],[-71.15962,42.33297],[-71.15956,42.33293],[-71.1595,42.33289],[-71.15941,42.33283],[-71.15939,42.33281],[-71.15929,42.33273],[-71.15918,42.33263],[-71.15906,42.33251],[-71.15904,42.33249],[-71.15886,42.33231],[-71.15874,42.3322],[-71.15865,42.33211],[-71.1586,42.33206],[-71.15854,42.33201],[-71.1585,42.33198],[-71.15848,42.33196],[-71.15844,42.33193],[-71.15837,42.33188],[-71.15825,42.33182],[-71.1582,42.33179],[-71.15811,42.33175],[-71.158,42.3317],[-71.15791,42.33168],[-71.15783,42.33166],[-71.15774,42.33164],[-71.15766,42.33162],[-71.15757,42.33161],[-71.15745,42.3316],[-71.15737,42.3316],[-71.15731,42.33161],[-71.15726,42.33161],[-71.15719,42.33161],[-71.15716,42.33162],[-71.15712,42.33162],[-71.15707,42.33163],[-71.15702,42.33163],[-71.15679,42.33168],[-71.15678,42.33168],[-71.15668,42.33171],[-71.15662,42.33173],[-71.15655,42.33175],[-71.15646,42.33178],[-71.15639,42.3318],[-71.15636,42.33182],[-71.15635,42.33182],[-71.15625,42.33186],[-71.15617,42.3319],[-71.15607,42.33195],[-71.15591,42.33203],[-71.15588,42.33205],[-71.15576,42.3321],[-71.15567,42.33214],[-71.1556,42.33218],[-71.15539,42.33229],[-71.15535,42.33231],[-71.1553,42.33234],[-71.15521,42.3324],[-71.15513,42.33245],[-71.15504,42.33252],[-71.15492,42.33261],[-71.15484,42.33268],[-71.1548,42.33272],[-71.15479,42.33273],[-71.15475,42.33277],[-71.15471,42.33282],[-71.15465,42.33288],[-71.15461,42.33294],[-71.15458,42.33297],[-71.15452,42.33306],[-71.15448,42.33312],[-71.15442,42.33322],[-71.1544,42.33326],[-71.15438,42.33329],[-71.15436,42.33333],[-71.15432,42.33341],[-71.15427,42.33353],[-71.15426,42.33354],[-71.15423,42.33363],[-71.1542,42.33369],[-71.15414,42.33381],[-71.15411,42.33388],[-71.15404,42.33404],[-71.154,42.33414],[-71.15397,42.3342],[-71.15394,42.33427],[-71.15385,42.33448],[-71.15383,42.33452],[-71.1537,42.33482],[-71.15363,42.33499],[-71.15358,42.33509],[-71.15357,42.33512],[-71.15355,42.33515],[-71.15352,42.33518],[-71.15349,42.33524],[-71.15347,42.33526],[-71.1534,42.33535],[-71.15336,42.33539],[-71.15333,42.33543],[-71.15329,42.33546],[-71.15326,42.33549],[-71.15324,42.3355],[-71.15317,42.33556],[-71.1531,42.33561],[-71.153,42.33567],[-71.15294,42.3357],[-71.15277,42.33578],[-71.15266,42.33582],[-71.15263,42.33583],[-71.15258,42.33585],[-71.15253,42.33586],[-71.15246,42.33588],[-71.1524,42.33589],[-71.15235,42.3359],[-71.15233,42.33591],[-71.15228,42.33592],[-71.15223,42.33593],[-71.15212,42.33594],[-71.15205,42.33594],[-71.15201,42.33594],[-71.15195,42.33595],[-71.15182,42.33596],[-71.15165,42.33597],[-71.15157,42.33598],[-71.15151,42.33598],[-71.15145,42.33599],[-71.15137,42.33594],[-71.15129,42.33593],[-71.15117,42.33593],[-71.15108,42.33592],[-71.1508,42.33591],[-71.1508,42.33591],[-71.15058,42.33571],[-71.1505,42.33563],[-71.15042,42.33556],[-71.15038,42.33552],[-71.15028,42.33544],[-71.15019,42.33537],[-71.15013,42.33534],[-71.15011,42.33532],[-71.15004,42.33528],[-71.15003,42.33528],[-71.15002,42.33527],[-71.15,42.33526],[-71.14996,42.33523],[-71.14986,42.33518],[-71.14982,42.33516],[-71.1497,42.3351],[-71.14963,42.33506],[-71.1496,42.33505],[-71.14949,42.33499],[-71.14943,42.33495],[-71.14941,42.33494],[-71.14938,42.33492],[-71.14932,42.33489],[-71.14925,42.33485],[-71.14911,42.33479],[-71.14911,42.33479],[-71.14891,42.3347],[-71.14889,42.33469],[-71.14883,42.33467],[-71.14869,42.3346],[-71.14853,42.33452],[-71.14819,42.33436],[-71.14817,42.33435],[-71.14812,42.33433],[-71.14805,42.33429],[-71.14795,42.33423],[-71.14787,42.33416],[-71.14786,42.33415],[-71.1478,42.33409],[-71.14774,42.33402],[-71.1477,42.33395],[-71.14766,42.33389],[-71.14763,42.33383],[-71.1476,42.33374],[-71.14758,42.3337],[-71.14755,42.33362],[-71.14745,42.3334],[-71.14743,42.33336],[-71.14738,42.33326],[-71.14735,42.33321],[-71.14728,42.3331],[-71.14716,42.33294],[-71.14714,42.33292],[-71.14702,42.33275],[-71.14698,42.33269],[-71.14696,42.33266],[-71.14667,42.33227],[-71.14658,42.33213],[-71.14641,42.3319],[-71.14639,42.33187],[-71.14635,42.33181],[-71.14634,42.3318],[-71.14629,42.3317],[-71.14626,42.33162],[-71.14624,42.33157],[-71.14624,42.33154],[-71.14622,42.33142],[-71.1462,42.33128],[-71.14619,42.33125],[-71.14617,42.33107],[-71.14612,42.33071],[-71.14611,42.3307],[-71.14611,42.33066],[-71.1461,42.33059],[-71.14609,42.33053],[-71.14608,42.33043],[-71.14606,42.33032],[-71.14604,42.33024],[-71.14603,42.3302],[-71.14602,42.33018],[-71.14602,42.33017],[-71.146,42.33012],[-71.14598,42.33005],[-71.14596,42.32999],[-71.14593,42.32992],[-71.14577,42.32957],[-71.14574,42.3295],[-71.14565,42.32934],[-71.14555,42.32918],[-71.14554,42.32916],[-71.14553,42.32914],[-71.14552,42.32911],[-71.14547,42.32904],[-71.14539,42.32893],[-71.14539,42.32892],[-71.14533,42.32885],[-71.14526,42.32876],[-71.1452,42.3287],[-71.14513,42.32863],[-71.14506,42.32856],[-71.14503,42.32853],[-71.14498,42.32848],[-71.14497,42.32847],[-71.14495,42.32846],[-71.1449,42.32841],[-71.14475,42.32826],[-71.14473,42.32825],[-71.1447,42.32822],[-71.14432,42.32786],[-71.1443,42.32784],[-71.14415,42.32771],[-71.1438,42.3274],[-71.14365,42.32727],[-71.14362,42.32724],[-71.14342,42.32708],[-71.14323,42.32694],[-71.14314,42.32688],[-71.14295,42.32676],[-71.14289,42.32671],[-71.14289,42.32671],[-71.14291,42.32666],[-71.14293,42.32661],[-71.14296,42.32658],[-71.14299,42.32654],[-71.14302,42.32652],[-71.14309,42.32646],[-71.14351,42.32646],[-71.14404,42.32646],[-71.14448,42.32646],[-71.14462,42.32646],[-71.14497,42.32647],[-71.14506,42.32647],[-71.14531,42.32648],[-71.14542,42.32648],[-71.14572,42.32648],[-71.14595,42.32648],[-71.14609,42.32649],[-71.14631,42.32649],[-71.14648,42.3265],[-71.14656,42.3265],[-71.14675,42.32651],[-71.14729,42.32655],[-71.14738,42.32656],[-71.14746,42.32657],[-71.14755,42.32657],[-71.14762,42.32658],[-71.14786,42.32659],[-71.14806,42.3266],[-71.14844,42.32662],[-71.14875,42.32664],[-71.14921,42.32666],[-71.14939,42.32668],[-71.1494,42.32668],[-71.14963,42.3267],[-71.14964,42.3267],[-71.14978,42.32671],[-71.15005,42.32674],[-71.15019,42.32675],[-71.15036,42.32676],[-71.15051,42.32677],[-71.15066,42.32678],[-71.15084,42.32679],[-71.15141,42.32681],[-71.15155,42.32681],[-71.15167,42.32681],[-71.1518,42.3268],[-71.15194,42.32679],[-71.15206,42.32678],[-71.15223,42.32676],[-71.15228,42.32675],[-71.15234,42.32674],[-71.15242,42.32672],[-71.15253,42.3267],[-71.15273,42.32665],[-71.15285,42.32662],[-71.15295,42.32659],[-71.15303,42.32657],[-71.15314,42.32654],[-71.15328,42.3265],[-71.15342,42.32646],[-71.15354,42.32642],[-71.15364,42.32639],[-71.15377,42.32634],[-71.15393,42.32629],[-71.15406,42.32624],[-71.15419,42.3262],[-71.15429,42.32616],[-71.15438,42.32612],[-71.15447,42.32609],[-71.1546,42.32604],[-71.1547,42.32599],[-71.15482,42.32595],[-71.15493,42.3259],[-71.15502,42.32586],[-71.15512,42.32582],[-71.15528,42.32575],[-71.1554,42.3257],[-71.15552,42.32566],[-71.15559,42.32563],[-71.15572,42.32558],[-71.15584,42.32554],[-71.15593,42.32551],[-71.15659,42.32534],[-71.1567,42.32531],[-71.15671,42.32531],[-71.15693,42.32525],[-71.15714,42.32519],[-71.15717,42.32519],[-71.15722,42.32517],[-71.1574,42.32513],[-71.15756,42.32509],[-71.1576,42.32507],[-71.15765,42.32506],[-71.15789,42.325],[-71.15801,42.32497],[-71.15803,42.32496],[-71.15806,42.32495],[-71.15809,42.32495],[-71.15833,42.32489],[-71.15864,42.32482],[-71.15898,42.32474],[-71.15932,42.32466],[-71.15941,42.32464],[-71.15947,42.32463],[-71.15979,42.32456],[-71.15987,42.32455],[-71.16033,42.32445],[-71.16062,42.32438],[-71.16089,42.32432],[-71.16117,42.32425],[-71.16132,42.32421],[-71.1616,42.32414],[-71.16168,42.32411],[-71.16223,42.32396],[-71.16247,42.3239],[-71.16258,42.32388],[-71.16296,42.32378],[-71.16324,42.32371],[-71.16345,42.32365],[-71.16375,42.32357],[-71.16401,42.32351],[-71.16401,42.32351],[-71.16392,42.3234],[-71.1637,42.3232],[-71.16358,42.32308],[-71.16327,42.32279],[-71.16327,42.32279],[-71.16293,42.32298],[-71.16276,42.32307],[-71.1626,42.32315],[-71.16245,42.32322],[-71.16232,42.32327],[-71.16227,42.32329],[-71.16215,42.32334],[-71.16177,42.32348],[-71.16171,42.32351],[-71.16143,42.32361],[-71.16136,42.32364],[-71.16127,42.32367],[-71.16113,42.32371],[-71.16103,42.32373],[-71.16092,42.32376],[-71.16089,42.32376],[-71.16083,42.32376],[-71.16074,42.32375],[-71.16068,42.32375],[-71.16061,42.32374],[-71.16056,42.32372],[-71.16047,42.32369],[-71.1604,42.32366],[-71.16033,42.32362],[-71.16022,42.32356],[-71.16014,42.3235],[-71.16002,42.32343],[-71.15996,42.32339],[-71.15985,42.32332],[-71.15971,42.32324],[-71.15946,42.32311],[-71.15936,42.32305],[-71.15928,42.32301],[-71.15915,42.32294],[-71.15904,42.32286],[-71.15895,42.32278],[-71.15887,42.32271],[-71.15877,42.32263],[-71.15874,42.3226],[-71.15871,42.32258],[-71.15867,42.32256],[-71.1586,42.32254],[-71.15851,42.32252],[-71.15839,42.32249],[-71.15825,42.32248],[-71.15821,42.32247],[-71.15814,42.32246],[-71.15812,42.32246],[-71.15797,42.32244],[-71.15777,42.32242],[-71.15738,42.32239],[-71.15689,42.32234],[-71.15653,42.3223],[-71.1561,42.32226],[-71.1561,42.32226],[-71.1561,42.32218],[-71.15611,42.32214],[-71.1561,42.32207],[-71.15609,42.322],[-71.15608,42.32198],[-71.15607,42.32196],[-71.15605,42.32192],[-71.15602,42.32188],[-71.15598,42.32185],[-71.15593,42.32181],[-71.15586,42.32178],[-71.15574,42.32173],[-71.15553,42.32165],[-71.15546,42.32162],[-71.15541,42.32159],[-71.15537,42.32156],[-71.15535,42.32154],[-71.15534,42.32153],[-71.15532,42.32151],[-71.15528,42.32147],[-71.15524,42.32141],[-71.15523,42.3214],[-71.15523,42.32138],[-71.15522,42.32138],[-71.1552,42.32132],[-71.15508,42.32116],[-71.15506,42.32105],[-71.15502,42.32099],[-71.15502,42.32099],[-71.15493,42.32088],[-71.15488,42.3208],[-71.15481,42.32069],[-71.15477,42.32063],[-71.15466,42.32047],[-71.15445,42.32014],[-71.15445,42.32014],[-71.15455,42.32004],[-71.15473,42.31988],[-71.15479,42.3198],[-71.15483,42.31972],[-71.15484,42.31969],[-71.15489,42.31958],[-71.15502,42.3193],[-71.15508,42.31918],[-71.15512,42.31909],[-71.15524,42.31891],[-71.15525,42.31889],[-71.15528,42.31885],[-71.15537,42.31875],[-71.15551,42.31861],[-71.15553,42.31859],[-71.15556,42.31856],[-71.15569,42.31841],[-71.15586,42.31828],[-71.15595,42.31822],[-71.15605,42.31816],[-71.15617,42.31809],[-71.15625,42.31805],[-71.15639,42.318],[-71.1565,42.31799],[-71.15661,42.31798],[-71.1567,42.31797],[-71.1567,42.31798],[-71.15684,42.31798],[-71.15709,42.31799],[-71.15713,42.31799],[-71.15728,42.318],[-71.15728,42.318],[-71.15732,42.318],[-71.1574,42.31801],[-71.15746,42.31801],[-71.15751,42.318],[-71.15752,42.318],[-71.15758,42.31799],[-71.1576,42.31798],[-71.15763,42.31797],[-71.1577,42.31796],[-71.15783,42.31792],[-71.158,42.31789],[-71.15804,42.31788],[-71.15805,42.31788],[-71.15808,42.31788],[-71.1581,42.31788],[-71.15815,42.31786],[-71.15824,42.31784],[-71.15834,42.31781],[-71.15841,42.31779],[-71.15841,42.31779],[-71.15851,42.3178],[-71.15861,42.31782],[-71.15864,42.31782],[-71.15873,42.31783],[-71.15882,42.31783],[-71.15886,42.31783],[-71.15887,42.31783],[-71.15888,42.31783],[-71.15892,42.31784],[-71.159,42.31787],[-71.15902,42.31789],[-71.15904,42.31791],[-71.15912,42.31801],[-71.15918,42.31813],[-71.15921,42.31822],[-71.15923,42.31827],[-71.15927,42.31839],[-71.15929,42.31844],[-71.15937,42.3186],[-71.15937,42.31861],[-71.15939,42.31867],[-71.15941,42.31876],[-71.15941,42.31882],[-71.15941,42.31884],[-71.15941,42.31884],[-71.15937,42.31896],[-71.15935,42.31901],[-71.1593,42.3191],[-71.15926,42.31918],[-71.15926,42.31919],[-71.15925,42.31921],[-71.15922,42.31925],[-71.15918,42.3193],[-71.15911,42.31935],[-71.15902,42.31939],[-71.15893,42.31943],[-71.15888,42.31946],[-71.15885,42.31949],[-71.15883,42.31953],[-71.15882,42.31954],[-71.15881,42.31957],[-71.1588,42.31961],[-71.15878,42.3197],[-71.15875,42.31977],[-71.15869,42.31986],[-71.15869,42.31986],[-71.15845,42.31984],[-71.15825,42.3198],[-71.15815,42.31978],[-71.15811,42.31977],[-71.15798,42.31978],[-71.15788,42.31979],[-71.15782,42.3198],[-71.15776,42.31982],[-71.1575,42.31993],[-71.15727,42.31992],[-71.15725,42.31992],[-71.15721,42.31992],[-71.15693,42.31989],[-71.15681,42.31987],[-71.15674,42.31987],[-71.15666,42.31988],[-71.1566,42.31991],[-71.15655,42.31994],[-71.15653,42.31996],[-71.15649,42.31999],[-71.1564,42.32008],[-71.15637,42.3201],[-71.15632,42.32015],[-71.15617,42.32028],[-71.15614,42.32031],[-71.15613,42.32033],[-71.15613,42.32034],[-71.15613,42.32034],[-71.15611,42.32034],[-71.15609,42.32034],[-71.15606,42.32034],[-71.15602,42.32034],[-71.15598,42.32034],[-71.15594,42.32034],[-71.1559,42.32035],[-71.15586,42.32037],[-71.15583,42.32038],[-71.1558,42.32039],[-71.15577,42.32041],[-71.15573,42.32044],[-71.15571,42.32046],[-71.15569,42.32048],[-71.15567,42.3205],[-71.15565,42.32052],[-71.15562,42.32056],[-71.15559,42.3206],[-71.15555,42.32064],[-71.15552,42.32067],[-71.15549,42.32069],[-71.15545,42.32072],[-71.1554,42.32075],[-71.15534,42.32077],[-71.15529,42.3208],[-71.15523,42.32082],[-71.15522,42.32083],[-71.1552,42.32084],[-71.15519,42.32085],[-71.15518,42.32086],[-71.15517,42.32087],[-71.15517,42.32089],[-71.15516,42.32096],[-71.15517,42.32099],[-71.15517,42.32099],[-71.15506,42.32105],[-71.15506,42.32105],[-71.15508,42.32116],[-71.1552,42.32132],[-71.15522,42.32138],[-71.15523,42.32138],[-71.15523,42.3214],[-71.15524,42.32141],[-71.15528,42.32147],[-71.15532,42.32151],[-71.15534,42.32153],[-71.15535,42.32154],[-71.15537,42.32156],[-71.15541,42.32159],[-71.15546,42.32162],[-71.15553,42.32165],[-71.15574,42.32173],[-71.15586,42.32178],[-71.15593,42.32181],[-71.15598,42.32185],[-71.15602,42.32188],[-71.15605,42.32192],[-71.15607,42.32196],[-71.15608,42.32198],[-71.15609,42.322],[-71.1561,42.32207],[-71.15611,42.32214],[-71.1561,42.32218],[-71.1561,42.32226],[-71.1561,42.32226],[-71.15653,42.3223],[-71.15689,42.32234],[-71.15738,42.32239],[-71.15777,42.32242],[-71.15797,42.32244],[-71.15812,42.32246],[-71.15814,42.32246],[-71.15821,42.32247],[-71.15825,42.32248],[-71.15839,42.32249],[-71.15851,42.32252],[-71.1586,42.32254],[-71.15867,42.32256],[-71.15871,42.32258],[-71.15874,42.3226],[-71.15877,42.32263],[-71.15887,42.32271],[-71.15895,42.32278],[-71.15904,42.32286],[-71.15915,42.32294],[-71.15928,42.32301],[-71.15936,42.32305],[-71.15946,42.32311],[-71.15971,42.32324],[-71.15985,42.32332],[-71.15996,42.32339],[-71.16002,42.32343],[-71.16014,42.3235],[-71.16022,42.32356],[-71.16033,42.32362],[-71.1604,42.32366],[-71.16047,42.32369],[-71.16056,42.32372],[-71.16061,42.32374],[-71.16068,42.32375],[-71.16074,42.32375],[-71.16083,42.32376],[-71.16089,42.32376],[-71.16092,42.32376],[-71.16103,42.32373],[-71.16113,42.32371],[-71.16127,42.32367],[-71.16136,42.32364],[-71.16143,42.32361],[-71.16171,42.32351],[-71.16177,42.32348],[-71.16215,42.32334],[-71.16227,42.32329],[-71.16232,42.32327],[-71.16245,42.32322],[-71.1626,42.32315],[-71.16276,42.32307],[-71.16293,42.32298],[-71.16327,42.32279],[-71.16327,42.32279],[-71.16358,42.32308],[-71.1637,42.3232],[-71.16392,42.3234],[-71.16392,42.3234],[-71.16301,42.32364],[-71.16261,42.32374],[-71.16248,42.32377],[-71.16209,42.32387],[-71.16193,42.32391],[-71.16161,42.324],[-71.16141,42.32405],[-71.16125,42.32409],[-71.16103,42.32415],[-71.16099,42.32416],[-71.16089,42.32418],[-71.16083,42.3242],[-71.16057,42.32426],[-71.16028,42.32432],[-71.15986,42.32441],[-71.15926,42.32454],[-71.15904,42.32459],[-71.15844,42.32472],[-71.15839,42.32473],[-71.15798,42.32483],[-71.15773,42.32489],[-71.15757,42.32494],[-71.15748,42.32496],[-71.15732,42.325],[-71.15726,42.32502],[-71.15679,42.32514],[-71.15666,42.32517],[-71.15626,42.32528],[-71.1562,42.32529],[-71.15588,42.32539],[-71.15565,42.32547],[-71.15553,42.32551],[-71.15538,42.32557],[-71.15532,42.3256],[-71.15524,42.32564],[-71.15516,42.32568],[-71.15509,42.32571],[-71.15497,42.32577],[-71.15487,42.32582],[-71.15474,42.32588],[-71.15464,42.32592],[-71.15458,42.32594],[-71.15451,42.32597],[-71.15445,42.326],[-71.15435,42.32603],[-71.15424,42.32608],[-71.15412,42.32612],[-71.15398,42.32617],[-71.15385,42.32622],[-71.1537,42.32627],[-71.15357,42.32631],[-71.15345,42.32635],[-71.15332,42.32639],[-71.15318,42.32643],[-71.15304,42.32647],[-71.1529,42.32651],[-71.15278,42.32654],[-71.15264,42.32658],[-71.15253,42.32661],[-71.15245,42.32663],[-71.15239,42.32664],[-71.15234,42.32665],[-71.15227,42.32666],[-71.15222,42.32667],[-71.15217,42.32668],[-71.15212,42.32669],[-71.15208,42.32669],[-71.15206,42.3267],[-71.15199,42.3267],[-71.15188,42.32672],[-71.15176,42.32672],[-71.15167,42.32672],[-71.15159,42.32672],[-71.1515,42.32672],[-71.1514,42.32672],[-71.15127,42.32672],[-71.15114,42.32672],[-71.15102,42.32671],[-71.15087,42.32671],[-71.15072,42.3267],[-71.15057,42.32669],[-71.15047,42.32668],[-71.15038,42.32668],[-71.15027,42.32667],[-71.15014,42.32666],[-71.14989,42.32663],[-71.14953,42.32659],[-71.14905,42.32655],[-71.14891,42.32654],[-71.14878,42.32653],[-71.14865,42.32652],[-71.14856,42.32652],[-71.14854,42.32651],[-71.1485,42.32651],[-71.14846,42.32651],[-71.14843,42.32651],[-71.14836,42.32651],[-71.14806,42.32649],[-71.14786,42.32648],[-71.1477,42.32647],[-71.14763,42.32647],[-71.14729,42.32645],[-71.14708,42.32644],[-71.14661,42.32641],[-71.14636,42.32639],[-71.14612,42.32639],[-71.14585,42.32638],[-71.14574,42.32638],[-71.14532,42.32637],[-71.14518,42.32636],[-71.14508,42.32636],[-71.14459,42.32635],[-71.14436,42.32635],[-71.14426,42.32634],[-71.14399,42.32634],[-71.1435,42.32633],[-71.14306,42.32633],[-71.14261,42.32634],[-71.14261,42.32634],[-71.14253,42.32649],[-71.14266,42.32657],[-71.1427,42.32659],[-71.14273,42.32661],[-71.14276,42.32663],[-71.14289,42.32671],[-71.14295,42.32676],[-71.14314,42.32688],[-71.14323,42.32694],[-71.14342,42.32708],[-71.14362,42.32724],[-71.14365,42.32727],[-71.1438,42.3274],[-71.14415,42.32771],[-71.1443,42.32784],[-71.14432,42.32786],[-71.1447,42.32822],[-71.14473,42.32825],[-71.14475,42.32826],[-71.1449,42.32841],[-71.14495,42.32846],[-71.14497,42.32847],[-71.14498,42.32848],[-71.14503,42.32853],[-71.14506,42.32856],[-71.14513,42.32863],[-71.1452,42.3287],[-71.14526,42.32876],[-71.14533,42.32885],[-71.14539,42.32892],[-71.14539,42.32893],[-71.14547,42.32904],[-71.14552,42.32911],[-71.14553,42.32914],[-71.14554,42.32916],[-71.14555,42.32918],[-71.14565,42.32934],[-71.14574,42.3295],[-71.14577,42.32957],[-71.14593,42.32992],[-71.14596,42.32999],[-71.14598,42.33005],[-71.146,42.33012],[-71.14602,42.33017],[-71.14602,42.33018],[-71.14603,42.3302],[-71.14604,42.33024],[-71.14606,42.33032],[-71.14608,42.33043],[-71.14609,42.33053],[-71.1461,42.33059],[-71.14611,42.33066],[-71.14611,42.3307],[-71.14612,42.33071],[-71.14617,42.33107],[-71.14619,42.33125],[-71.1462,42.33128],[-71.14622,42.33142],[-71.14624,42.33154],[-71.14624,42.33157],[-71.14626,42.33162],[-71.14629,42.3317],[-71.14634,42.3318],[-71.14635,42.33181],[-71.14639,42.33187],[-71.14641,42.3319],[-71.14658,42.33213],[-71.14667,42.33227],[-71.14696,42.33266],[-71.14698,42.33269],[-71.14702,42.33275],[-71.14714,42.33292],[-71.14716,42.33294],[-71.14728,42.3331],[-71.14735,42.33321],[-71.14738,42.33326],[-71.14743,42.33336],[-71.14745,42.3334],[-71.14755,42.33362],[-71.14758,42.3337],[-71.1476,42.33374],[-71.14763,42.33383],[-71.14766,42.33389],[-71.1477,42.33395],[-71.14774,42.33402],[-71.1478,42.33409],[-71.14786,42.33415],[-71.14787,42.33416],[-71.14795,42.33423],[-71.14805,42.33429],[-71.14812,42.33433],[-71.14817,42.33435],[-71.14819,42.33436],[-71.14853,42.33452],[-71.14869,42.3346],[-71.14883,42.33467],[-71.14889,42.33469],[-71.14891,42.3347],[-71.14911,42.33479],[-71.14911,42.33479],[-71.14925,42.33485],[-71.14932,42.33489],[-71.14938,42.33492],[-71.14941,42.33494],[-71.14943,42.33495],[-71.14949,42.33499],[-71.1496,42.33505],[-71.14963,42.33506],[-71.1497,42.3351],[-71.14982,42.33516],[-71.14986,42.33518],[-71.14996,42.33523],[-71.15,42.33526],[-71.15002,42.33527],[-71.15003,42.33528],[-71.15004,42.33528],[-71.15011,42.33532],[-71.15013,42.33534],[-71.15019,42.33537],[-71.15028,42.33544],[-71.15038,42.33552],[-71.15042,42.33556],[-71.1505,42.33563],[-71.15058,42.33571],[-71.1508,42.33591],[-71.1508,42.33591],[-71.1509,42.33603],[-71.15113,42.33601],[-71.15133,42.336],[-71.15139,42.33599],[-71.15145,42.33599],[-71.15151,42.33598],[-71.15157,42.33598],[-71.15165,42.33597],[-71.15182,42.33596],[-71.15195,42.33595],[-71.15201,42.33594],[-71.15205,42.33594],[-71.15212,42.33594],[-71.15223,42.33593],[-71.15228,42.33592],[-71.15233,42.33591],[-71.15235,42.3359],[-71.1524,42.33589],[-71.15246,42.33588],[-71.15253,42.33586],[-71.15258,42.33585],[-71.15263,42.33583],[-71.15266,42.33582],[-71.15277,42.33578],[-71.15294,42.3357],[-71.153,42.33567],[-71.1531,42.33561],[-71.15317,42.33556],[-71.15324,42.3355],[-71.15326,42.33549],[-71.15329,42.33546],[-71.15333,42.33543],[-71.15336,42.33539],[-71.1534,42.33535],[-71.15347,42.33526],[-71.15349,42.33524],[-71.15352,42.33518],[-71.15355,42.33515],[-71.15357,42.33512],[-71.15358,42.33509],[-71.15363,42.33499],[-71.1537,42.33482],[-71.15383,42.33452],[-71.15385,42.33448],[-71.15394,42.33427],[-71.15397,42.3342],[-71.154,42.33414],[-71.15404,42.33404],[-71.15411,42.33388],[-71.15414,42.33381],[-71.1542,42.33369],[-71.15423,42.33363],[-71.15426,42.33354],[-71.15427,42.33353],[-71.15432,42.33341],[-71.15436,42.33333],[-71.15438,42.33329],[-71.1544,42.33326],[-71.15442,42.33322],[-71.15448,42.33312],[-71.15452,42.33306],[-71.15458,42.33297],[-71.15461,42.33294],[-71.15465,42.33288],[-71.15471,42.33282],[-71.15475,42.33277],[-71.15479,42.33273],[-71.1548,42.33272],[-71.15484,42.33268],[-71.15492,42.33261],[-71.15504,42.33252],[-71.15513,42.33245],[-71.15521,42.3324],[-71.1553,42.33234],[-71.15535,42.33231],[-71.15539,42.33229],[-71.1556,42.33218],[-71.15567,42.33214],[-71.15576,42.3321],[-71.15588,42.33205],[-71.15591,42.33203],[-71.15607,42.33195],[-71.15617,42.3319],[-71.15625,42.33186],[-71.15635,42.33182],[-71.15636,42.33182],[-71.15639,42.3318],[-71.15646,42.33178],[-71.15655,42.33175],[-71.15662,42.33173],[-71.15668,42.33171],[-71.15678,42.33168],[-71.15679,42.33168],[-71.15702,42.33163],[-71.15707,42.33163],[-71.15712,42.33162],[-71.15716,42.33162],[-71.15719,42.33161],[-71.15726,42.33161],[-71.15731,42.33161],[-71.15737,42.3316],[-71.15745,42.3316],[-71.15757,42.33161],[-71.15766,42.33162],[-71.15774,42.33164],[-71.15783,42.33166],[-71.15791,42.33168],[-71.158,42.3317],[-71.15811,42.33175],[-71.1582,42.33179],[-71.15825,42.33182],[-71.15837,42.33188],[-71.15844,42.33193],[-71.15848,42.33196],[-71.1585,42.33198],[-71.15854,42.33201],[-71.1586,42.33206],[-71.15865,42.33211],[-71.15874,42.3322],[-71.15886,42.33231],[-71.15904,42.33249],[-71.15906,42.33251],[-71.15918,42.33263],[-71.15929,42.33273],[-71.15939,42.33281],[-71.15941,42.33283],[-71.1595,42.33289],[-71.15956,42.33293],[-71.15962,42.33297],[-71.15974,42.33305],[-71.15987,42.33311],[-71.15998,42.33317],[-71.16002,42.3332],[-71.16024,42.3333],[-71.16038,42.33337],[-71.16051,42.33343],[-71.16065,42.3335],[-71.16074,42.33355],[-71.16081,42.33358],[-71.16091,42.33363],[-71.16094,42.33364],[-71.16104,42.33368],[-71.16116,42.33373],[-71.16128,42.33377],[-71.16141,42.3338],[-71.16153,42.33384],[-71.16161,42.33385],[-71.16173,42.33388],[-71.16181,42.33389],[-71.16193,42.33391],[-71.16227,42.33395],[-71.16227,42.33395],[-71.16228,42.33402],[-71.16229,42.33405],[-71.16231,42.33416],[-71.16236,42.33436],[-71.16236,42.33439],[-71.16241,42.33448],[-71.16246,42.33455],[-71.1625,42.33462],[-71.16258,42.33474],[-71.1626,42.33477],[-71.16272,42.33494],[-71.16277,42.33502],[-71.16278,42.33503],[-71.16281,42.33506],[-71.16288,42.33517],[-71.16289,42.33519],[-71.16295,42.33527],[-71.16296,42.33529],[-71.16298,42.33532],[-71.163,42.33533],[-71.16317,42.33558],[-71.16319,42.33562],[-71.1632,42.33563],[-71.16321,42.33565],[-71.16324,42.33569],[-71.16341,42.33594],[-71.16351,42.33608],[-71.16357,42.33618],[-71.16357,42.33618],[-71.16364,42.33628],[-71.16365,42.33629],[-71.16373,42.33641],[-71.16374,42.33644],[-71.16379,42.33653],[-71.16382,42.33658],[-71.1639,42.33673],[-71.16398,42.33687],[-71.16399,42.3369],[-71.16412,42.33716],[-71.16414,42.33721],[-71.16426,42.33748],[-71.16427,42.3375],[-71.1644,42.33779],[-71.16445,42.3379],[-71.1645,42.338],[-71.16456,42.33812],[-71.16459,42.3382],[-71.16463,42.33827],[-71.16467,42.33835],[-71.16468,42.33837],[-71.1647,42.3384],[-71.16472,42.33842],[-71.16478,42.33849],[-71.1648,42.33851],[-71.1648,42.33852],[-71.16484,42.33856],[-71.16492,42.33863],[-71.16497,42.33868],[-71.16503,42.33872],[-71.1651,42.33877],[-71.16522,42.33885],[-71.16543,42.33896],[-71.1655,42.33899],[-71.16558,42.33903],[-71.16567,42.33907],[-71.16572,42.33909],[-71.16582,42.33913],[-71.16584,42.33913],[-71.166,42.3392],[-71.166,42.3392],[-71.16603,42.3392],[-71.16607,42.33919],[-71.16612,42.33917],[-71.16618,42.33916],[-71.16624,42.33914],[-71.16631,42.33912],[-71.16665,42.33902],[-71.16685,42.33895],[-71.16719,42.33883],[-71.16722,42.33882],[-71.16728,42.33879],[-71.1681,42.3385],[-71.1685,42.33835],[-71.16857,42.33833],[-71.16865,42.33828],[-71.16869,42.33825],[-71.16873,42.33822],[-71.16878,42.33816],[-71.16882,42.33812],[-71.16885,42.33808],[-71.16887,42.33803],[-71.1689,42.33798],[-71.16892,42.33789],[-71.16892,42.33785],[-71.16891,42.33778],[-71.1689,42.33773],[-71.16888,42.33767],[-71.16882,42.33758],[-71.16875,42.3375],[-71.1687,42.33746],[-71.16867,42.33744],[-71.1686,42.33739],[-71.16857,42.33736],[-71.16854,42.33733],[-71.16852,42.3373],[-71.16852,42.33729],[-71.16851,42.33728],[-71.1685,42.33726],[-71.16849,42.33724],[-71.16848,42.3372],[-71.16847,42.33716],[-71.16845,42.33709],[-71.16841,42.337],[-71.16838,42.33692],[-71.16832,42.33676],[-71.16829,42.33666],[-71.16825,42.33656],[-71.16817,42.33633],[-71.16812,42.33619],[-71.1681,42.33613],[-71.16808,42.3361],[-71.16807,42.33607],[-71.16806,42.33605],[-71.16803,42.33601],[-71.168,42.33598],[-71.16797,42.33596],[-71.16788,42.33592],[-71.16786,42.33591],[-71.16783,42.33591],[-71.1678,42.3359],[-71.16777,42.3359],[-71.16773,42.3359],[-71.16769,42.3359],[-71.16764,42.3359],[-71.16759,42.33591],[-71.16757,42.33591],[-71.1675,42.33594],[-71.16718,42.33605]]}]}
+{"source":"Snapshot of BC’s public shuttle tracker (bostoncollege.transloc.com); schedules from BC’s shuttle page","schedulePage":"https://www.bc.edu/bc-web/offices/aux-services/sites/transportation-parking/shuttles.html","snapshot":"2026-10-19","routes":[{"id":5,"name":"Comm Ave All Stops","tracker":"Comm Ave All Stops","color":"#CC9933","loop":true,"service":[{"days":[1,2,3,4,5],"from":"17:00","to":"26:00","every":12},{"days":[0,6],"from":"08:00","to":"11:30","every":30},{"days":[0,6],"from":"11:30","to":"26:00","every":12}],"stops":[{"name":"Conte Forum","lonlat":[-71.167135,42.335986],"rideToNext":113,"dwell":10,"at":0},{"name":"McElroy – Beacon St.","lonlat":[-71.170819,42.333187],"rideToNext":74,"dwell":10,"at":89},{"name":"College Road","lonlat":[-71.1716,42.335236],"rideToNext":40,"dwell":10,"at":120},{"name":"Main Gate Chestnut Hill","lonlat":[-71.171094,42.337928],"rideToNext":109,"dwell":10,"at":146},{"name":"Evergreen Cemetery","lonlat":[-71.161254,42.339938],"rideToNext":23,"dwell":10,"at":215},{"name":"2000 Commonwealth Ave","lonlat":[-71.158475,42.33965],"rideToNext":207,"dwell":10,"at":233},{"name":"Reservoir MBTA stop","lonlat":[-71.148891,42.335054],"rideToNext":113,"dwell":10,"at":325},{"name":"Chestnut Hill Ave","lonlat":[-71.151027,42.336106],"rideToNext":229,"dwell":10,"at":348},{"name":"Chiswick Road","lonlat":[-71.151324,42.340564],"rideToNext":81,"dwell":10,"at":412},{"name":"Corner of Commonwealth Ave. and Chestnut Hill Ave","lonlat":[-71.15408,42.338326],"rideToNext":47,"dwell":10,"at":462},{"name":"South Street","lonlat":[-71.157531,42.339738],"rideToNext":37,"dwell":10,"at":483},{"name":"Greycliff Hall","lonlat":[-71.161684,42.340238],"rideToNext":151,"dwell":10,"at":499},{"name":"Robsham Theater","lonlat":[-71.169006,42.337958],"rideToNext":124,"dwell":10,"at":554}],"line":[[-71.16718,42.33605],[-71.1671,42.33609],[-71.16701,42.33612],[-71.16692,42.33615],[-71.16683,42.33618],[-71.16676,42.3362],[-71.16665,42.33622],[-71.1665,42.33623],[-71.16634,42.33622],[-71.16632,42.33622],[-71.16626,42.33622],[-71.16622,42.33621],[-71.16615,42.3362],[-71.16611,42.3362],[-71.16606,42.33619],[-71.16595,42.33617],[-71.16585,42.33614],[-71.16577,42.33611],[-71.16575,42.3361],[-71.16571,42.33609],[-71.1656,42.33603],[-71.16553,42.33597],[-71.16543,42.33589],[-71.16524,42.33577],[-71.16507,42.33572],[-71.16481,42.33565],[-71.16456,42.33559],[-71.16444,42.33555],[-71.16434,42.33552],[-71.16431,42.33551],[-71.16409,42.33546],[-71.16394,42.33542],[-71.16363,42.33534],[-71.16349,42.33531],[-71.16344,42.3353],[-71.16331,42.33526],[-71.1633,42.33526],[-71.16323,42.33525],[-71.16317,42.33524],[-71.16311,42.33525],[-71.16305,42.33526],[-71.16296,42.33528],[-71.16296,42.33528],[-71.16287,42.33517],[-71.1628,42.33507],[-71.16277,42.33502],[-71.16271,42.33494],[-71.1626,42.33477],[-71.16258,42.33474],[-71.1625,42.33462],[-71.16245,42.33455],[-71.16241,42.33449],[-71.16236,42.33436],[-71.16236,42.33436],[-71.16242,42.33425],[-71.16246,42.3342],[-71.16249,42.33416],[-71.16254,42.33411],[-71.16259,42.33405],[-71.16268,42.33397],[-71.16288,42.33396],[-71.16291,42.33396],[-71.16303,42.33395],[-71.16337,42.33391],[-71.16347,42.33389],[-71.16363,42.33387],[-71.1644,42.33378],[-71.16447,42.33378],[-71.16467,42.33376],[-71.16471,42.33376],[-71.16473,42.33376],[-71.16475,42.33376],[-71.16479,42.33375],[-71.16518,42.33371],[-71.16547,42.33368],[-71.16604,42.33362],[-71.16623,42.3336],[-71.16679,42.33353],[-71.16761,42.33345],[-71.16768,42.33344],[-71.16777,42.33343],[-71.168,42.3334],[-71.16833,42.33337],[-71.169,42.33329],[-71.1693,42.33326],[-71.16969,42.33322],[-71.16993,42.33319],[-71.17043,42.33312],[-71.17067,42.3331],[-71.1708,42.33308],[-71.1708,42.33308],[-71.17103,42.33305],[-71.17126,42.33303],[-71.17157,42.333],[-71.17175,42.33298],[-71.17188,42.33296],[-71.17199,42.33295],[-71.17223,42.33292],[-71.17277,42.33287],[-71.17277,42.33287],[-71.173,42.33306],[-71.17303,42.33308],[-71.17303,42.33308],[-71.17295,42.33318],[-71.17287,42.33329],[-71.17282,42.33335],[-71.17268,42.3335],[-71.17258,42.33362],[-71.1725,42.3337],[-71.17244,42.33377],[-71.17218,42.33407],[-71.17205,42.33421],[-71.17182,42.33447],[-71.17178,42.33451],[-71.17175,42.33456],[-71.17174,42.33459],[-71.17173,42.33462],[-71.17172,42.33467],[-71.1717,42.3348],[-71.17167,42.33499],[-71.17163,42.33524],[-71.17163,42.33524],[-71.1716,42.33542],[-71.17156,42.33566],[-71.17155,42.33572],[-71.17155,42.33575],[-71.17155,42.33579],[-71.17157,42.33591],[-71.17158,42.33596],[-71.17158,42.33599],[-71.1716,42.33607],[-71.17165,42.33624],[-71.17166,42.33629],[-71.17173,42.33646],[-71.17186,42.33669],[-71.17195,42.33683],[-71.17206,42.33699],[-71.17221,42.33718],[-71.17221,42.33718],[-71.17212,42.33722],[-71.17187,42.33737],[-71.17148,42.33769],[-71.17144,42.33773],[-71.17139,42.33778],[-71.17134,42.33782],[-71.17131,42.33785],[-71.17117,42.33799],[-71.17117,42.33799],[-71.17111,42.33804],[-71.17105,42.3381],[-71.1708,42.33835],[-71.17075,42.33839],[-71.17068,42.33845],[-71.17061,42.33851],[-71.17053,42.33857],[-71.17044,42.33863],[-71.17036,42.33869],[-71.17035,42.3387],[-71.17028,42.33875],[-71.1702,42.3388],[-71.17011,42.33885],[-71.17,42.33891],[-71.16977,42.33903],[-71.16966,42.33908],[-71.16952,42.33914],[-71.16937,42.3392],[-71.16917,42.33927],[-71.16887,42.33937],[-71.16855,42.33947],[-71.16839,42.33952],[-71.16834,42.33954],[-71.16832,42.33955],[-71.1683,42.33955],[-71.16822,42.33955],[-71.16819,42.33955],[-71.16817,42.33956],[-71.16814,42.33957],[-71.16813,42.33957],[-71.16806,42.33959],[-71.16796,42.33962],[-71.16784,42.33964],[-71.16757,42.3397],[-71.16734,42.33974],[-71.16701,42.3398],[-71.16677,42.33984],[-71.1667,42.33985],[-71.16662,42.33986],[-71.16645,42.33987],[-71.16612,42.33991],[-71.16597,42.33993],[-71.1658,42.33995],[-71.16558,42.33998],[-71.1654,42.33999],[-71.16534,42.34],[-71.16523,42.34001],[-71.16519,42.34001],[-71.16516,42.34001],[-71.16511,42.34001],[-71.1649,42.34003],[-71.16467,42.34004],[-71.16461,42.34004],[-71.16447,42.34005],[-71.16419,42.34005],[-71.16398,42.34006],[-71.16388,42.34006],[-71.16374,42.34006],[-71.16355,42.34005],[-71.16343,42.34005],[-71.16337,42.34005],[-71.16321,42.34005],[-71.16281,42.34003],[-71.16264,42.34003],[-71.16179,42.34],[-71.16177,42.34],[-71.16135,42.33999],[-71.16125,42.33999],[-71.16125,42.33999],[-71.16106,42.33998],[-71.16092,42.33998],[-71.16078,42.33998],[-71.16062,42.33997],[-71.16047,42.33996],[-71.16038,42.33996],[-71.16031,42.33995],[-71.16016,42.33994],[-71.16001,42.33993],[-71.15987,42.33992],[-71.1596,42.33988],[-71.1593,42.33984],[-71.15898,42.33979],[-71.15884,42.33977],[-71.15865,42.33973],[-71.15848,42.3397],[-71.15846,42.33969],[-71.15846,42.33969],[-71.15835,42.33967],[-71.15815,42.33962],[-71.158,42.33959],[-71.15789,42.33956],[-71.15768,42.3395],[-71.15751,42.33946],[-71.15735,42.33941],[-71.15722,42.33936],[-71.15708,42.33932],[-71.15694,42.33927],[-71.1568,42.33922],[-71.15666,42.33917],[-71.15654,42.33912],[-71.15637,42.33906],[-71.15625,42.33901],[-71.15613,42.33896],[-71.15589,42.33885],[-71.15537,42.33859],[-71.15517,42.33849],[-71.15506,42.33845],[-71.15497,42.33841],[-71.15489,42.33837],[-71.15475,42.33831],[-71.15462,42.33825],[-71.1545,42.33819],[-71.15438,42.33815],[-71.1543,42.33812],[-71.15422,42.33809],[-71.15413,42.33805],[-71.15403,42.33802],[-71.15399,42.33801],[-71.15396,42.33801],[-71.15395,42.338],[-71.15391,42.338],[-71.15374,42.33797],[-71.1536,42.33796],[-71.15351,42.33795],[-71.15348,42.33795],[-71.15347,42.33795],[-71.15346,42.33795],[-71.15345,42.33795],[-71.15344,42.33795],[-71.15342,42.33795],[-71.15329,42.33798],[-71.15327,42.33799],[-71.15325,42.338],[-71.15321,42.33802],[-71.15321,42.33802],[-71.15317,42.33797],[-71.15307,42.33787],[-71.15305,42.33784],[-71.15254,42.3374],[-71.15229,42.33717],[-71.15203,42.33696],[-71.15188,42.33684],[-71.15145,42.3365],[-71.15129,42.33636],[-71.15123,42.33632],[-71.15118,42.33628],[-71.15113,42.33624],[-71.15107,42.33619],[-71.15105,42.33617],[-71.15092,42.33604],[-71.15092,42.33604],[-71.1508,42.33592],[-71.15059,42.33571],[-71.15051,42.33563],[-71.15042,42.33555],[-71.15039,42.33552],[-71.15028,42.33544],[-71.15019,42.33537],[-71.15004,42.33528],[-71.15003,42.33527],[-71.15001,42.33526],[-71.14997,42.33523],[-71.14986,42.33517],[-71.14985,42.33516],[-71.14972,42.3351],[-71.14964,42.33506],[-71.14952,42.33499],[-71.14943,42.33495],[-71.14937,42.33492],[-71.14936,42.33491],[-71.14928,42.33487],[-71.14917,42.33482],[-71.14891,42.3347],[-71.14891,42.3347],[-71.14882,42.33466],[-71.14876,42.33485],[-71.1488,42.33496],[-71.14891,42.33501],[-71.14891,42.33501],[-71.14913,42.33504],[-71.14936,42.33491],[-71.14937,42.33492],[-71.14943,42.33495],[-71.14952,42.33499],[-71.14964,42.33506],[-71.14972,42.3351],[-71.14985,42.33516],[-71.14986,42.33517],[-71.14997,42.33523],[-71.15001,42.33526],[-71.15003,42.33527],[-71.15004,42.33528],[-71.15019,42.33537],[-71.15028,42.33544],[-71.15039,42.33552],[-71.15042,42.33555],[-71.15051,42.33563],[-71.15059,42.33571],[-71.1508,42.33592],[-71.15092,42.33604],[-71.15105,42.33617],[-71.15107,42.33619],[-71.15113,42.33624],[-71.15118,42.33628],[-71.15123,42.33632],[-71.15129,42.33636],[-71.15145,42.3365],[-71.15188,42.33684],[-71.15203,42.33696],[-71.15209,42.337],[-71.15209,42.337],[-71.15229,42.33717],[-71.15254,42.3374],[-71.15305,42.33784],[-71.15307,42.33787],[-71.15317,42.33797],[-71.15321,42.33802],[-71.15321,42.33802],[-71.15318,42.33803],[-71.15314,42.33805],[-71.15309,42.33807],[-71.15306,42.33809],[-71.15303,42.33811],[-71.1529,42.33821],[-71.15277,42.33832],[-71.15273,42.33836],[-71.15268,42.33841],[-71.15262,42.33849],[-71.15256,42.33856],[-71.15252,42.33862],[-71.15249,42.33866],[-71.15247,42.3387],[-71.15246,42.33872],[-71.15239,42.33885],[-71.15227,42.3391],[-71.1522,42.33922],[-71.15212,42.33936],[-71.15207,42.33943],[-71.15207,42.33944],[-71.152,42.33953],[-71.15194,42.33961],[-71.15189,42.33967],[-71.1518,42.33977],[-71.15168,42.33991],[-71.15159,42.34],[-71.15149,42.34009],[-71.1513,42.34025],[-71.15122,42.34032],[-71.15115,42.3404],[-71.15113,42.34042],[-71.15104,42.34048],[-71.15087,42.3406],[-71.15083,42.34063],[-71.15062,42.34077],[-71.15054,42.34083],[-71.15039,42.34091],[-71.15052,42.34103],[-71.15069,42.3409],[-71.15084,42.3408],[-71.15086,42.34079],[-71.15095,42.34073],[-71.15102,42.34068],[-71.15114,42.3406],[-71.1512,42.34056],[-71.15128,42.3405],[-71.15128,42.3405],[-71.15129,42.34049],[-71.15137,42.34042],[-71.15144,42.34037],[-71.15149,42.34033],[-71.15156,42.34026],[-71.15166,42.34018],[-71.15175,42.34009],[-71.15184,42.34],[-71.15193,42.33991],[-71.152,42.33982],[-71.15205,42.33976],[-71.15209,42.33971],[-71.15216,42.33962],[-71.15224,42.33951],[-71.1523,42.33942],[-71.15236,42.33934],[-71.15237,42.33931],[-71.15241,42.33925],[-71.15243,42.33921],[-71.15249,42.3391],[-71.15255,42.33899],[-71.15258,42.33891],[-71.15263,42.3388],[-71.15265,42.33876],[-71.15267,42.33873],[-71.15269,42.3387],[-71.15273,42.33864],[-71.15278,42.33857],[-71.15286,42.33849],[-71.15288,42.33847],[-71.15291,42.33845],[-71.15299,42.33839],[-71.15308,42.33833],[-71.15316,42.33829],[-71.15323,42.33826],[-71.15329,42.33823],[-71.15335,42.3382],[-71.15339,42.33818],[-71.1535,42.33818],[-71.15356,42.33817],[-71.15359,42.33817],[-71.15362,42.33817],[-71.15379,42.33818],[-71.1539,42.33819],[-71.154,42.33821],[-71.15404,42.33822],[-71.15413,42.33825],[-71.15413,42.33825],[-71.15415,42.33826],[-71.15429,42.33831],[-71.15442,42.33835],[-71.15455,42.3384],[-71.15469,42.33846],[-71.15481,42.33851],[-71.15494,42.33857],[-71.15508,42.33863],[-71.15509,42.33864],[-71.15522,42.3387],[-71.15534,42.33876],[-71.15546,42.33882],[-71.15558,42.33888],[-71.15584,42.339],[-71.15608,42.33911],[-71.15623,42.33917],[-71.15648,42.33928],[-71.1565,42.33928],[-71.15676,42.33938],[-71.15726,42.33955],[-71.15729,42.33956],[-71.15757,42.33964],[-71.15757,42.33964],[-71.15782,42.33971],[-71.15835,42.33983],[-71.15866,42.3399],[-71.15898,42.33996],[-71.15936,42.34001],[-71.15975,42.34007],[-71.16006,42.3401],[-71.16032,42.34012],[-71.16035,42.34012],[-71.16059,42.34014],[-71.16106,42.34015],[-71.1613,42.34016],[-71.16143,42.34017],[-71.16162,42.34018],[-71.16169,42.34018],[-71.16169,42.34018],[-71.16205,42.34019],[-71.1626,42.34021],[-71.16308,42.34022],[-71.16341,42.34023],[-71.16355,42.34023],[-71.16393,42.34024],[-71.16403,42.34024],[-71.16414,42.34024],[-71.16421,42.34024],[-71.16428,42.34024],[-71.16443,42.34024],[-71.16457,42.34023],[-71.16471,42.34023],[-71.16505,42.34021],[-71.16567,42.34014],[-71.16614,42.34009],[-71.16614,42.34009],[-71.16613,42.34],[-71.16613,42.33997],[-71.16612,42.33991],[-71.16611,42.33981],[-71.1661,42.33978],[-71.16609,42.33967],[-71.16604,42.3394],[-71.16603,42.33933],[-71.16602,42.33921],[-71.16602,42.33921],[-71.16605,42.33921],[-71.16609,42.33921],[-71.16614,42.3392],[-71.1662,42.33919],[-71.16626,42.33917],[-71.16632,42.33915],[-71.16666,42.33902],[-71.16685,42.33895],[-71.16685,42.33895],[-71.16718,42.33882],[-71.16721,42.33881],[-71.16728,42.33879],[-71.16792,42.33855],[-71.1681,42.33849],[-71.16849,42.33835],[-71.1685,42.33834],[-71.16857,42.33832],[-71.16865,42.33828],[-71.1687,42.33825],[-71.16873,42.33822],[-71.16879,42.33817],[-71.16883,42.33812],[-71.16886,42.33808],[-71.16889,42.33804],[-71.16891,42.33798],[-71.16892,42.33795],[-71.16901,42.3379],[-71.16892,42.33789],[-71.16892,42.33785],[-71.16891,42.33778],[-71.1689,42.33773],[-71.16888,42.33767],[-71.16882,42.33758],[-71.16875,42.3375],[-71.1687,42.33746],[-71.16867,42.33744],[-71.1686,42.33739],[-71.16857,42.33736],[-71.16854,42.33733],[-71.16852,42.3373],[-71.16852,42.33729],[-71.16851,42.33728],[-71.1685,42.33726],[-71.16849,42.33724],[-71.16848,42.3372],[-71.16847,42.33716],[-71.16845,42.33709],[-71.16841,42.337],[-71.16838,42.33692],[-71.16832,42.33676],[-71.16829,42.33666],[-71.16825,42.33656],[-71.16817,42.33633],[-71.16812,42.33619],[-71.1681,42.33613],[-71.16808,42.3361],[-71.16807,42.33607],[-71.16806,42.33605],[-71.16803,42.33601],[-71.168,42.33598],[-71.16797,42.33596],[-71.16788,42.33592],[-71.16786,42.33591],[-71.16783,42.33591],[-71.1678,42.3359],[-71.16777,42.3359],[-71.16773,42.3359],[-71.16769,42.3359],[-71.16764,42.3359],[-71.16759,42.33591],[-71.16757,42.33591],[-71.1675,42.33594],[-71.16718,42.33605]]},{"id":6,"name":"Comm Ave Direct","tracker":"Comm Ave Direct","color":"#089988","loop":true,"service":[{"days":[1,2,3,4,5],"from":"07:00","to":"17:00","every":9}],"stops":[{"name":"Conte Forum","lonlat":[-71.167135,42.335986],"rideToNext":163,"dwell":10,"at":477},{"name":"Evergreen Cemetery","lonlat":[-71.161254,42.339938],"rideToNext":23,"dwell":10,"at":495},{"name":"2000 Commonwealth Ave","lonlat":[-71.158475,42.33965],"rideToNext":207,"dwell":10,"at":497},{"name":"Reservoir MBTA stop","lonlat":[-71.148891,42.335054],"rideToNext":113,"dwell":10,"at":497},{"name":"Chestnut Hill Ave","lonlat":[-71.151027,42.336106],"rideToNext":234,"dwell":10,"at":497},{"name":"Chiswick Road","lonlat":[-71.151324,42.340564],"rideToNext":81,"dwell":10,"at":497},{"name":"Corner of Commonwealth Ave. and Chestnut Hill Ave","lonlat":[-71.15408,42.338326],"rideToNext":47,"dwell":10,"at":497},{"name":"South Street","lonlat":[-71.157531,42.339738],"rideToNext":37,"dwell":10,"at":497},{"name":"Greycliff Hall","lonlat":[-71.161684,42.340238],"rideToNext":149,"dwell":10,"at":497},{"name":"Robsham Theater","lonlat":[-71.169006,42.337958],"rideToNext":115,"dwell":10,"at":497}],"line":[[-71.16543,42.3359],[-71.16523,42.33578],[-71.16507,42.33573],[-71.16481,42.33566],[-71.16456,42.3356],[-71.16443,42.33556],[-71.16434,42.33554],[-71.1643,42.33553],[-71.16407,42.33546],[-71.16363,42.33535],[-71.16349,42.33531],[-71.16344,42.3353],[-71.1633,42.33526],[-71.16323,42.33524],[-71.16317,42.33524],[-71.16311,42.33525],[-71.16305,42.33526],[-71.16296,42.33528],[-71.16296,42.33528],[-71.163,42.33533],[-71.16317,42.33558],[-71.1632,42.33562],[-71.16321,42.33563],[-71.16325,42.33569],[-71.16342,42.33594],[-71.16358,42.33616],[-71.16358,42.33616],[-71.16366,42.33628],[-71.16373,42.33641],[-71.16374,42.33644],[-71.16382,42.33657],[-71.16383,42.33658],[-71.16391,42.33672],[-71.16401,42.3369],[-71.16413,42.33716],[-71.16427,42.33747],[-71.16428,42.33749],[-71.1644,42.33779],[-71.16445,42.3379],[-71.16455,42.33812],[-71.16458,42.3382],[-71.16462,42.33827],[-71.16466,42.33834],[-71.16471,42.33842],[-71.16478,42.33849],[-71.1648,42.33852],[-71.16485,42.33856],[-71.16492,42.33864],[-71.16498,42.33868],[-71.16503,42.33872],[-71.1651,42.33877],[-71.16522,42.33885],[-71.16543,42.33897],[-71.1655,42.339],[-71.16558,42.33904],[-71.16566,42.33907],[-71.16572,42.3391],[-71.16582,42.33914],[-71.16602,42.33921],[-71.16603,42.33933],[-71.16604,42.3394],[-71.16609,42.33967],[-71.1661,42.33978],[-71.16611,42.33981],[-71.16612,42.33991],[-71.16612,42.33991],[-71.16597,42.33993],[-71.1658,42.33995],[-71.16558,42.33998],[-71.1654,42.33999],[-71.16534,42.34],[-71.16523,42.34001],[-71.16519,42.34001],[-71.16516,42.34001],[-71.16511,42.34001],[-71.1649,42.34003],[-71.16467,42.34004],[-71.16461,42.34004],[-71.16447,42.34005],[-71.16419,42.34005],[-71.16398,42.34006],[-71.16388,42.34006],[-71.16374,42.34006],[-71.16355,42.34005],[-71.16343,42.34005],[-71.16337,42.34005],[-71.16321,42.34005],[-71.16281,42.34003],[-71.16264,42.34003],[-71.16179,42.34],[-71.16177,42.34],[-71.16135,42.33999],[-71.16125,42.33999],[-71.16125,42.33999],[-71.16106,42.33998],[-71.16092,42.33998],[-71.16078,42.33998],[-71.16062,42.33997],[-71.16047,42.33996],[-71.16038,42.33996],[-71.16031,42.33995],[-71.16016,42.33994],[-71.16001,42.33993],[-71.15987,42.33992],[-71.1596,42.33988],[-71.1593,42.33984],[-71.15898,42.33979],[-71.15884,42.33977],[-71.15865,42.33973],[-71.15848,42.3397],[-71.15846,42.33969],[-71.15846,42.33969],[-71.15835,42.33967],[-71.15815,42.33962],[-71.158,42.33959],[-71.15789,42.33956],[-71.15768,42.3395],[-71.15751,42.33946],[-71.15735,42.33941],[-71.15722,42.33936],[-71.15708,42.33932],[-71.15694,42.33927],[-71.1568,42.33922],[-71.15666,42.33917],[-71.15654,42.33912],[-71.15637,42.33906],[-71.15625,42.33901],[-71.15613,42.33896],[-71.15589,42.33885],[-71.15537,42.33859],[-71.15517,42.33849],[-71.15506,42.33845],[-71.15497,42.33841],[-71.15489,42.33837],[-71.15475,42.33831],[-71.15462,42.33825],[-71.1545,42.33819],[-71.15438,42.33815],[-71.1543,42.33812],[-71.15422,42.33809],[-71.15413,42.33805],[-71.15403,42.33802],[-71.15399,42.33801],[-71.15396,42.33801],[-71.15395,42.338],[-71.15391,42.338],[-71.15374,42.33797],[-71.1536,42.33796],[-71.15351,42.33795],[-71.15348,42.33795],[-71.15347,42.33795],[-71.15346,42.33795],[-71.15345,42.33795],[-71.15344,42.33795],[-71.15342,42.33795],[-71.15329,42.33798],[-71.15327,42.33799],[-71.15325,42.338],[-71.15321,42.33802],[-71.15321,42.33802],[-71.15317,42.33797],[-71.15307,42.33787],[-71.15305,42.33784],[-71.15254,42.3374],[-71.15229,42.33717],[-71.15203,42.33696],[-71.15188,42.33684],[-71.15145,42.3365],[-71.15129,42.33636],[-71.15123,42.33632],[-71.15118,42.33628],[-71.15113,42.33624],[-71.15107,42.33619],[-71.15105,42.33617],[-71.15092,42.33604],[-71.15092,42.33604],[-71.1508,42.33592],[-71.15059,42.33571],[-71.15051,42.33563],[-71.15042,42.33555],[-71.15039,42.33552],[-71.15028,42.33544],[-71.15019,42.33537],[-71.15004,42.33528],[-71.15003,42.33527],[-71.15001,42.33526],[-71.14997,42.33523],[-71.14986,42.33517],[-71.14985,42.33516],[-71.14972,42.3351],[-71.14964,42.33506],[-71.14952,42.33499],[-71.14943,42.33495],[-71.14937,42.33492],[-71.14936,42.33491],[-71.14928,42.33487],[-71.14917,42.33482],[-71.14891,42.3347],[-71.14891,42.3347],[-71.14883,42.33466],[-71.14877,42.33483],[-71.14881,42.33494],[-71.1489,42.33499],[-71.1489,42.33499],[-71.14903,42.33502],[-71.14936,42.33491],[-71.14937,42.33492],[-71.14943,42.33495],[-71.14952,42.33499],[-71.14964,42.33506],[-71.14972,42.3351],[-71.14985,42.33516],[-71.14986,42.33517],[-71.14997,42.33523],[-71.15001,42.33526],[-71.15003,42.33527],[-71.15004,42.33528],[-71.15019,42.33537],[-71.15028,42.33544],[-71.15039,42.33552],[-71.15042,42.33555],[-71.15051,42.33563],[-71.15059,42.33571],[-71.1508,42.33592],[-71.15092,42.33604],[-71.15105,42.33617],[-71.15107,42.33619],[-71.15113,42.33624],[-71.15118,42.33628],[-71.15123,42.33632],[-71.15129,42.33636],[-71.15145,42.3365],[-71.15188,42.33684],[-71.15203,42.33696],[-71.15209,42.337],[-71.15209,42.337],[-71.15229,42.33717],[-71.15254,42.3374],[-71.15305,42.33784],[-71.15307,42.33787],[-71.15317,42.33797],[-71.15321,42.33802],[-71.15321,42.33802],[-71.15318,42.33803],[-71.15314,42.33805],[-71.15309,42.33807],[-71.15306,42.33809],[-71.15303,42.33811],[-71.1529,42.33821],[-71.15277,42.33832],[-71.15273,42.33836],[-71.15268,42.33841],[-71.15262,42.33849],[-71.15256,42.33856],[-71.15252,42.33862],[-71.15249,42.33866],[-71.15247,42.3387],[-71.15246,42.33872],[-71.15239,42.33885],[-71.15227,42.3391],[-71.1522,42.33922],[-71.15212,42.33936],[-71.15207,42.33943],[-71.15207,42.33944],[-71.152,42.33953],[-71.15194,42.33961],[-71.15189,42.33967],[-71.1518,42.33977],[-71.15168,42.33991],[-71.15159,42.34],[-71.15149,42.34009],[-71.1513,42.34025],[-71.15122,42.34032],[-71.15115,42.3404],[-71.15113,42.34042],[-71.15104,42.34048],[-71.15087,42.3406],[-71.15083,42.34063],[-71.15062,42.34077],[-71.15054,42.34083],[-71.15039,42.34091],[-71.15052,42.34103],[-71.15069,42.3409],[-71.15084,42.3408],[-71.15086,42.34079],[-71.15095,42.34073],[-71.15102,42.34068],[-71.15114,42.3406],[-71.1512,42.34056],[-71.15128,42.3405],[-71.15128,42.3405],[-71.15129,42.34049],[-71.15137,42.34042],[-71.15144,42.34037],[-71.15149,42.34033],[-71.15156,42.34026],[-71.15166,42.34018],[-71.15175,42.34009],[-71.15184,42.34],[-71.15193,42.33991],[-71.152,42.33982],[-71.15205,42.33976],[-71.15209,42.33971],[-71.15216,42.33962],[-71.15224,42.33951],[-71.1523,42.33942],[-71.15236,42.33934],[-71.15237,42.33931],[-71.15241,42.33925],[-71.15243,42.33921],[-71.15249,42.3391],[-71.15255,42.33899],[-71.15258,42.33891],[-71.15263,42.3388],[-71.15265,42.33876],[-71.15267,42.33873],[-71.15269,42.3387],[-71.15273,42.33864],[-71.15278,42.33857],[-71.15286,42.33849],[-71.15288,42.33847],[-71.15291,42.33845],[-71.15299,42.33839],[-71.15308,42.33833],[-71.15316,42.33829],[-71.15323,42.33826],[-71.15329,42.33823],[-71.15335,42.3382],[-71.15339,42.33818],[-71.1535,42.33818],[-71.15356,42.33817],[-71.15359,42.33817],[-71.15362,42.33817],[-71.15379,42.33818],[-71.1539,42.33819],[-71.154,42.33821],[-71.15404,42.33822],[-71.15413,42.33825],[-71.15413,42.33825],[-71.15415,42.33826],[-71.15429,42.33831],[-71.15442,42.33835],[-71.15455,42.3384],[-71.15469,42.33846],[-71.15481,42.33851],[-71.15494,42.33857],[-71.15508,42.33863],[-71.15509,42.33864],[-71.15522,42.3387],[-71.15534,42.33876],[-71.15546,42.33882],[-71.15558,42.33888],[-71.15584,42.339],[-71.15608,42.33911],[-71.15623,42.33917],[-71.15648,42.33928],[-71.1565,42.33928],[-71.15676,42.33938],[-71.15726,42.33955],[-71.15729,42.33956],[-71.15757,42.33964],[-71.15757,42.33964],[-71.15782,42.33971],[-71.15835,42.33983],[-71.15866,42.3399],[-71.15898,42.33996],[-71.15936,42.34001],[-71.15975,42.34007],[-71.16006,42.3401],[-71.16032,42.34012],[-71.16035,42.34012],[-71.16059,42.34014],[-71.16106,42.34015],[-71.1613,42.34016],[-71.16143,42.34017],[-71.16162,42.34018],[-71.16169,42.34018],[-71.16169,42.34018],[-71.16205,42.34019],[-71.1626,42.34021],[-71.16308,42.34022],[-71.16341,42.34023],[-71.16355,42.34023],[-71.16393,42.34024],[-71.16403,42.34024],[-71.16414,42.34024],[-71.16421,42.34024],[-71.16428,42.34024],[-71.16443,42.34024],[-71.16457,42.34023],[-71.16471,42.34023],[-71.16505,42.34021],[-71.16567,42.34014],[-71.16614,42.34009],[-71.16614,42.34009],[-71.16613,42.34],[-71.16613,42.33997],[-71.16612,42.33991],[-71.16611,42.33981],[-71.1661,42.33978],[-71.16609,42.33967],[-71.16604,42.3394],[-71.16603,42.33933],[-71.16602,42.33921],[-71.16602,42.33921],[-71.16605,42.33921],[-71.16609,42.33921],[-71.16614,42.3392],[-71.1662,42.33919],[-71.16626,42.33917],[-71.16632,42.33915],[-71.16666,42.33902],[-71.16685,42.33895],[-71.16685,42.33895],[-71.16718,42.33882],[-71.16721,42.33881],[-71.16728,42.33879],[-71.16792,42.33855],[-71.1681,42.33849],[-71.16849,42.33835],[-71.1685,42.33834],[-71.16857,42.33832],[-71.16865,42.33828],[-71.1687,42.33825],[-71.16873,42.33822],[-71.16879,42.33817],[-71.16883,42.33812],[-71.16886,42.33808],[-71.16889,42.33804],[-71.16891,42.33798],[-71.16892,42.33795],[-71.16892,42.33795],[-71.16892,42.33789],[-71.16892,42.33785],[-71.16891,42.33778],[-71.1689,42.33773],[-71.16888,42.33767],[-71.16883,42.33757],[-71.16875,42.3375],[-71.16869,42.33746],[-71.16867,42.33743],[-71.16861,42.33739],[-71.16857,42.33736],[-71.16854,42.33733],[-71.16852,42.33731],[-71.16851,42.33729],[-71.16851,42.33728],[-71.1685,42.33726],[-71.16849,42.33724],[-71.16848,42.33721],[-71.16847,42.33717],[-71.16845,42.3371],[-71.16841,42.337],[-71.16838,42.33692],[-71.16832,42.33676],[-71.16829,42.33666],[-71.16826,42.33656],[-71.16818,42.33633],[-71.16813,42.33619],[-71.16811,42.33613],[-71.16809,42.3361],[-71.16808,42.33607],[-71.16806,42.33605],[-71.16803,42.33601],[-71.168,42.33598],[-71.16797,42.33596],[-71.16789,42.33591],[-71.16786,42.3359],[-71.16784,42.33589],[-71.16781,42.33589],[-71.16777,42.33588],[-71.16773,42.33588],[-71.16769,42.33589],[-71.16764,42.33589],[-71.16759,42.3359],[-71.16757,42.33591],[-71.1675,42.33593],[-71.1671,42.33608],[-71.16701,42.33612],[-71.16692,42.33615],[-71.16683,42.33618],[-71.16676,42.3362],[-71.16665,42.33621],[-71.1665,42.33623],[-71.16635,42.33622],[-71.16626,42.33622],[-71.16622,42.33622],[-71.16615,42.33621],[-71.16611,42.3362],[-71.16606,42.33619],[-71.16595,42.33617],[-71.16585,42.33614],[-71.16577,42.33611],[-71.16575,42.3361],[-71.16571,42.33609],[-71.1656,42.33603],[-71.16552,42.33598],[-71.16543,42.3359]]},{"id":9,"name":"Mall and Grocery Shuttle (Saturday)","tracker":"Grocery/Chestnut Hill Mall Shuttle - Saturday","color":"#FA8100","loop":false,"service":[{"days":[6],"from":"11:00","to":"15:05","every":60}],"stops":[{"name":"Stuart Hall Loading Dock","lonlat":[-71.194075,42.341378],"rideToNext":591,"dwell":10,"at":0},{"name":"Robsham Theater","lonlat":[-71.169006,42.337958],"rideToNext":91,"dwell":10,"at":251},{"name":"Conte Forum","lonlat":[-71.167135,42.335986],"rideToNext":134,"dwell":10,"at":298},{"name":"McElroy – Beacon St.","lonlat":[-71.170819,42.333187],"rideToNext":288,"dwell":10,"at":382},{"name":"Chestnut Hill Mall (MBTA Stop)","lonlat":[-71.17775,42.321861],"rideToNext":155,"dwell":10,"at":577},{"name":"Chestnut Hill Square (Wegmans)","lonlat":[-71.17622,42.319547],"rideToNext":183,"dwell":10,"at":616},{"name":"The Street (Bus Shelter)","lonlat":[-71.166517,42.323108],"rideToNext":440,"dwell":10,"at":680},{"name":"College Road","lonlat":[-71.1716,42.335236],"rideToNext":337,"dwell":10,"at":922}],"line":[[-71.19408,42.34133],[-71.19437,42.34137],[-71.19479,42.34143],[-71.19528,42.34149],[-71.19539,42.34151],[-71.19546,42.34153],[-71.19548,42.34154],[-71.19548,42.34154],[-71.19549,42.34147],[-71.19549,42.34142],[-71.19547,42.34138],[-71.19546,42.34136],[-71.19546,42.34135],[-71.19545,42.34135],[-71.19542,42.34134],[-71.19536,42.34133],[-71.1953,42.34132],[-71.195,42.34129],[-71.19483,42.34126],[-71.19469,42.34124],[-71.19466,42.34124],[-71.19428,42.34118],[-71.19424,42.34117],[-71.19405,42.34116],[-71.194,42.34115],[-71.19396,42.34115],[-71.19391,42.34116],[-71.19389,42.34116],[-71.19387,42.34117],[-71.19385,42.34118],[-71.19383,42.3412],[-71.19382,42.34121],[-71.1938,42.3413],[-71.1938,42.3413],[-71.1937,42.34129],[-71.19352,42.34125],[-71.19329,42.34121],[-71.19321,42.3412],[-71.19315,42.34119],[-71.1931,42.3412],[-71.19305,42.3412],[-71.19298,42.34122],[-71.19293,42.34124],[-71.19288,42.34127],[-71.19284,42.34129],[-71.19282,42.34131],[-71.19275,42.34139],[-71.1927,42.34148],[-71.19268,42.3416],[-71.19267,42.34171],[-71.19266,42.34181],[-71.19264,42.34186],[-71.19261,42.34192],[-71.19247,42.34205],[-71.19247,42.34205],[-71.19193,42.34177],[-71.19193,42.34177],[-71.19206,42.34163],[-71.19222,42.3415],[-71.19229,42.34143],[-71.19237,42.34133],[-71.19241,42.34127],[-71.19246,42.34119],[-71.1925,42.34109],[-71.19254,42.341],[-71.19256,42.34093],[-71.19258,42.34084],[-71.19266,42.34057],[-71.1927,42.34036],[-71.19281,42.33959],[-71.19283,42.33948],[-71.19303,42.33812],[-71.1931,42.33765],[-71.19318,42.33719],[-71.1932,42.33701],[-71.19328,42.33654],[-71.19332,42.33624],[-71.19333,42.33617],[-71.19333,42.33609],[-71.19334,42.33602],[-71.19334,42.33602],[-71.19287,42.33612],[-71.19264,42.33615],[-71.19249,42.33617],[-71.19216,42.3362],[-71.19208,42.3362],[-71.19139,42.3362],[-71.19087,42.33619],[-71.19068,42.33619],[-71.18996,42.3362],[-71.18935,42.33621],[-71.18873,42.33624],[-71.18795,42.33628],[-71.18747,42.33632],[-71.18713,42.33634],[-71.18688,42.33636],[-71.1867,42.33637],[-71.18653,42.33638],[-71.18645,42.33639],[-71.18641,42.3364],[-71.18638,42.3364],[-71.18635,42.33641],[-71.1863,42.33641],[-71.18622,42.33643],[-71.18598,42.33646],[-71.18586,42.33648],[-71.18564,42.33651],[-71.18522,42.33658],[-71.18516,42.33658],[-71.18505,42.33659],[-71.18485,42.33661],[-71.18439,42.33663],[-71.18403,42.33662],[-71.18396,42.33662],[-71.18386,42.33661],[-71.18355,42.3366],[-71.18349,42.3366],[-71.18339,42.33659],[-71.18314,42.33657],[-71.18285,42.33655],[-71.18281,42.33655],[-71.18262,42.33653],[-71.18242,42.33651],[-71.18211,42.33648],[-71.18196,42.33646],[-71.18187,42.33645],[-71.18139,42.33639],[-71.18115,42.33636],[-71.18098,42.33634],[-71.18055,42.33628],[-71.18016,42.33624],[-71.18,42.33622],[-71.17988,42.3362],[-71.17973,42.33618],[-71.17922,42.33614],[-71.17915,42.33613],[-71.17896,42.33612],[-71.1789,42.33612],[-71.17871,42.33612],[-71.17857,42.33611],[-71.17832,42.33613],[-71.17819,42.33615],[-71.17817,42.33615],[-71.17803,42.33618],[-71.17791,42.3362],[-71.17768,42.33627],[-71.17757,42.33631],[-71.17738,42.33639],[-71.17706,42.33655],[-71.17694,42.33661],[-71.17691,42.33662],[-71.17685,42.33666],[-71.17683,42.33667],[-71.17681,42.33668],[-71.17678,42.33669],[-71.17671,42.33673],[-71.17665,42.33676],[-71.17651,42.33684],[-71.17644,42.33688],[-71.17639,42.33691],[-71.17627,42.33697],[-71.17614,42.33702],[-71.17609,42.33704],[-71.17602,42.33707],[-71.17588,42.33712],[-71.17583,42.33713],[-71.17577,42.33715],[-71.17567,42.33718],[-71.17566,42.33718],[-71.17533,42.33725],[-71.17503,42.33727],[-71.17488,42.33727],[-71.17472,42.33727],[-71.17459,42.33727],[-71.17445,42.33726],[-71.17435,42.33724],[-71.17385,42.33716],[-71.17354,42.33711],[-71.17334,42.33709],[-71.17319,42.33708],[-71.17303,42.33707],[-71.17284,42.33708],[-71.17264,42.3371],[-71.17244,42.33714],[-71.17223,42.33718],[-71.17212,42.33723],[-71.172,42.3373],[-71.17188,42.33738],[-71.17174,42.33747],[-71.17163,42.33756],[-71.1715,42.33768],[-71.17142,42.33775],[-71.17137,42.3378],[-71.17132,42.33784],[-71.17129,42.33788],[-71.17117,42.338],[-71.17111,42.33805],[-71.17103,42.33813],[-71.17079,42.33835],[-71.17072,42.33841],[-71.17067,42.33844],[-71.17059,42.3385],[-71.17051,42.33856],[-71.17043,42.33862],[-71.17037,42.33866],[-71.17034,42.33869],[-71.17026,42.33874],[-71.17019,42.33878],[-71.17009,42.33884],[-71.16999,42.3389],[-71.16976,42.33901],[-71.16965,42.33907],[-71.16959,42.33909],[-71.16951,42.33912],[-71.16936,42.33918],[-71.16916,42.33925],[-71.16888,42.33936],[-71.16867,42.33943],[-71.16855,42.33947],[-71.16836,42.33953],[-71.16828,42.33956],[-71.16811,42.33957],[-71.16805,42.33959],[-71.16796,42.33961],[-71.16784,42.33964],[-71.16757,42.3397],[-71.16735,42.33974],[-71.16703,42.3398],[-71.16677,42.33983],[-71.16677,42.33983],[-71.16668,42.3397],[-71.16653,42.33947],[-71.16647,42.33936],[-71.16631,42.33912],[-71.16631,42.33912],[-71.16665,42.33902],[-71.16685,42.33895],[-71.16719,42.33883],[-71.16722,42.33882],[-71.16728,42.33879],[-71.1681,42.3385],[-71.1685,42.33835],[-71.16857,42.33833],[-71.16865,42.33828],[-71.16869,42.33825],[-71.16873,42.33822],[-71.16878,42.33816],[-71.16882,42.33812],[-71.16885,42.33808],[-71.16887,42.33803],[-71.1689,42.33798],[-71.16891,42.33794],[-71.16891,42.33794],[-71.16892,42.33789],[-71.16892,42.33785],[-71.16891,42.33778],[-71.16889,42.33773],[-71.16887,42.33767],[-71.16882,42.33758],[-71.16874,42.33751],[-71.16869,42.33746],[-71.16866,42.33744],[-71.16861,42.33739],[-71.16857,42.33736],[-71.16854,42.33733],[-71.16852,42.33731],[-71.16852,42.33729],[-71.16851,42.33728],[-71.1685,42.33726],[-71.16849,42.33724],[-71.16848,42.33721],[-71.16847,42.33717],[-71.16844,42.3371],[-71.1684,42.337],[-71.16837,42.33692],[-71.16831,42.33676],[-71.16828,42.33666],[-71.16824,42.33656],[-71.16816,42.33633],[-71.16811,42.33619],[-71.16809,42.33613],[-71.16808,42.3361],[-71.16807,42.33607],[-71.16805,42.33605],[-71.16803,42.33602],[-71.16799,42.33598],[-71.16797,42.33596],[-71.16788,42.33592],[-71.16786,42.33591],[-71.16783,42.33591],[-71.1678,42.3359],[-71.16777,42.3359],[-71.16773,42.3359],[-71.16769,42.3359],[-71.16765,42.33591],[-71.16759,42.33591],[-71.16758,42.33592],[-71.1675,42.33594],[-71.16718,42.33606],[-71.16718,42.33606],[-71.1671,42.33609],[-71.16701,42.33612],[-71.16693,42.33615],[-71.16683,42.33618],[-71.16676,42.3362],[-71.16665,42.33622],[-71.1665,42.33623],[-71.16635,42.33623],[-71.16626,42.33622],[-71.16622,42.33622],[-71.16615,42.33621],[-71.16611,42.3362],[-71.16606,42.33619],[-71.16595,42.33617],[-71.16585,42.33614],[-71.16577,42.33611],[-71.16575,42.3361],[-71.16571,42.33609],[-71.1656,42.33603],[-71.16553,42.33598],[-71.16543,42.33589],[-71.16524,42.33577],[-71.16507,42.33573],[-71.16481,42.33566],[-71.16456,42.33559],[-71.16444,42.33556],[-71.16434,42.33553],[-71.16431,42.33552],[-71.16407,42.33546],[-71.16363,42.33534],[-71.16349,42.33531],[-71.16344,42.3353],[-71.1633,42.33526],[-71.16323,42.33524],[-71.16317,42.33524],[-71.16311,42.33525],[-71.16305,42.33526],[-71.16296,42.33528],[-71.16296,42.33528],[-71.16287,42.33516],[-71.1628,42.33507],[-71.16272,42.33494],[-71.1626,42.33477],[-71.16258,42.33474],[-71.1625,42.33462],[-71.16245,42.33455],[-71.16242,42.33448],[-71.16239,42.33435],[-71.16239,42.33435],[-71.16242,42.33426],[-71.16245,42.33422],[-71.16249,42.33417],[-71.16255,42.3341],[-71.16261,42.33406],[-71.1627,42.33397],[-71.16291,42.33395],[-71.16303,42.33393],[-71.16319,42.33392],[-71.16347,42.33389],[-71.16363,42.33387],[-71.1644,42.33379],[-71.16447,42.33378],[-71.16468,42.33376],[-71.16471,42.33376],[-71.16474,42.33375],[-71.16475,42.33375],[-71.16479,42.33374],[-71.1652,42.3337],[-71.16546,42.33367],[-71.16603,42.3336],[-71.16623,42.33358],[-71.1668,42.33351],[-71.16761,42.33343],[-71.16768,42.33343],[-71.16777,42.33342],[-71.16803,42.33339],[-71.169,42.33328],[-71.16934,42.33324],[-71.16969,42.3332],[-71.16993,42.33318],[-71.17043,42.33312],[-71.17067,42.33309],[-71.1708,42.33308],[-71.1708,42.33308],[-71.17103,42.33305],[-71.17126,42.33303],[-71.17174,42.33298],[-71.17199,42.33295],[-71.17223,42.33292],[-71.17278,42.33287],[-71.17325,42.33281],[-71.17343,42.33279],[-71.17356,42.33277],[-71.17359,42.33277],[-71.17384,42.33273],[-71.17405,42.3327],[-71.17449,42.33266],[-71.17487,42.33261],[-71.17501,42.33259],[-71.1751,42.33257],[-71.17518,42.33256],[-71.1753,42.33253],[-71.17547,42.33248],[-71.1756,42.33243],[-71.17568,42.3324],[-71.17585,42.33232],[-71.17603,42.33225],[-71.17605,42.33224],[-71.17622,42.33218],[-71.17629,42.33215],[-71.17638,42.33213],[-71.17648,42.3321],[-71.17654,42.33208],[-71.17659,42.33208],[-71.17669,42.33206],[-71.17677,42.33205],[-71.17678,42.33205],[-71.17686,42.33204],[-71.17695,42.33204],[-71.17702,42.33204],[-71.17704,42.33204],[-71.17717,42.33204],[-71.17727,42.33205],[-71.1774,42.33207],[-71.1775,42.33208],[-71.17762,42.33211],[-71.17773,42.33213],[-71.17774,42.33214],[-71.17784,42.33217],[-71.17797,42.3322],[-71.17814,42.33225],[-71.17819,42.33226],[-71.17826,42.33229],[-71.17838,42.33232],[-71.17849,42.33235],[-71.17858,42.33237],[-71.17872,42.33239],[-71.17873,42.33239],[-71.17884,42.33241],[-71.17895,42.33241],[-71.17907,42.33242],[-71.17917,42.33241],[-71.1792,42.33241],[-71.17926,42.33241],[-71.17939,42.3324],[-71.17953,42.33238],[-71.17965,42.33236],[-71.17982,42.33234],[-71.17998,42.33231],[-71.18043,42.33225],[-71.18087,42.33218],[-71.18121,42.33213],[-71.18121,42.33213],[-71.18116,42.33207],[-71.1811,42.332],[-71.18104,42.33193],[-71.18101,42.33189],[-71.18091,42.33177],[-71.18079,42.33164],[-71.18063,42.33148],[-71.18055,42.3314],[-71.18033,42.33118],[-71.18019,42.33104],[-71.18005,42.3309],[-71.17991,42.33075],[-71.17983,42.33066],[-71.17977,42.3306],[-71.17962,42.33046],[-71.17952,42.33035],[-71.17934,42.33017],[-71.17922,42.33004],[-71.17894,42.32976],[-71.17892,42.32973],[-71.17862,42.32944],[-71.17843,42.32925],[-71.17815,42.32896],[-71.17812,42.32893],[-71.17781,42.32861],[-71.17773,42.32853],[-71.17762,42.32842],[-71.17753,42.32833],[-71.1774,42.32821],[-71.17736,42.32818],[-71.17728,42.32811],[-71.17719,42.32803],[-71.17705,42.32792],[-71.17704,42.32791],[-71.17695,42.32784],[-71.17681,42.32774],[-71.17666,42.32762],[-71.17652,42.32752],[-71.17641,42.32741],[-71.1763,42.32732],[-71.17622,42.32724],[-71.17619,42.32721],[-71.17613,42.32714],[-71.17604,42.32703],[-71.17597,42.32694],[-71.17591,42.32684],[-71.17584,42.32672],[-71.17578,42.3266],[-71.17573,42.32647],[-71.17569,42.32636],[-71.17566,42.32627],[-71.17564,42.32614],[-71.17562,42.326],[-71.17562,42.32599],[-71.1756,42.32591],[-71.1756,42.32578],[-71.17562,42.32567],[-71.17563,42.32561],[-71.17564,42.32555],[-71.17567,42.32541],[-71.17571,42.32528],[-71.17578,42.32511],[-71.17582,42.32504],[-71.17591,42.32485],[-71.17594,42.32479],[-71.17599,42.32473],[-71.17605,42.32465],[-71.17608,42.32462],[-71.17611,42.32458],[-71.17618,42.3245],[-71.17635,42.32429],[-71.17645,42.32417],[-71.17654,42.32407],[-71.17663,42.32396],[-71.17663,42.32396],[-71.17667,42.32394],[-71.1767,42.32389],[-71.17694,42.32393],[-71.17741,42.324],[-71.17765,42.32404],[-71.17789,42.32407],[-71.17811,42.3241],[-71.17823,42.32411],[-71.17825,42.3241],[-71.17827,42.3241],[-71.17828,42.3241],[-71.17829,42.32409],[-71.1783,42.32409],[-71.17832,42.32408],[-71.17833,42.32407],[-71.17835,42.32406],[-71.1784,42.32402],[-71.17845,42.32394],[-71.17845,42.32383],[-71.17848,42.32357],[-71.17848,42.32298],[-71.17847,42.32271],[-71.17847,42.32271],[-71.1782,42.32272],[-71.1782,42.32272],[-71.17819,42.32272],[-71.17819,42.3227],[-71.1782,42.32268],[-71.1782,42.32265],[-71.17818,42.32232],[-71.17818,42.32231],[-71.17818,42.3223],[-71.17817,42.3223],[-71.17816,42.32229],[-71.17815,42.32229],[-71.17814,42.32228],[-71.17812,42.32228],[-71.17795,42.32225],[-71.17795,42.32225],[-71.17796,42.32199],[-71.17796,42.32196],[-71.17795,42.32195],[-71.17795,42.32194],[-71.17794,42.32192],[-71.17793,42.32191],[-71.17792,42.3219],[-71.1779,42.3219],[-71.17788,42.32189],[-71.17787,42.32189],[-71.17775,42.32189],[-71.17775,42.32189],[-71.17759,42.32189],[-71.17759,42.32189],[-71.17757,42.3217],[-71.17757,42.32166],[-71.17758,42.32154],[-71.17758,42.32151],[-71.17758,42.32148],[-71.17759,42.32144],[-71.17761,42.32139],[-71.17763,42.32135],[-71.17765,42.32129],[-71.17767,42.32125],[-71.17771,42.32116],[-71.17772,42.32116],[-71.17776,42.32109],[-71.17779,42.32101],[-71.17782,42.32092],[-71.17782,42.32085],[-71.17781,42.3208],[-71.1778,42.32065],[-71.1778,42.32062],[-71.17778,42.32031],[-71.17777,42.32027],[-71.17776,42.32024],[-71.17773,42.32015],[-71.17768,42.32002],[-71.1776,42.31985],[-71.17755,42.31975],[-71.17755,42.31975],[-71.17751,42.3197],[-71.17748,42.31967],[-71.1774,42.31963],[-71.17713,42.31969],[-71.17713,42.31969],[-71.17559,42.3202],[-71.17536,42.32011],[-71.17513,42.31982],[-71.17618,42.31947],[-71.17618,42.31947],[-71.17641,42.31939],[-71.17659,42.31932],[-71.17667,42.3193],[-71.17686,42.31924],[-71.17686,42.31924],[-71.17688,42.31928],[-71.17703,42.31954],[-71.17712,42.31971],[-71.17712,42.31971],[-71.17645,42.31992],[-71.17638,42.31994],[-71.17611,42.32002],[-71.17564,42.32019],[-71.17561,42.3202],[-71.17549,42.32024],[-71.17534,42.3203],[-71.1753,42.32031],[-71.17512,42.32037],[-71.17457,42.32055],[-71.17437,42.32061],[-71.17431,42.32063],[-71.17409,42.32069],[-71.17351,42.32085],[-71.17292,42.32101],[-71.17263,42.32109],[-71.17239,42.32116],[-71.17217,42.32122],[-71.17216,42.32122],[-71.17161,42.32138],[-71.1714,42.32143],[-71.17096,42.32154],[-71.17078,42.32158],[-71.17054,42.32164],[-71.16997,42.32179],[-71.16936,42.32196],[-71.16891,42.32209],[-71.16855,42.32218],[-71.16841,42.32222],[-71.16828,42.32225],[-71.16799,42.32233],[-71.16755,42.32245],[-71.16721,42.32254],[-71.16678,42.32265],[-71.16633,42.32277],[-71.16605,42.32284],[-71.16592,42.32287],[-71.16567,42.32294],[-71.16535,42.32302],[-71.16515,42.32308],[-71.16515,42.32308],[-71.16505,42.32311],[-71.16511,42.32322],[-71.16516,42.32327],[-71.16518,42.32328],[-71.1652,42.32329],[-71.16522,42.3233],[-71.16526,42.32331],[-71.16535,42.32332],[-71.16545,42.32332],[-71.16559,42.3233],[-71.16603,42.32318],[-71.16636,42.3231],[-71.16649,42.32306],[-71.16649,42.32306],[-71.16664,42.32301],[-71.16671,42.32298],[-71.1668,42.32295],[-71.16717,42.32286],[-71.16729,42.3228],[-71.16737,42.32278],[-71.16769,42.3227],[-71.1678,42.32268],[-71.16822,42.32259],[-71.16835,42.32255],[-71.16902,42.32237],[-71.1691,42.32235],[-71.16965,42.32222],[-71.16965,42.32222],[-71.17064,42.32197],[-71.17066,42.32197],[-71.17068,42.32196],[-71.171,42.32198],[-71.17108,42.32199],[-71.17129,42.32198],[-71.17166,42.32192],[-71.17168,42.32191],[-71.1721,42.32184],[-71.17212,42.32184],[-71.17213,42.32184],[-71.17214,42.32184],[-71.17215,42.32185],[-71.17215,42.32185],[-71.17238,42.3218],[-71.17251,42.32177],[-71.17251,42.32177],[-71.17255,42.32184],[-71.17264,42.32198],[-71.17267,42.32202],[-71.17275,42.32209],[-71.17292,42.32223],[-71.173,42.32227],[-71.17301,42.32228],[-71.17311,42.32233],[-71.17321,42.32236],[-71.17328,42.32237],[-71.17337,42.32239],[-71.17341,42.3224],[-71.17353,42.32241],[-71.1737,42.32241],[-71.17387,42.32239],[-71.17404,42.32236],[-71.17421,42.32232],[-71.17437,42.32228],[-71.17457,42.32224],[-71.17478,42.32224],[-71.17501,42.32224],[-71.17517,42.32226],[-71.17531,42.32229],[-71.17541,42.32231],[-71.17555,42.32235],[-71.17563,42.32238],[-71.17566,42.32239],[-71.17571,42.32241],[-71.17584,42.32247],[-71.17586,42.32248],[-71.1759,42.3225],[-71.17595,42.32253],[-71.17603,42.32258],[-71.17605,42.3226],[-71.17616,42.32267],[-71.17622,42.32273],[-71.17625,42.32276],[-71.17631,42.32282],[-71.17639,42.3229],[-71.1764,42.32291],[-71.17647,42.32301],[-71.17648,42.32303],[-71.17654,42.32313],[-71.17658,42.32322],[-71.1766,42.3233],[-71.17662,42.32338],[-71.17663,42.32347],[-71.17663,42.32358],[-71.17663,42.32376],[-71.1766,42.32387],[-71.17663,42.32396],[-71.17654,42.32407],[-71.17645,42.32417],[-71.17635,42.32429],[-71.17618,42.3245],[-71.17611,42.32458],[-71.17608,42.32462],[-71.17605,42.32465],[-71.17599,42.32473],[-71.17594,42.32479],[-71.17591,42.32485],[-71.17582,42.32504],[-71.17578,42.32511],[-71.17571,42.32528],[-71.17567,42.32541],[-71.17564,42.32555],[-71.17563,42.32561],[-71.17562,42.32567],[-71.1756,42.32578],[-71.1756,42.32591],[-71.17562,42.32599],[-71.17562,42.326],[-71.17564,42.32614],[-71.17566,42.32627],[-71.17569,42.32636],[-71.17573,42.32647],[-71.17578,42.3266],[-71.17584,42.32672],[-71.17591,42.32684],[-71.17597,42.32694],[-71.17604,42.32703],[-71.17613,42.32714],[-71.17619,42.32721],[-71.17622,42.32724],[-71.1763,42.32732],[-71.17641,42.32741],[-71.17652,42.32752],[-71.17666,42.32762],[-71.17681,42.32774],[-71.17695,42.32784],[-71.17704,42.32791],[-71.17705,42.32792],[-71.17719,42.32803],[-71.17728,42.32811],[-71.17736,42.32818],[-71.1774,42.32821],[-71.17753,42.32833],[-71.17762,42.32842],[-71.17773,42.32853],[-71.17781,42.32861],[-71.17812,42.32893],[-71.17815,42.32896],[-71.17843,42.32925],[-71.17862,42.32944],[-71.17892,42.32973],[-71.17894,42.32976],[-71.17922,42.33004],[-71.17934,42.33017],[-71.17952,42.33035],[-71.17962,42.33046],[-71.17977,42.3306],[-71.17983,42.33066],[-71.17991,42.33075],[-71.18005,42.3309],[-71.18019,42.33104],[-71.18033,42.33118],[-71.18055,42.3314],[-71.18063,42.33148],[-71.18079,42.33164],[-71.18091,42.33177],[-71.18101,42.33189],[-71.18101,42.33189],[-71.18097,42.33197],[-71.18097,42.332],[-71.18096,42.33203],[-71.18095,42.33205],[-71.18093,42.33208],[-71.18087,42.33218],[-71.18043,42.33225],[-71.17998,42.33231],[-71.17982,42.33234],[-71.17965,42.33236],[-71.17953,42.33238],[-71.17939,42.3324],[-71.17926,42.33241],[-71.1792,42.33241],[-71.17917,42.33241],[-71.17907,42.33242],[-71.17895,42.33241],[-71.17884,42.33241],[-71.17873,42.33239],[-71.17872,42.33239],[-71.17858,42.33237],[-71.17849,42.33235],[-71.17838,42.33232],[-71.17826,42.33229],[-71.17819,42.33226],[-71.17814,42.33225],[-71.17797,42.3322],[-71.17784,42.33217],[-71.17774,42.33214],[-71.17773,42.33213],[-71.17762,42.33211],[-71.1775,42.33208],[-71.1774,42.33207],[-71.17727,42.33205],[-71.17717,42.33204],[-71.17704,42.33204],[-71.17702,42.33204],[-71.17695,42.33204],[-71.17686,42.33204],[-71.17678,42.33205],[-71.17677,42.33205],[-71.17669,42.33206],[-71.17659,42.33208],[-71.17654,42.33208],[-71.17648,42.3321],[-71.17638,42.33213],[-71.17629,42.33215],[-71.17622,42.33218],[-71.17605,42.33224],[-71.17603,42.33225],[-71.17585,42.33232],[-71.17568,42.3324],[-71.1756,42.33243],[-71.17547,42.33248],[-71.1753,42.33253],[-71.17518,42.33256],[-71.1751,42.33257],[-71.17501,42.33259],[-71.17487,42.33261],[-71.17449,42.33266],[-71.17405,42.3327],[-71.17384,42.33273],[-71.17359,42.33277],[-71.17356,42.33277],[-71.17343,42.33279],[-71.17325,42.33281],[-71.17278,42.33287],[-71.17278,42.33287],[-71.17303,42.33308],[-71.17303,42.33308],[-71.17295,42.33317],[-71.17287,42.33329],[-71.17281,42.33335],[-71.17268,42.3335],[-71.17258,42.33362],[-71.1725,42.3337],[-71.17244,42.33377],[-71.17218,42.33407],[-71.17205,42.33421],[-71.17182,42.33447],[-71.17178,42.33451],[-71.17175,42.33456],[-71.17174,42.33459],[-71.17173,42.33462],[-71.17171,42.33467],[-71.1717,42.3348],[-71.17167,42.33499],[-71.17163,42.33524],[-71.17163,42.33524],[-71.1716,42.33542],[-71.17156,42.33566],[-71.17155,42.33572],[-71.17155,42.33575],[-71.17155,42.33579],[-71.17157,42.33591],[-71.17158,42.33596],[-71.17158,42.33599],[-71.1716,42.33607],[-71.17165,42.33625],[-71.17166,42.3363],[-71.17173,42.33646],[-71.17186,42.33669],[-71.17195,42.33683],[-71.17207,42.33701],[-71.17221,42.33718],[-71.17221,42.33718],[-71.17245,42.33712],[-71.17263,42.33709],[-71.17284,42.33707],[-71.17303,42.33706],[-71.17318,42.33707],[-71.17333,42.33708],[-71.17354,42.33711],[-71.17385,42.33716],[-71.17434,42.33724],[-71.17446,42.33725],[-71.1746,42.33727],[-71.17471,42.33727],[-71.17488,42.33727],[-71.17503,42.33727],[-71.17536,42.33723],[-71.17566,42.33718],[-71.17567,42.33718],[-71.17577,42.33715],[-71.17583,42.33714],[-71.17588,42.33712],[-71.17602,42.33707],[-71.17609,42.33705],[-71.17615,42.33703],[-71.17627,42.33697],[-71.17639,42.33691],[-71.17644,42.33688],[-71.17651,42.33685],[-71.17666,42.33677],[-71.17672,42.33673],[-71.17678,42.3367],[-71.17682,42.33668],[-71.17685,42.33666],[-71.17691,42.33663],[-71.17694,42.33661],[-71.17707,42.33655],[-71.17739,42.3364],[-71.17757,42.33632],[-71.17769,42.33627],[-71.17791,42.3362],[-71.17803,42.33617],[-71.17817,42.33614],[-71.17831,42.33612],[-71.17856,42.33612],[-71.1787,42.33611],[-71.17889,42.33613],[-71.17917,42.33614],[-71.17927,42.33616],[-71.17973,42.33621],[-71.17987,42.33623],[-71.18,42.33624],[-71.18015,42.33626],[-71.18055,42.33631],[-71.18098,42.33636],[-71.18114,42.33638],[-71.18138,42.33641],[-71.18186,42.33646],[-71.18195,42.33648],[-71.18211,42.33649],[-71.18241,42.33653],[-71.18262,42.33655],[-71.18281,42.33656],[-71.18285,42.33657],[-71.18314,42.33659],[-71.18339,42.3366],[-71.18354,42.33661],[-71.18355,42.33661],[-71.18386,42.33662],[-71.18403,42.33662],[-71.18439,42.33663],[-71.18476,42.33662],[-71.18498,42.3366],[-71.18517,42.33658],[-71.18521,42.33657],[-71.18565,42.33651],[-71.1859,42.33648],[-71.18613,42.33645],[-71.1865,42.33641],[-71.18652,42.3364],[-71.18662,42.33639],[-71.18671,42.33638],[-71.1871,42.33633],[-71.18712,42.33633],[-71.18748,42.33631],[-71.18795,42.33628],[-71.18876,42.33623],[-71.18935,42.33621],[-71.18995,42.3362],[-71.19068,42.3362],[-71.19073,42.3362],[-71.19087,42.3362],[-71.1914,42.3362],[-71.19206,42.3362],[-71.1922,42.33619],[-71.19221,42.33619],[-71.19227,42.33618],[-71.19237,42.33617],[-71.19255,42.33615],[-71.19263,42.33614],[-71.19286,42.33612],[-71.19308,42.33607],[-71.19336,42.336],[-71.19336,42.336],[-71.19335,42.33608],[-71.19332,42.33617],[-71.19331,42.33622],[-71.19326,42.33651],[-71.19317,42.33719],[-71.19316,42.33724],[-71.19311,42.33758],[-71.19303,42.33813],[-71.19282,42.33948],[-71.1928,42.33958],[-71.19268,42.34035],[-71.19264,42.34057],[-71.19259,42.34082],[-71.19257,42.34092],[-71.19254,42.341],[-71.1925,42.34109],[-71.19245,42.34118],[-71.1924,42.34127],[-71.19236,42.34133],[-71.19228,42.34143],[-71.19222,42.34149],[-71.19207,42.34164],[-71.19193,42.34177],[-71.19193,42.34177],[-71.19243,42.34204],[-71.19243,42.34204],[-71.19261,42.34192],[-71.19265,42.34186],[-71.19266,42.34181],[-71.19267,42.34171],[-71.19269,42.3416],[-71.19271,42.34148],[-71.19275,42.3414],[-71.19281,42.34132],[-71.19283,42.3413],[-71.19286,42.34128],[-71.19292,42.34125],[-71.19298,42.34122],[-71.19305,42.3412],[-71.1931,42.3412],[-71.19315,42.34119],[-71.19321,42.3412],[-71.19329,42.34121],[-71.19352,42.34125],[-71.1937,42.34128],[-71.1938,42.3413],[-71.19408,42.34133]]},{"id":12,"name":"Law School Express (morning)","tracker":"Law Express - AM","color":"#8CB811","loop":false,"service":[{"days":[1,2,3,4,5],"from":"06:55","to":"09:25","every":45}],"stops":[{"name":"Reservoir MBTA stop","lonlat":[-71.148891,42.335054],"rideToNext":599,"dwell":10,"at":0},{"name":"Chestnut Hill Ave","lonlat":[-71.151027,42.336106],"rideToNext":68,"dwell":0,"at":25},{"name":"Commonwealth Ave @ Chestnut Hill Ave.","lonlat":[-71.15408,42.338326],"rideToNext":46,"dwell":0,"at":54},{"name":"South Street","lonlat":[-71.157531,42.339738],"rideToNext":38,"dwell":0,"at":75},{"name":"Greycliff Hall","lonlat":[-71.161684,42.340238],"rideToNext":451,"dwell":0,"at":91},{"name":"Stuart Hall Loading Dock","lonlat":[-71.194075,42.341378],"rideToNext":725,"dwell":0,"at":324}],"line":[[-71.1488,42.33483],[-71.14891,42.3347],[-71.14891,42.3347],[-71.14917,42.33482],[-71.14928,42.33487],[-71.14936,42.33491],[-71.14937,42.33492],[-71.14943,42.33495],[-71.14952,42.33499],[-71.14964,42.33506],[-71.14972,42.3351],[-71.14985,42.33516],[-71.14986,42.33517],[-71.14997,42.33523],[-71.15001,42.33526],[-71.15003,42.33527],[-71.15004,42.33528],[-71.15019,42.33537],[-71.15028,42.33544],[-71.15039,42.33552],[-71.15042,42.33555],[-71.15051,42.33563],[-71.15059,42.33571],[-71.1508,42.33592],[-71.15092,42.33604],[-71.15105,42.33617],[-71.15107,42.33619],[-71.15113,42.33624],[-71.15118,42.33628],[-71.15123,42.33632],[-71.15129,42.33636],[-71.15145,42.3365],[-71.15188,42.33684],[-71.15203,42.33696],[-71.15209,42.337],[-71.15209,42.337],[-71.15229,42.33717],[-71.15254,42.3374],[-71.15305,42.33784],[-71.15307,42.33787],[-71.15317,42.33797],[-71.15321,42.33802],[-71.15321,42.33802],[-71.15339,42.33818],[-71.1535,42.33818],[-71.15356,42.33817],[-71.15359,42.33817],[-71.15362,42.33817],[-71.15379,42.33818],[-71.1539,42.33819],[-71.154,42.33821],[-71.15404,42.33822],[-71.15413,42.33825],[-71.15413,42.33825],[-71.15415,42.33826],[-71.15429,42.33831],[-71.15442,42.33835],[-71.15455,42.3384],[-71.15469,42.33846],[-71.15481,42.33851],[-71.15494,42.33857],[-71.15508,42.33863],[-71.15509,42.33864],[-71.15522,42.3387],[-71.15534,42.33876],[-71.15546,42.33882],[-71.15558,42.33888],[-71.15584,42.339],[-71.15608,42.33911],[-71.15623,42.33917],[-71.15648,42.33928],[-71.1565,42.33928],[-71.15676,42.33938],[-71.15726,42.33955],[-71.15729,42.33956],[-71.15758,42.33964],[-71.15758,42.33964],[-71.15782,42.33971],[-71.15835,42.33983],[-71.15866,42.3399],[-71.15898,42.33996],[-71.15936,42.34001],[-71.15975,42.34007],[-71.16006,42.3401],[-71.16032,42.34012],[-71.16035,42.34012],[-71.16059,42.34014],[-71.16106,42.34015],[-71.1613,42.34016],[-71.16143,42.34017],[-71.16162,42.34018],[-71.16169,42.34018],[-71.16169,42.34018],[-71.16205,42.34019],[-71.1626,42.34021],[-71.16308,42.34022],[-71.16341,42.34023],[-71.16355,42.34023],[-71.16393,42.34024],[-71.16403,42.34024],[-71.16414,42.34024],[-71.16421,42.34024],[-71.16428,42.34024],[-71.16443,42.34024],[-71.16457,42.34023],[-71.16471,42.34023],[-71.16505,42.34021],[-71.16567,42.34014],[-71.16614,42.34009],[-71.1665,42.34006],[-71.16652,42.34006],[-71.16659,42.34005],[-71.16671,42.34003],[-71.16683,42.34],[-71.167,42.33997],[-71.16733,42.33991],[-71.16774,42.33976],[-71.16817,42.33961],[-71.16824,42.33959],[-71.16827,42.33957],[-71.1683,42.33955],[-71.16832,42.33955],[-71.16834,42.33954],[-71.16839,42.33952],[-71.16855,42.33947],[-71.16887,42.33937],[-71.16917,42.33927],[-71.16937,42.3392],[-71.16952,42.33914],[-71.16966,42.33908],[-71.16977,42.33903],[-71.17,42.33891],[-71.17011,42.33885],[-71.1702,42.3388],[-71.17028,42.33875],[-71.17035,42.3387],[-71.17036,42.33869],[-71.17044,42.33863],[-71.17053,42.33857],[-71.17061,42.33851],[-71.17068,42.33845],[-71.17075,42.33839],[-71.1708,42.33835],[-71.17105,42.3381],[-71.17111,42.33804],[-71.17117,42.33799],[-71.17131,42.33785],[-71.17134,42.33782],[-71.17139,42.33778],[-71.17144,42.33773],[-71.17148,42.33769],[-71.17187,42.33737],[-71.17212,42.33722],[-71.17221,42.33718],[-71.17245,42.33712],[-71.17263,42.33709],[-71.17284,42.33707],[-71.17303,42.33706],[-71.17318,42.33707],[-71.17333,42.33708],[-71.17354,42.33711],[-71.17385,42.33716],[-71.17434,42.33724],[-71.17446,42.33725],[-71.1746,42.33727],[-71.17471,42.33727],[-71.17488,42.33727],[-71.17503,42.33727],[-71.17536,42.33723],[-71.17566,42.33718],[-71.17567,42.33718],[-71.17577,42.33715],[-71.17583,42.33714],[-71.17588,42.33712],[-71.17602,42.33707],[-71.17609,42.33705],[-71.17615,42.33703],[-71.17627,42.33697],[-71.17639,42.33691],[-71.17644,42.33688],[-71.17651,42.33685],[-71.17666,42.33677],[-71.17672,42.33673],[-71.17678,42.3367],[-71.17682,42.33668],[-71.17685,42.33666],[-71.17691,42.33663],[-71.17694,42.33661],[-71.17707,42.33655],[-71.17739,42.3364],[-71.17757,42.33632],[-71.17769,42.33627],[-71.17791,42.3362],[-71.17803,42.33617],[-71.17817,42.33614],[-71.17831,42.33612],[-71.17856,42.33612],[-71.1787,42.33611],[-71.17889,42.33613],[-71.17917,42.33614],[-71.17927,42.33615],[-71.17973,42.33619],[-71.17987,42.33621],[-71.18,42.33622],[-71.18015,42.33624],[-71.18055,42.33629],[-71.18098,42.33635],[-71.18114,42.33637],[-71.18138,42.3364],[-71.18195,42.33648],[-71.18211,42.33649],[-71.18241,42.33653],[-71.18262,42.33655],[-71.18285,42.33657],[-71.18314,42.33659],[-71.18339,42.3366],[-71.18354,42.33661],[-71.18355,42.33661],[-71.18386,42.33662],[-71.18439,42.33663],[-71.18476,42.33662],[-71.18498,42.3366],[-71.18517,42.33658],[-71.18521,42.33657],[-71.18565,42.33651],[-71.1859,42.33647],[-71.18613,42.33644],[-71.18649,42.3364],[-71.18652,42.33639],[-71.18662,42.33638],[-71.18671,42.33637],[-71.1871,42.33633],[-71.18712,42.33633],[-71.18748,42.33631],[-71.18795,42.33628],[-71.18876,42.33623],[-71.18935,42.33621],[-71.18995,42.3362],[-71.19068,42.33621],[-71.19073,42.33621],[-71.19087,42.33621],[-71.1914,42.3362],[-71.19206,42.3362],[-71.1922,42.33619],[-71.19221,42.33619],[-71.19227,42.33618],[-71.19237,42.33617],[-71.19255,42.33615],[-71.19263,42.33614],[-71.19286,42.33612],[-71.19308,42.33608],[-71.19336,42.336],[-71.19336,42.336],[-71.19335,42.33608],[-71.19332,42.33617],[-71.19331,42.33622],[-71.19326,42.33651],[-71.19317,42.33719],[-71.19316,42.33724],[-71.19311,42.33758],[-71.19302,42.33813],[-71.19282,42.33947],[-71.1928,42.33958],[-71.19267,42.34035],[-71.19264,42.34057],[-71.1926,42.34081],[-71.19257,42.34092],[-71.19254,42.341],[-71.1925,42.34109],[-71.19245,42.34118],[-71.1924,42.34127],[-71.19236,42.34133],[-71.19228,42.34143],[-71.19222,42.34149],[-71.19207,42.34164],[-71.19193,42.34177],[-71.19193,42.34177],[-71.19242,42.34205],[-71.19242,42.34205],[-71.19261,42.34192],[-71.19264,42.34186],[-71.19266,42.34181],[-71.19267,42.34171],[-71.19268,42.3416],[-71.19271,42.34148],[-71.19275,42.34139],[-71.19281,42.34132],[-71.19283,42.3413],[-71.19286,42.34127],[-71.19291,42.34124],[-71.19297,42.34121],[-71.19305,42.34119],[-71.1931,42.34118],[-71.19315,42.34118],[-71.19321,42.34119],[-71.19329,42.3412],[-71.19352,42.34124],[-71.1937,42.34128],[-71.1938,42.34129],[-71.19447,42.34139],[-71.19512,42.34146],[-71.19535,42.3415],[-71.19547,42.34153],[-71.19559,42.34158],[-71.19558,42.34161],[-71.19555,42.34163],[-71.19553,42.34165],[-71.19553,42.34168],[-71.19554,42.34171],[-71.19557,42.34175],[-71.19561,42.34177],[-71.19565,42.34178],[-71.19572,42.34177],[-71.19578,42.34173],[-71.19579,42.34167],[-71.19578,42.34164],[-71.19574,42.34161],[-71.1957,42.34159],[-71.19566,42.34158],[-71.19563,42.34159],[-71.19559,42.34159],[-71.1955,42.34155],[-71.19544,42.34152],[-71.1953,42.34149],[-71.19409,42.34133],[-71.19409,42.34133],[-71.1938,42.34129],[-71.1937,42.34128],[-71.19352,42.34124],[-71.19329,42.3412],[-71.19321,42.34119],[-71.19315,42.34118],[-71.1931,42.34118],[-71.19305,42.34119],[-71.19297,42.34121],[-71.19291,42.34124],[-71.19286,42.34127],[-71.19283,42.3413],[-71.19281,42.34132],[-71.19275,42.34139],[-71.19271,42.34148],[-71.19268,42.3416],[-71.19267,42.34171],[-71.19266,42.34181],[-71.19264,42.34186],[-71.19261,42.34192],[-71.19242,42.34205],[-71.19242,42.34205],[-71.19193,42.34177],[-71.19193,42.34177],[-71.19207,42.34164],[-71.19222,42.34149],[-71.19228,42.34143],[-71.19236,42.34133],[-71.1924,42.34127],[-71.19245,42.34118],[-71.1925,42.34109],[-71.19254,42.341],[-71.19257,42.34092],[-71.1926,42.34081],[-71.19264,42.34057],[-71.19267,42.34035],[-71.1928,42.33958],[-71.19282,42.33947],[-71.19302,42.33813],[-71.19311,42.33758],[-71.19316,42.33724],[-71.19317,42.33719],[-71.19326,42.33651],[-71.19331,42.33622],[-71.19332,42.33617],[-71.19335,42.33608],[-71.19336,42.336],[-71.19336,42.336],[-71.19308,42.33608],[-71.19286,42.33612],[-71.19263,42.33614],[-71.19255,42.33615],[-71.19237,42.33617],[-71.19227,42.33618],[-71.19221,42.33619],[-71.1922,42.33619],[-71.19206,42.3362],[-71.1914,42.3362],[-71.19087,42.33621],[-71.19073,42.33621],[-71.19068,42.33621],[-71.18995,42.3362],[-71.18935,42.33621],[-71.18876,42.33623],[-71.18795,42.33628],[-71.18748,42.33631],[-71.18712,42.33633],[-71.1871,42.33633],[-71.18671,42.33637],[-71.18662,42.33638],[-71.18652,42.33639],[-71.18649,42.3364],[-71.18613,42.33644],[-71.1859,42.33647],[-71.18565,42.33651],[-71.18521,42.33657],[-71.18517,42.33658],[-71.18498,42.3366],[-71.18476,42.33662],[-71.18439,42.33663],[-71.18386,42.33662],[-71.18355,42.33661],[-71.18354,42.33661],[-71.18339,42.3366],[-71.18314,42.33659],[-71.18285,42.33657],[-71.18262,42.33655],[-71.18241,42.33653],[-71.18211,42.33649],[-71.18195,42.33648],[-71.18138,42.3364],[-71.18114,42.33637],[-71.18098,42.33635],[-71.18055,42.33629],[-71.18015,42.33624],[-71.18,42.33622],[-71.17987,42.33621],[-71.17973,42.33619],[-71.17927,42.33615],[-71.17917,42.33614],[-71.17889,42.33613],[-71.1787,42.33611],[-71.17856,42.33612],[-71.17831,42.33612],[-71.17817,42.33614],[-71.17803,42.33617],[-71.17791,42.3362],[-71.17769,42.33627],[-71.17757,42.33632],[-71.17739,42.3364],[-71.17707,42.33655],[-71.17694,42.33661],[-71.17691,42.33663],[-71.17685,42.33666],[-71.17682,42.33668],[-71.17678,42.3367],[-71.17672,42.33673],[-71.17666,42.33677],[-71.17651,42.33685],[-71.17644,42.33688],[-71.17639,42.33691],[-71.17627,42.33697],[-71.17615,42.33703],[-71.17609,42.33705],[-71.17602,42.33707],[-71.17588,42.33712],[-71.17583,42.33714],[-71.17577,42.33715],[-71.17567,42.33718],[-71.17566,42.33718],[-71.17536,42.33723],[-71.17503,42.33727],[-71.17488,42.33727],[-71.17471,42.33727],[-71.1746,42.33727],[-71.17446,42.33725],[-71.17434,42.33724],[-71.17385,42.33716],[-71.17354,42.33711],[-71.17333,42.33708],[-71.17318,42.33707],[-71.17303,42.33706],[-71.17284,42.33707],[-71.17263,42.33709],[-71.17245,42.33712],[-71.17221,42.33718],[-71.17212,42.33722],[-71.17187,42.33737],[-71.17148,42.33769],[-71.17144,42.33773],[-71.17139,42.33778],[-71.17134,42.33782],[-71.17131,42.33785],[-71.17117,42.33799],[-71.17111,42.33804],[-71.17105,42.3381],[-71.1708,42.33835],[-71.17075,42.33839],[-71.17068,42.33845],[-71.17061,42.33851],[-71.17053,42.33857],[-71.17044,42.33863],[-71.17036,42.33869],[-71.17035,42.3387],[-71.17028,42.33875],[-71.1702,42.3388],[-71.17011,42.33885],[-71.17,42.33891],[-71.16977,42.33903],[-71.16966,42.33908],[-71.16952,42.33914],[-71.16937,42.3392],[-71.16917,42.33927],[-71.16887,42.33937],[-71.16855,42.33947],[-71.16839,42.33952],[-71.16834,42.33954],[-71.16832,42.33955],[-71.1683,42.33955],[-71.16822,42.33955],[-71.16819,42.33955],[-71.16817,42.33956],[-71.16814,42.33957],[-71.16813,42.33957],[-71.16806,42.33959],[-71.16796,42.33962],[-71.16784,42.33964],[-71.16757,42.3397],[-71.16734,42.33974],[-71.16701,42.3398],[-71.16677,42.33984],[-71.1667,42.33985],[-71.16662,42.33986],[-71.16645,42.33987],[-71.16612,42.33991],[-71.16597,42.33993],[-71.1658,42.33995],[-71.16558,42.33998],[-71.1654,42.33999],[-71.16534,42.34],[-71.16523,42.34001],[-71.16519,42.34001],[-71.16516,42.34001],[-71.16511,42.34001],[-71.1649,42.34003],[-71.16467,42.34004],[-71.16461,42.34004],[-71.16447,42.34005],[-71.16419,42.34005],[-71.16398,42.34006],[-71.16388,42.34006],[-71.16374,42.34006],[-71.16355,42.34005],[-71.16343,42.34005],[-71.16337,42.34005],[-71.16321,42.34005],[-71.16281,42.34003],[-71.16264,42.34003],[-71.16179,42.34],[-71.16177,42.34],[-71.16135,42.33999],[-71.16106,42.33998],[-71.16092,42.33998],[-71.16078,42.33998],[-71.16062,42.33997],[-71.16047,42.33996],[-71.16038,42.33996],[-71.16031,42.33995],[-71.16016,42.33994],[-71.16001,42.33993],[-71.15987,42.33992],[-71.1596,42.33988],[-71.1593,42.33984],[-71.15898,42.33979],[-71.15884,42.33977],[-71.15865,42.33973],[-71.15848,42.3397],[-71.15835,42.33967],[-71.15815,42.33962],[-71.158,42.33959],[-71.15789,42.33956],[-71.15768,42.3395],[-71.15751,42.33946],[-71.15735,42.33941],[-71.15722,42.33936],[-71.15708,42.33932],[-71.15694,42.33927],[-71.1568,42.33922],[-71.15666,42.33917],[-71.15654,42.33912],[-71.15637,42.33906],[-71.15625,42.33901],[-71.15613,42.33896],[-71.15589,42.33885],[-71.15537,42.33859],[-71.15517,42.33849],[-71.15506,42.33845],[-71.15497,42.33841],[-71.15489,42.33837],[-71.15475,42.33831],[-71.15462,42.33825],[-71.1545,42.33819],[-71.15438,42.33815],[-71.1543,42.33812],[-71.15422,42.33809],[-71.15413,42.33805],[-71.15403,42.33802],[-71.15399,42.33801],[-71.15396,42.33801],[-71.15395,42.338],[-71.15391,42.338],[-71.15374,42.33797],[-71.1536,42.33796],[-71.15351,42.33795],[-71.15348,42.33795],[-71.15347,42.33795],[-71.15346,42.33795],[-71.15345,42.33795],[-71.15344,42.33795],[-71.15342,42.33795],[-71.15329,42.33798],[-71.15327,42.33799],[-71.15325,42.338],[-71.15321,42.33802],[-71.15321,42.33802],[-71.15317,42.33797],[-71.15307,42.33787],[-71.15305,42.33784],[-71.15254,42.3374],[-71.15229,42.33717],[-71.15203,42.33696],[-71.15188,42.33684],[-71.15145,42.3365],[-71.15129,42.33636],[-71.15123,42.33632],[-71.15118,42.33628],[-71.15113,42.33624],[-71.15107,42.33619],[-71.15105,42.33617],[-71.15092,42.33604],[-71.15092,42.33604],[-71.1508,42.33592],[-71.15059,42.33571],[-71.15051,42.33563],[-71.15042,42.33555],[-71.15039,42.33552],[-71.15028,42.33544],[-71.15019,42.33537],[-71.15004,42.33528],[-71.15003,42.33527],[-71.15001,42.33526],[-71.14997,42.33523],[-71.14986,42.33517],[-71.14985,42.33516],[-71.14972,42.3351],[-71.14964,42.33506],[-71.14952,42.33499],[-71.14943,42.33495],[-71.14937,42.33492],[-71.14936,42.33491],[-71.14928,42.33487],[-71.14917,42.33482],[-71.14891,42.3347],[-71.14891,42.3347],[-71.1488,42.33483]]},{"id":13,"name":"Newton All Stops","tracker":"Newton Eagle All Stops","color":"#430000","loop":true,"service":[{"days":[1,2,3,4,5],"from":"18:00","to":"26:00","every":12},{"days":[0,6],"from":"11:00","to":"13:45","every":30},{"days":[0,6],"from":"13:45","to":"26:00","every":12}],"stops":[{"name":"Stuart","lonlat":[-71.193791,42.341133],"rideToNext":44,"dwell":10,"at":3},{"name":"Newton Main Gate","lonlat":[-71.192625,42.341653],"rideToNext":312,"dwell":10,"at":22},{"name":"Main Gate Chestnut Hill","lonlat":[-71.171094,42.337928],"rideToNext":126,"dwell":10,"at":161},{"name":"Robsham Theater","lonlat":[-71.169006,42.337958],"rideToNext":115,"dwell":10,"at":225},{"name":"Conte Forum","lonlat":[-71.167135,42.335986],"rideToNext":114,"dwell":10,"at":272},{"name":"McElroy – Beacon St.","lonlat":[-71.170819,42.333187],"rideToNext":75,"dwell":10,"at":354},{"name":"College Road","lonlat":[-71.1716,42.335236],"rideToNext":339,"dwell":10,"at":379},{"name":"Duchesne","lonlat":[-71.192611,42.343467],"rideToNext":143,"dwell":10,"at":544}],"line":[[-71.19389,42.34116],[-71.19387,42.34117],[-71.19385,42.34118],[-71.19383,42.34119],[-71.19382,42.34121],[-71.1938,42.34129],[-71.1938,42.34129],[-71.1937,42.34128],[-71.19352,42.34124],[-71.19329,42.3412],[-71.19321,42.34119],[-71.19315,42.34118],[-71.1931,42.34118],[-71.19305,42.34119],[-71.19297,42.34121],[-71.19291,42.34124],[-71.19286,42.34127],[-71.19283,42.3413],[-71.19281,42.34132],[-71.19275,42.34139],[-71.19271,42.34148],[-71.19268,42.3416],[-71.19267,42.34166],[-71.19267,42.34166],[-71.19267,42.34171],[-71.19266,42.34181],[-71.19264,42.34186],[-71.19261,42.34192],[-71.19242,42.34205],[-71.19242,42.34205],[-71.19193,42.34177],[-71.19193,42.34177],[-71.19207,42.34164],[-71.19222,42.34149],[-71.19228,42.34143],[-71.19236,42.34133],[-71.1924,42.34127],[-71.19245,42.34118],[-71.1925,42.34109],[-71.19254,42.341],[-71.19257,42.34092],[-71.1926,42.34081],[-71.19264,42.34057],[-71.19267,42.34035],[-71.1928,42.33958],[-71.19282,42.33947],[-71.19302,42.33813],[-71.19311,42.33758],[-71.19316,42.33724],[-71.19317,42.33719],[-71.19326,42.33651],[-71.19331,42.33622],[-71.19332,42.33617],[-71.19335,42.33608],[-71.19336,42.336],[-71.19336,42.336],[-71.19308,42.33608],[-71.19286,42.33612],[-71.19263,42.33614],[-71.19255,42.33615],[-71.19237,42.33617],[-71.19227,42.33618],[-71.19221,42.33619],[-71.1922,42.33619],[-71.19206,42.3362],[-71.1914,42.3362],[-71.19087,42.33621],[-71.19073,42.33621],[-71.19068,42.33621],[-71.18995,42.3362],[-71.18935,42.33621],[-71.18876,42.33623],[-71.18795,42.33628],[-71.18748,42.33631],[-71.18712,42.33633],[-71.1871,42.33633],[-71.18671,42.33637],[-71.18662,42.33638],[-71.18652,42.33639],[-71.18649,42.3364],[-71.18613,42.33644],[-71.1859,42.33647],[-71.18565,42.33651],[-71.18521,42.33657],[-71.18517,42.33658],[-71.18498,42.3366],[-71.18476,42.33662],[-71.18439,42.33663],[-71.18386,42.33662],[-71.18355,42.33661],[-71.18354,42.33661],[-71.18339,42.3366],[-71.18314,42.33659],[-71.18285,42.33657],[-71.18262,42.33655],[-71.18241,42.33653],[-71.18211,42.33649],[-71.18195,42.33648],[-71.18138,42.3364],[-71.18114,42.33637],[-71.18098,42.33635],[-71.18055,42.33629],[-71.18015,42.33624],[-71.18,42.33622],[-71.17987,42.33621],[-71.17973,42.33619],[-71.17927,42.33615],[-71.17917,42.33614],[-71.17889,42.33613],[-71.1787,42.33611],[-71.17856,42.33612],[-71.17831,42.33612],[-71.17817,42.33614],[-71.17803,42.33617],[-71.17791,42.3362],[-71.17769,42.33627],[-71.17757,42.33632],[-71.17739,42.3364],[-71.17707,42.33655],[-71.17694,42.33661],[-71.17691,42.33663],[-71.17685,42.33666],[-71.17682,42.33668],[-71.17678,42.3367],[-71.17672,42.33673],[-71.17666,42.33677],[-71.17651,42.33685],[-71.17644,42.33688],[-71.17639,42.33691],[-71.17627,42.33697],[-71.17615,42.33703],[-71.17609,42.33705],[-71.17602,42.33707],[-71.17588,42.33712],[-71.17583,42.33714],[-71.17577,42.33715],[-71.17567,42.33718],[-71.17566,42.33718],[-71.17536,42.33723],[-71.17503,42.33727],[-71.17488,42.33727],[-71.17471,42.33727],[-71.1746,42.33727],[-71.17446,42.33725],[-71.17434,42.33724],[-71.17385,42.33716],[-71.17354,42.33711],[-71.17333,42.33708],[-71.17318,42.33707],[-71.17303,42.33706],[-71.17284,42.33707],[-71.17263,42.33709],[-71.17245,42.33712],[-71.17221,42.33718],[-71.17212,42.33722],[-71.17187,42.33737],[-71.17148,42.33769],[-71.17144,42.33773],[-71.17139,42.33778],[-71.17134,42.33782],[-71.17131,42.33785],[-71.17117,42.33799],[-71.17117,42.33799],[-71.17111,42.33804],[-71.17105,42.3381],[-71.1708,42.33835],[-71.17075,42.33839],[-71.17068,42.33845],[-71.17061,42.33851],[-71.17053,42.33857],[-71.17044,42.33863],[-71.17036,42.33869],[-71.17035,42.3387],[-71.17028,42.33875],[-71.1702,42.3388],[-71.17011,42.33885],[-71.17,42.33891],[-71.16977,42.33903],[-71.16966,42.33908],[-71.16952,42.33914],[-71.16937,42.3392],[-71.16917,42.33927],[-71.16887,42.33937],[-71.16855,42.33947],[-71.16839,42.33952],[-71.16834,42.33954],[-71.16832,42.33955],[-71.1683,42.33955],[-71.16822,42.33955],[-71.16819,42.33955],[-71.16817,42.33956],[-71.16814,42.33957],[-71.16813,42.33957],[-71.16806,42.33959],[-71.16796,42.33962],[-71.16784,42.33964],[-71.16757,42.3397],[-71.16734,42.33974],[-71.16701,42.3398],[-71.16677,42.33984],[-71.16677,42.33984],[-71.16668,42.3397],[-71.16653,42.33947],[-71.16647,42.33936],[-71.16632,42.33915],[-71.16632,42.33915],[-71.16666,42.33902],[-71.16685,42.33895],[-71.16685,42.33895],[-71.16718,42.33882],[-71.16721,42.33881],[-71.16728,42.33879],[-71.16792,42.33855],[-71.1681,42.33849],[-71.16849,42.33835],[-71.1685,42.33834],[-71.16857,42.33832],[-71.16865,42.33828],[-71.1687,42.33825],[-71.16873,42.33822],[-71.16879,42.33817],[-71.16883,42.33812],[-71.16886,42.33808],[-71.16889,42.33804],[-71.16891,42.33798],[-71.16892,42.33795],[-71.16892,42.33795],[-71.16892,42.33789],[-71.16892,42.33785],[-71.16891,42.33778],[-71.1689,42.33773],[-71.16888,42.33767],[-71.16883,42.33757],[-71.16875,42.3375],[-71.16869,42.33746],[-71.16867,42.33743],[-71.16861,42.33739],[-71.16857,42.33736],[-71.16854,42.33733],[-71.16852,42.33731],[-71.16851,42.33729],[-71.16851,42.33728],[-71.1685,42.33726],[-71.16849,42.33724],[-71.16848,42.33721],[-71.16847,42.33717],[-71.16845,42.3371],[-71.16841,42.337],[-71.16838,42.33692],[-71.16832,42.33676],[-71.16829,42.33666],[-71.16826,42.33656],[-71.16818,42.33633],[-71.16813,42.33619],[-71.16811,42.33613],[-71.16809,42.3361],[-71.16808,42.33607],[-71.16806,42.33605],[-71.16803,42.33601],[-71.168,42.33598],[-71.16797,42.33596],[-71.16789,42.33591],[-71.16786,42.3359],[-71.16784,42.33589],[-71.16781,42.33589],[-71.16777,42.33588],[-71.16773,42.33588],[-71.16769,42.33589],[-71.16764,42.33589],[-71.16759,42.3359],[-71.16757,42.33591],[-71.1675,42.33593],[-71.1671,42.33608],[-71.16701,42.33612],[-71.16692,42.33615],[-71.16683,42.33618],[-71.16676,42.3362],[-71.16665,42.33621],[-71.1665,42.33623],[-71.16635,42.33622],[-71.16626,42.33622],[-71.16622,42.33622],[-71.16615,42.33621],[-71.16611,42.3362],[-71.16606,42.33619],[-71.16595,42.33617],[-71.16585,42.33614],[-71.16577,42.33611],[-71.16575,42.3361],[-71.16571,42.33609],[-71.1656,42.33603],[-71.16552,42.33598],[-71.16545,42.33592],[-71.16545,42.33592],[-71.16523,42.33578],[-71.16507,42.33573],[-71.16481,42.33566],[-71.16456,42.3356],[-71.16443,42.33556],[-71.16434,42.33554],[-71.1643,42.33553],[-71.16407,42.33546],[-71.16363,42.33535],[-71.16349,42.33531],[-71.16344,42.3353],[-71.1633,42.33526],[-71.16323,42.33524],[-71.16317,42.33524],[-71.16311,42.33525],[-71.16305,42.33526],[-71.16296,42.33528],[-71.16296,42.33528],[-71.16287,42.33516],[-71.1628,42.33507],[-71.16272,42.33494],[-71.1626,42.33477],[-71.16258,42.33474],[-71.1625,42.33462],[-71.16245,42.33455],[-71.16242,42.33448],[-71.16239,42.33435],[-71.16239,42.33435],[-71.16242,42.33426],[-71.16245,42.33422],[-71.16249,42.33417],[-71.16255,42.3341],[-71.16261,42.33406],[-71.16261,42.33406],[-71.1627,42.33397],[-71.16292,42.33396],[-71.16303,42.33395],[-71.1632,42.33393],[-71.16347,42.33388],[-71.16362,42.33386],[-71.1644,42.33378],[-71.16447,42.33377],[-71.16467,42.33375],[-71.16471,42.33375],[-71.16474,42.33375],[-71.16475,42.33375],[-71.16479,42.33374],[-71.1652,42.3337],[-71.16546,42.33367],[-71.16603,42.3336],[-71.16623,42.33357],[-71.1668,42.33351],[-71.16761,42.33343],[-71.16768,42.33343],[-71.16777,42.33342],[-71.16803,42.33339],[-71.169,42.33328],[-71.16934,42.33324],[-71.16993,42.33318],[-71.17067,42.33309],[-71.1708,42.33308],[-71.1708,42.33308],[-71.17103,42.33305],[-71.17174,42.33297],[-71.17222,42.33292],[-71.17278,42.33287],[-71.17278,42.33287],[-71.17303,42.33308],[-71.17303,42.33308],[-71.17295,42.33317],[-71.17287,42.33329],[-71.17281,42.33335],[-71.17268,42.3335],[-71.1725,42.3337],[-71.17244,42.33377],[-71.17218,42.33407],[-71.17205,42.33421],[-71.17182,42.33447],[-71.17178,42.33451],[-71.17176,42.33456],[-71.17174,42.33459],[-71.17173,42.33462],[-71.17172,42.33467],[-71.1717,42.3348],[-71.17167,42.33499],[-71.17163,42.33524],[-71.17163,42.33524],[-71.1716,42.33542],[-71.17156,42.33566],[-71.17155,42.33572],[-71.17155,42.33575],[-71.17155,42.33579],[-71.17157,42.33591],[-71.17158,42.33596],[-71.17158,42.33599],[-71.1716,42.33607],[-71.17165,42.33624],[-71.17166,42.33629],[-71.17173,42.33646],[-71.17186,42.33669],[-71.17195,42.33683],[-71.17206,42.33699],[-71.17221,42.33718],[-71.17221,42.33718],[-71.17245,42.33712],[-71.17263,42.33709],[-71.17284,42.33707],[-71.17303,42.33706],[-71.17318,42.33707],[-71.17333,42.33708],[-71.17354,42.33711],[-71.17385,42.33716],[-71.17434,42.33724],[-71.17446,42.33725],[-71.1746,42.33727],[-71.17471,42.33727],[-71.17488,42.33727],[-71.17503,42.33727],[-71.17536,42.33723],[-71.17566,42.33718],[-71.17567,42.33718],[-71.17577,42.33715],[-71.17583,42.33714],[-71.17588,42.33712],[-71.17602,42.33707],[-71.17609,42.33705],[-71.17615,42.33703],[-71.17627,42.33697],[-71.17639,42.33691],[-71.17644,42.33688],[-71.17651,42.33685],[-71.17666,42.33677],[-71.17672,42.33673],[-71.17678,42.3367],[-71.17682,42.33668],[-71.17685,42.33666],[-71.17691,42.33663],[-71.17694,42.33661],[-71.17707,42.33655],[-71.17739,42.3364],[-71.17757,42.33632],[-71.17769,42.33627],[-71.17791,42.3362],[-71.17803,42.33617],[-71.17817,42.33614],[-71.17831,42.33612],[-71.17856,42.33612],[-71.1787,42.33611],[-71.17889,42.33613],[-71.17917,42.33614],[-71.17927,42.33615],[-71.17973,42.33619],[-71.17987,42.33621],[-71.18,42.33622],[-71.18015,42.33624],[-71.18055,42.33629],[-71.18098,42.33635],[-71.18114,42.33637],[-71.18138,42.3364],[-71.18195,42.33648],[-71.18211,42.33649],[-71.18241,42.33653],[-71.18262,42.33655],[-71.18285,42.33657],[-71.18314,42.33659],[-71.18339,42.3366],[-71.18354,42.33661],[-71.18355,42.33661],[-71.18386,42.33662],[-71.18439,42.33663],[-71.18476,42.33662],[-71.18498,42.3366],[-71.18517,42.33658],[-71.18521,42.33657],[-71.18565,42.33651],[-71.1859,42.33647],[-71.18613,42.33644],[-71.18649,42.3364],[-71.18652,42.33639],[-71.18662,42.33638],[-71.18671,42.33637],[-71.1871,42.33633],[-71.18712,42.33633],[-71.18748,42.33631],[-71.18795,42.33628],[-71.18876,42.33623],[-71.18935,42.33621],[-71.18995,42.3362],[-71.19068,42.33621],[-71.19073,42.33621],[-71.19087,42.33621],[-71.1914,42.3362],[-71.19206,42.3362],[-71.1922,42.33619],[-71.19221,42.33619],[-71.19227,42.33618],[-71.19237,42.33617],[-71.19255,42.33615],[-71.19263,42.33614],[-71.19286,42.33612],[-71.19308,42.33608],[-71.19336,42.336],[-71.19336,42.336],[-71.19335,42.33608],[-71.19332,42.33617],[-71.19331,42.33622],[-71.19326,42.33651],[-71.19317,42.33719],[-71.19316,42.33724],[-71.19311,42.33758],[-71.19302,42.33813],[-71.19282,42.33947],[-71.1928,42.33958],[-71.19267,42.34035],[-71.19264,42.34057],[-71.1926,42.34081],[-71.19257,42.34092],[-71.19254,42.341],[-71.1925,42.34109],[-71.19245,42.34118],[-71.1924,42.34127],[-71.19236,42.34133],[-71.19228,42.34143],[-71.19222,42.34149],[-71.19207,42.34164],[-71.19193,42.34177],[-71.19193,42.34177],[-71.19242,42.34205],[-71.19251,42.34213],[-71.19262,42.34223],[-71.19269,42.34228],[-71.19272,42.3423],[-71.19284,42.34234],[-71.19309,42.34241],[-71.19309,42.34241],[-71.19303,42.34251],[-71.19302,42.34257],[-71.19302,42.34264],[-71.193,42.34271],[-71.19299,42.34272],[-71.19297,42.34277],[-71.19296,42.34278],[-71.19292,42.34284],[-71.19289,42.34287],[-71.19287,42.34289],[-71.19284,42.34294],[-71.19281,42.34299],[-71.19267,42.34338],[-71.19266,42.3434],[-71.19264,42.34345],[-71.19263,42.34347],[-71.19263,42.34347],[-71.19258,42.34357],[-71.19258,42.34357],[-71.19285,42.3436],[-71.19304,42.34361],[-71.19322,42.3436],[-71.19348,42.34356],[-71.19373,42.34353],[-71.194,42.34351],[-71.19403,42.34351],[-71.19421,42.34352],[-71.19442,42.34356],[-71.19463,42.34362],[-71.19465,42.34362],[-71.19484,42.34369],[-71.1951,42.34379],[-71.1951,42.34379],[-71.19524,42.34349],[-71.1953,42.34337],[-71.19547,42.34287],[-71.19548,42.34284],[-71.19548,42.34283],[-71.19549,42.34283],[-71.1955,42.34282],[-71.19551,42.34282],[-71.19553,42.34281],[-71.19569,42.3428],[-71.19569,42.3428],[-71.19572,42.34279],[-71.19574,42.34278],[-71.19576,42.34276],[-71.19577,42.34273],[-71.19577,42.34269],[-71.19577,42.34266],[-71.19577,42.34262],[-71.1957,42.34238],[-71.1957,42.34228],[-71.19571,42.34218],[-71.19574,42.3421],[-71.19581,42.3419],[-71.19581,42.34187],[-71.1958,42.34184],[-71.19575,42.34176],[-71.19575,42.34176],[-71.19576,42.34175],[-71.19578,42.34173],[-71.19579,42.34172],[-71.1958,42.3417],[-71.1958,42.34168],[-71.19579,42.34166],[-71.19579,42.34164],[-71.19577,42.34162],[-71.19576,42.34161],[-71.19574,42.3416],[-71.19571,42.34159],[-71.19569,42.34158],[-71.19566,42.34158],[-71.19564,42.34158],[-71.19562,42.34159],[-71.1956,42.34159],[-71.19548,42.34154],[-71.19548,42.34154],[-71.19549,42.34147],[-71.19549,42.34142],[-71.19547,42.34138],[-71.19546,42.34136],[-71.19546,42.34135],[-71.19545,42.34135],[-71.19542,42.34134],[-71.19536,42.34133],[-71.1953,42.34132],[-71.195,42.34129],[-71.19483,42.34126],[-71.19469,42.34124],[-71.19466,42.34124],[-71.19428,42.34118],[-71.19424,42.34117],[-71.19405,42.34116],[-71.194,42.34115],[-71.19396,42.34115],[-71.19391,42.34116],[-71.19389,42.34116]]},{"id":14,"name":"Newton Eagle Direct","tracker":"Newton Eagle Direct","color":"#9B1F03","loop":true,"service":[{"days":[1,2,3,4,5],"from":"07:00","to":"17:00","every":9}],"stops":[{"name":"Stuart","lonlat":[-71.193791,42.341133],"rideToNext":44,"dwell":10,"at":3},{"name":"Newton Main Gate","lonlat":[-71.192625,42.341653],"rideToNext":312,"dwell":10,"at":22},{"name":"Main Gate Chestnut Hill","lonlat":[-71.171094,42.337928],"rideToNext":460,"dwell":10,"at":161},{"name":"Stuart Hall Loading Dock","lonlat":[-71.194075,42.341378],"rideToNext":60,"dwell":0,"at":413}],"line":[[-71.19389,42.34116],[-71.19387,42.34117],[-71.19385,42.34118],[-71.19383,42.34119],[-71.19382,42.34121],[-71.1938,42.34129],[-71.1938,42.34129],[-71.1937,42.34128],[-71.19352,42.34124],[-71.19329,42.3412],[-71.19321,42.34119],[-71.19315,42.34118],[-71.1931,42.34118],[-71.19305,42.34119],[-71.19297,42.34121],[-71.19291,42.34124],[-71.19286,42.34127],[-71.19283,42.3413],[-71.19281,42.34132],[-71.19275,42.34139],[-71.19271,42.34148],[-71.19268,42.3416],[-71.19267,42.34166],[-71.19267,42.34166],[-71.19267,42.34171],[-71.19266,42.34181],[-71.19264,42.34186],[-71.19261,42.34192],[-71.19242,42.34205],[-71.19242,42.34205],[-71.19193,42.34177],[-71.19193,42.34177],[-71.19207,42.34164],[-71.19222,42.34149],[-71.19228,42.34143],[-71.19236,42.34133],[-71.1924,42.34127],[-71.19245,42.34118],[-71.1925,42.34109],[-71.19254,42.341],[-71.19257,42.34092],[-71.1926,42.34081],[-71.19264,42.34057],[-71.19267,42.34035],[-71.1928,42.33958],[-71.19282,42.33947],[-71.19302,42.33813],[-71.19311,42.33758],[-71.19316,42.33724],[-71.19317,42.33719],[-71.19326,42.33651],[-71.19331,42.33622],[-71.19332,42.33617],[-71.19335,42.33608],[-71.19336,42.336],[-71.19336,42.336],[-71.19308,42.33608],[-71.19286,42.33612],[-71.19263,42.33614],[-71.19255,42.33615],[-71.19237,42.33617],[-71.19227,42.33618],[-71.19221,42.33619],[-71.1922,42.33619],[-71.19206,42.3362],[-71.1914,42.3362],[-71.19087,42.33621],[-71.19073,42.33621],[-71.19068,42.33621],[-71.18995,42.3362],[-71.18935,42.33621],[-71.18876,42.33623],[-71.18795,42.33628],[-71.18748,42.33631],[-71.18712,42.33633],[-71.1871,42.33633],[-71.18671,42.33637],[-71.18662,42.33638],[-71.18652,42.33639],[-71.18649,42.3364],[-71.18613,42.33644],[-71.1859,42.33647],[-71.18565,42.33651],[-71.18521,42.33657],[-71.18517,42.33658],[-71.18498,42.3366],[-71.18476,42.33662],[-71.18439,42.33663],[-71.18386,42.33662],[-71.18355,42.33661],[-71.18354,42.33661],[-71.18339,42.3366],[-71.18314,42.33659],[-71.18285,42.33657],[-71.18262,42.33655],[-71.18241,42.33653],[-71.18211,42.33649],[-71.18195,42.33648],[-71.18138,42.3364],[-71.18114,42.33637],[-71.18098,42.33635],[-71.18055,42.33629],[-71.18015,42.33624],[-71.18,42.33622],[-71.17987,42.33621],[-71.17973,42.33619],[-71.17927,42.33615],[-71.17917,42.33614],[-71.17889,42.33613],[-71.1787,42.33611],[-71.17856,42.33612],[-71.17831,42.33612],[-71.17817,42.33614],[-71.17803,42.33617],[-71.17791,42.3362],[-71.17769,42.33627],[-71.17757,42.33632],[-71.17739,42.3364],[-71.17707,42.33655],[-71.17694,42.33661],[-71.17691,42.33663],[-71.17685,42.33666],[-71.17682,42.33668],[-71.17678,42.3367],[-71.17672,42.33673],[-71.17666,42.33677],[-71.17651,42.33685],[-71.17644,42.33688],[-71.17639,42.33691],[-71.17627,42.33697],[-71.17615,42.33703],[-71.17609,42.33705],[-71.17602,42.33707],[-71.17588,42.33712],[-71.17583,42.33714],[-71.17577,42.33715],[-71.17567,42.33718],[-71.17566,42.33718],[-71.17536,42.33723],[-71.17503,42.33727],[-71.17488,42.33727],[-71.17471,42.33727],[-71.1746,42.33727],[-71.17446,42.33725],[-71.17434,42.33724],[-71.17385,42.33716],[-71.17354,42.33711],[-71.17333,42.33708],[-71.17318,42.33707],[-71.17303,42.33706],[-71.17284,42.33707],[-71.17263,42.33709],[-71.17245,42.33712],[-71.17221,42.33718],[-71.17212,42.33722],[-71.17187,42.33737],[-71.17148,42.33769],[-71.17144,42.33773],[-71.17139,42.33778],[-71.17134,42.33782],[-71.17131,42.33785],[-71.17117,42.33799],[-71.17117,42.33799],[-71.17111,42.33804],[-71.17105,42.3381],[-71.1708,42.33835],[-71.17075,42.33839],[-71.17068,42.33845],[-71.17061,42.33851],[-71.17053,42.33857],[-71.17044,42.33863],[-71.17036,42.33869],[-71.17035,42.3387],[-71.17028,42.33875],[-71.1702,42.3388],[-71.17011,42.33885],[-71.17,42.33891],[-71.16977,42.33903],[-71.16966,42.33908],[-71.16952,42.33914],[-71.16937,42.3392],[-71.16917,42.33927],[-71.16887,42.33937],[-71.16855,42.33947],[-71.16839,42.33952],[-71.16834,42.33954],[-71.16832,42.33955],[-71.1683,42.33955],[-71.16822,42.33955],[-71.16819,42.33955],[-71.16817,42.33956],[-71.16814,42.33957],[-71.16813,42.33957],[-71.16806,42.33959],[-71.16796,42.33962],[-71.16784,42.33964],[-71.16757,42.3397],[-71.16734,42.33974],[-71.16701,42.3398],[-71.16677,42.33984],[-71.16677,42.33984],[-71.16668,42.3397],[-71.16653,42.33947],[-71.16647,42.33936],[-71.16632,42.33915],[-71.16632,42.33915],[-71.16626,42.33917],[-71.1662,42.33919],[-71.16614,42.3392],[-71.16609,42.33921],[-71.16605,42.33921],[-71.16602,42.33921],[-71.16602,42.33921],[-71.16603,42.33933],[-71.16604,42.3394],[-71.16609,42.33967],[-71.1661,42.33978],[-71.16611,42.33981],[-71.16612,42.33991],[-71.16612,42.33991],[-71.16613,42.33997],[-71.16613,42.34],[-71.16614,42.34009],[-71.1665,42.34006],[-71.16652,42.34006],[-71.16659,42.34005],[-71.16671,42.34003],[-71.16683,42.34],[-71.167,42.33997],[-71.16733,42.33991],[-71.16774,42.33976],[-71.16817,42.33961],[-71.16824,42.33959],[-71.16827,42.33957],[-71.1683,42.33955],[-71.16832,42.33955],[-71.16834,42.33954],[-71.16839,42.33952],[-71.16855,42.33947],[-71.16887,42.33937],[-71.16917,42.33927],[-71.16937,42.3392],[-71.16952,42.33914],[-71.16966,42.33908],[-71.16977,42.33903],[-71.17,42.33891],[-71.17011,42.33885],[-71.1702,42.3388],[-71.17028,42.33875],[-71.17035,42.3387],[-71.17036,42.33869],[-71.17044,42.33863],[-71.17053,42.33857],[-71.17061,42.33851],[-71.17068,42.33845],[-71.17075,42.33839],[-71.1708,42.33835],[-71.17105,42.3381],[-71.17111,42.33804],[-71.17117,42.33799],[-71.17131,42.33785],[-71.17134,42.33782],[-71.17139,42.33778],[-71.17144,42.33773],[-71.17148,42.33769],[-71.17187,42.33737],[-71.17212,42.33722],[-71.17221,42.33718],[-71.17245,42.33712],[-71.17263,42.33709],[-71.17284,42.33707],[-71.17303,42.33706],[-71.17318,42.33707],[-71.17333,42.33708],[-71.17354,42.33711],[-71.17385,42.33716],[-71.17434,42.33724],[-71.17446,42.33725],[-71.1746,42.33727],[-71.17471,42.33727],[-71.17488,42.33727],[-71.17503,42.33727],[-71.17536,42.33723],[-71.17566,42.33718],[-71.17567,42.33718],[-71.17577,42.33715],[-71.17583,42.33714],[-71.17588,42.33712],[-71.17602,42.33707],[-71.17609,42.33705],[-71.17615,42.33703],[-71.17627,42.33697],[-71.17639,42.33691],[-71.17644,42.33688],[-71.17651,42.33685],[-71.17666,42.33677],[-71.17672,42.33673],[-71.17678,42.3367],[-71.17682,42.33668],[-71.17685,42.33666],[-71.17691,42.33663],[-71.17694,42.33661],[-71.17707,42.33655],[-71.17739,42.3364],[-71.17757,42.33632],[-71.17769,42.33627],[-71.17791,42.3362],[-71.17803,42.33617],[-71.17817,42.33614],[-71.17831,42.33612],[-71.17856,42.33612],[-71.1787,42.33611],[-71.17889,42.33613],[-71.17917,42.33614],[-71.17927,42.33615],[-71.17973,42.33619],[-71.17987,42.33621],[-71.18,42.33622],[-71.18015,42.33624],[-71.18055,42.33629],[-71.18098,42.33635],[-71.18114,42.33637],[-71.18138,42.3364],[-71.18195,42.33648],[-71.18211,42.33649],[-71.18241,42.33653],[-71.18262,42.33655],[-71.18285,42.33657],[-71.18314,42.33659],[-71.18339,42.3366],[-71.18354,42.33661],[-71.18355,42.33661],[-71.18386,42.33662],[-71.18439,42.33663],[-71.18476,42.33662],[-71.18498,42.3366],[-71.18517,42.33658],[-71.18521,42.33657],[-71.18565,42.33651],[-71.1859,42.33647],[-71.18613,42.33644],[-71.18649,42.3364],[-71.18652,42.33639],[-71.18662,42.33638],[-71.18671,42.33637],[-71.1871,42.33633],[-71.18712,42.33633],[-71.18748,42.33631],[-71.18795,42.33628],[-71.18876,42.33623],[-71.18935,42.33621],[-71.18995,42.3362],[-71.19068,42.33621],[-71.19073,42.33621],[-71.19087,42.33621],[-71.1914,42.3362],[-71.19206,42.3362],[-71.1922,42.33619],[-71.19221,42.33619],[-71.19227,42.33618],[-71.19237,42.33617],[-71.19255,42.33615],[-71.19263,42.33614],[-71.19286,42.33612],[-71.19308,42.33608],[-71.19336,42.336],[-71.19336,42.336],[-71.19335,42.33608],[-71.19332,42.33617],[-71.19331,42.33622],[-71.19326,42.33651],[-71.19317,42.33719],[-71.19316,42.33724],[-71.19311,42.33758],[-71.19302,42.33813],[-71.19282,42.33947],[-71.1928,42.33958],[-71.19267,42.34035],[-71.19264,42.34057],[-71.1926,42.34081],[-71.19257,42.34092],[-71.19254,42.341],[-71.1925,42.34109],[-71.19245,42.34118],[-71.1924,42.34127],[-71.19236,42.34133],[-71.19228,42.34143],[-71.19222,42.34149],[-71.19207,42.34164],[-71.19193,42.34177],[-71.19193,42.34177],[-71.19242,42.34205],[-71.19242,42.34205],[-71.19261,42.34192],[-71.19264,42.34186],[-71.19266,42.34181],[-71.19267,42.34171],[-71.19268,42.3416],[-71.19271,42.34148],[-71.19275,42.34139],[-71.19281,42.34132],[-71.19283,42.3413],[-71.19286,42.34127],[-71.19291,42.34124],[-71.19297,42.34121],[-71.19305,42.34119],[-71.1931,42.34118],[-71.19315,42.34118],[-71.19321,42.34119],[-71.19329,42.3412],[-71.19352,42.34124],[-71.1937,42.34128],[-71.1938,42.34129],[-71.19409,42.34133],[-71.19409,42.34133],[-71.19437,42.34137],[-71.19454,42.34139],[-71.19465,42.34141],[-71.19469,42.34124],[-71.19471,42.34119],[-71.19472,42.34116],[-71.19471,42.34114],[-71.1947,42.34111],[-71.19465,42.34108],[-71.19449,42.34106],[-71.19435,42.34104],[-71.19432,42.34106],[-71.19431,42.34108],[-71.1943,42.3411],[-71.19429,42.34113],[-71.19428,42.34115],[-71.19424,42.34117],[-71.19405,42.34116],[-71.194,42.34115],[-71.19396,42.34115],[-71.19391,42.34116],[-71.19389,42.34116]]},{"id":15,"name":"Newton Limited","tracker":"Newton Eagle Limited","color":"#5261A3","loop":true,"service":[{"days":[1,2,3,4,5],"from":"17:00","to":"18:00","every":10},{"days":[0,6],"from":"08:15","to":"11:00","every":30}],"stops":[{"name":"Stuart","lonlat":[-71.193791,42.341133],"rideToNext":44,"dwell":10,"at":3},{"name":"Newton Main Gate","lonlat":[-71.192625,42.341653],"rideToNext":312,"dwell":10,"at":22},{"name":"Main Gate Chestnut Hill","lonlat":[-71.171094,42.337928],"rideToNext":224,"dwell":10,"at":161},{"name":"McElroy – Beacon St.","lonlat":[-71.170819,42.333187],"rideToNext":75,"dwell":10,"at":294},{"name":"College Road","lonlat":[-71.1716,42.335236],"rideToNext":339,"dwell":10,"at":319},{"name":"Duchesne","lonlat":[-71.192611,42.343467],"rideToNext":143,"dwell":10,"at":484}],"line":[[-71.19389,42.34116],[-71.19387,42.34117],[-71.19385,42.34118],[-71.19383,42.34119],[-71.19382,42.34121],[-71.1938,42.34129],[-71.1938,42.34129],[-71.1937,42.34128],[-71.19352,42.34124],[-71.19329,42.3412],[-71.19321,42.34119],[-71.19315,42.34118],[-71.1931,42.34118],[-71.19305,42.34119],[-71.19297,42.34121],[-71.19291,42.34124],[-71.19286,42.34127],[-71.19283,42.3413],[-71.19281,42.34132],[-71.19275,42.34139],[-71.19271,42.34148],[-71.19268,42.3416],[-71.19267,42.34166],[-71.19267,42.34166],[-71.19267,42.34171],[-71.19266,42.34181],[-71.19264,42.34186],[-71.19261,42.34192],[-71.19242,42.34205],[-71.19242,42.34205],[-71.19193,42.34177],[-71.19193,42.34177],[-71.19207,42.34164],[-71.19222,42.34149],[-71.19228,42.34143],[-71.19236,42.34133],[-71.1924,42.34127],[-71.19245,42.34118],[-71.1925,42.34109],[-71.19254,42.341],[-71.19257,42.34092],[-71.1926,42.34081],[-71.19264,42.34057],[-71.19267,42.34035],[-71.1928,42.33958],[-71.19282,42.33947],[-71.19302,42.33813],[-71.19311,42.33758],[-71.19316,42.33724],[-71.19317,42.33719],[-71.19326,42.33651],[-71.19331,42.33622],[-71.19332,42.33617],[-71.19335,42.33608],[-71.19336,42.336],[-71.19336,42.336],[-71.19308,42.33608],[-71.19286,42.33612],[-71.19263,42.33614],[-71.19255,42.33615],[-71.19237,42.33617],[-71.19227,42.33618],[-71.19221,42.33619],[-71.1922,42.33619],[-71.19206,42.3362],[-71.1914,42.3362],[-71.19087,42.33621],[-71.19073,42.33621],[-71.19068,42.33621],[-71.18995,42.3362],[-71.18935,42.33621],[-71.18876,42.33623],[-71.18795,42.33628],[-71.18748,42.33631],[-71.18712,42.33633],[-71.1871,42.33633],[-71.18671,42.33637],[-71.18662,42.33638],[-71.18652,42.33639],[-71.18649,42.3364],[-71.18613,42.33644],[-71.1859,42.33647],[-71.18565,42.33651],[-71.18521,42.33657],[-71.18517,42.33658],[-71.18498,42.3366],[-71.18476,42.33662],[-71.18439,42.33663],[-71.18386,42.33662],[-71.18355,42.33661],[-71.18354,42.33661],[-71.18339,42.3366],[-71.18314,42.33659],[-71.18285,42.33657],[-71.18262,42.33655],[-71.18241,42.33653],[-71.18211,42.33649],[-71.18195,42.33648],[-71.18138,42.3364],[-71.18114,42.33637],[-71.18098,42.33635],[-71.18055,42.33629],[-71.18015,42.33624],[-71.18,42.33622],[-71.17987,42.33621],[-71.17973,42.33619],[-71.17927,42.33615],[-71.17917,42.33614],[-71.17889,42.33613],[-71.1787,42.33611],[-71.17856,42.33612],[-71.17831,42.33612],[-71.17817,42.33614],[-71.17803,42.33617],[-71.17791,42.3362],[-71.17769,42.33627],[-71.17757,42.33632],[-71.17739,42.3364],[-71.17707,42.33655],[-71.17694,42.33661],[-71.17691,42.33663],[-71.17685,42.33666],[-71.17682,42.33668],[-71.17678,42.3367],[-71.17672,42.33673],[-71.17666,42.33677],[-71.17651,42.33685],[-71.17644,42.33688],[-71.17639,42.33691],[-71.17627,42.33697],[-71.17615,42.33703],[-71.17609,42.33705],[-71.17602,42.33707],[-71.17588,42.33712],[-71.17583,42.33714],[-71.17577,42.33715],[-71.17567,42.33718],[-71.17566,42.33718],[-71.17536,42.33723],[-71.17503,42.33727],[-71.17488,42.33727],[-71.17471,42.33727],[-71.1746,42.33727],[-71.17446,42.33725],[-71.17434,42.33724],[-71.17385,42.33716],[-71.17354,42.33711],[-71.17333,42.33708],[-71.17318,42.33707],[-71.17303,42.33706],[-71.17284,42.33707],[-71.17263,42.33709],[-71.17245,42.33712],[-71.17221,42.33718],[-71.17212,42.33722],[-71.17187,42.33737],[-71.17148,42.33769],[-71.17144,42.33773],[-71.17139,42.33778],[-71.17134,42.33782],[-71.17131,42.33785],[-71.17117,42.33799],[-71.17117,42.33799],[-71.17111,42.33804],[-71.17105,42.3381],[-71.1708,42.33835],[-71.17075,42.33839],[-71.17068,42.33845],[-71.17061,42.33851],[-71.17053,42.33857],[-71.17044,42.33863],[-71.17036,42.33869],[-71.17035,42.3387],[-71.17028,42.33875],[-71.1702,42.3388],[-71.17011,42.33885],[-71.17,42.33891],[-71.16977,42.33903],[-71.16966,42.33908],[-71.16952,42.33914],[-71.16937,42.3392],[-71.16917,42.33927],[-71.16887,42.33937],[-71.16855,42.33947],[-71.16839,42.33952],[-71.16834,42.33954],[-71.16832,42.33955],[-71.1683,42.33955],[-71.16822,42.33955],[-71.16819,42.33955],[-71.16817,42.33956],[-71.16814,42.33957],[-71.16813,42.33957],[-71.16806,42.33959],[-71.16796,42.33962],[-71.16784,42.33964],[-71.16757,42.3397],[-71.16734,42.33974],[-71.16701,42.3398],[-71.16677,42.33984],[-71.1667,42.33985],[-71.16662,42.33986],[-71.16645,42.33987],[-71.16612,42.33991],[-71.16612,42.33991],[-71.16611,42.33981],[-71.1661,42.33978],[-71.16609,42.33967],[-71.16604,42.3394],[-71.16603,42.33933],[-71.16602,42.33921],[-71.16582,42.33914],[-71.16572,42.3391],[-71.16566,42.33907],[-71.16558,42.33904],[-71.16558,42.33904],[-71.1655,42.339],[-71.16543,42.33897],[-71.16522,42.33885],[-71.1651,42.33877],[-71.16503,42.33872],[-71.16498,42.33868],[-71.16492,42.33864],[-71.16485,42.33856],[-71.1648,42.33852],[-71.16478,42.33849],[-71.16471,42.33842],[-71.16466,42.33834],[-71.16462,42.33827],[-71.16458,42.3382],[-71.16455,42.33812],[-71.16445,42.3379],[-71.1644,42.33779],[-71.16428,42.33749],[-71.16427,42.33747],[-71.16413,42.33716],[-71.16401,42.3369],[-71.16391,42.33672],[-71.16383,42.33658],[-71.16382,42.33657],[-71.16374,42.33644],[-71.16373,42.33641],[-71.16366,42.33628],[-71.16358,42.33616],[-71.16358,42.33616],[-71.16342,42.33594],[-71.16325,42.33569],[-71.16321,42.33563],[-71.1632,42.33562],[-71.16317,42.33558],[-71.163,42.33533],[-71.16296,42.33528],[-71.16287,42.33516],[-71.1628,42.33507],[-71.16272,42.33494],[-71.1626,42.33477],[-71.16258,42.33474],[-71.1625,42.33462],[-71.16245,42.33455],[-71.16242,42.33448],[-71.16239,42.33435],[-71.16239,42.33435],[-71.16242,42.33426],[-71.16245,42.33422],[-71.16249,42.33417],[-71.16255,42.3341],[-71.16261,42.33406],[-71.16261,42.33406],[-71.1627,42.33397],[-71.16292,42.33396],[-71.16303,42.33395],[-71.1632,42.33393],[-71.16347,42.33388],[-71.16362,42.33386],[-71.1644,42.33378],[-71.16447,42.33377],[-71.16467,42.33375],[-71.16471,42.33375],[-71.16474,42.33375],[-71.16475,42.33375],[-71.16479,42.33374],[-71.1652,42.3337],[-71.16546,42.33367],[-71.16603,42.3336],[-71.16623,42.33357],[-71.1668,42.33351],[-71.16761,42.33343],[-71.16768,42.33343],[-71.16777,42.33342],[-71.16803,42.33339],[-71.169,42.33328],[-71.16934,42.33324],[-71.16993,42.33318],[-71.17067,42.33309],[-71.1708,42.33308],[-71.1708,42.33308],[-71.17103,42.33305],[-71.17174,42.33297],[-71.17222,42.33292],[-71.17278,42.33287],[-71.17278,42.33287],[-71.17303,42.33308],[-71.17303,42.33308],[-71.17295,42.33317],[-71.17287,42.33329],[-71.17281,42.33335],[-71.17268,42.3335],[-71.1725,42.3337],[-71.17244,42.33377],[-71.17218,42.33407],[-71.17205,42.33421],[-71.17182,42.33447],[-71.17178,42.33451],[-71.17176,42.33456],[-71.17174,42.33459],[-71.17173,42.33462],[-71.17172,42.33467],[-71.1717,42.3348],[-71.17167,42.33499],[-71.17163,42.33524],[-71.17163,42.33524],[-71.1716,42.33542],[-71.17156,42.33566],[-71.17155,42.33572],[-71.17155,42.33575],[-71.17155,42.33579],[-71.17157,42.33591],[-71.17158,42.33596],[-71.17158,42.33599],[-71.1716,42.33607],[-71.17165,42.33624],[-71.17166,42.33629],[-71.17173,42.33646],[-71.17186,42.33669],[-71.17195,42.33683],[-71.17206,42.33699],[-71.17221,42.33718],[-71.17221,42.33718],[-71.17245,42.33712],[-71.17263,42.33709],[-71.17284,42.33707],[-71.17303,42.33706],[-71.17318,42.33707],[-71.17333,42.33708],[-71.17354,42.33711],[-71.17385,42.33716],[-71.17434,42.33724],[-71.17446,42.33725],[-71.1746,42.33727],[-71.17471,42.33727],[-71.17488,42.33727],[-71.17503,42.33727],[-71.17536,42.33723],[-71.17566,42.33718],[-71.17567,42.33718],[-71.17577,42.33715],[-71.17583,42.33714],[-71.17588,42.33712],[-71.17602,42.33707],[-71.17609,42.33705],[-71.17615,42.33703],[-71.17627,42.33697],[-71.17639,42.33691],[-71.17644,42.33688],[-71.17651,42.33685],[-71.17666,42.33677],[-71.17672,42.33673],[-71.17678,42.3367],[-71.17682,42.33668],[-71.17685,42.33666],[-71.17691,42.33663],[-71.17694,42.33661],[-71.17707,42.33655],[-71.17739,42.3364],[-71.17757,42.33632],[-71.17769,42.33627],[-71.17791,42.3362],[-71.17803,42.33617],[-71.17817,42.33614],[-71.17831,42.33612],[-71.17856,42.33612],[-71.1787,42.33611],[-71.17889,42.33613],[-71.17917,42.33614],[-71.17927,42.33615],[-71.17973,42.33619],[-71.17987,42.33621],[-71.18,42.33622],[-71.18015,42.33624],[-71.18055,42.33629],[-71.18098,42.33635],[-71.18114,42.33637],[-71.18138,42.3364],[-71.18195,42.33648],[-71.18211,42.33649],[-71.18241,42.33653],[-71.18262,42.33655],[-71.18285,42.33657],[-71.18314,42.33659],[-71.18339,42.3366],[-71.18354,42.33661],[-71.18355,42.33661],[-71.18386,42.33662],[-71.18439,42.33663],[-71.18476,42.33662],[-71.18498,42.3366],[-71.18517,42.33658],[-71.18521,42.33657],[-71.18565,42.33651],[-71.1859,42.33647],[-71.18613,42.33644],[-71.18649,42.3364],[-71.18652,42.33639],[-71.18662,42.33638],[-71.18671,42.33637],[-71.1871,42.33633],[-71.18712,42.33633],[-71.18748,42.33631],[-71.18795,42.33628],[-71.18876,42.33623],[-71.18935,42.33621],[-71.18995,42.3362],[-71.19068,42.33621],[-71.19073,42.33621],[-71.19087,42.33621],[-71.1914,42.3362],[-71.19206,42.3362],[-71.1922,42.33619],[-71.19221,42.33619],[-71.19227,42.33618],[-71.19237,42.33617],[-71.19255,42.33615],[-71.19263,42.33614],[-71.19286,42.33612],[-71.19308,42.33608],[-71.19336,42.336],[-71.19336,42.336],[-71.19335,42.33608],[-71.19332,42.33617],[-71.19331,42.33622],[-71.19326,42.33651],[-71.19317,42.33719],[-71.19316,42.33724],[-71.19311,42.33758],[-71.19302,42.33813],[-71.19282,42.33947],[-71.1928,42.33958],[-71.19267,42.34035],[-71.19264,42.34057],[-71.1926,42.34081],[-71.19257,42.34092],[-71.19254,42.341],[-71.1925,42.34109],[-71.19245,42.34118],[-71.1924,42.34127],[-71.19236,42.34133],[-71.19228,42.34143],[-71.19222,42.34149],[-71.19207,42.34164],[-71.19193,42.34177],[-71.19193,42.34177],[-71.19242,42.34205],[-71.19251,42.34213],[-71.19262,42.34223],[-71.19269,42.34228],[-71.19272,42.3423],[-71.19284,42.34234],[-71.19309,42.34241],[-71.19309,42.34241],[-71.19303,42.34251],[-71.19302,42.34257],[-71.19302,42.34264],[-71.193,42.34271],[-71.19299,42.34272],[-71.19297,42.34277],[-71.19296,42.34278],[-71.19292,42.34284],[-71.19289,42.34287],[-71.19287,42.34289],[-71.19284,42.34294],[-71.19281,42.34299],[-71.19267,42.34338],[-71.19266,42.3434],[-71.19264,42.34345],[-71.19263,42.34347],[-71.19263,42.34347],[-71.19258,42.34357],[-71.19258,42.34357],[-71.19285,42.3436],[-71.19304,42.34361],[-71.19322,42.3436],[-71.19348,42.34356],[-71.19373,42.34353],[-71.194,42.34351],[-71.19403,42.34351],[-71.19421,42.34352],[-71.19442,42.34356],[-71.19463,42.34362],[-71.19465,42.34362],[-71.19484,42.34369],[-71.1951,42.34379],[-71.1951,42.34379],[-71.19524,42.34349],[-71.1953,42.34337],[-71.19547,42.34287],[-71.19548,42.34284],[-71.19548,42.34283],[-71.19549,42.34283],[-71.1955,42.34282],[-71.19551,42.34282],[-71.19553,42.34281],[-71.19569,42.3428],[-71.19569,42.3428],[-71.19572,42.34279],[-71.19574,42.34278],[-71.19576,42.34276],[-71.19577,42.34273],[-71.19577,42.34269],[-71.19577,42.34266],[-71.19577,42.34262],[-71.1957,42.34238],[-71.1957,42.34228],[-71.19571,42.34218],[-71.19574,42.3421],[-71.19581,42.3419],[-71.19581,42.34187],[-71.1958,42.34184],[-71.19575,42.34176],[-71.19575,42.34176],[-71.19576,42.34175],[-71.19578,42.34173],[-71.19579,42.34172],[-71.1958,42.3417],[-71.1958,42.34168],[-71.19579,42.34166],[-71.19579,42.34164],[-71.19577,42.34162],[-71.19576,42.34161],[-71.19574,42.3416],[-71.19571,42.34159],[-71.19569,42.34158],[-71.19566,42.34158],[-71.19564,42.34158],[-71.19562,42.34159],[-71.1956,42.34159],[-71.19548,42.34154],[-71.19548,42.34154],[-71.19549,42.34147],[-71.19549,42.34142],[-71.19547,42.34138],[-71.19546,42.34136],[-71.19546,42.34135],[-71.19545,42.34135],[-71.19542,42.34134],[-71.19536,42.34133],[-71.1953,42.34132],[-71.195,42.34129],[-71.19483,42.34126],[-71.19469,42.34124],[-71.19466,42.34124],[-71.19428,42.34118],[-71.19424,42.34117],[-71.19405,42.34116],[-71.194,42.34115],[-71.19396,42.34115],[-71.19391,42.34116],[-71.19389,42.34116]]},{"id":21,"name":"Law School Express (afternoon)","tracker":"Law Express - PM","color":"#8CB811","loop":false,"service":[{"days":[1,2,3,4,5],"from":"15:05","to":"17:05","every":110}],"stops":[{"name":"Stuart Hall Loading Dock","lonlat":[-71.194075,42.341378],"rideToNext":511,"dwell":0,"at":0},{"name":"Greycliff Hall","lonlat":[-71.161684,42.340238],"rideToNext":239,"dwell":0,"at":228},{"name":"South Street","lonlat":[-71.157531,42.339738],"rideToNext":219,"dwell":0,"at":330},{"name":"Reservoir MBTA stop","lonlat":[-71.148891,42.335054],"rideToNext":717,"dwell":0,"at":415},{"name":"Chestnut Hill Ave","lonlat":[-71.151027,42.336106],"rideToNext":601,"dwell":0,"at":442}],"line":[[-71.19409,42.34133],[-71.1938,42.34129],[-71.1937,42.34128],[-71.19352,42.34124],[-71.19329,42.3412],[-71.19321,42.34119],[-71.19315,42.34118],[-71.1931,42.34118],[-71.19305,42.34119],[-71.19297,42.34121],[-71.19291,42.34124],[-71.19286,42.34127],[-71.19283,42.3413],[-71.19281,42.34132],[-71.19275,42.34139],[-71.19271,42.34148],[-71.19268,42.3416],[-71.19267,42.34171],[-71.19266,42.34181],[-71.19264,42.34186],[-71.19261,42.34192],[-71.19242,42.34205],[-71.19242,42.34205],[-71.19193,42.34177],[-71.19193,42.34177],[-71.19207,42.34164],[-71.19222,42.34149],[-71.19228,42.34143],[-71.19236,42.34133],[-71.1924,42.34127],[-71.19245,42.34118],[-71.1925,42.34109],[-71.19254,42.341],[-71.19257,42.34092],[-71.1926,42.34081],[-71.19264,42.34057],[-71.19267,42.34035],[-71.1928,42.33958],[-71.19282,42.33947],[-71.19302,42.33813],[-71.19311,42.33758],[-71.19316,42.33724],[-71.19317,42.33719],[-71.19326,42.33651],[-71.19331,42.33622],[-71.19332,42.33617],[-71.19335,42.33608],[-71.19336,42.336],[-71.19336,42.336],[-71.19308,42.33608],[-71.19286,42.33612],[-71.19263,42.33614],[-71.19255,42.33615],[-71.19237,42.33617],[-71.19227,42.33618],[-71.19221,42.33619],[-71.1922,42.33619],[-71.19206,42.3362],[-71.1914,42.3362],[-71.19087,42.33621],[-71.19073,42.33621],[-71.19068,42.33621],[-71.18995,42.3362],[-71.18935,42.33621],[-71.18876,42.33623],[-71.18795,42.33628],[-71.18748,42.33631],[-71.18712,42.33633],[-71.1871,42.33633],[-71.18671,42.33637],[-71.18662,42.33638],[-71.18652,42.33639],[-71.18649,42.3364],[-71.18613,42.33644],[-71.1859,42.33647],[-71.18565,42.33651],[-71.18521,42.33657],[-71.18517,42.33658],[-71.18498,42.3366],[-71.18476,42.33662],[-71.18439,42.33663],[-71.18386,42.33662],[-71.18355,42.33661],[-71.18354,42.33661],[-71.18339,42.3366],[-71.18314,42.33659],[-71.18285,42.33657],[-71.18262,42.33655],[-71.18241,42.33653],[-71.18211,42.33649],[-71.18195,42.33648],[-71.18138,42.3364],[-71.18114,42.33637],[-71.18098,42.33635],[-71.18055,42.33629],[-71.18015,42.33624],[-71.18,42.33622],[-71.17987,42.33621],[-71.17973,42.33619],[-71.17927,42.33615],[-71.17917,42.33614],[-71.17889,42.33613],[-71.1787,42.33611],[-71.17856,42.33612],[-71.17831,42.33612],[-71.17817,42.33614],[-71.17803,42.33617],[-71.17791,42.3362],[-71.17769,42.33627],[-71.17757,42.33632],[-71.17739,42.3364],[-71.17707,42.33655],[-71.17694,42.33661],[-71.17691,42.33663],[-71.17685,42.33666],[-71.17682,42.33668],[-71.17678,42.3367],[-71.17672,42.33673],[-71.17666,42.33677],[-71.17651,42.33685],[-71.17644,42.33688],[-71.17639,42.33691],[-71.17627,42.33697],[-71.17615,42.33703],[-71.17609,42.33705],[-71.17602,42.33707],[-71.17588,42.33712],[-71.17583,42.33714],[-71.17577,42.33715],[-71.17567,42.33718],[-71.17566,42.33718],[-71.17536,42.33723],[-71.17503,42.33727],[-71.17488,42.33727],[-71.17471,42.33727],[-71.1746,42.33727],[-71.17446,42.33725],[-71.17434,42.33724],[-71.17385,42.33716],[-71.17354,42.33711],[-71.17333,42.33708],[-71.17318,42.33707],[-71.17303,42.33706],[-71.17284,42.33707],[-71.17263,42.33709],[-71.17245,42.33712],[-71.17221,42.33718],[-71.17212,42.33722],[-71.17187,42.33737],[-71.17148,42.33769],[-71.17144,42.33773],[-71.17139,42.33778],[-71.17134,42.33782],[-71.17131,42.33785],[-71.17117,42.33799],[-71.17111,42.33804],[-71.17105,42.3381],[-71.1708,42.33835],[-71.17075,42.33839],[-71.17068,42.33845],[-71.17061,42.33851],[-71.17053,42.33857],[-71.17044,42.33863],[-71.17036,42.33869],[-71.17035,42.3387],[-71.17028,42.33875],[-71.1702,42.3388],[-71.17011,42.33885],[-71.17,42.33891],[-71.16977,42.33903],[-71.16966,42.33908],[-71.16952,42.33914],[-71.16937,42.3392],[-71.16917,42.33927],[-71.16887,42.33937],[-71.16855,42.33947],[-71.16839,42.33952],[-71.16834,42.33954],[-71.16832,42.33955],[-71.1683,42.33955],[-71.16822,42.33955],[-71.16819,42.33955],[-71.16817,42.33956],[-71.16814,42.33957],[-71.16813,42.33957],[-71.16806,42.33959],[-71.16796,42.33962],[-71.16784,42.33964],[-71.16757,42.3397],[-71.16734,42.33974],[-71.16701,42.3398],[-71.16677,42.33984],[-71.1667,42.33985],[-71.16662,42.33986],[-71.16645,42.33987],[-71.16612,42.33991],[-71.16597,42.33993],[-71.1658,42.33995],[-71.16558,42.33998],[-71.1654,42.33999],[-71.16534,42.34],[-71.16523,42.34001],[-71.16519,42.34001],[-71.16516,42.34001],[-71.16511,42.34001],[-71.1649,42.34003],[-71.16467,42.34004],[-71.16461,42.34004],[-71.16447,42.34005],[-71.16419,42.34005],[-71.16398,42.34006],[-71.16388,42.34006],[-71.16374,42.34006],[-71.16355,42.34005],[-71.16343,42.34005],[-71.16337,42.34005],[-71.16321,42.34005],[-71.16281,42.34003],[-71.16264,42.34003],[-71.16179,42.34],[-71.16177,42.34],[-71.16135,42.33999],[-71.16106,42.33998],[-71.16106,42.33998],[-71.16106,42.34015],[-71.1613,42.34016],[-71.16143,42.34017],[-71.16162,42.34018],[-71.16169,42.34018],[-71.16169,42.34018],[-71.16205,42.34019],[-71.1626,42.34021],[-71.16308,42.34022],[-71.16341,42.34023],[-71.16355,42.34023],[-71.16393,42.34024],[-71.16403,42.34024],[-71.16414,42.34024],[-71.16421,42.34024],[-71.16428,42.34024],[-71.16443,42.34024],[-71.16457,42.34023],[-71.16471,42.34023],[-71.16505,42.34021],[-71.16567,42.34014],[-71.16614,42.34009],[-71.16614,42.34009],[-71.16613,42.34],[-71.16613,42.33997],[-71.16612,42.33991],[-71.16597,42.33993],[-71.1658,42.33995],[-71.16558,42.33998],[-71.1654,42.33999],[-71.16534,42.34],[-71.16523,42.34001],[-71.16519,42.34001],[-71.16516,42.34001],[-71.16511,42.34001],[-71.1649,42.34003],[-71.16467,42.34004],[-71.16461,42.34004],[-71.16447,42.34005],[-71.16419,42.34005],[-71.16398,42.34006],[-71.16388,42.34006],[-71.16374,42.34006],[-71.16355,42.34005],[-71.16343,42.34005],[-71.16337,42.34005],[-71.16321,42.34005],[-71.16281,42.34003],[-71.16264,42.34003],[-71.16179,42.34],[-71.16177,42.34],[-71.16135,42.33999],[-71.16106,42.33998],[-71.16092,42.33998],[-71.16078,42.33998],[-71.16062,42.33997],[-71.16047,42.33996],[-71.16038,42.33996],[-71.16031,42.33995],[-71.16016,42.33994],[-71.16001,42.33993],[-71.15987,42.33992],[-71.1596,42.33988],[-71.1593,42.33984],[-71.15898,42.33979],[-71.15884,42.33977],[-71.15865,42.33973],[-71.15848,42.3397],[-71.15835,42.33967],[-71.15815,42.33962],[-71.158,42.33959],[-71.15789,42.33956],[-71.15768,42.3395],[-71.15751,42.33946],[-71.15735,42.33941],[-71.15722,42.33936],[-71.15708,42.33932],[-71.15694,42.33927],[-71.1568,42.33922],[-71.15666,42.33917],[-71.15654,42.33912],[-71.15637,42.33906],[-71.15625,42.33901],[-71.15613,42.33896],[-71.15589,42.33885],[-71.15537,42.33859],[-71.15517,42.33849],[-71.15506,42.33845],[-71.15506,42.33845],[-71.15501,42.33849],[-71.15499,42.33852],[-71.15494,42.33857],[-71.15508,42.33863],[-71.15509,42.33864],[-71.15522,42.3387],[-71.15534,42.33876],[-71.15546,42.33882],[-71.15558,42.33888],[-71.15584,42.339],[-71.15608,42.33911],[-71.15623,42.33917],[-71.15648,42.33928],[-71.1565,42.33928],[-71.15676,42.33938],[-71.15726,42.33955],[-71.15729,42.33956],[-71.15758,42.33964],[-71.15758,42.33964],[-71.15782,42.33971],[-71.15782,42.33971],[-71.15789,42.33956],[-71.15768,42.3395],[-71.15751,42.33946],[-71.15735,42.33941],[-71.15722,42.33936],[-71.15708,42.33932],[-71.15694,42.33927],[-71.1568,42.33922],[-71.15666,42.33917],[-71.15654,42.33912],[-71.15637,42.33906],[-71.15625,42.33901],[-71.15613,42.33896],[-71.15589,42.33885],[-71.15537,42.33859],[-71.15517,42.33849],[-71.15506,42.33845],[-71.15497,42.33841],[-71.15489,42.33837],[-71.15475,42.33831],[-71.15462,42.33825],[-71.1545,42.33819],[-71.15438,42.33815],[-71.1543,42.33812],[-71.15422,42.33809],[-71.15413,42.33805],[-71.15403,42.33802],[-71.15399,42.33801],[-71.15396,42.33801],[-71.15395,42.338],[-71.15391,42.338],[-71.15374,42.33797],[-71.1536,42.33796],[-71.15351,42.33795],[-71.15348,42.33795],[-71.15347,42.33795],[-71.15346,42.33795],[-71.15345,42.33795],[-71.15344,42.33795],[-71.15342,42.33795],[-71.15329,42.33798],[-71.15327,42.33799],[-71.15325,42.338],[-71.15321,42.33802],[-71.15321,42.33802],[-71.15317,42.33797],[-71.15307,42.33787],[-71.15305,42.33784],[-71.15254,42.3374],[-71.15229,42.33717],[-71.15203,42.33696],[-71.15188,42.33684],[-71.15145,42.3365],[-71.15129,42.33636],[-71.15123,42.33632],[-71.15118,42.33628],[-71.15113,42.33624],[-71.15107,42.33619],[-71.15105,42.33617],[-71.15092,42.33604],[-71.15092,42.33604],[-71.1508,42.33592],[-71.15059,42.33571],[-71.15051,42.33563],[-71.15042,42.33555],[-71.15039,42.33552],[-71.15028,42.33544],[-71.15019,42.33537],[-71.15004,42.33528],[-71.15003,42.33527],[-71.15001,42.33526],[-71.14997,42.33523],[-71.14986,42.33517],[-71.14985,42.33516],[-71.14972,42.3351],[-71.14964,42.33506],[-71.14952,42.33499],[-71.14943,42.33495],[-71.14937,42.33492],[-71.14936,42.33491],[-71.14914,42.33499],[-71.14893,42.3349],[-71.1488,42.33483],[-71.1488,42.33483],[-71.14891,42.3347],[-71.14891,42.3347],[-71.14917,42.33482],[-71.14928,42.33487],[-71.14936,42.33491],[-71.14937,42.33492],[-71.14943,42.33495],[-71.14952,42.33499],[-71.14964,42.33506],[-71.14972,42.3351],[-71.14985,42.33516],[-71.14986,42.33517],[-71.14997,42.33523],[-71.15001,42.33526],[-71.15003,42.33527],[-71.15004,42.33528],[-71.15019,42.33537],[-71.15028,42.33544],[-71.15039,42.33552],[-71.15042,42.33555],[-71.15051,42.33563],[-71.15059,42.33571],[-71.1508,42.33592],[-71.15092,42.33604],[-71.15105,42.33617],[-71.15107,42.33619],[-71.15113,42.33624],[-71.15118,42.33628],[-71.15123,42.33632],[-71.15129,42.33636],[-71.15145,42.3365],[-71.15188,42.33684],[-71.15203,42.33696],[-71.15209,42.337],[-71.15209,42.337],[-71.15229,42.33717],[-71.15254,42.3374],[-71.15305,42.33784],[-71.15307,42.33787],[-71.15317,42.33797],[-71.15321,42.33802],[-71.15321,42.33802],[-71.15339,42.33818],[-71.1535,42.33818],[-71.15356,42.33817],[-71.15359,42.33817],[-71.15362,42.33817],[-71.15379,42.33818],[-71.1539,42.33819],[-71.154,42.33821],[-71.15404,42.33822],[-71.15415,42.33826],[-71.15429,42.33831],[-71.15442,42.33835],[-71.15455,42.3384],[-71.15469,42.33846],[-71.15481,42.33851],[-71.15494,42.33857],[-71.15508,42.33863],[-71.15509,42.33864],[-71.15522,42.3387],[-71.15534,42.33876],[-71.15546,42.33882],[-71.15558,42.33888],[-71.15584,42.339],[-71.15608,42.33911],[-71.15623,42.33917],[-71.15648,42.33928],[-71.1565,42.33928],[-71.15676,42.33938],[-71.15726,42.33955],[-71.15729,42.33956],[-71.15782,42.33971],[-71.15835,42.33983],[-71.15866,42.3399],[-71.15898,42.33996],[-71.15936,42.34001],[-71.15975,42.34007],[-71.16006,42.3401],[-71.16032,42.34012],[-71.16035,42.34012],[-71.16059,42.34014],[-71.16106,42.34015],[-71.1613,42.34016],[-71.16143,42.34017],[-71.16162,42.34018],[-71.16205,42.34019],[-71.1626,42.34021],[-71.16308,42.34022],[-71.16341,42.34023],[-71.16355,42.34023],[-71.16393,42.34024],[-71.16403,42.34024],[-71.16414,42.34024],[-71.16421,42.34024],[-71.16428,42.34024],[-71.16443,42.34024],[-71.16457,42.34023],[-71.16471,42.34023],[-71.16505,42.34021],[-71.16567,42.34014],[-71.16614,42.34009],[-71.1665,42.34006],[-71.16652,42.34006],[-71.16659,42.34005],[-71.16671,42.34003],[-71.16683,42.34],[-71.167,42.33997],[-71.16733,42.33991],[-71.16774,42.33976],[-71.16817,42.33961],[-71.16824,42.33959],[-71.16827,42.33957],[-71.1683,42.33955],[-71.16832,42.33955],[-71.16834,42.33954],[-71.16839,42.33952],[-71.16855,42.33947],[-71.16887,42.33937],[-71.16917,42.33927],[-71.16937,42.3392],[-71.16952,42.33914],[-71.16966,42.33908],[-71.16977,42.33903],[-71.17,42.33891],[-71.17011,42.33885],[-71.1702,42.3388],[-71.17028,42.33875],[-71.17035,42.3387],[-71.17036,42.33869],[-71.17044,42.33863],[-71.17053,42.33857],[-71.17061,42.33851],[-71.17068,42.33845],[-71.17075,42.33839],[-71.1708,42.33835],[-71.17105,42.3381],[-71.17111,42.33804],[-71.17117,42.33799],[-71.17131,42.33785],[-71.17134,42.33782],[-71.17139,42.33778],[-71.17144,42.33773],[-71.17148,42.33769],[-71.17187,42.33737],[-71.17212,42.33722],[-71.17221,42.33718],[-71.17245,42.33712],[-71.17263,42.33709],[-71.17284,42.33707],[-71.17303,42.33706],[-71.17318,42.33707],[-71.17333,42.33708],[-71.17354,42.33711],[-71.17385,42.33716],[-71.17434,42.33724],[-71.17446,42.33725],[-71.1746,42.33727],[-71.17471,42.33727],[-71.17488,42.33727],[-71.17503,42.33727],[-71.17536,42.33723],[-71.17566,42.33718],[-71.17567,42.33718],[-71.17577,42.33715],[-71.17583,42.33714],[-71.17588,42.33712],[-71.17602,42.33707],[-71.17609,42.33705],[-71.17615,42.33703],[-71.17627,42.33697],[-71.17639,42.33691],[-71.17644,42.33688],[-71.17651,42.33685],[-71.17666,42.33677],[-71.17672,42.33673],[-71.17678,42.3367],[-71.17682,42.33668],[-71.17685,42.33666],[-71.17691,42.33663],[-71.17694,42.33661],[-71.17707,42.33655],[-71.17739,42.3364],[-71.17757,42.33632],[-71.17769,42.33627],[-71.17791,42.3362],[-71.17803,42.33617],[-71.17817,42.33614],[-71.17831,42.33612],[-71.17856,42.33612],[-71.1787,42.33611],[-71.17889,42.33613],[-71.17917,42.33614],[-71.17927,42.33615],[-71.17973,42.33619],[-71.17987,42.33621],[-71.18,42.33622],[-71.18015,42.33624],[-71.18055,42.33629],[-71.18098,42.33635],[-71.18114,42.33637],[-71.18138,42.3364],[-71.18195,42.33648],[-71.18211,42.33649],[-71.18241,42.33653],[-71.18262,42.33655],[-71.18285,42.33657],[-71.18314,42.33659],[-71.18339,42.3366],[-71.18354,42.33661],[-71.18355,42.33661],[-71.18386,42.33662],[-71.18439,42.33663],[-71.18476,42.33662],[-71.18498,42.3366],[-71.18517,42.33658],[-71.18521,42.33657],[-71.18565,42.33651],[-71.1859,42.33647],[-71.18613,42.33644],[-71.18649,42.3364],[-71.18652,42.33639],[-71.18662,42.33638],[-71.18671,42.33637],[-71.1871,42.33633],[-71.18712,42.33633],[-71.18748,42.33631],[-71.18795,42.33628],[-71.18876,42.33623],[-71.18935,42.33621],[-71.18995,42.3362],[-71.19068,42.33621],[-71.19073,42.33621],[-71.19087,42.33621],[-71.1914,42.3362],[-71.19206,42.3362],[-71.1922,42.33619],[-71.19221,42.33619],[-71.19227,42.33618],[-71.19237,42.33617],[-71.19255,42.33615],[-71.19263,42.33614],[-71.19286,42.33612],[-71.19308,42.33608],[-71.19336,42.336],[-71.19336,42.336],[-71.19335,42.33608],[-71.19332,42.33617],[-71.19331,42.33622],[-71.19326,42.33651],[-71.19317,42.33719],[-71.19316,42.33724],[-71.19311,42.33758],[-71.19302,42.33813],[-71.19282,42.33947],[-71.1928,42.33958],[-71.19267,42.34035],[-71.19264,42.34057],[-71.1926,42.34081],[-71.19257,42.34092],[-71.19254,42.341],[-71.1925,42.34109],[-71.19245,42.34118],[-71.1924,42.34127],[-71.19236,42.34133],[-71.19228,42.34143],[-71.19222,42.34149],[-71.19207,42.34164],[-71.19193,42.34177],[-71.19193,42.34177],[-71.19242,42.34205],[-71.19242,42.34205],[-71.19261,42.34192],[-71.19264,42.34186],[-71.19266,42.34181],[-71.19267,42.34171],[-71.19268,42.3416],[-71.19271,42.34148],[-71.19275,42.34139],[-71.19281,42.34132],[-71.19283,42.3413],[-71.19286,42.34127],[-71.19291,42.34124],[-71.19297,42.34121],[-71.19305,42.34119],[-71.1931,42.34118],[-71.19315,42.34118],[-71.19321,42.34119],[-71.19329,42.3412],[-71.19352,42.34124],[-71.1937,42.34128],[-71.1938,42.34129],[-71.19409,42.34133]]},{"id":24,"name":"Early Morning Shuttle (Newton)","tracker":"Newton Early Morning Shuttle","color":"#003366","loop":false,"service":[{"days":[1,2,3,4,5],"from":"05:55","to":"06:35","every":30},{"days":[0,6],"from":"06:55","to":"07:35","every":30}],"stops":[{"name":"Stuart","lonlat":[-71.193791,42.341133],"rideToNext":44,"dwell":10,"at":3},{"name":"Newton Main Gate","lonlat":[-71.192625,42.341653],"rideToNext":312,"dwell":10,"at":22},{"name":"Conte Forum","lonlat":[-71.167135,42.335986],"rideToNext":529,"dwell":10,"at":274}],"line":[[-71.19389,42.34116],[-71.19387,42.34117],[-71.19385,42.34118],[-71.19383,42.34119],[-71.19382,42.34121],[-71.1938,42.34129],[-71.1938,42.34129],[-71.1937,42.34128],[-71.19352,42.34124],[-71.19329,42.3412],[-71.19321,42.34119],[-71.19315,42.34118],[-71.1931,42.34118],[-71.19305,42.34119],[-71.19297,42.34121],[-71.19291,42.34124],[-71.19286,42.34127],[-71.19283,42.3413],[-71.19281,42.34132],[-71.19275,42.34139],[-71.19271,42.34148],[-71.19268,42.3416],[-71.19267,42.34166],[-71.19267,42.34166],[-71.19267,42.34171],[-71.19266,42.34181],[-71.19264,42.34186],[-71.19261,42.34192],[-71.19242,42.34205],[-71.19242,42.34205],[-71.19193,42.34177],[-71.19193,42.34177],[-71.19207,42.34164],[-71.19222,42.34149],[-71.19228,42.34143],[-71.19236,42.34133],[-71.1924,42.34127],[-71.19245,42.34118],[-71.1925,42.34109],[-71.19254,42.341],[-71.19257,42.34092],[-71.1926,42.34081],[-71.19264,42.34057],[-71.19267,42.34035],[-71.1928,42.33958],[-71.19282,42.33947],[-71.19302,42.33813],[-71.19311,42.33758],[-71.19316,42.33724],[-71.19317,42.33719],[-71.19326,42.33651],[-71.19331,42.33622],[-71.19332,42.33617],[-71.19335,42.33608],[-71.19336,42.336],[-71.19336,42.336],[-71.19308,42.33608],[-71.19286,42.33612],[-71.19263,42.33614],[-71.19255,42.33615],[-71.19237,42.33617],[-71.19227,42.33618],[-71.19221,42.33619],[-71.1922,42.33619],[-71.19206,42.3362],[-71.1914,42.3362],[-71.19087,42.33621],[-71.19073,42.33621],[-71.19068,42.33621],[-71.18995,42.3362],[-71.18935,42.33621],[-71.18876,42.33623],[-71.18795,42.33628],[-71.18748,42.33631],[-71.18712,42.33633],[-71.1871,42.33633],[-71.18671,42.33637],[-71.18662,42.33638],[-71.18652,42.33639],[-71.18649,42.3364],[-71.18613,42.33644],[-71.1859,42.33647],[-71.18565,42.33651],[-71.18521,42.33657],[-71.18517,42.33658],[-71.18498,42.3366],[-71.18476,42.33662],[-71.18439,42.33663],[-71.18403,42.33662],[-71.18386,42.33662],[-71.18355,42.33661],[-71.18354,42.33661],[-71.18339,42.3366],[-71.18314,42.33659],[-71.18285,42.33657],[-71.18281,42.33656],[-71.18262,42.33655],[-71.18241,42.33653],[-71.18211,42.33649],[-71.18195,42.33648],[-71.18186,42.33646],[-71.18138,42.3364],[-71.18114,42.33637],[-71.18098,42.33635],[-71.18055,42.33629],[-71.18015,42.33624],[-71.18,42.33622],[-71.17987,42.33621],[-71.17973,42.33619],[-71.17927,42.33615],[-71.17917,42.33614],[-71.17889,42.33613],[-71.1787,42.33611],[-71.17856,42.33612],[-71.17831,42.33612],[-71.17817,42.33614],[-71.17803,42.33617],[-71.17791,42.3362],[-71.17769,42.33627],[-71.17757,42.33632],[-71.17739,42.3364],[-71.17707,42.33655],[-71.17694,42.33661],[-71.17691,42.33663],[-71.17685,42.33666],[-71.17682,42.33668],[-71.17678,42.3367],[-71.17672,42.33673],[-71.17666,42.33677],[-71.17651,42.33685],[-71.17644,42.33688],[-71.17639,42.33691],[-71.17627,42.33697],[-71.17615,42.33703],[-71.17609,42.33705],[-71.17602,42.33707],[-71.17588,42.33712],[-71.17583,42.33714],[-71.17577,42.33715],[-71.17567,42.33718],[-71.17566,42.33718],[-71.17536,42.33723],[-71.17503,42.33727],[-71.17488,42.33727],[-71.17471,42.33727],[-71.1746,42.33727],[-71.17446,42.33725],[-71.17434,42.33724],[-71.17385,42.33716],[-71.17354,42.33711],[-71.17333,42.33708],[-71.17318,42.33707],[-71.17303,42.33706],[-71.17284,42.33707],[-71.17263,42.33709],[-71.17245,42.33712],[-71.17221,42.33718],[-71.17212,42.33722],[-71.17187,42.33737],[-71.17148,42.33769],[-71.17144,42.33773],[-71.17139,42.33778],[-71.17134,42.33782],[-71.17131,42.33785],[-71.17117,42.33799],[-71.17111,42.33804],[-71.17105,42.3381],[-71.1708,42.33835],[-71.17075,42.33839],[-71.17068,42.33845],[-71.17061,42.33851],[-71.17053,42.33857],[-71.17044,42.33863],[-71.17036,42.33869],[-71.17035,42.3387],[-71.17028,42.33875],[-71.1702,42.3388],[-71.17011,42.33885],[-71.17,42.33891],[-71.16977,42.33903],[-71.16966,42.33908],[-71.1696,42.3391],[-71.16952,42.33914],[-71.16937,42.3392],[-71.16917,42.33927],[-71.16887,42.33937],[-71.16855,42.33947],[-71.16839,42.33952],[-71.16834,42.33954],[-71.16832,42.33955],[-71.1683,42.33955],[-71.16822,42.33955],[-71.16819,42.33955],[-71.16817,42.33956],[-71.16814,42.33957],[-71.16813,42.33957],[-71.16806,42.33959],[-71.16796,42.33962],[-71.16784,42.33964],[-71.16757,42.3397],[-71.16734,42.33974],[-71.16701,42.3398],[-71.16677,42.33984],[-71.16677,42.33984],[-71.16668,42.3397],[-71.16653,42.33947],[-71.16647,42.33936],[-71.16632,42.33915],[-71.16632,42.33915],[-71.16666,42.33902],[-71.16685,42.33895],[-71.16685,42.33895],[-71.16718,42.33882],[-71.16721,42.33881],[-71.16728,42.33879],[-71.16792,42.33855],[-71.1681,42.33849],[-71.16827,42.33843],[-71.16849,42.33835],[-71.1685,42.33834],[-71.16857,42.33832],[-71.16865,42.33828],[-71.1687,42.33825],[-71.16873,42.33822],[-71.16879,42.33817],[-71.16883,42.33812],[-71.16886,42.33808],[-71.16889,42.33804],[-71.16891,42.33798],[-71.16892,42.33789],[-71.16892,42.33785],[-71.16891,42.33778],[-71.1689,42.33773],[-71.16888,42.33767],[-71.16883,42.33757],[-71.16875,42.3375],[-71.16869,42.33746],[-71.16867,42.33743],[-71.16861,42.33739],[-71.16857,42.33736],[-71.16854,42.33733],[-71.16852,42.33731],[-71.16851,42.33729],[-71.16851,42.33728],[-71.1685,42.33726],[-71.16849,42.33724],[-71.16848,42.33721],[-71.16847,42.33717],[-71.16845,42.3371],[-71.16841,42.337],[-71.16838,42.33692],[-71.16832,42.33676],[-71.16829,42.33666],[-71.16826,42.33656],[-71.16818,42.33633],[-71.16813,42.33619],[-71.16811,42.33613],[-71.16809,42.3361],[-71.16808,42.33607],[-71.16806,42.33605],[-71.16803,42.33601],[-71.168,42.33598],[-71.16797,42.33596],[-71.16789,42.33591],[-71.16786,42.3359],[-71.16784,42.33589],[-71.16781,42.33589],[-71.16777,42.33588],[-71.16773,42.33588],[-71.16769,42.33589],[-71.16764,42.33589],[-71.16759,42.3359],[-71.16757,42.33591],[-71.1675,42.33593],[-71.16718,42.33605],[-71.16718,42.33605],[-71.1671,42.33608],[-71.16701,42.33612],[-71.16692,42.33615],[-71.16683,42.33618],[-71.16676,42.3362],[-71.16665,42.33621],[-71.1665,42.33623],[-71.16635,42.33622],[-71.16626,42.33622],[-71.16622,42.33622],[-71.16615,42.33621],[-71.16611,42.3362],[-71.16606,42.33619],[-71.16595,42.33617],[-71.16585,42.33614],[-71.16577,42.33611],[-71.16575,42.3361],[-71.16571,42.33609],[-71.1656,42.33603],[-71.16552,42.33598],[-71.16542,42.3359],[-71.16523,42.33578],[-71.16507,42.33573],[-71.16481,42.33566],[-71.16456,42.3356],[-71.16443,42.33556],[-71.16434,42.33554],[-71.1643,42.33553],[-71.16407,42.33546],[-71.16363,42.33535],[-71.16349,42.33531],[-71.16344,42.3353],[-71.1633,42.33526],[-71.16323,42.33524],[-71.16317,42.33524],[-71.16311,42.33525],[-71.16305,42.33526],[-71.16296,42.33528],[-71.16296,42.33528],[-71.163,42.33533],[-71.16317,42.33558],[-71.1632,42.33562],[-71.16321,42.33563],[-71.16325,42.33569],[-71.16342,42.33594],[-71.16358,42.33616],[-71.16358,42.33616],[-71.16366,42.33628],[-71.16373,42.33641],[-71.16374,42.33644],[-71.16382,42.33657],[-71.16383,42.33658],[-71.16391,42.33672],[-71.16401,42.3369],[-71.16413,42.33716],[-71.16427,42.33747],[-71.16428,42.33749],[-71.1644,42.33779],[-71.16445,42.3379],[-71.16455,42.33812],[-71.16458,42.3382],[-71.16462,42.33827],[-71.16466,42.33834],[-71.16471,42.33842],[-71.16478,42.33849],[-71.1648,42.33852],[-71.16485,42.33856],[-71.16492,42.33864],[-71.16498,42.33868],[-71.16503,42.33872],[-71.1651,42.33877],[-71.16522,42.33885],[-71.16543,42.33897],[-71.1655,42.339],[-71.16558,42.33904],[-71.16566,42.33907],[-71.16572,42.3391],[-71.16582,42.33914],[-71.16602,42.33921],[-71.16603,42.33933],[-71.16604,42.3394],[-71.16609,42.33967],[-71.1661,42.33978],[-71.16611,42.33981],[-71.16612,42.33991],[-71.16612,42.33991],[-71.16613,42.33997],[-71.16613,42.34],[-71.16614,42.34009],[-71.1665,42.34006],[-71.16652,42.34006],[-71.16659,42.34005],[-71.16671,42.34003],[-71.16683,42.34],[-71.167,42.33997],[-71.16733,42.33991],[-71.16774,42.33976],[-71.16817,42.33961],[-71.16818,42.33961],[-71.16824,42.33959],[-71.16827,42.33957],[-71.1683,42.33955],[-71.16832,42.33955],[-71.16834,42.33954],[-71.16839,42.33952],[-71.16855,42.33947],[-71.16887,42.33937],[-71.16917,42.33927],[-71.16937,42.3392],[-71.16952,42.33914],[-71.1696,42.3391],[-71.16966,42.33908],[-71.16977,42.33903],[-71.17,42.33891],[-71.17011,42.33885],[-71.1702,42.3388],[-71.17028,42.33875],[-71.17035,42.3387],[-71.17036,42.33869],[-71.17044,42.33863],[-71.17053,42.33857],[-71.17061,42.33851],[-71.17068,42.33845],[-71.17075,42.33839],[-71.1708,42.33835],[-71.17105,42.3381],[-71.17111,42.33804],[-71.17117,42.33799],[-71.17131,42.33785],[-71.17134,42.33782],[-71.17139,42.33778],[-71.17144,42.33773],[-71.17148,42.33769],[-71.17187,42.33737],[-71.17212,42.33722],[-71.17221,42.33718],[-71.17245,42.33712],[-71.17263,42.33709],[-71.17284,42.33707],[-71.17303,42.33706],[-71.17318,42.33707],[-71.17333,42.33708],[-71.17354,42.33711],[-71.17385,42.33716],[-71.17434,42.33724],[-71.17446,42.33725],[-71.1746,42.33727],[-71.17471,42.33727],[-71.17488,42.33727],[-71.17503,42.33727],[-71.17536,42.33723],[-71.17566,42.33718],[-71.17567,42.33718],[-71.17577,42.33715],[-71.17583,42.33714],[-71.17588,42.33712],[-71.17602,42.33707],[-71.17609,42.33705],[-71.17615,42.33703],[-71.17627,42.33697],[-71.17639,42.33691],[-71.17644,42.33688],[-71.17651,42.33685],[-71.17666,42.33677],[-71.17672,42.33673],[-71.17678,42.3367],[-71.17682,42.33668],[-71.17685,42.33666],[-71.17691,42.33663],[-71.17694,42.33661],[-71.17707,42.33655],[-71.17739,42.3364],[-71.17757,42.33632],[-71.17769,42.33627],[-71.17791,42.3362],[-71.17803,42.33617],[-71.17817,42.33614],[-71.17831,42.33612],[-71.17856,42.33612],[-71.1787,42.33611],[-71.17889,42.33613],[-71.17917,42.33614],[-71.17927,42.33615],[-71.17973,42.33619],[-71.17987,42.33621],[-71.18,42.33622],[-71.18015,42.33624],[-71.18055,42.33629],[-71.18098,42.33635],[-71.18114,42.33637],[-71.18138,42.3364],[-71.18186,42.33646],[-71.18195,42.33648],[-71.18211,42.33649],[-71.18241,42.33653],[-71.18262,42.33655],[-71.18281,42.33656],[-71.18285,42.33657],[-71.18314,42.33659],[-71.18339,42.3366],[-71.18354,42.33661],[-71.18355,42.33661],[-71.18386,42.33662],[-71.18403,42.33662],[-71.18439,42.33663],[-71.18476,42.33662],[-71.18498,42.3366],[-71.18517,42.33658],[-71.18521,42.33657],[-71.18565,42.33651],[-71.1859,42.33647],[-71.18613,42.33644],[-71.18649,42.3364],[-71.18652,42.33639],[-71.18662,42.33638],[-71.18671,42.33637],[-71.1871,42.33633],[-71.18712,42.33633],[-71.18748,42.33631],[-71.18795,42.33628],[-71.18876,42.33623],[-71.18935,42.33621],[-71.18995,42.3362],[-71.19068,42.33621],[-71.19073,42.33621],[-71.19087,42.33621],[-71.1914,42.3362],[-71.19206,42.3362],[-71.1922,42.33619],[-71.19221,42.33619],[-71.19227,42.33618],[-71.19237,42.33617],[-71.19255,42.33615],[-71.19263,42.33614],[-71.19286,42.33612],[-71.19308,42.33608],[-71.19336,42.336],[-71.19336,42.336],[-71.19335,42.33608],[-71.19332,42.33617],[-71.19331,42.33622],[-71.19326,42.33651],[-71.19317,42.33719],[-71.19316,42.33724],[-71.19311,42.33758],[-71.19302,42.33813],[-71.19282,42.33947],[-71.1928,42.33958],[-71.19267,42.34035],[-71.19264,42.34057],[-71.1926,42.34081],[-71.19257,42.34092],[-71.19254,42.341],[-71.1925,42.34109],[-71.19245,42.34118],[-71.1924,42.34127],[-71.19236,42.34133],[-71.19228,42.34143],[-71.19222,42.34149],[-71.19207,42.34164],[-71.19193,42.34177],[-71.19193,42.34177],[-71.19242,42.34205],[-71.19242,42.34205],[-71.19261,42.34192],[-71.19264,42.34186],[-71.19266,42.34181],[-71.19267,42.34171],[-71.19268,42.3416],[-71.19271,42.34148],[-71.19275,42.34139],[-71.19281,42.34132],[-71.19283,42.3413],[-71.19286,42.34127],[-71.19291,42.34124],[-71.19297,42.34121],[-71.19305,42.34119],[-71.1931,42.34118],[-71.19315,42.34118],[-71.19321,42.34119],[-71.19329,42.3412],[-71.19352,42.34124],[-71.1937,42.34128],[-71.1938,42.34129],[-71.19409,42.34133],[-71.19409,42.34133],[-71.19437,42.34137],[-71.19469,42.34142],[-71.19471,42.34133],[-71.19469,42.34124],[-71.19469,42.34124],[-71.19428,42.34118],[-71.19428,42.34118],[-71.19424,42.34117],[-71.19405,42.34116],[-71.194,42.34115],[-71.19396,42.34115],[-71.19391,42.34116],[-71.19389,42.34116]]},{"id":25,"name":"Mall and Grocery Shuttle (Sunday)","tracker":"Grocery/Chestnut Hill Mall Shuttle - Sunday","color":"#FA8100","loop":false,"service":[{"days":[0],"from":"11:00","to":"16:05","every":60}],"stops":[{"name":"Robsham Theater","lonlat":[-71.169006,42.337958],"rideToNext":91,"dwell":10,"at":0},{"name":"Conte Forum","lonlat":[-71.167135,42.335986],"rideToNext":133,"dwell":10,"at":46},{"name":"McElroy – Beacon St.","lonlat":[-71.170819,42.333187],"rideToNext":288,"dwell":10,"at":130},{"name":"Chestnut Hill Mall (MBTA Stop)","lonlat":[-71.17775,42.321861],"rideToNext":155,"dwell":10,"at":325},{"name":"Chestnut Hill Square (Wegmans)","lonlat":[-71.17622,42.319547],"rideToNext":183,"dwell":10,"at":364},{"name":"The Street (Bus Shelter)","lonlat":[-71.166517,42.323108],"rideToNext":400,"dwell":10,"at":428},{"name":"College Road","lonlat":[-71.1716,42.335236],"rideToNext":44,"dwell":10,"at":651},{"name":"Main Gate Chestnut Hill","lonlat":[-71.170961,42.338074],"rideToNext":138,"dwell":10,"at":679}],"line":[[-71.16891,42.33794],[-71.16892,42.3379],[-71.16892,42.33785],[-71.16891,42.33778],[-71.16889,42.33773],[-71.16887,42.33767],[-71.16882,42.33758],[-71.16874,42.33751],[-71.16869,42.33746],[-71.16866,42.33744],[-71.16861,42.33739],[-71.16857,42.33736],[-71.16854,42.33733],[-71.16852,42.33731],[-71.16852,42.33729],[-71.16851,42.33728],[-71.1685,42.33726],[-71.16849,42.33724],[-71.16848,42.33721],[-71.16847,42.33717],[-71.16844,42.3371],[-71.1684,42.337],[-71.16837,42.33692],[-71.16831,42.33676],[-71.16828,42.33666],[-71.16824,42.33656],[-71.16816,42.33633],[-71.16811,42.33619],[-71.16809,42.33613],[-71.16808,42.3361],[-71.16807,42.33607],[-71.16805,42.33605],[-71.16803,42.33602],[-71.16799,42.33598],[-71.16797,42.33596],[-71.16788,42.33592],[-71.16786,42.33591],[-71.16783,42.33591],[-71.1678,42.3359],[-71.16777,42.3359],[-71.16773,42.3359],[-71.16769,42.3359],[-71.16765,42.33591],[-71.16759,42.33591],[-71.16758,42.33592],[-71.1675,42.33594],[-71.16718,42.33606],[-71.16718,42.33606],[-71.1671,42.33609],[-71.16701,42.33612],[-71.16693,42.33615],[-71.16683,42.33618],[-71.16676,42.3362],[-71.16665,42.33622],[-71.1665,42.33623],[-71.16635,42.33623],[-71.16626,42.33622],[-71.16622,42.33622],[-71.16615,42.33621],[-71.16611,42.3362],[-71.16606,42.33619],[-71.16595,42.33617],[-71.16585,42.33614],[-71.16577,42.33611],[-71.16575,42.3361],[-71.16571,42.33609],[-71.1656,42.33603],[-71.16553,42.33598],[-71.16543,42.33589],[-71.16524,42.33577],[-71.16507,42.33573],[-71.16481,42.33566],[-71.16456,42.33559],[-71.16444,42.33556],[-71.16434,42.33553],[-71.16431,42.33552],[-71.16407,42.33546],[-71.16363,42.33534],[-71.16349,42.33531],[-71.16344,42.3353],[-71.1633,42.33526],[-71.16323,42.33524],[-71.16317,42.33524],[-71.16311,42.33525],[-71.16305,42.33526],[-71.16296,42.33528],[-71.16296,42.33528],[-71.16287,42.33516],[-71.1628,42.33507],[-71.16272,42.33494],[-71.1626,42.33477],[-71.16258,42.33474],[-71.1625,42.33462],[-71.16245,42.33455],[-71.16242,42.33448],[-71.16239,42.33435],[-71.16239,42.33435],[-71.16242,42.33426],[-71.16245,42.33422],[-71.16249,42.33417],[-71.16255,42.3341],[-71.16261,42.33406],[-71.1627,42.33397],[-71.16291,42.33395],[-71.16303,42.33393],[-71.16319,42.33392],[-71.16347,42.33389],[-71.16363,42.33387],[-71.1644,42.33379],[-71.16447,42.33378],[-71.16468,42.33376],[-71.16471,42.33376],[-71.16474,42.33375],[-71.16475,42.33375],[-71.16479,42.33374],[-71.1652,42.3337],[-71.16546,42.33367],[-71.16603,42.3336],[-71.16623,42.33358],[-71.1668,42.33351],[-71.16761,42.33343],[-71.16768,42.33343],[-71.16777,42.33342],[-71.16803,42.33339],[-71.169,42.33328],[-71.16934,42.33324],[-71.16969,42.3332],[-71.16993,42.33318],[-71.17043,42.33312],[-71.17067,42.33309],[-71.1708,42.33308],[-71.1708,42.33308],[-71.17103,42.33305],[-71.17126,42.33303],[-71.17174,42.33298],[-71.17199,42.33295],[-71.17223,42.33292],[-71.17278,42.33287],[-71.17325,42.33281],[-71.17343,42.33279],[-71.17356,42.33277],[-71.17359,42.33277],[-71.17384,42.33273],[-71.17405,42.3327],[-71.17449,42.33266],[-71.17487,42.33261],[-71.17501,42.33259],[-71.1751,42.33257],[-71.17518,42.33256],[-71.1753,42.33253],[-71.17547,42.33248],[-71.1756,42.33243],[-71.17568,42.3324],[-71.17585,42.33232],[-71.17603,42.33225],[-71.17605,42.33224],[-71.17622,42.33218],[-71.17629,42.33215],[-71.17638,42.33213],[-71.17648,42.3321],[-71.17654,42.33208],[-71.17659,42.33208],[-71.17669,42.33206],[-71.17677,42.33205],[-71.17678,42.33205],[-71.17686,42.33204],[-71.17695,42.33204],[-71.17702,42.33204],[-71.17704,42.33204],[-71.17717,42.33204],[-71.17727,42.33205],[-71.1774,42.33207],[-71.1775,42.33208],[-71.17762,42.33211],[-71.17773,42.33213],[-71.17774,42.33214],[-71.17784,42.33217],[-71.17797,42.3322],[-71.17814,42.33225],[-71.17819,42.33226],[-71.17826,42.33229],[-71.17838,42.33232],[-71.17849,42.33235],[-71.17858,42.33237],[-71.17872,42.33239],[-71.17873,42.33239],[-71.17884,42.33241],[-71.17895,42.33241],[-71.17907,42.33242],[-71.17917,42.33241],[-71.1792,42.33241],[-71.17926,42.33241],[-71.17939,42.3324],[-71.17953,42.33238],[-71.17965,42.33236],[-71.17982,42.33234],[-71.17998,42.33231],[-71.18043,42.33225],[-71.18087,42.33218],[-71.18121,42.33213],[-71.18121,42.33213],[-71.18116,42.33207],[-71.1811,42.332],[-71.18104,42.33193],[-71.18101,42.33189],[-71.18091,42.33177],[-71.18079,42.33164],[-71.18063,42.33148],[-71.18055,42.3314],[-71.18033,42.33118],[-71.18019,42.33104],[-71.18005,42.3309],[-71.17991,42.33075],[-71.17983,42.33066],[-71.17977,42.3306],[-71.17962,42.33046],[-71.17952,42.33035],[-71.17934,42.33017],[-71.17922,42.33004],[-71.17894,42.32976],[-71.17892,42.32973],[-71.17862,42.32944],[-71.17843,42.32925],[-71.17815,42.32896],[-71.17812,42.32893],[-71.17781,42.32861],[-71.17773,42.32853],[-71.17762,42.32842],[-71.17753,42.32833],[-71.1774,42.32821],[-71.17736,42.32818],[-71.17728,42.32811],[-71.17719,42.32803],[-71.17705,42.32792],[-71.17704,42.32791],[-71.17695,42.32784],[-71.17681,42.32774],[-71.17666,42.32762],[-71.17652,42.32752],[-71.17641,42.32741],[-71.1763,42.32732],[-71.17622,42.32724],[-71.17619,42.32721],[-71.17613,42.32714],[-71.17604,42.32703],[-71.17597,42.32694],[-71.17591,42.32684],[-71.17584,42.32672],[-71.17578,42.3266],[-71.17573,42.32647],[-71.17569,42.32636],[-71.17566,42.32627],[-71.17564,42.32614],[-71.17562,42.326],[-71.17562,42.32599],[-71.1756,42.32591],[-71.1756,42.32578],[-71.17562,42.32567],[-71.17563,42.32561],[-71.17564,42.32555],[-71.17567,42.32541],[-71.17571,42.32528],[-71.17578,42.32511],[-71.17582,42.32504],[-71.17591,42.32485],[-71.17594,42.32479],[-71.17599,42.32473],[-71.17605,42.32465],[-71.17608,42.32462],[-71.17611,42.32458],[-71.17618,42.3245],[-71.17635,42.32429],[-71.17645,42.32417],[-71.17654,42.32407],[-71.17663,42.32396],[-71.17663,42.32396],[-71.17667,42.32394],[-71.1767,42.32389],[-71.17694,42.32393],[-71.17741,42.324],[-71.17765,42.32404],[-71.17789,42.32407],[-71.17811,42.3241],[-71.17823,42.32411],[-71.17825,42.3241],[-71.17827,42.3241],[-71.17828,42.3241],[-71.17829,42.32409],[-71.1783,42.32409],[-71.17832,42.32408],[-71.17833,42.32407],[-71.17835,42.32406],[-71.1784,42.32402],[-71.17845,42.32394],[-71.17845,42.32383],[-71.17848,42.32357],[-71.17848,42.32298],[-71.17847,42.32271],[-71.17847,42.32271],[-71.1782,42.32272],[-71.1782,42.32272],[-71.17819,42.32272],[-71.17819,42.3227],[-71.1782,42.32268],[-71.1782,42.32265],[-71.17818,42.32232],[-71.17818,42.32231],[-71.17818,42.3223],[-71.17817,42.3223],[-71.17816,42.32229],[-71.17815,42.32229],[-71.17814,42.32228],[-71.17812,42.32228],[-71.17795,42.32225],[-71.17795,42.32225],[-71.17796,42.32199],[-71.17796,42.32196],[-71.17795,42.32195],[-71.17795,42.32194],[-71.17794,42.32192],[-71.17793,42.32191],[-71.17792,42.3219],[-71.1779,42.3219],[-71.17788,42.32189],[-71.17787,42.32189],[-71.17775,42.32189],[-71.17775,42.32189],[-71.17759,42.32189],[-71.17759,42.32189],[-71.17757,42.3217],[-71.17757,42.32166],[-71.17758,42.32154],[-71.17758,42.32151],[-71.17758,42.32148],[-71.17759,42.32144],[-71.17761,42.32139],[-71.17763,42.32135],[-71.17765,42.32129],[-71.17767,42.32125],[-71.17771,42.32116],[-71.17772,42.32116],[-71.17776,42.32109],[-71.17779,42.32101],[-71.17782,42.32092],[-71.17782,42.32085],[-71.17781,42.3208],[-71.1778,42.32065],[-71.1778,42.32062],[-71.17778,42.32031],[-71.17777,42.32027],[-71.17776,42.32024],[-71.17773,42.32015],[-71.17768,42.32002],[-71.1776,42.31985],[-71.17755,42.31975],[-71.17755,42.31975],[-71.17751,42.3197],[-71.17748,42.31967],[-71.1774,42.31963],[-71.17713,42.31969],[-71.17713,42.31969],[-71.17558,42.32019],[-71.17536,42.32011],[-71.17513,42.31982],[-71.17617,42.31947],[-71.17617,42.31947],[-71.17641,42.31939],[-71.17659,42.31932],[-71.17667,42.3193],[-71.17686,42.31924],[-71.17686,42.31924],[-71.17688,42.31928],[-71.17703,42.31954],[-71.17712,42.31971],[-71.17712,42.31971],[-71.17645,42.31992],[-71.17638,42.31994],[-71.17611,42.32002],[-71.17564,42.32019],[-71.17561,42.3202],[-71.17549,42.32024],[-71.17534,42.3203],[-71.1753,42.32031],[-71.17512,42.32037],[-71.17457,42.32055],[-71.17437,42.32061],[-71.17431,42.32063],[-71.17409,42.32069],[-71.17351,42.32085],[-71.17292,42.32101],[-71.17263,42.32109],[-71.17239,42.32116],[-71.17217,42.32122],[-71.17216,42.32122],[-71.17161,42.32138],[-71.1714,42.32143],[-71.17096,42.32154],[-71.17078,42.32158],[-71.17054,42.32164],[-71.16997,42.32179],[-71.16936,42.32196],[-71.16891,42.32209],[-71.16855,42.32218],[-71.16841,42.32222],[-71.16828,42.32225],[-71.16799,42.32233],[-71.16755,42.32245],[-71.16721,42.32254],[-71.16678,42.32265],[-71.16633,42.32277],[-71.16605,42.32284],[-71.16592,42.32287],[-71.16567,42.32294],[-71.16535,42.32302],[-71.16515,42.32308],[-71.16515,42.32308],[-71.16505,42.32311],[-71.16511,42.32322],[-71.16516,42.32327],[-71.16518,42.32328],[-71.1652,42.32329],[-71.16522,42.3233],[-71.16526,42.32331],[-71.16535,42.32332],[-71.16545,42.32332],[-71.16559,42.3233],[-71.16603,42.32318],[-71.16636,42.3231],[-71.16649,42.32306],[-71.16649,42.32306],[-71.16652,42.32305],[-71.16654,42.32305],[-71.16655,42.32305],[-71.16664,42.323],[-71.16676,42.32295],[-71.16689,42.32292],[-71.16712,42.32286],[-71.16729,42.3228],[-71.16737,42.32278],[-71.16769,42.3227],[-71.1678,42.32268],[-71.16822,42.32258],[-71.16835,42.32255],[-71.16902,42.32237],[-71.1691,42.32235],[-71.16965,42.32222],[-71.16965,42.32222],[-71.16979,42.32203],[-71.16979,42.32203],[-71.17055,42.3218],[-71.17055,42.3218],[-71.17071,42.3218],[-71.17073,42.3218],[-71.17099,42.32178],[-71.17104,42.32178],[-71.17108,42.32178],[-71.1711,42.32177],[-71.17113,42.32177],[-71.17131,42.32174],[-71.17148,42.32171],[-71.17178,42.32165],[-71.17241,42.32153],[-71.17241,42.32153],[-71.17251,42.32178],[-71.17255,42.32185],[-71.17261,42.32193],[-71.17268,42.32201],[-71.17277,42.32211],[-71.17284,42.32218],[-71.1729,42.32222],[-71.17298,42.32227],[-71.17302,42.32229],[-71.17311,42.32233],[-71.17321,42.32236],[-71.17327,42.32238],[-71.17339,42.3224],[-71.17353,42.32242],[-71.1737,42.32242],[-71.17387,42.3224],[-71.17405,42.32236],[-71.17421,42.32232],[-71.1743,42.3223],[-71.17441,42.32228],[-71.17455,42.32226],[-71.17473,42.32224],[-71.17501,42.32224],[-71.17517,42.32226],[-71.17532,42.32228],[-71.17542,42.32231],[-71.17553,42.32234],[-71.17569,42.3224],[-71.17571,42.3224],[-71.17582,42.32245],[-71.17596,42.32253],[-71.17604,42.32258],[-71.17607,42.3226],[-71.17609,42.32261],[-71.17617,42.32267],[-71.17623,42.32272],[-71.17626,42.32275],[-71.17632,42.32282],[-71.17637,42.32287],[-71.17644,42.32296],[-71.17649,42.32305],[-71.17654,42.32317],[-71.17656,42.32325],[-71.17658,42.32333],[-71.1766,42.32347],[-71.17661,42.32359],[-71.17662,42.32376],[-71.17663,42.32388],[-71.17665,42.32395],[-71.17662,42.32404],[-71.17658,42.32411],[-71.17654,42.32418],[-71.1765,42.32424],[-71.17645,42.32431],[-71.1764,42.32437],[-71.17631,42.32448],[-71.17595,42.32486],[-71.17581,42.32512],[-71.17576,42.32525],[-71.17571,42.32539],[-71.17568,42.32551],[-71.17566,42.32564],[-71.17564,42.32581],[-71.17564,42.32602],[-71.17567,42.32622],[-71.17573,42.32644],[-71.17581,42.32665],[-71.17588,42.32677],[-71.17597,42.32693],[-71.17607,42.32706],[-71.1762,42.32722],[-71.17633,42.32735],[-71.17645,42.32746],[-71.17649,42.32748],[-71.17653,42.32752],[-71.17675,42.32769],[-71.17701,42.3279],[-71.17705,42.32792],[-71.17707,42.32794],[-71.17724,42.32808],[-71.17744,42.32825],[-71.17762,42.32842],[-71.17783,42.32864],[-71.17804,42.32885],[-71.17811,42.32892],[-71.17815,42.32895],[-71.17843,42.32924],[-71.17894,42.32976],[-71.1792,42.33005],[-71.17934,42.33019],[-71.17964,42.33049],[-71.17973,42.33058],[-71.17977,42.33063],[-71.18006,42.33092],[-71.1802,42.33106],[-71.18034,42.33121],[-71.18072,42.33159],[-71.18074,42.33162],[-71.18078,42.33165],[-71.18082,42.33169],[-71.18092,42.33179],[-71.18101,42.33189],[-71.18101,42.33189],[-71.18095,42.332],[-71.18091,42.33206],[-71.18087,42.33213],[-71.18084,42.33219],[-71.18048,42.33224],[-71.17994,42.33232],[-71.17976,42.33235],[-71.17952,42.33239],[-71.17919,42.33242],[-71.17886,42.33242],[-71.17869,42.3324],[-71.17856,42.33238],[-71.17847,42.33235],[-71.17836,42.33232],[-71.17826,42.33229],[-71.17819,42.33227],[-71.17814,42.33225],[-71.17797,42.3322],[-71.17784,42.33217],[-71.17774,42.33214],[-71.17769,42.33213],[-71.17761,42.33211],[-71.1775,42.33209],[-71.17739,42.33208],[-71.17727,42.33206],[-71.17717,42.33205],[-71.17704,42.33205],[-71.17702,42.33205],[-71.17699,42.33205],[-71.17695,42.33205],[-71.17687,42.33205],[-71.17678,42.33206],[-71.17675,42.33207],[-71.17669,42.33208],[-71.1766,42.33209],[-71.17655,42.3321],[-71.17649,42.33211],[-71.17636,42.33215],[-71.17626,42.33218],[-71.17618,42.3322],[-71.1761,42.33223],[-71.17604,42.33225],[-71.17597,42.33229],[-71.17587,42.33232],[-71.17569,42.3324],[-71.1756,42.33243],[-71.17547,42.33248],[-71.1753,42.33253],[-71.17518,42.33257],[-71.17514,42.33257],[-71.17511,42.33258],[-71.1751,42.33258],[-71.17502,42.3326],[-71.1749,42.33261],[-71.17449,42.33266],[-71.17405,42.33271],[-71.17384,42.33273],[-71.17359,42.33276],[-71.17356,42.33276],[-71.17336,42.33279],[-71.17325,42.33281],[-71.17304,42.33283],[-71.17279,42.33286],[-71.17279,42.33286],[-71.17301,42.33305],[-71.17303,42.33308],[-71.17303,42.33308],[-71.17295,42.33318],[-71.17286,42.33329],[-71.17281,42.33335],[-71.17268,42.3335],[-71.17258,42.33362],[-71.1725,42.3337],[-71.17244,42.33377],[-71.17218,42.33407],[-71.17205,42.33421],[-71.17182,42.33447],[-71.17178,42.33451],[-71.17175,42.33456],[-71.17174,42.33459],[-71.17173,42.33462],[-71.17172,42.33467],[-71.17169,42.3348],[-71.17167,42.33499],[-71.17164,42.33514],[-71.17162,42.33524],[-71.17162,42.33524],[-71.1716,42.33542],[-71.17156,42.33566],[-71.17155,42.33572],[-71.17155,42.33575],[-71.17155,42.33579],[-71.17157,42.33591],[-71.17158,42.33596],[-71.17158,42.33599],[-71.1716,42.33607],[-71.17165,42.33625],[-71.17166,42.3363],[-71.17173,42.33646],[-71.17186,42.33669],[-71.17195,42.33683],[-71.17207,42.33701],[-71.17221,42.33718],[-71.17221,42.33718],[-71.17212,42.33722],[-71.17187,42.33737],[-71.17148,42.33769],[-71.17144,42.33773],[-71.17139,42.33778],[-71.17134,42.33782],[-71.17131,42.33785],[-71.17117,42.33799],[-71.17111,42.33804],[-71.17105,42.3381],[-71.17105,42.3381],[-71.1708,42.33835],[-71.17075,42.33839],[-71.17068,42.33845],[-71.17061,42.33851],[-71.17053,42.33857],[-71.17044,42.33863],[-71.17036,42.33869],[-71.17035,42.3387],[-71.17028,42.33875],[-71.1702,42.3388],[-71.17011,42.33885],[-71.17,42.33891],[-71.16977,42.33903],[-71.16966,42.33908],[-71.1696,42.3391],[-71.16952,42.33914],[-71.16937,42.3392],[-71.16917,42.33927],[-71.16887,42.33937],[-71.16855,42.33947],[-71.16839,42.33952],[-71.16835,42.33954],[-71.16832,42.33955],[-71.1683,42.33955],[-71.16822,42.33955],[-71.16819,42.33955],[-71.16817,42.33956],[-71.16814,42.33957],[-71.16813,42.33957],[-71.16806,42.33959],[-71.16796,42.33962],[-71.16784,42.33964],[-71.16757,42.33969],[-71.16734,42.33973],[-71.16701,42.33979],[-71.16677,42.33984],[-71.16677,42.33984],[-71.16668,42.3397],[-71.16654,42.33947],[-71.16647,42.33936],[-71.16632,42.33915],[-71.16632,42.33915],[-71.16666,42.33902],[-71.16685,42.33895],[-71.16685,42.33895],[-71.16719,42.33882],[-71.16721,42.33881],[-71.16728,42.33878],[-71.16792,42.33854],[-71.16809,42.33848],[-71.16826,42.33841],[-71.16849,42.33834],[-71.1685,42.33834],[-71.16857,42.33833],[-71.16866,42.33829],[-71.1687,42.33825],[-71.16873,42.33822],[-71.16879,42.33817],[-71.16882,42.33812],[-71.16885,42.33808],[-71.16888,42.33803],[-71.1689,42.33798],[-71.16891,42.33794]]},{"id":45,"name":"Brookline Campus","tracker":"BC Brookline Academic Route","color":"#0b9fd1","loop":true,"service":[{"days":[0,1,2,3,4],"from":"07:00","to":"22:00","every":20},{"days":[0,1,2,3,4],"from":"22:00","to":"26:00","every":40},{"days":[5,6],"from":"07:00","to":"26:00","every":20}],"stops":[{"name":"Conte Forum","lonlat":[-71.167135,42.335986],"rideToNext":267,"dwell":10,"at":0},{"name":"Reservoir T Stop","lonlat":[-71.148995,42.334935],"rideToNext":445,"dwell":10,"at":244},{"name":"Ashby Stop","lonlat":[-71.155028,42.320988],"rideToNext":83,"dwell":10,"at":549},{"name":"South Dorms Stop","lonlat":[-71.157272,42.318057],"rideToNext":626,"dwell":10,"at":588},{"name":"Reservoir T Stop","lonlat":[-71.148995,42.334935],"rideToNext":412,"dwell":10,"at":1025}],"line":[[-71.16718,42.33605],[-71.1671,42.33609],[-71.16708,42.33609],[-71.16701,42.33612],[-71.16692,42.33615],[-71.16683,42.33618],[-71.16676,42.3362],[-71.16665,42.33622],[-71.1665,42.33623],[-71.16634,42.33622],[-71.16632,42.33622],[-71.16626,42.33622],[-71.16622,42.33621],[-71.16615,42.3362],[-71.16611,42.3362],[-71.16606,42.33619],[-71.16595,42.33617],[-71.16585,42.33614],[-71.16577,42.33611],[-71.16575,42.3361],[-71.16571,42.33609],[-71.1656,42.33603],[-71.16553,42.33597],[-71.16543,42.33589],[-71.16524,42.33577],[-71.16518,42.33575],[-71.16507,42.33572],[-71.16481,42.33565],[-71.16456,42.33559],[-71.16444,42.33555],[-71.16434,42.33552],[-71.16431,42.33551],[-71.16409,42.33546],[-71.16405,42.33545],[-71.16396,42.33542],[-71.16384,42.3354],[-71.16363,42.33534],[-71.16349,42.33531],[-71.16346,42.3353],[-71.16344,42.3353],[-71.16331,42.33526],[-71.1633,42.33526],[-71.16327,42.33525],[-71.16323,42.33525],[-71.16317,42.33524],[-71.16311,42.33525],[-71.16309,42.33525],[-71.16305,42.33526],[-71.16295,42.33527],[-71.16295,42.33527],[-71.16289,42.33519],[-71.16288,42.33517],[-71.16281,42.33506],[-71.16278,42.33503],[-71.16277,42.33502],[-71.16272,42.33494],[-71.1626,42.33477],[-71.16258,42.33474],[-71.1625,42.33462],[-71.16246,42.33455],[-71.16241,42.33448],[-71.16236,42.33439],[-71.16236,42.33436],[-71.16231,42.33416],[-71.16229,42.33405],[-71.16228,42.33402],[-71.16227,42.33395],[-71.16227,42.33395],[-71.16193,42.33391],[-71.16181,42.33389],[-71.16173,42.33388],[-71.16161,42.33385],[-71.16153,42.33384],[-71.16141,42.3338],[-71.16128,42.33377],[-71.16116,42.33373],[-71.16104,42.33368],[-71.16094,42.33364],[-71.16091,42.33363],[-71.16081,42.33358],[-71.16074,42.33355],[-71.16065,42.3335],[-71.16051,42.33343],[-71.16038,42.33337],[-71.16024,42.3333],[-71.16002,42.3332],[-71.15998,42.33317],[-71.15987,42.33311],[-71.15974,42.33305],[-71.15962,42.33297],[-71.15956,42.33293],[-71.1595,42.33289],[-71.15941,42.33283],[-71.15939,42.33281],[-71.15929,42.33273],[-71.15918,42.33263],[-71.15906,42.33251],[-71.15904,42.33249],[-71.15886,42.33231],[-71.15874,42.3322],[-71.15865,42.33211],[-71.1586,42.33206],[-71.15854,42.33201],[-71.1585,42.33198],[-71.15848,42.33196],[-71.15844,42.33193],[-71.15837,42.33188],[-71.15825,42.33182],[-71.1582,42.33179],[-71.15811,42.33175],[-71.158,42.3317],[-71.15791,42.33168],[-71.15783,42.33166],[-71.15774,42.33164],[-71.15766,42.33162],[-71.15757,42.33161],[-71.15745,42.3316],[-71.15737,42.3316],[-71.15731,42.33161],[-71.15726,42.33161],[-71.15719,42.33161],[-71.15716,42.33162],[-71.15712,42.33162],[-71.15707,42.33163],[-71.15702,42.33163],[-71.15679,42.33168],[-71.15678,42.33168],[-71.15668,42.33171],[-71.15662,42.33173],[-71.15655,42.33175],[-71.15646,42.33178],[-71.15639,42.3318],[-71.15636,42.33182],[-71.15635,42.33182],[-71.15625,42.33186],[-71.15617,42.3319],[-71.15607,42.33195],[-71.15591,42.33203],[-71.15588,42.33205],[-71.15576,42.3321],[-71.15567,42.33214],[-71.1556,42.33218],[-71.15539,42.33229],[-71.15535,42.33231],[-71.1553,42.33234],[-71.15521,42.3324],[-71.15513,42.33245],[-71.15504,42.33252],[-71.15492,42.33261],[-71.15484,42.33268],[-71.1548,42.33272],[-71.15479,42.33273],[-71.15475,42.33277],[-71.15471,42.33282],[-71.15465,42.33288],[-71.15461,42.33294],[-71.15458,42.33297],[-71.15452,42.33306],[-71.15448,42.33312],[-71.15442,42.33322],[-71.1544,42.33326],[-71.15438,42.33329],[-71.15436,42.33333],[-71.15432,42.33341],[-71.15427,42.33353],[-71.15426,42.33354],[-71.15423,42.33363],[-71.1542,42.33369],[-71.15414,42.33381],[-71.15411,42.33388],[-71.15404,42.33404],[-71.154,42.33414],[-71.15397,42.3342],[-71.15394,42.33427],[-71.15385,42.33448],[-71.15383,42.33452],[-71.1537,42.33482],[-71.15363,42.33499],[-71.15358,42.33509],[-71.15357,42.33512],[-71.15355,42.33515],[-71.15352,42.33518],[-71.15349,42.33524],[-71.15347,42.33526],[-71.1534,42.33535],[-71.15336,42.33539],[-71.15333,42.33543],[-71.15329,42.33546],[-71.15326,42.33549],[-71.15324,42.3355],[-71.15317,42.33556],[-71.1531,42.33561],[-71.153,42.33567],[-71.15294,42.3357],[-71.15277,42.33578],[-71.15266,42.33582],[-71.15263,42.33583],[-71.15258,42.33585],[-71.15253,42.33586],[-71.15246,42.33588],[-71.1524,42.33589],[-71.15235,42.3359],[-71.15233,42.33591],[-71.15228,42.33592],[-71.15223,42.33593],[-71.15212,42.33594],[-71.15205,42.33594],[-71.15201,42.33594],[-71.15195,42.33595],[-71.15182,42.33596],[-71.15165,42.33597],[-71.15157,42.33598],[-71.15151,42.33598],[-71.15145,42.33599],[-71.15137,42.33594],[-71.15129,42.33593],[-71.15117,42.33593],[-71.15108,42.33592],[-71.1508,42.33591],[-71.1508,42.33591],[-71.15058,42.33571],[-71.1505,42.33563],[-71.15042,42.33556],[-71.15038,42.33552],[-71.15028,42.33544],[-71.15019,42.33537],[-71.15013,42.33534],[-71.15011,42.33532],[-71.15004,42.33528],[-71.15003,42.33528],[-71.15002,42.33527],[-71.15,42.33526],[-71.14996,42.33523],[-71.14986,42.33518],[-71.14982,42.33516],[-71.1497,42.3351],[-71.14963,42.33506],[-71.1496,42.33505],[-71.14949,42.33499],[-71.14943,42.33495],[-71.14941,42.33494],[-71.14938,42.33492],[-71.14932,42.33489],[-71.14925,42.33485],[-71.14911,42.33479],[-71.14911,42.33479],[-71.14891,42.3347],[-71.14889,42.33469],[-71.14883,42.33467],[-71.14869,42.3346],[-71.14853,42.33452],[-71.14819,42.33436],[-71.14817,42.33435],[-71.14812,42.33433],[-71.14805,42.33429],[-71.14795,42.33423],[-71.14787,42.33416],[-71.14786,42.33415],[-71.1478,42.33409],[-71.14774,42.33402],[-71.1477,42.33395],[-71.14766,42.33389],[-71.14763,42.33383],[-71.1476,42.33374],[-71.14758,42.3337],[-71.14755,42.33362],[-71.14745,42.3334],[-71.14743,42.33336],[-71.14738,42.33326],[-71.14735,42.33321],[-71.14728,42.3331],[-71.14716,42.33294],[-71.14714,42.33292],[-71.14702,42.33275],[-71.14698,42.33269],[-71.14696,42.33266],[-71.14667,42.33227],[-71.14658,42.33213],[-71.14641,42.3319],[-71.14639,42.33187],[-71.14635,42.33181],[-71.14634,42.3318],[-71.14629,42.3317],[-71.14626,42.33162],[-71.14624,42.33157],[-71.14624,42.33154],[-71.14622,42.33142],[-71.1462,42.33128],[-71.14619,42.33125],[-71.14617,42.33107],[-71.14612,42.33071],[-71.14611,42.3307],[-71.14611,42.33066],[-71.1461,42.33059],[-71.14609,42.33053],[-71.14608,42.33043],[-71.14606,42.33032],[-71.14604,42.33024],[-71.14603,42.3302],[-71.14602,42.33018],[-71.14602,42.33017],[-71.146,42.33012],[-71.14598,42.33005],[-71.14596,42.32999],[-71.14593,42.32992],[-71.14577,42.32957],[-71.14574,42.3295],[-71.14565,42.32934],[-71.14555,42.32918],[-71.14554,42.32916],[-71.14553,42.32914],[-71.14552,42.32911],[-71.14547,42.32904],[-71.14539,42.32893],[-71.14539,42.32892],[-71.14533,42.32885],[-71.14526,42.32876],[-71.1452,42.3287],[-71.14513,42.32863],[-71.14506,42.32856],[-71.14503,42.32853],[-71.14498,42.32848],[-71.14497,42.32847],[-71.14495,42.32846],[-71.1449,42.32841],[-71.14475,42.32826],[-71.14473,42.32825],[-71.1447,42.32822],[-71.14432,42.32786],[-71.1443,42.32784],[-71.14415,42.32771],[-71.1438,42.3274],[-71.14365,42.32727],[-71.14362,42.32724],[-71.14342,42.32708],[-71.14323,42.32694],[-71.14314,42.32688],[-71.14295,42.32676],[-71.14289,42.32671],[-71.14289,42.32671],[-71.14291,42.32666],[-71.14293,42.32661],[-71.14296,42.32658],[-71.14299,42.32654],[-71.14302,42.32652],[-71.14309,42.32646],[-71.14351,42.32646],[-71.14404,42.32646],[-71.14448,42.32646],[-71.14462,42.32646],[-71.14497,42.32647],[-71.14506,42.32647],[-71.14531,42.32648],[-71.14542,42.32648],[-71.14572,42.32648],[-71.14595,42.32648],[-71.14609,42.32649],[-71.14631,42.32649],[-71.14648,42.3265],[-71.14656,42.3265],[-71.14675,42.32651],[-71.14729,42.32655],[-71.14738,42.32656],[-71.14746,42.32657],[-71.14755,42.32657],[-71.14762,42.32658],[-71.14786,42.32659],[-71.14806,42.3266],[-71.14844,42.32662],[-71.14875,42.32664],[-71.14921,42.32666],[-71.14939,42.32668],[-71.1494,42.32668],[-71.14963,42.3267],[-71.14964,42.3267],[-71.14978,42.32671],[-71.15005,42.32674],[-71.15019,42.32675],[-71.15036,42.32676],[-71.15051,42.32677],[-71.15066,42.32678],[-71.15084,42.32679],[-71.15141,42.32681],[-71.15155,42.32681],[-71.15167,42.32681],[-71.1518,42.3268],[-71.15194,42.32679],[-71.15206,42.32678],[-71.15223,42.32676],[-71.15228,42.32675],[-71.15234,42.32674],[-71.15242,42.32672],[-71.15253,42.3267],[-71.15273,42.32665],[-71.15285,42.32662],[-71.15295,42.32659],[-71.15303,42.32657],[-71.15314,42.32654],[-71.15328,42.3265],[-71.15342,42.32646],[-71.15354,42.32642],[-71.15364,42.32639],[-71.15377,42.32634],[-71.15393,42.32629],[-71.15406,42.32624],[-71.15419,42.3262],[-71.15429,42.32616],[-71.15438,42.32612],[-71.15447,42.32609],[-71.1546,42.32604],[-71.1547,42.32599],[-71.15482,42.32595],[-71.15493,42.3259],[-71.15502,42.32586],[-71.15512,42.32582],[-71.15528,42.32575],[-71.1554,42.3257],[-71.15552,42.32566],[-71.15559,42.32563],[-71.15572,42.32558],[-71.15584,42.32554],[-71.15593,42.32551],[-71.15659,42.32534],[-71.1567,42.32531],[-71.15671,42.32531],[-71.15693,42.32525],[-71.15714,42.32519],[-71.15717,42.32519],[-71.15722,42.32517],[-71.1574,42.32513],[-71.15756,42.32509],[-71.1576,42.32507],[-71.15765,42.32506],[-71.15789,42.325],[-71.15801,42.32497],[-71.15803,42.32496],[-71.15806,42.32495],[-71.15809,42.32495],[-71.15833,42.32489],[-71.15864,42.32482],[-71.15898,42.32474],[-71.15932,42.32466],[-71.15941,42.32464],[-71.15947,42.32463],[-71.15979,42.32456],[-71.15987,42.32455],[-71.16033,42.32445],[-71.16062,42.32438],[-71.16089,42.32432],[-71.16117,42.32425],[-71.16132,42.32421],[-71.1616,42.32414],[-71.16168,42.32411],[-71.16223,42.32396],[-71.16247,42.3239],[-71.16258,42.32388],[-71.16296,42.32378],[-71.16324,42.32371],[-71.16345,42.32365],[-71.16375,42.32357],[-71.16401,42.32351],[-71.16401,42.32351],[-71.16392,42.3234],[-71.1637,42.3232],[-71.16358,42.32308],[-71.16327,42.32279],[-71.16327,42.32279],[-71.16293,42.32298],[-71.16276,42.32307],[-71.1626,42.32315],[-71.16245,42.32322],[-71.16232,42.32327],[-71.16227,42.32329],[-71.16215,42.32334],[-71.16177,42.32348],[-71.16171,42.32351],[-71.16143,42.32361],[-71.16136,42.32364],[-71.16127,42.32367],[-71.16113,42.32371],[-71.16103,42.32373],[-71.16092,42.32376],[-71.16089,42.32376],[-71.16083,42.32376],[-71.16074,42.32375],[-71.16068,42.32375],[-71.16061,42.32374],[-71.16056,42.32372],[-71.16047,42.32369],[-71.1604,42.32366],[-71.16033,42.32362],[-71.16022,42.32356],[-71.16014,42.3235],[-71.16002,42.32343],[-71.15996,42.32339],[-71.15985,42.32332],[-71.15971,42.32324],[-71.15946,42.32311],[-71.15936,42.32305],[-71.15928,42.32301],[-71.15915,42.32294],[-71.15904,42.32286],[-71.15895,42.32278],[-71.15887,42.32271],[-71.15877,42.32263],[-71.15874,42.3226],[-71.15871,42.32258],[-71.15867,42.32256],[-71.1586,42.32254],[-71.15851,42.32252],[-71.15839,42.32249],[-71.15825,42.32248],[-71.15821,42.32247],[-71.15814,42.32246],[-71.15812,42.32246],[-71.15797,42.32244],[-71.15777,42.32242],[-71.15738,42.32239],[-71.15689,42.32234],[-71.15653,42.3223],[-71.1561,42.32226],[-71.1561,42.32226],[-71.1561,42.32218],[-71.15611,42.32214],[-71.1561,42.32207],[-71.15609,42.322],[-71.15608,42.32198],[-71.15607,42.32196],[-71.15605,42.32192],[-71.15602,42.32188],[-71.15598,42.32185],[-71.15593,42.32181],[-71.15586,42.32178],[-71.15574,42.32173],[-71.15553,42.32165],[-71.15546,42.32162],[-71.15541,42.32159],[-71.15537,42.32156],[-71.15535,42.32154],[-71.15534,42.32153],[-71.15532,42.32151],[-71.15528,42.32147],[-71.15524,42.32141],[-71.15523,42.3214],[-71.15523,42.32138],[-71.15522,42.32138],[-71.1552,42.32132],[-71.15508,42.32116],[-71.15506,42.32105],[-71.15502,42.32099],[-71.15502,42.32099],[-71.15493,42.32088],[-71.15488,42.3208],[-71.15481,42.32069],[-71.15477,42.32063],[-71.15466,42.32047],[-71.15445,42.32014],[-71.15445,42.32014],[-71.15455,42.32004],[-71.15473,42.31988],[-71.15479,42.3198],[-71.15483,42.31972],[-71.15484,42.31969],[-71.15489,42.31958],[-71.15502,42.3193],[-71.15508,42.31918],[-71.15512,42.31909],[-71.15524,42.31891],[-71.15525,42.31889],[-71.15528,42.31885],[-71.15537,42.31875],[-71.15551,42.31861],[-71.15553,42.31859],[-71.15556,42.31856],[-71.15569,42.31841],[-71.15586,42.31828],[-71.15595,42.31822],[-71.15605,42.31816],[-71.15617,42.31809],[-71.15625,42.31805],[-71.15639,42.318],[-71.1565,42.31799],[-71.15661,42.31798],[-71.1567,42.31797],[-71.1567,42.31798],[-71.15684,42.31798],[-71.15709,42.31799],[-71.15713,42.31799],[-71.15728,42.318],[-71.15728,42.318],[-71.15732,42.318],[-71.1574,42.31801],[-71.15746,42.31801],[-71.15751,42.318],[-71.15752,42.318],[-71.15758,42.31799],[-71.1576,42.31798],[-71.15763,42.31797],[-71.1577,42.31796],[-71.15783,42.31792],[-71.158,42.31789],[-71.15804,42.31788],[-71.15805,42.31788],[-71.15808,42.31788],[-71.1581,42.31788],[-71.15815,42.31786],[-71.15824,42.31784],[-71.15834,42.31781],[-71.15841,42.31779],[-71.15841,42.31779],[-71.15851,42.3178],[-71.15861,42.31782],[-71.15864,42.31782],[-71.15873,42.31783],[-71.15882,42.31783],[-71.15886,42.31783],[-71.15887,42.31783],[-71.15888,42.31783],[-71.15892,42.31784],[-71.159,42.31787],[-71.15902,42.31789],[-71.15904,42.31791],[-71.15912,42.31801],[-71.15918,42.31813],[-71.15921,42.31822],[-71.15923,42.31827],[-71.15927,42.31839],[-71.15929,42.31844],[-71.15937,42.3186],[-71.15937,42.31861],[-71.15939,42.31867],[-71.15941,42.31876],[-71.15941,42.31882],[-71.15941,42.31884],[-71.15941,42.31884],[-71.15937,42.31896],[-71.15935,42.31901],[-71.1593,42.3191],[-71.15926,42.31918],[-71.15926,42.31919],[-71.15925,42.31921],[-71.15922,42.31925],[-71.15918,42.3193],[-71.15911,42.31935],[-71.15902,42.31939],[-71.15893,42.31943],[-71.15888,42.31946],[-71.15885,42.31949],[-71.15883,42.31953],[-71.15882,42.31954],[-71.15881,42.31957],[-71.1588,42.31961],[-71.15878,42.3197],[-71.15875,42.31977],[-71.15869,42.31986],[-71.15869,42.31986],[-71.15845,42.31984],[-71.15825,42.3198],[-71.15815,42.31978],[-71.15811,42.31977],[-71.15798,42.31978],[-71.15788,42.31979],[-71.15782,42.3198],[-71.15776,42.31982],[-71.1575,42.31993],[-71.15727,42.31992],[-71.15725,42.31992],[-71.15721,42.31992],[-71.15693,42.31989],[-71.15681,42.31987],[-71.15674,42.31987],[-71.15666,42.31988],[-71.1566,42.31991],[-71.15655,42.31994],[-71.15653,42.31996],[-71.15649,42.31999],[-71.1564,42.32008],[-71.15637,42.3201],[-71.15632,42.32015],[-71.15617,42.32028],[-71.15614,42.32031],[-71.15613,42.32033],[-71.15613,42.32034],[-71.15613,42.32034],[-71.15611,42.32034],[-71.15609,42.32034],[-71.15606,42.32034],[-71.15602,42.32034],[-71.15598,42.32034],[-71.15594,42.32034],[-71.1559,42.32035],[-71.15586,42.32037],[-71.15583,42.32038],[-71.1558,42.32039],[-71.15577,42.32041],[-71.15573,42.32044],[-71.15571,42.32046],[-71.15569,42.32048],[-71.15567,42.3205],[-71.15565,42.32052],[-71.15562,42.32056],[-71.15559,42.3206],[-71.15555,42.32064],[-71.15552,42.32067],[-71.15549,42.32069],[-71.15545,42.32072],[-71.1554,42.32075],[-71.15534,42.32077],[-71.15529,42.3208],[-71.15523,42.32082],[-71.15522,42.32083],[-71.1552,42.32084],[-71.15519,42.32085],[-71.15518,42.32086],[-71.15517,42.32087],[-71.15517,42.32089],[-71.15516,42.32096],[-71.15517,42.32099],[-71.15517,42.32099],[-71.15506,42.32105],[-71.15506,42.32105],[-71.15508,42.32116],[-71.1552,42.32132],[-71.15522,42.32138],[-71.15523,42.32138],[-71.15523,42.3214],[-71.15524,42.32141],[-71.15528,42.32147],[-71.15532,42.32151],[-71.15534,42.32153],[-71.15535,42.32154],[-71.15537,42.32156],[-71.15541,42.32159],[-71.15546,42.32162],[-71.15553,42.32165],[-71.15574,42.32173],[-71.15586,42.32178],[-71.15593,42.32181],[-71.15598,42.32185],[-71.15602,42.32188],[-71.15605,42.32192],[-71.15607,42.32196],[-71.15608,42.32198],[-71.15609,42.322],[-71.1561,42.32207],[-71.15611,42.32214],[-71.1561,42.32218],[-71.1561,42.32226],[-71.1561,42.32226],[-71.15653,42.3223],[-71.15689,42.32234],[-71.15738,42.32239],[-71.15777,42.32242],[-71.15797,42.32244],[-71.15812,42.32246],[-71.15814,42.32246],[-71.15821,42.32247],[-71.15825,42.32248],[-71.15839,42.32249],[-71.15851,42.32252],[-71.1586,42.32254],[-71.15867,42.32256],[-71.15871,42.32258],[-71.15874,42.3226],[-71.15877,42.32263],[-71.15887,42.32271],[-71.15895,42.32278],[-71.15904,42.32286],[-71.15915,42.32294],[-71.15928,42.32301],[-71.15936,42.32305],[-71.15946,42.32311],[-71.15971,42.32324],[-71.15985,42.32332],[-71.15996,42.32339],[-71.16002,42.32343],[-71.16014,42.3235],[-71.16022,42.32356],[-71.16033,42.32362],[-71.1604,42.32366],[-71.16047,42.32369],[-71.16056,42.32372],[-71.16061,42.32374],[-71.16068,42.32375],[-71.16074,42.32375],[-71.16083,42.32376],[-71.16089,42.32376],[-71.16092,42.32376],[-71.16103,42.32373],[-71.16113,42.32371],[-71.16127,42.32367],[-71.16136,42.32364],[-71.16143,42.32361],[-71.16171,42.32351],[-71.16177,42.32348],[-71.16215,42.32334],[-71.16227,42.32329],[-71.16232,42.32327],[-71.16245,42.32322],[-71.1626,42.32315],[-71.16276,42.32307],[-71.16293,42.32298],[-71.16327,42.32279],[-71.16327,42.32279],[-71.16358,42.32308],[-71.1637,42.3232],[-71.16392,42.3234],[-71.16392,42.3234],[-71.16301,42.32364],[-71.16261,42.32374],[-71.16248,42.32377],[-71.16209,42.32387],[-71.16193,42.32391],[-71.16161,42.324],[-71.16141,42.32405],[-71.16125,42.32409],[-71.16103,42.32415],[-71.16099,42.32416],[-71.16089,42.32418],[-71.16083,42.3242],[-71.16057,42.32426],[-71.16028,42.32432],[-71.15986,42.32441],[-71.15926,42.32454],[-71.15904,42.32459],[-71.15844,42.32472],[-71.15839,42.32473],[-71.15798,42.32483],[-71.15773,42.32489],[-71.15757,42.32494],[-71.15748,42.32496],[-71.15732,42.325],[-71.15726,42.32502],[-71.15679,42.32514],[-71.15666,42.32517],[-71.15626,42.32528],[-71.1562,42.32529],[-71.15588,42.32539],[-71.15565,42.32547],[-71.15553,42.32551],[-71.15538,42.32557],[-71.15532,42.3256],[-71.15524,42.32564],[-71.15516,42.32568],[-71.15509,42.32571],[-71.15497,42.32577],[-71.15487,42.32582],[-71.15474,42.32588],[-71.15464,42.32592],[-71.15458,42.32594],[-71.15451,42.32597],[-71.15445,42.326],[-71.15435,42.32603],[-71.15424,42.32608],[-71.15412,42.32612],[-71.15398,42.32617],[-71.15385,42.32622],[-71.1537,42.32627],[-71.15357,42.32631],[-71.15345,42.32635],[-71.15332,42.32639],[-71.15318,42.32643],[-71.15304,42.32647],[-71.1529,42.32651],[-71.15278,42.32654],[-71.15264,42.32658],[-71.15253,42.32661],[-71.15245,42.32663],[-71.15239,42.32664],[-71.15234,42.32665],[-71.15227,42.32666],[-71.15222,42.32667],[-71.15217,42.32668],[-71.15212,42.32669],[-71.15208,42.32669],[-71.15206,42.3267],[-71.15199,42.3267],[-71.15188,42.32672],[-71.15176,42.32672],[-71.15167,42.32672],[-71.15159,42.32672],[-71.1515,42.32672],[-71.1514,42.32672],[-71.15127,42.32672],[-71.15114,42.32672],[-71.15102,42.32671],[-71.15087,42.32671],[-71.15072,42.3267],[-71.15057,42.32669],[-71.15047,42.32668],[-71.15038,42.32668],[-71.15027,42.32667],[-71.15014,42.32666],[-71.14989,42.32663],[-71.14953,42.32659],[-71.14905,42.32655],[-71.14891,42.32654],[-71.14878,42.32653],[-71.14865,42.32652],[-71.14856,42.32652],[-71.14854,42.32651],[-71.1485,42.32651],[-71.14846,42.32651],[-71.14843,42.32651],[-71.14836,42.32651],[-71.14806,42.32649],[-71.14786,42.32648],[-71.1477,42.32647],[-71.14763,42.32647],[-71.14729,42.32645],[-71.14708,42.32644],[-71.14661,42.32641],[-71.14636,42.32639],[-71.14612,42.32639],[-71.14585,42.32638],[-71.14574,42.32638],[-71.14532,42.32637],[-71.14518,42.32636],[-71.14508,42.32636],[-71.14459,42.32635],[-71.14436,42.32635],[-71.14426,42.32634],[-71.14399,42.32634],[-71.1435,42.32633],[-71.14306,42.32633],[-71.14261,42.32634],[-71.14261,42.32634],[-71.14253,42.32649],[-71.14266,42.32657],[-71.1427,42.32659],[-71.14273,42.32661],[-71.14276,42.32663],[-71.14289,42.32671],[-71.14295,42.32676],[-71.14314,42.32688],[-71.14323,42.32694],[-71.14342,42.32708],[-71.14362,42.32724],[-71.14365,42.32727],[-71.1438,42.3274],[-71.14415,42.32771],[-71.1443,42.32784],[-71.14432,42.32786],[-71.1447,42.32822],[-71.14473,42.32825],[-71.14475,42.32826],[-71.1449,42.32841],[-71.14495,42.32846],[-71.14497,42.32847],[-71.14498,42.32848],[-71.14503,42.32853],[-71.14506,42.32856],[-71.14513,42.32863],[-71.1452,42.3287],[-71.14526,42.32876],[-71.14533,42.32885],[-71.14539,42.32892],[-71.14539,42.32893],[-71.14547,42.32904],[-71.14552,42.32911],[-71.14553,42.32914],[-71.14554,42.32916],[-71.14555,42.32918],[-71.14565,42.32934],[-71.14574,42.3295],[-71.14577,42.32957],[-71.14593,42.32992],[-71.14596,42.32999],[-71.14598,42.33005],[-71.146,42.33012],[-71.14602,42.33017],[-71.14602,42.33018],[-71.14603,42.3302],[-71.14604,42.33024],[-71.14606,42.33032],[-71.14608,42.33043],[-71.14609,42.33053],[-71.1461,42.33059],[-71.14611,42.33066],[-71.14611,42.3307],[-71.14612,42.33071],[-71.14617,42.33107],[-71.14619,42.33125],[-71.1462,42.33128],[-71.14622,42.33142],[-71.14624,42.33154],[-71.14624,42.33157],[-71.14626,42.33162],[-71.14629,42.3317],[-71.14634,42.3318],[-71.14635,42.33181],[-71.14639,42.33187],[-71.14641,42.3319],[-71.14658,42.33213],[-71.14667,42.33227],[-71.14696,42.33266],[-71.14698,42.33269],[-71.14702,42.33275],[-71.14714,42.33292],[-71.14716,42.33294],[-71.14728,42.3331],[-71.14735,42.33321],[-71.14738,42.33326],[-71.14743,42.33336],[-71.14745,42.3334],[-71.14755,42.33362],[-71.14758,42.3337],[-71.1476,42.33374],[-71.14763,42.33383],[-71.14766,42.33389],[-71.1477,42.33395],[-71.14774,42.33402],[-71.1478,42.33409],[-71.14786,42.33415],[-71.14787,42.33416],[-71.14795,42.33423],[-71.14805,42.33429],[-71.14812,42.33433],[-71.14817,42.33435],[-71.14819,42.33436],[-71.14853,42.33452],[-71.14869,42.3346],[-71.14883,42.33467],[-71.14889,42.33469],[-71.14891,42.3347],[-71.14911,42.33479],[-71.14911,42.33479],[-71.14925,42.33485],[-71.14932,42.33489],[-71.14938,42.33492],[-71.14941,42.33494],[-71.14943,42.33495],[-71.14949,42.33499],[-71.1496,42.33505],[-71.14963,42.33506],[-71.1497,42.3351],[-71.14982,42.33516],[-71.14986,42.33518],[-71.14996,42.33523],[-71.15,42.33526],[-71.15002,42.33527],[-71.15003,42.33528],[-71.15004,42.33528],[-71.15011,42.33532],[-71.15013,42.33534],[-71.15019,42.33537],[-71.15028,42.33544],[-71.15038,42.33552],[-71.15042,42.33556],[-71.1505,42.33563],[-71.15058,42.33571],[-71.1508,42.33591],[-71.1508,42.33591],[-71.1509,42.33603],[-71.15113,42.33601],[-71.15133,42.336],[-71.15139,42.33599],[-71.15145,42.33599],[-71.15151,42.33598],[-71.15157,42.33598],[-71.15165,42.33597],[-71.15182,42.33596],[-71.15195,42.33595],[-71.15201,42.33594],[-71.15205,42.33594],[-71.15212,42.33594],[-71.15223,42.33593],[-71.15228,42.33592],[-71.15233,42.33591],[-71.15235,42.3359],[-71.1524,42.33589],[-71.15246,42.33588],[-71.15253,42.33586],[-71.15258,42.33585],[-71.15263,42.33583],[-71.15266,42.33582],[-71.15277,42.33578],[-71.15294,42.3357],[-71.153,42.33567],[-71.1531,42.33561],[-71.15317,42.33556],[-71.15324,42.3355],[-71.15326,42.33549],[-71.15329,42.33546],[-71.15333,42.33543],[-71.15336,42.33539],[-71.1534,42.33535],[-71.15347,42.33526],[-71.15349,42.33524],[-71.15352,42.33518],[-71.15355,42.33515],[-71.15357,42.33512],[-71.15358,42.33509],[-71.15363,42.33499],[-71.1537,42.33482],[-71.15383,42.33452],[-71.15385,42.33448],[-71.15394,42.33427],[-71.15397,42.3342],[-71.154,42.33414],[-71.15404,42.33404],[-71.15411,42.33388],[-71.15414,42.33381],[-71.1542,42.33369],[-71.15423,42.33363],[-71.15426,42.33354],[-71.15427,42.33353],[-71.15432,42.33341],[-71.15436,42.33333],[-71.15438,42.33329],[-71.1544,42.33326],[-71.15442,42.33322],[-71.15448,42.33312],[-71.15452,42.33306],[-71.15458,42.33297],[-71.15461,42.33294],[-71.15465,42.33288],[-71.15471,42.33282],[-71.15475,42.33277],[-71.15479,42.33273],[-71.1548,42.33272],[-71.15484,42.33268],[-71.15492,42.33261],[-71.15504,42.33252],[-71.15513,42.33245],[-71.15521,42.3324],[-71.1553,42.33234],[-71.15535,42.33231],[-71.15539,42.33229],[-71.1556,42.33218],[-71.15567,42.33214],[-71.15576,42.3321],[-71.15588,42.33205],[-71.15591,42.33203],[-71.15607,42.33195],[-71.15617,42.3319],[-71.15625,42.33186],[-71.15635,42.33182],[-71.15636,42.33182],[-71.15639,42.3318],[-71.15646,42.33178],[-71.15655,42.33175],[-71.15662,42.33173],[-71.15668,42.33171],[-71.15678,42.33168],[-71.15679,42.33168],[-71.15702,42.33163],[-71.15707,42.33163],[-71.15712,42.33162],[-71.15716,42.33162],[-71.15719,42.33161],[-71.15726,42.33161],[-71.15731,42.33161],[-71.15737,42.3316],[-71.15745,42.3316],[-71.15757,42.33161],[-71.15766,42.33162],[-71.15774,42.33164],[-71.15783,42.33166],[-71.15791,42.33168],[-71.158,42.3317],[-71.15811,42.33175],[-71.1582,42.33179],[-71.15825,42.33182],[-71.15837,42.33188],[-71.15844,42.33193],[-71.15848,42.33196],[-71.1585,42.33198],[-71.15854,42.33201],[-71.1586,42.33206],[-71.15865,42.33211],[-71.15874,42.3322],[-71.15886,42.33231],[-71.15904,42.33249],[-71.15906,42.33251],[-71.15918,42.33263],[-71.15929,42.33273],[-71.15939,42.33281],[-71.15941,42.33283],[-71.1595,42.33289],[-71.15956,42.33293],[-71.15962,42.33297],[-71.15974,42.33305],[-71.15987,42.33311],[-71.15998,42.33317],[-71.16002,42.3332],[-71.16024,42.3333],[-71.16038,42.33337],[-71.16051,42.33343],[-71.16065,42.3335],[-71.16074,42.33355],[-71.16081,42.33358],[-71.16091,42.33363],[-71.16094,42.33364],[-71.16104,42.33368],[-71.16116,42.33373],[-71.16128,42.33377],[-71.16141,42.3338],[-71.16153,42.33384],[-71.16161,42.33385],[-71.16173,42.33388],[-71.16181,42.33389],[-71.16193,42.33391],[-71.16227,42.33395],[-71.16227,42.33395],[-71.16228,42.33402],[-71.16229,42.33405],[-71.16231,42.33416],[-71.16236,42.33436],[-71.16236,42.33439],[-71.16241,42.33448],[-71.16246,42.33455],[-71.1625,42.33462],[-71.16258,42.33474],[-71.1626,42.33477],[-71.16272,42.33494],[-71.16277,42.33502],[-71.16278,42.33503],[-71.16281,42.33506],[-71.16288,42.33517],[-71.16289,42.33519],[-71.16295,42.33527],[-71.16296,42.33529],[-71.16298,42.33532],[-71.163,42.33533],[-71.16317,42.33558],[-71.16319,42.33562],[-71.1632,42.33563],[-71.16321,42.33565],[-71.16324,42.33569],[-71.16341,42.33594],[-71.16351,42.33608],[-71.16357,42.33618],[-71.16357,42.33618],[-71.16364,42.33628],[-71.16365,42.33629],[-71.16373,42.33641],[-71.16374,42.33644],[-71.16379,42.33653],[-71.16382,42.33658],[-71.1639,42.33673],[-71.16398,42.33687],[-71.16399,42.3369],[-71.16412,42.33716],[-71.16414,42.33721],[-71.16426,42.33748],[-71.16427,42.3375],[-71.1644,42.33779],[-71.16445,42.3379],[-71.1645,42.338],[-71.16456,42.33812],[-71.16459,42.3382],[-71.16463,42.33827],[-71.16467,42.33835],[-71.16468,42.33837],[-71.1647,42.3384],[-71.16472,42.33842],[-71.16478,42.33849],[-71.1648,42.33851],[-71.1648,42.33852],[-71.16484,42.33856],[-71.16492,42.33863],[-71.16497,42.33868],[-71.16503,42.33872],[-71.1651,42.33877],[-71.16522,42.33885],[-71.16543,42.33896],[-71.1655,42.33899],[-71.16558,42.33903],[-71.16567,42.33907],[-71.16572,42.33909],[-71.16582,42.33913],[-71.16584,42.33913],[-71.166,42.3392],[-71.166,42.3392],[-71.16603,42.3392],[-71.16607,42.33919],[-71.16612,42.33917],[-71.16618,42.33916],[-71.16624,42.33914],[-71.16631,42.33912],[-71.16665,42.33902],[-71.16685,42.33895],[-71.16719,42.33883],[-71.16722,42.33882],[-71.16728,42.33879],[-71.1681,42.3385],[-71.1685,42.33835],[-71.16857,42.33833],[-71.16865,42.33828],[-71.16869,42.33825],[-71.16873,42.33822],[-71.16878,42.33816],[-71.16882,42.33812],[-71.16885,42.33808],[-71.16887,42.33803],[-71.1689,42.33798],[-71.16892,42.33789],[-71.16892,42.33785],[-71.16891,42.33778],[-71.1689,42.33773],[-71.16888,42.33767],[-71.16882,42.33758],[-71.16875,42.3375],[-71.1687,42.33746],[-71.16867,42.33744],[-71.1686,42.33739],[-71.16857,42.33736],[-71.16854,42.33733],[-71.16852,42.3373],[-71.16852,42.33729],[-71.16851,42.33728],[-71.1685,42.33726],[-71.16849,42.33724],[-71.16848,42.3372],[-71.16847,42.33716],[-71.16845,42.33709],[-71.16841,42.337],[-71.16838,42.33692],[-71.16832,42.33676],[-71.16829,42.33666],[-71.16825,42.33656],[-71.16817,42.33633],[-71.16812,42.33619],[-71.1681,42.33613],[-71.16808,42.3361],[-71.16807,42.33607],[-71.16806,42.33605],[-71.16803,42.33601],[-71.168,42.33598],[-71.16797,42.33596],[-71.16788,42.33592],[-71.16786,42.33591],[-71.16783,42.33591],[-71.1678,42.3359],[-71.16777,42.3359],[-71.16773,42.3359],[-71.16769,42.3359],[-71.16764,42.3359],[-71.16759,42.33591],[-71.16757,42.33591],[-71.1675,42.33594],[-71.16718,42.33605]]}]}
diff --git a/src/geojson/shuttlestops.geojson b/src/geojson/shuttlestops.geojson
index f124495..cb9f92e 100644
--- a/src/geojson/shuttlestops.geojson
+++ b/src/geojson/shuttlestops.geojson
@@ -1,11 +1,24 @@
{"type":"FeatureCollection","features":[
-{"type":"Feature","properties":{"All_Stop":"Yes","Commonwealth":"Yes","Express":"No","Heater":"No","Newton":"Yes","OBJECTID":9,"Sheltered":"Yes"},"geometry":{"type":"Point","coordinates":[-71.1615211,42.3433877]}},
-{"type":"Feature","properties":{"All_Stop":"Yes","Commonwealth":"Yes","Express":"No","Heater":"Yes","Newton":"Yes","OBJECTID":1,"Sheltered":"Yes"},"geometry":{"type":"Point","coordinates":[-71.1937344,42.341207]}},
-{"type":"Feature","properties":{"All_Stop":"Yes","Commonwealth":"Yes","Express":"Yes","Heater":"Yes","Newton":"Yes","OBJECTID":8,"Sheltered":"No"},"geometry":{"type":"Point","coordinates":[-71.192565,42.3418969]}},
-{"type":"Feature","properties":{"All_Stop":"Yes","Commonwealth":"No","Express":"No","Heater":"Yes","Newton":"Yes","OBJECTID":2,"Sheltered":"No"},"geometry":{"type":"Point","coordinates":[-71.1924952,42.3434908]}},
-{"type":"Feature","properties":{"All_Stop":"Yes","Commonwealth":"Yes","Express":"Yes","Heater":"No","Newton":"Yes","OBJECTID":3,"Sheltered":"Yes"},"geometry":{"type":"Point","coordinates":[-71.1689562,42.3380467]}},
-{"type":"Feature","properties":{"All_Stop":"Yes","Commonwealth":"Yes","Express":"Yes","Heater":"No","Newton":"Yes","OBJECTID":5,"Sheltered":"Yes"},"geometry":{"type":"Point","coordinates":[-71.1708766,42.3331375]}},
-{"type":"Feature","properties":{"All_Stop":"Yes","Commonwealth":"Yes","Express":"No","Heater":"No","Newton":"No","OBJECTID":6,"Sheltered":"Yes"},"geometry":{"type":"Point","coordinates":[-71.1715472,42.3352392]}},
-{"type":"Feature","properties":{"All_Stop":"Yes","Commonwealth":"No","Express":"No","Heater":"No","Newton":"No","OBJECTID":7,"Sheltered":"Yes"},"geometry":{"type":"Point","coordinates":[-71.1710644,42.3379515]}},
-{"type":"Feature","properties":{"All_Stop":"Yes","Commonwealth":"Yes","Express":"Yes","Heater":"Yes","Newton":"No","OBJECTID":4,"Sheltered":"Yes"},"geometry":{"type":"Point","coordinates":[-71.1670893,42.3360244]}}
+{"type":"Feature","properties":{"OBJECTID":1,"Name":"Conte Forum","Routes":"Comm Ave All Stops; Comm Ave Direct; Mall and Grocery Shuttle (Saturday); Newton All Stops; Early Morning Shuttle (Newton); Mall and Grocery Shuttle (Sunday); Brookline Campus","Sheltered":"Yes","Heater":"Yes"},"geometry":{"type":"Point","coordinates":[-71.167135,42.335986]}},
+{"type":"Feature","properties":{"OBJECTID":2,"Name":"McElroy – Beacon St.","Routes":"Comm Ave All Stops; Mall and Grocery Shuttle (Saturday); Newton All Stops; Newton Limited; Mall and Grocery Shuttle (Sunday)","Sheltered":"Yes","Heater":"No"},"geometry":{"type":"Point","coordinates":[-71.170819,42.333187]}},
+{"type":"Feature","properties":{"OBJECTID":3,"Name":"College Road","Routes":"Comm Ave All Stops; Mall and Grocery Shuttle (Saturday); Newton All Stops; Newton Limited; Mall and Grocery Shuttle (Sunday)","Sheltered":"Yes","Heater":"No"},"geometry":{"type":"Point","coordinates":[-71.1716,42.335236]}},
+{"type":"Feature","properties":{"OBJECTID":4,"Name":"Main Gate Chestnut Hill","Routes":"Comm Ave All Stops; Newton All Stops; Newton Eagle Direct; Newton Limited; Mall and Grocery Shuttle (Sunday)","Sheltered":"Yes","Heater":"No"},"geometry":{"type":"Point","coordinates":[-71.171094,42.337928]}},
+{"type":"Feature","properties":{"OBJECTID":5,"Name":"Evergreen Cemetery","Routes":"Comm Ave All Stops; Comm Ave Direct"},"geometry":{"type":"Point","coordinates":[-71.161254,42.339938]}},
+{"type":"Feature","properties":{"OBJECTID":6,"Name":"2000 Commonwealth Ave","Routes":"Comm Ave All Stops; Comm Ave Direct"},"geometry":{"type":"Point","coordinates":[-71.158475,42.33965]}},
+{"type":"Feature","properties":{"OBJECTID":7,"Name":"Reservoir MBTA stop","Routes":"Comm Ave All Stops; Comm Ave Direct; Law School Express (morning); Law School Express (afternoon); Brookline Campus"},"geometry":{"type":"Point","coordinates":[-71.148891,42.335054]}},
+{"type":"Feature","properties":{"OBJECTID":8,"Name":"Chestnut Hill Ave","Routes":"Comm Ave All Stops; Comm Ave Direct; Law School Express (morning); Law School Express (afternoon)"},"geometry":{"type":"Point","coordinates":[-71.151027,42.336106]}},
+{"type":"Feature","properties":{"OBJECTID":9,"Name":"Chiswick Road","Routes":"Comm Ave All Stops; Comm Ave Direct"},"geometry":{"type":"Point","coordinates":[-71.151324,42.340564]}},
+{"type":"Feature","properties":{"OBJECTID":10,"Name":"Corner of Commonwealth Ave. and Chestnut Hill Ave","Routes":"Comm Ave All Stops; Comm Ave Direct; Law School Express (morning)"},"geometry":{"type":"Point","coordinates":[-71.15408,42.338326]}},
+{"type":"Feature","properties":{"OBJECTID":11,"Name":"South Street","Routes":"Comm Ave All Stops; Comm Ave Direct; Law School Express (morning); Law School Express (afternoon)"},"geometry":{"type":"Point","coordinates":[-71.157531,42.339738]}},
+{"type":"Feature","properties":{"OBJECTID":12,"Name":"Greycliff Hall","Routes":"Comm Ave All Stops; Comm Ave Direct; Law School Express (morning); Law School Express (afternoon)"},"geometry":{"type":"Point","coordinates":[-71.161684,42.340238]}},
+{"type":"Feature","properties":{"OBJECTID":13,"Name":"Robsham Theater","Routes":"Comm Ave All Stops; Comm Ave Direct; Mall and Grocery Shuttle (Saturday); Newton All Stops; Mall and Grocery Shuttle (Sunday)","Sheltered":"Yes","Heater":"No"},"geometry":{"type":"Point","coordinates":[-71.169006,42.337958]}},
+{"type":"Feature","properties":{"OBJECTID":14,"Name":"Stuart Hall Loading Dock","Routes":"Mall and Grocery Shuttle (Saturday); Law School Express (morning); Newton Eagle Direct; Law School Express (afternoon)"},"geometry":{"type":"Point","coordinates":[-71.194075,42.341378]}},
+{"type":"Feature","properties":{"OBJECTID":15,"Name":"Chestnut Hill Mall (MBTA Stop)","Routes":"Mall and Grocery Shuttle (Saturday); Mall and Grocery Shuttle (Sunday)"},"geometry":{"type":"Point","coordinates":[-71.17775,42.321861]}},
+{"type":"Feature","properties":{"OBJECTID":16,"Name":"Chestnut Hill Square (Wegmans)","Routes":"Mall and Grocery Shuttle (Saturday); Mall and Grocery Shuttle (Sunday)"},"geometry":{"type":"Point","coordinates":[-71.17622,42.319547]}},
+{"type":"Feature","properties":{"OBJECTID":17,"Name":"The Street (Bus Shelter)","Routes":"Mall and Grocery Shuttle (Saturday); Mall and Grocery Shuttle (Sunday)"},"geometry":{"type":"Point","coordinates":[-71.166517,42.323108]}},
+{"type":"Feature","properties":{"OBJECTID":18,"Name":"Stuart","Routes":"Newton All Stops; Newton Eagle Direct; Newton Limited; Early Morning Shuttle (Newton)","Sheltered":"Yes","Heater":"Yes"},"geometry":{"type":"Point","coordinates":[-71.193791,42.341133]}},
+{"type":"Feature","properties":{"OBJECTID":19,"Name":"Newton Main Gate","Routes":"Newton All Stops; Newton Eagle Direct; Newton Limited; Early Morning Shuttle (Newton)","Sheltered":"No","Heater":"Yes"},"geometry":{"type":"Point","coordinates":[-71.192625,42.341653]}},
+{"type":"Feature","properties":{"OBJECTID":20,"Name":"Duchesne","Routes":"Newton All Stops; Newton Limited","Sheltered":"No","Heater":"Yes"},"geometry":{"type":"Point","coordinates":[-71.192611,42.343467]}},
+{"type":"Feature","properties":{"OBJECTID":21,"Name":"Ashby Stop","Routes":"Brookline Campus"},"geometry":{"type":"Point","coordinates":[-71.155028,42.320988]}},
+{"type":"Feature","properties":{"OBJECTID":22,"Name":"South Dorms Stop","Routes":"Brookline Campus"},"geometry":{"type":"Point","coordinates":[-71.157272,42.318057]}}
]}
diff --git a/src/geojson/sidewalks.geojson b/src/geojson/sidewalks.geojson
index 98df684..5009935 100644
--- a/src/geojson/sidewalks.geojson
+++ b/src/geojson/sidewalks.geojson
@@ -1,4 +1,4 @@
-{"type":"FeatureCollection","license":"ODbL-1.0","attribution":"© OpenStreetMap contributors, https://www.openstreetmap.org/copyright","generated":"2026-10-16","bbox":[-71.207,42.312,-71.145,42.355],"features":[
+{"type":"FeatureCollection","license":"ODbL-1.0","attribution":"© OpenStreetMap contributors, https://www.openstreetmap.org/copyright","generated":"2026-10-19","bbox":[-71.207,42.312,-71.145,42.355],"features":[
{"type":"Feature","properties":{"Type":"Sidewalk","osm":8645106,"name":"Wiltshire Road Footway","surface":"asphalt","width":"3.7"},"geometry":{"type":"LineString","coordinates":[[-71.1576375,42.3445669],[-71.1571301,42.344492],[-71.1571114,42.344489],[-71.1570929,42.3444859],[-71.15707,42.3444815],[-71.1566304,42.3443973],[-71.1562983,42.3443349],[-71.1562665,42.3443289],[-71.1562333,42.3443212],[-71.1561998,42.3443114],[-71.1561593,42.344297],[-71.1561211,42.3442821],[-71.1560758,42.3442628],[-71.1560301,42.3442423],[-71.1559792,42.3442185],[-71.1559652,42.3442119],[-71.155952,42.3442054],[-71.1559387,42.3441993],[-71.1559261,42.3441941]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":8646576},"geometry":{"type":"LineString","coordinates":[[-71.1519351,42.3418327],[-71.151632,42.3418239]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":8651287,"name":"Reverend James J. Murphy Footway","width":"3.7"},"geometry":{"type":"LineString","coordinates":[[-71.1720726,42.3503028],[-71.1720703,42.3503073],[-71.1719315,42.3505379],[-71.171887,42.3506153]]}},
@@ -250,10 +250,10 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":382355983,"surface":"asphalt","width":"2"},"geometry":{"type":"LineString","coordinates":[[-71.1491504,42.3302374],[-71.1490494,42.3302064],[-71.1489654,42.330172],[-71.14893,42.3301329],[-71.148894,42.3300775],[-71.1488704,42.3300485],[-71.1487927,42.3300012],[-71.1486783,42.3299523]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":382356141,"surface":"asphalt","width":"2"},"geometry":{"type":"LineString","coordinates":[[-71.1491076,42.329524],[-71.1489956,42.32949],[-71.1489294,42.3294536],[-71.1488516,42.3293873],[-71.1488141,42.3293533],[-71.148754,42.3293284],[-71.1486695,42.3293197],[-71.1486045,42.3293378],[-71.1485683,42.3293687],[-71.1485458,42.3294088],[-71.1485485,42.3294655]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":382356163,"surface":"asphalt","width":"2"},"geometry":{"type":"LineString","coordinates":[[-71.1483183,42.3301837],[-71.1483113,42.3302278],[-71.1482803,42.3303075],[-71.148259,42.3303755]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":384775112,"name":"Father Herlihy Drive","surface":"concrete","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1662056,42.3398331],[-71.1662254,42.3398376],[-71.166283,42.3398352],[-71.1665993,42.3397908],[-71.1666182,42.339779],[-71.1666247,42.3397645],[-71.1666159,42.3397401],[-71.1665118,42.3395764],[-71.1664865,42.3395337],[-71.1664201,42.3394316],[-71.1663733,42.3393645],[-71.1663203,42.3392895],[-71.1663022,42.3392778],[-71.1662593,42.3392588],[-71.1661993,42.3392557],[-71.1661393,42.3392721],[-71.1661101,42.3393062],[-71.1661244,42.3394427],[-71.1661685,42.3396531],[-71.1661969,42.3397888],[-71.1662018,42.3398123],[-71.1662056,42.3398331]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":384775112,"name":"Saint Thomas More Road","surface":"concrete","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1662056,42.3398331],[-71.1662254,42.3398376],[-71.166283,42.3398352],[-71.1665993,42.3397908],[-71.1666182,42.339779],[-71.1666247,42.3397645],[-71.1666159,42.3397401],[-71.1665118,42.3395764],[-71.1664865,42.3395337],[-71.1664201,42.3394316],[-71.1663733,42.3393645],[-71.1663203,42.3392895],[-71.1663022,42.3392778],[-71.1662593,42.3392588],[-71.1661993,42.3392557],[-71.1661393,42.3392721],[-71.1661101,42.3393062],[-71.1661244,42.3394427],[-71.1661685,42.3396531],[-71.1661969,42.3397888],[-71.1662018,42.3398123],[-71.1662056,42.3398331]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":385217675,"name":"College Road","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1727804,42.3333291],[-71.1726263,42.3335035],[-71.1724716,42.3336766],[-71.1722735,42.3338998],[-71.172125,42.3340657],[-71.1720789,42.3341172],[-71.1720475,42.3341258],[-71.1718628,42.3343427],[-71.1717898,42.3344049],[-71.1717739,42.334438],[-71.1717071,42.3345198],[-71.171655,42.3346089],[-71.1716289,42.3347395],[-71.1715964,42.33489],[-71.1715866,42.3350212],[-71.171556,42.3352399],[-71.1715214,42.3353752]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":385217678,"name":"Commonwealth Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1711772,42.3378528],[-71.1711601,42.3378674],[-71.1709678,42.3380605],[-71.1708392,42.3381857],[-71.1706088,42.3383867],[-71.1703889,42.3385576],[-71.1701488,42.3387201],[-71.1698662,42.3388784],[-71.1695365,42.3390378],[-71.1691343,42.3391889],[-71.1688974,42.3392635],[-71.1686678,42.3393357],[-71.1683403,42.339431],[-71.1682894,42.3394458],[-71.1681858,42.339476],[-71.1676508,42.3396036],[-71.167542,42.3396256],[-71.1670952,42.339716],[-71.1670003,42.3397343],[-71.1669405,42.3397459],[-71.1668372,42.3397613],[-71.166824,42.3397583],[-71.1668138,42.339752],[-71.1667949,42.3397564]]}},
-{"type":"Feature","properties":{"Type":"Crossing","osm":385217681,"name":"Linden Lane","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.171259,42.3377858],[-71.1712189,42.3378186],[-71.1711772,42.3378528]]}},
+{"type":"Feature","properties":{"Type":"Crossing","osm":385217681,"name":"Commonwealth Avenue","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.171259,42.3377858],[-71.1712189,42.3378186],[-71.1711772,42.3378528]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":385217682,"name":"College Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1715214,42.3353752],[-71.1715192,42.3354173],[-71.1715168,42.335461]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":385217684,"name":"Campanella Way","crossing":"uncontrolled","kerb":"unknown","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1673067,42.3388275],[-71.1672797,42.3387885],[-71.1672571,42.3387558]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":385217687,"name":"Campanella Way","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.167108,42.3387741],[-71.1665409,42.3389684]]}},
@@ -298,7 +298,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":659091067,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.2074323,42.3521481],[-71.2073461,42.3519437],[-71.2073272,42.3518988],[-71.2072817,42.3517935],[-71.2072615,42.3517719],[-71.2072365,42.3517579],[-71.2072102,42.3517523],[-71.2071734,42.3517526],[-71.2071327,42.3517621],[-71.2071036,42.3517678],[-71.2070436,42.3517796],[-71.2068037,42.3518292],[-71.2060807,42.3519655],[-71.2060563,42.3519701]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":659091071,"name":"Walnut Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2060299,42.3508439],[-71.2065866,42.350853],[-71.2068049,42.3508565],[-71.2068417,42.3508634],[-71.206876,42.3508853],[-71.2068882,42.3509023],[-71.2069001,42.3509207],[-71.2069124,42.3509477],[-71.2069247,42.3509869],[-71.2069474,42.3510627]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":659091073,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.2070711,42.3514532],[-71.2070772,42.3514912],[-71.2070758,42.3515102],[-71.2070607,42.351529],[-71.2070436,42.3515458],[-71.2070215,42.3515618],[-71.2069819,42.3515779],[-71.2068916,42.3515956]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":659091074,"level":true},"geometry":{"type":"LineString","coordinates":[[-71.2069474,42.3510627],[-71.2070301,42.3513264],[-71.2070711,42.3514532]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":659091074,"name":"Walnut Street","level":true},"geometry":{"type":"LineString","coordinates":[[-71.2069474,42.3510627],[-71.2070301,42.3513264],[-71.2070711,42.3514532]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":662444966,"surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.2042421,42.3133847],[-71.2041811,42.3133791],[-71.2036453,42.31333],[-71.2028182,42.3132542]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":662447443},"geometry":{"type":"LineString","coordinates":[[-71.1781804,42.340922],[-71.1783085,42.3408791]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":662447445},"geometry":{"type":"LineString","coordinates":[[-71.1796711,42.3413622],[-71.1795775,42.3413207],[-71.17948,42.3412774]]}},
@@ -354,7 +354,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":816309400},"geometry":{"type":"LineString","coordinates":[[-71.1926465,42.3295383],[-71.1926202,42.3295027]]}},
{"type":"Feature","properties":{"Type":"Stairs","osm":816309401,"surface":"concrete","incline":"down","tactile":"no"},"geometry":{"type":"LineString","coordinates":[[-71.1926202,42.3295027],[-71.192564,42.3294313]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":816309404,"name":"Braeland Avenue","surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.1922902,42.329349],[-71.1920423,42.3294504],[-71.1917218,42.3295833],[-71.1912471,42.3297608],[-71.191066,42.3298173],[-71.1910582,42.3298487]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":816309405,"name":"Braeland Avenue","surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.1933357,42.3289612],[-71.1933247,42.3289343],[-71.1932831,42.3289284],[-71.1922902,42.329349]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":816309405,"name":"Herrick Road","surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.1933357,42.3289612],[-71.1933247,42.3289343],[-71.1932831,42.3289284],[-71.1922902,42.329349]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":816309406,"name":"Herrick Road","level":true},"geometry":{"type":"LineString","coordinates":[[-71.1933642,42.3290798],[-71.1933357,42.3289612]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":816309407,"name":"Herrick Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1933953,42.3291774],[-71.1934296,42.3291429],[-71.1934705,42.3291017]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":816309408,"name":"Herrick Road","surface":"concrete","level":true},"geometry":{"type":"LineString","coordinates":[[-71.1934719,42.3290273],[-71.1934468,42.3289042]]}},
@@ -362,14 +362,14 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":816309410,"name":"Herrick Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1934835,42.3290834],[-71.1935358,42.3292886],[-71.1935868,42.3293848],[-71.1936568,42.3295004]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":816309411,"surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1938749,42.3294146],[-71.1937341,42.3294705],[-71.1937139,42.329478]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":816309412,"surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1937107,42.3293195],[-71.1937001,42.3293528],[-71.1936967,42.329385],[-71.1937034,42.3294173],[-71.1937148,42.329449],[-71.1937341,42.3294705],[-71.1937584,42.3294976],[-71.1937967,42.3295273],[-71.1938369,42.3295457],[-71.1938675,42.3295553]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":816309418,"name":"Union Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1941353,42.3300795],[-71.1941365,42.3300695],[-71.1941354,42.3300586],[-71.1941322,42.3300474],[-71.1941265,42.3300362],[-71.1941186,42.3300259],[-71.1941093,42.3300173],[-71.194097,42.3300079],[-71.1940826,42.3299986],[-71.1937823,42.3298108],[-71.1937406,42.3297851],[-71.193569,42.3296787],[-71.1933204,42.3295266],[-71.1932939,42.3295114],[-71.1932657,42.3294994],[-71.193227,42.3294873],[-71.1931877,42.3294865],[-71.193139,42.3294924],[-71.1930969,42.3295069],[-71.1924912,42.3297574],[-71.1919468,42.3299249],[-71.1918449,42.3299645],[-71.1917725,42.3300042],[-71.1917289,42.330031],[-71.1917061,42.3300667],[-71.1917128,42.3301133],[-71.1919904,42.3302342],[-71.192067,42.3302603],[-71.192141,42.3302859],[-71.1922452,42.3303135],[-71.1923981,42.3303334],[-71.1925135,42.3303353],[-71.1925476,42.3303361],[-71.1926225,42.3303264],[-71.1926422,42.3303238]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":816309418,"name":"Herrick Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1941353,42.3300795],[-71.1941365,42.3300695],[-71.1941354,42.3300586],[-71.1941322,42.3300474],[-71.1941265,42.3300362],[-71.1941186,42.3300259],[-71.1941093,42.3300173],[-71.194097,42.3300079],[-71.1940826,42.3299986],[-71.1937823,42.3298108],[-71.1937406,42.3297851],[-71.193569,42.3296787],[-71.1933204,42.3295266],[-71.1932939,42.3295114],[-71.1932657,42.3294994],[-71.193227,42.3294873],[-71.1931877,42.3294865],[-71.193139,42.3294924],[-71.1930969,42.3295069],[-71.1924912,42.3297574],[-71.1919468,42.3299249],[-71.1918449,42.3299645],[-71.1917725,42.3300042],[-71.1917289,42.330031],[-71.1917061,42.3300667],[-71.1917128,42.3301133],[-71.1919904,42.3302342],[-71.192067,42.3302603],[-71.192141,42.3302859],[-71.1922452,42.3303135],[-71.1923981,42.3303334],[-71.1925135,42.3303353],[-71.1925476,42.3303361],[-71.1926225,42.3303264],[-71.1926422,42.3303238]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":816309419,"surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.194243,42.3302386],[-71.1942544,42.3302654],[-71.1942632,42.3302861],[-71.1942711,42.3303076],[-71.194275,42.3303239],[-71.1942789,42.3303419],[-71.1942819,42.3303604],[-71.1942834,42.3303774],[-71.1942846,42.3303945],[-71.1942853,42.3304179],[-71.1942848,42.330437],[-71.1942846,42.3304594],[-71.1942834,42.3304816],[-71.1942814,42.3305066],[-71.1942788,42.3305303],[-71.1942762,42.3305538],[-71.1942728,42.3305776],[-71.1942639,42.3306313],[-71.1942454,42.3307629],[-71.1942146,42.3310145],[-71.1942059,42.3310621]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":816309420,"name":"Centre Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1945372,42.3311711],[-71.1945485,42.3311367],[-71.1945619,42.3311007],[-71.1945667,42.3310722],[-71.1946361,42.330656],[-71.1946813,42.3303849],[-71.1946907,42.3302659],[-71.1946667,42.3302163],[-71.1946296,42.3302085],[-71.1945973,42.3302]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":816309421,"name":"Langley Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1945292,42.3312437],[-71.194534,42.3312001],[-71.1945372,42.3311711]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":816309423,"name":"Centre Street","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1946127,42.3310757],[-71.1946798,42.3310806],[-71.1947417,42.3310851]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":816309424,"name":"Centre Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1945808,42.3312769],[-71.1946474,42.3312842],[-71.1947113,42.3312912]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":816309425,"name":"Pelham Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1947774,42.3311364],[-71.1947774,42.331161],[-71.1947775,42.3311991]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":816309426,"name":"Centre Street"},"geometry":{"type":"LineString","coordinates":[[-71.1947863,42.3310873],[-71.1947417,42.3310851]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":816309426,"name":"Pelham Street"},"geometry":{"type":"LineString","coordinates":[[-71.1947863,42.3310873],[-71.1947417,42.3310851]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":816309427,"name":"Centre Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1945808,42.3312769],[-71.1945695,42.331273],[-71.1945276,42.3312583]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":816309428,"surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.1946361,42.330656],[-71.1942792,42.3306329],[-71.1942639,42.3306313],[-71.1942071,42.3306295],[-71.1941188,42.3306265],[-71.1940863,42.3306253]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":816309429,"name":"Langley Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1945485,42.3311367],[-71.1945197,42.3311338],[-71.1944909,42.3311309],[-71.1944596,42.331127],[-71.1944342,42.3311227],[-71.1944071,42.3311179],[-71.1943688,42.331109],[-71.1943231,42.3310978],[-71.1942794,42.3310854],[-71.1942415,42.3310737],[-71.1942059,42.3310621]]}},
@@ -378,7 +378,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":816309436,"name":"Beacon Street","surface":"asphalt","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1950521,42.3301094],[-71.1950546,42.3300402],[-71.1950581,42.3299422]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":816309437,"name":"Centre Street","surface":"asphalt","tactile":"yes","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1950049,42.3298904],[-71.1948731,42.3299112],[-71.1947666,42.3299279]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":816309438,"surface":"concrete","incline":"down"},"geometry":{"type":"LineString","coordinates":[[-71.1940261,42.3300729],[-71.1940366,42.3301267]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":816309441,"name":"Centre Street"},"geometry":{"type":"LineString","coordinates":[[-71.195208,42.3316322],[-71.1949971,42.3316341],[-71.1948001,42.3316228],[-71.1946992,42.331607],[-71.1947029,42.3315547],[-71.1947601,42.3312963],[-71.1947635,42.3312812],[-71.1947775,42.3311991]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":816309441,"name":"Pleasant Street"},"geometry":{"type":"LineString","coordinates":[[-71.195208,42.3316322],[-71.1949971,42.3316341],[-71.1948001,42.3316228],[-71.1946992,42.331607],[-71.1947029,42.3315547],[-71.1947601,42.3312963],[-71.1947635,42.3312812],[-71.1947775,42.3311991]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":816309442,"name":"Centre Street"},"geometry":{"type":"LineString","coordinates":[[-71.1947601,42.3312963],[-71.1947113,42.3312912]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":816309443,"name":"Pleasant Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1946945,42.3316359],[-71.1946884,42.3316617],[-71.1946804,42.3316963]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":816309444,"name":"Centre Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1945971,42.3317204],[-71.194538,42.331712],[-71.1944646,42.3317015]]}},
@@ -415,14 +415,14 @@
{"type":"Feature","properties":{"Type":"Stairs","osm":837970863,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1688234,42.3374629],[-71.1688854,42.3374259],[-71.1689111,42.3373815],[-71.1690056,42.3373688],[-71.1691171,42.3373624],[-71.169203,42.3373561]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":837970864,"name":"Campanella Way","crossing":"uncontrolled","kerb":"unknown","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1686532,42.3374858],[-71.1686867,42.3374601],[-71.1687267,42.3374293]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123132,"name":"Summit Street"},"geometry":{"type":"LineString","coordinates":[[-71.1932845,42.3534693],[-71.1922055,42.3535431],[-71.1918207,42.353556],[-71.1914867,42.3535412],[-71.1910871,42.3535015],[-71.1908658,42.3534539],[-71.1906371,42.3533831],[-71.1900973,42.3532131],[-71.1904889,42.3532389],[-71.1910696,42.3532676],[-71.191307,42.3532765],[-71.1914626,42.3532696],[-71.1917281,42.35323],[-71.1919253,42.3531715],[-71.1921063,42.3530793],[-71.1921962,42.3530298],[-71.1922538,42.3529703],[-71.1922914,42.3529019],[-71.1922874,42.3528164],[-71.1922937,42.3527935],[-71.1923115,42.352775],[-71.192339,42.3527672],[-71.1923613,42.3527674],[-71.1924577,42.3527869],[-71.1926253,42.3528424],[-71.1927286,42.3528662],[-71.1928258,42.3528796]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123138,"name":"Summit Street"},"geometry":{"type":"LineString","coordinates":[[-71.1869318,42.3498005],[-71.1869657,42.3498154],[-71.1870055,42.349835],[-71.1875976,42.3501215],[-71.1882304,42.3504263],[-71.1887334,42.3506875],[-71.1895996,42.3511192],[-71.1899397,42.3512886],[-71.1901714,42.3513941],[-71.1904966,42.3515423],[-71.1908953,42.3517124],[-71.190995,42.351755],[-71.1915289,42.3519898],[-71.1916413,42.3520248],[-71.1917768,42.3520624],[-71.1919847,42.3521231],[-71.19207,42.352145],[-71.1921165,42.3521621],[-71.1921254,42.3521787],[-71.1920285,42.3524371],[-71.1920156,42.3524797],[-71.1920304,42.3525466],[-71.1920808,42.3526214],[-71.1920981,42.3526515],[-71.1921291,42.3527079],[-71.1921665,42.3527669],[-71.1921734,42.3528444],[-71.1921626,42.3529148],[-71.1921224,42.3529871],[-71.1919534,42.3530664],[-71.1917992,42.3531232],[-71.1916862,42.3531559],[-71.1915551,42.3531824],[-71.1912963,42.3532002],[-71.190898,42.3531923],[-71.1906753,42.3531814],[-71.1903293,42.3531477],[-71.1900477,42.353112],[-71.1898291,42.3530813],[-71.1894026,42.3529733],[-71.1890258,42.3528543],[-71.1884263,42.3526452]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123199,"surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1895663,42.3549861],[-71.1895505,42.3550279],[-71.1895363,42.3550595],[-71.1895165,42.3550877],[-71.1894815,42.3551239],[-71.1894512,42.3551444],[-71.1894198,42.3551606],[-71.1893892,42.3551738],[-71.1893539,42.355187],[-71.1893187,42.3551956],[-71.1882722,42.3553736],[-71.1882435,42.3553763],[-71.188216,42.3553772],[-71.1881944,42.3553764],[-71.1881652,42.3553739],[-71.1864488,42.3550645],[-71.1864472,42.3550735]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123269,"name":"Newtonville Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1957984,42.3533003],[-71.1957005,42.3531259]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123138,"name":"Bellevue Street"},"geometry":{"type":"LineString","coordinates":[[-71.1869318,42.3498005],[-71.1869657,42.3498154],[-71.1870055,42.349835],[-71.1875976,42.3501215],[-71.1882304,42.3504263],[-71.1887334,42.3506875],[-71.1895996,42.3511192],[-71.1899397,42.3512886],[-71.1901714,42.3513941],[-71.1904966,42.3515423],[-71.1908953,42.3517124],[-71.190995,42.351755],[-71.1915289,42.3519898],[-71.1916413,42.3520248],[-71.1917768,42.3520624],[-71.1919847,42.3521231],[-71.19207,42.352145],[-71.1921165,42.3521621],[-71.1921254,42.3521787],[-71.1920285,42.3524371],[-71.1920156,42.3524797],[-71.1920304,42.3525466],[-71.1920808,42.3526214],[-71.1920981,42.3526515],[-71.1921291,42.3527079],[-71.1921665,42.3527669],[-71.1921734,42.3528444],[-71.1921626,42.3529148],[-71.1921224,42.3529871],[-71.1919534,42.3530664],[-71.1917992,42.3531232],[-71.1916862,42.3531559],[-71.1915551,42.3531824],[-71.1912963,42.3532002],[-71.190898,42.3531923],[-71.1906753,42.3531814],[-71.1903293,42.3531477],[-71.1900477,42.353112],[-71.1898291,42.3530813],[-71.1894026,42.3529733],[-71.1890258,42.3528543],[-71.1884263,42.3526452]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123199,"name":"Church Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1895663,42.3549861],[-71.1895505,42.3550279],[-71.1895363,42.3550595],[-71.1895165,42.3550877],[-71.1894815,42.3551239],[-71.1894512,42.3551444],[-71.1894198,42.3551606],[-71.1893892,42.3551738],[-71.1893539,42.355187],[-71.1893187,42.3551956],[-71.1882722,42.3553736],[-71.1882435,42.3553763],[-71.188216,42.3553772],[-71.1881944,42.3553764],[-71.1881652,42.3553739],[-71.1864488,42.3550645],[-71.1864472,42.3550735]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123269,"name":"Bellevue Street"},"geometry":{"type":"LineString","coordinates":[[-71.1957984,42.3533003],[-71.1957005,42.3531259]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":840123270,"name":"Bellevue Street","crossing":"unknown","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1958413,42.3533737],[-71.1957984,42.3533003]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123271,"name":"Newtonville Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.196597,42.3531229],[-71.1965266,42.3529306]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123271,"name":"Lewis Terrace"},"geometry":{"type":"LineString","coordinates":[[-71.196597,42.3531229],[-71.1965266,42.3529306]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123272,"name":"Lewis Terrace","level":true},"geometry":{"type":"LineString","coordinates":[[-71.1967412,42.3536224],[-71.1968485,42.3539663],[-71.1968592,42.3540104],[-71.1968619,42.3540496],[-71.1968552,42.3541279]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123273,"name":"Lewis Terrace"},"geometry":{"type":"LineString","coordinates":[[-71.1966178,42.3531903],[-71.196709,42.3535203],[-71.1967412,42.3536224]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123274,"surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1958326,42.3546259],[-71.1957595,42.3546541],[-71.1953225,42.3548137],[-71.1951768,42.3548639],[-71.1950183,42.354904],[-71.1949213,42.3549247],[-71.1945377,42.3549693],[-71.1938243,42.3550426],[-71.1934192,42.355115],[-71.1930196,42.3551962],[-71.1925381,42.3552983],[-71.1920621,42.3553964],[-71.191649,42.3554836],[-71.1911299,42.355591],[-71.1909455,42.3556318],[-71.1907728,42.3556727],[-71.1905949,42.3557181],[-71.1905719,42.3557318],[-71.1905571,42.3557381],[-71.1905389,42.3557419],[-71.1905204,42.3557432],[-71.1905018,42.3557387],[-71.1904883,42.3557334]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123274,"name":"Lewis Terrace","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1958326,42.3546259],[-71.1957595,42.3546541],[-71.1953225,42.3548137],[-71.1951768,42.3548639],[-71.1950183,42.354904],[-71.1949213,42.3549247],[-71.1945377,42.3549693],[-71.1938243,42.3550426],[-71.1934192,42.355115],[-71.1930196,42.3551962],[-71.1925381,42.3552983],[-71.1920621,42.3553964],[-71.191649,42.3554836],[-71.1911299,42.355591],[-71.1909455,42.3556318],[-71.1907728,42.3556727],[-71.1905949,42.3557181],[-71.1905719,42.3557318],[-71.1905571,42.3557381],[-71.1905389,42.3557419],[-71.1905204,42.3557432],[-71.1905018,42.3557387],[-71.1904883,42.3557334]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123275,"name":"Lewis Terrace"},"geometry":{"type":"LineString","coordinates":[[-71.1968686,42.3536016],[-71.1968511,42.3535511],[-71.1967559,42.3532022]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123276,"name":"Lewis Terrace","level":true},"geometry":{"type":"LineString","coordinates":[[-71.1969879,42.3540882],[-71.1969195,42.3538206],[-71.1968686,42.3536016]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123278,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1987434,42.3539316],[-71.1986534,42.3539642],[-71.1983429,42.3540629],[-71.1977049,42.3542672],[-71.1973467,42.3543722],[-71.197173,42.3544183],[-71.1969531,42.3544669],[-71.1964703,42.3545823],[-71.1961946,42.3546482],[-71.1961128,42.3546658],[-71.1958456,42.3547501]]}},
@@ -431,8 +431,8 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123282,"name":"Lenglen Road"},"geometry":{"type":"LineString","coordinates":[[-71.1986065,42.355204],[-71.1983478,42.3550059],[-71.1976652,42.3545055]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":840123291,"name":"Lewis Terrace","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1958326,42.3546259],[-71.1958372,42.3546695],[-71.1958437,42.3547313]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":840123292,"name":"Adams Street","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1959097,42.3549267],[-71.1957927,42.35495],[-71.1956629,42.3549762]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123302},"geometry":{"type":"LineString","coordinates":[[-71.1959097,42.3549267],[-71.1959673,42.3550149],[-71.1965018,42.3554221],[-71.1968765,42.3557302],[-71.1971649,42.3559611],[-71.1972976,42.3560624],[-71.1974056,42.3561452],[-71.197463,42.356189],[-71.1975131,42.3562272],[-71.1979052,42.3565232],[-71.1981418,42.3566793]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123303,"name":"Adams Street"},"geometry":{"type":"LineString","coordinates":[[-71.1956629,42.3549762],[-71.1957581,42.3550149],[-71.1971844,42.3561403]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123302,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1959097,42.3549267],[-71.1959673,42.3550149],[-71.1965018,42.3554221],[-71.1968765,42.3557302],[-71.1971649,42.3559611],[-71.1972976,42.3560624],[-71.1974056,42.3561452],[-71.197463,42.356189],[-71.1975131,42.3562272],[-71.1979052,42.3565232],[-71.1981418,42.3566793]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123303,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1956629,42.3549762],[-71.1957581,42.3550149],[-71.1971844,42.3561403]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":840123305,"name":"Newtonville Avenue","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1976,42.352544],[-71.1976252,42.3525902],[-71.197648,42.3526334]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":840123306,"name":"Howard Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1942232,42.3534202],[-71.1941429,42.3534248],[-71.1940958,42.3534275]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123310,"name":"Howard Street"},"geometry":{"type":"LineString","coordinates":[[-71.1942232,42.3534202],[-71.1939222,42.3528618],[-71.1936606,42.3524192],[-71.1935238,42.3521844],[-71.1935264,42.3521705]]}},
@@ -448,20 +448,20 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123322,"name":"Bellevue Street"},"geometry":{"type":"LineString","coordinates":[[-71.1963174,42.3535005],[-71.1958922,42.3535421]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":840123324,"name":"Newtonville Avenue","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1964951,42.3528454],[-71.1965092,42.3528837],[-71.1965266,42.3529306]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":840123325,"name":"Lewis Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1966573,42.3528087],[-71.196568,42.3528289],[-71.1964951,42.3528454]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123326,"name":"Newtonville Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1967559,42.3532022],[-71.1966902,42.352892]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123326,"name":"Lewis Terrace"},"geometry":{"type":"LineString","coordinates":[[-71.1967559,42.3532022],[-71.1966902,42.352892]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123327,"name":"Newtonville Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1971167,42.3527934],[-71.196996,42.3528538],[-71.1969101,42.3529153],[-71.1968713,42.3529524],[-71.1968149,42.3530302],[-71.196776,42.3531199],[-71.1967559,42.3532022]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123328,"name":"Lewis Terrace"},"geometry":{"type":"LineString","coordinates":[[-71.1966178,42.3531903],[-71.196597,42.3531229]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":840123329,"name":"Lewis Terrace","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1966902,42.352892],[-71.1966045,42.3529122],[-71.1965266,42.3529306]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":840123330,"name":"Newtonville Avenue","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1966573,42.3528087],[-71.1966722,42.3528465],[-71.1966902,42.352892]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123331,"name":"Newtonville Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1986616,42.3522864],[-71.1980098,42.3525441],[-71.1976554,42.3526473],[-71.1976037,42.3526629],[-71.1971167,42.3527934],[-71.1970441,42.352811],[-71.1966902,42.352892]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123332,"name":"Pillion Court"},"geometry":{"type":"LineString","coordinates":[[-71.1986066,42.3521962],[-71.1981675,42.3523757]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123332,"name":"Newtonville Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1986066,42.3521962],[-71.1981675,42.3523757]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":840123333,"name":"Pillion Court","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1981675,42.3523757],[-71.1981352,42.352387],[-71.1981012,42.3523984]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123334,"name":"East Side Parkway"},"geometry":{"type":"LineString","coordinates":[[-71.1974392,42.3525942],[-71.1971717,42.3526665]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":840123335,"name":"East Side Parkway","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1976,42.352544],[-71.1975002,42.3525752],[-71.1974392,42.3525942]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":840123336,"name":"East Side Parkway","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1971717,42.3526665],[-71.1970824,42.3526957],[-71.1970014,42.3527222]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123337,"name":"Newtonville Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1969431,42.3527369],[-71.1968558,42.3527636],[-71.1966573,42.3528087]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123338,"name":"Lewis Street"},"geometry":{"type":"LineString","coordinates":[[-71.1966573,42.3528087],[-71.1965011,42.3525456],[-71.1963442,42.3523181],[-71.1962242,42.3521853]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123339,"name":"Newtonville Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1981012,42.3523984],[-71.1978509,42.3524865],[-71.1976,42.352544]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":840123339,"name":"Pillion Court"},"geometry":{"type":"LineString","coordinates":[[-71.1981012,42.3523984],[-71.1978509,42.3524865],[-71.1976,42.352544]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":840178142,"name":"Crafts Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1997694,42.3545065],[-71.1993154,42.3543092],[-71.1991678,42.3542422],[-71.1990029,42.354168],[-71.1989285,42.3541372],[-71.1988541,42.3541277]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":840178143,"name":"Lenglen Road"},"geometry":{"type":"LineString","coordinates":[[-71.1986455,42.3551051],[-71.1991213,42.3548672],[-71.1997694,42.3545065]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":840178146,"name":"Washington Street","surface":"asphalt","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1988507,42.3541068],[-71.1987977,42.3540203],[-71.1987434,42.3539316]]}},
@@ -473,11 +473,11 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":840178159,"name":"Langdon Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1923204,42.3521073],[-71.1923648,42.3521169],[-71.1924413,42.3521335]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":840178167,"name":"Oakland Street"},"geometry":{"type":"LineString","coordinates":[[-71.1899183,42.3537672],[-71.189899,42.3538664],[-71.1898613,42.3539891],[-71.1896145,42.3546675],[-71.1896058,42.3546918],[-71.1896097,42.3547096]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":840178168,"name":"Church Street","crossing":"marked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1897996,42.3548969],[-71.18986,42.3549594],[-71.1899411,42.3550451]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":840178169,"name":"Church Street"},"geometry":{"type":"LineString","coordinates":[[-71.1896097,42.3547096],[-71.1897996,42.3548969]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":840178169,"name":"Oakland Street"},"geometry":{"type":"LineString","coordinates":[[-71.1896097,42.3547096],[-71.1897996,42.3548969]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":840178170,"name":"Oakland Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.189482,42.3546737],[-71.1895478,42.3546928],[-71.1896097,42.3547096]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":840178171,"name":"Church Street"},"geometry":{"type":"LineString","coordinates":[[-71.1889359,42.3545877],[-71.1894235,42.3546898],[-71.1894474,42.3546903],[-71.189482,42.3546737]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":840178172,"name":"Church Road","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1888514,42.3545768],[-71.1889033,42.3545835],[-71.1889359,42.3545877]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":840178173,"name":"Church Road"},"geometry":{"type":"LineString","coordinates":[[-71.1884035,42.3544985],[-71.1888514,42.3545768]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":840178173,"name":"Maple Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1884035,42.3544985],[-71.1888514,42.3545768]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":840178174,"name":"Maple Avenue","crossing":"marked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1882627,42.3544708],[-71.1883631,42.3544903],[-71.1884035,42.3544985]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":840178175,"name":"Oakland Street"},"geometry":{"type":"LineString","coordinates":[[-71.189482,42.3546737],[-71.189788,42.3538571],[-71.1898063,42.353784],[-71.1898077,42.3536939],[-71.1898005,42.3536586],[-71.1897949,42.3536311],[-71.1897687,42.3535686]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":840178176,"name":"Bellevue Street"},"geometry":{"type":"LineString","coordinates":[[-71.1924413,42.3521335],[-71.1924545,42.3521313],[-71.19247,42.3521511],[-71.1925036,42.3521648],[-71.1926213,42.3521863],[-71.1927239,42.3522039],[-71.1928317,42.3522077],[-71.1929734,42.3521934],[-71.1931167,42.3521664],[-71.1935721,42.3520416],[-71.1938162,42.3520218],[-71.194016,42.3520327],[-71.1942923,42.3520902],[-71.1946048,42.3521883],[-71.1948381,42.3522993],[-71.1950956,42.3524708],[-71.1953156,42.3526759],[-71.1955154,42.3528999],[-71.195628,42.3530392]]}},
@@ -501,27 +501,27 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":840757534,"name":"Gardena Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1487202,42.3537323],[-71.1486912,42.3537794],[-71.14866,42.3538275]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":840757535,"name":"Montcalm Avenue","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.148991,42.3533246],[-71.1489635,42.3533584],[-71.1489218,42.3534097]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":840757536,"name":"Elmira Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.149244,42.3528942],[-71.1492286,42.3529335],[-71.1491902,42.352982]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757602,"name":"Saybrook Terrace"},"geometry":{"type":"LineString","coordinates":[[-71.1482592,42.3546998],[-71.1486398,42.3547909],[-71.1487885,42.3548314],[-71.1496764,42.3550733]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757603,"name":"Saybrook Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1476058,42.3557056],[-71.1482592,42.3546998]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757602,"name":"Saybrook Street"},"geometry":{"type":"LineString","coordinates":[[-71.1482592,42.3546998],[-71.1486398,42.3547909],[-71.1487885,42.3548314],[-71.1496764,42.3550733]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757603,"name":"Glencoe Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1476058,42.3557056],[-71.1482592,42.3546998]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757605,"name":"Glencoe Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1475065,42.3556818],[-71.1476012,42.3555237],[-71.1481423,42.3546777]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757607,"name":"Etna Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1470637,42.3543937],[-71.1465318,42.3552404],[-71.1464262,42.3554067]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757608,"name":"Saybrook Street"},"geometry":{"type":"LineString","coordinates":[[-71.1481423,42.3546777],[-71.1479502,42.3546209],[-71.1470637,42.3543937]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757609,"name":"Glencoe Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1481891,42.3545921],[-71.1483954,42.3542594]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757610,"name":"Glencoe Street"},"geometry":{"type":"LineString","coordinates":[[-71.1471132,42.3543126],[-71.1481891,42.3545921]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757611,"name":"Saybrook Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1473413,42.3539697],[-71.1471132,42.3543126]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757612,"name":"Cushman Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1483954,42.3542594],[-71.1473413,42.3539697]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757610,"name":"Saybrook Street"},"geometry":{"type":"LineString","coordinates":[[-71.1471132,42.3543126],[-71.1481891,42.3545921]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757611,"name":"Cushman Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1473413,42.3539697],[-71.1471132,42.3543126]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757612,"name":"Glencoe Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1483954,42.3542594],[-71.1473413,42.3539697]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757613,"name":"Glencoe Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1484583,42.3541661],[-71.14866,42.3538275]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757614,"name":"Glencoe Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1473878,42.3538783],[-71.1484583,42.3541661]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757614,"name":"Etna Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1473878,42.3538783],[-71.1484583,42.3541661]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757615,"name":"Etna Street"},"geometry":{"type":"LineString","coordinates":[[-71.1475834,42.3535482],[-71.1473878,42.3538783]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757616,"name":"Etna Street"},"geometry":{"type":"LineString","coordinates":[[-71.14866,42.3538275],[-71.1475834,42.3535482]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757616,"name":"Glencoe Street"},"geometry":{"type":"LineString","coordinates":[[-71.14866,42.3538275],[-71.1475834,42.3535482]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757617,"name":"Glencoe Street"},"geometry":{"type":"LineString","coordinates":[[-71.1487202,42.3537323],[-71.1489218,42.3534097]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757618,"name":"Glencoe Street"},"geometry":{"type":"LineString","coordinates":[[-71.1476377,42.3534563],[-71.1487202,42.3537323]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757618,"name":"Etna Street"},"geometry":{"type":"LineString","coordinates":[[-71.1476377,42.3534563],[-71.1487202,42.3537323]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757619,"name":"Etna Street"},"geometry":{"type":"LineString","coordinates":[[-71.1478515,42.3531325],[-71.1476377,42.3534563]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757620,"name":"Etna Street"},"geometry":{"type":"LineString","coordinates":[[-71.1489218,42.3534097],[-71.1478515,42.3531325]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757620,"name":"Glencoe Street"},"geometry":{"type":"LineString","coordinates":[[-71.1489218,42.3534097],[-71.1478515,42.3531325]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757621,"name":"Glencoe Street"},"geometry":{"type":"LineString","coordinates":[[-71.148991,42.3533246],[-71.1491902,42.352982]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757622,"name":"Glencoe Street"},"geometry":{"type":"LineString","coordinates":[[-71.1479083,42.3530384],[-71.148991,42.3533246]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757623,"name":"Montcalm Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1481234,42.3527044],[-71.1479083,42.3530384]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757624,"name":"Elmira Street"},"geometry":{"type":"LineString","coordinates":[[-71.1491902,42.352982],[-71.1481234,42.3527044]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757622,"name":"Montcalm Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1479083,42.3530384],[-71.148991,42.3533246]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757623,"name":"Elmira Street"},"geometry":{"type":"LineString","coordinates":[[-71.1481234,42.3527044],[-71.1479083,42.3530384]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757624,"name":"Glencoe Street"},"geometry":{"type":"LineString","coordinates":[[-71.1491902,42.352982],[-71.1481234,42.3527044]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":840757625,"name":"Etna Street"},"geometry":{"type":"LineString","coordinates":[[-71.1480609,42.3525845],[-71.1482067,42.3523432],[-71.1483498,42.352095],[-71.1484115,42.3521144],[-71.1484561,42.3521285],[-71.1481762,42.3526195]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":841401342,"name":"Washington Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1976652,42.3545055],[-71.1970101,42.3546675],[-71.196285,42.3548415],[-71.1959097,42.3549267]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":841401344,"name":"Lewis Terrace"},"geometry":{"type":"LineString","coordinates":[[-71.1968552,42.3541279],[-71.196823,42.3541992],[-71.1967586,42.3542557],[-71.1964877,42.3543806],[-71.1958326,42.3546259]]}},
@@ -561,35 +561,35 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":841621787,"name":"Murdock Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1467362,42.3522209],[-71.1467854,42.3522398],[-71.1468481,42.3522638]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":841621788,"name":"Murdock Terrace","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1466812,42.3523093],[-71.1466932,42.35229],[-71.1467213,42.3522449],[-71.1467362,42.3522209]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":841621789,"name":"Murdock Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1468046,42.3523493],[-71.1467408,42.3523286],[-71.1466812,42.3523093]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621790,"name":"Murdock Street"},"geometry":{"type":"LineString","coordinates":[[-71.1450949,42.3533996],[-71.1459537,42.3536241]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621791,"name":"Cushman Road"},"geometry":{"type":"LineString","coordinates":[[-71.1449041,42.3537368],[-71.1450949,42.3533996]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621792,"name":"Dustin Street"},"geometry":{"type":"LineString","coordinates":[[-71.1457642,42.3539613],[-71.1449041,42.3537368]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621790,"name":"Cushman Road"},"geometry":{"type":"LineString","coordinates":[[-71.1450949,42.3533996],[-71.1459537,42.3536241]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621791,"name":"Dustin Street"},"geometry":{"type":"LineString","coordinates":[[-71.1449041,42.3537368],[-71.1450949,42.3533996]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621792,"name":"Murdock Street"},"geometry":{"type":"LineString","coordinates":[[-71.1457642,42.3539613],[-71.1449041,42.3537368]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621793,"name":"Murdock Street"},"geometry":{"type":"LineString","coordinates":[[-71.1459537,42.3536241],[-71.1457642,42.3539613]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621794,"name":"Montcalm Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1453777,42.3528882],[-71.1455837,42.352544]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621795,"name":"Murdock Street"},"geometry":{"type":"LineString","coordinates":[[-71.1456286,42.3524611],[-71.1464864,42.3526697]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621797,"name":"Cushman Road"},"geometry":{"type":"LineString","coordinates":[[-71.145883,42.3539937],[-71.1460797,42.35366]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621798,"name":"Murdock Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1458347,42.3540904],[-71.1452696,42.355113]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621799,"name":"Ridge Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1451489,42.3550813],[-71.1454315,42.3545712],[-71.1457159,42.354058]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621802,"name":"Saybrook Street"},"geometry":{"type":"LineString","coordinates":[[-71.1457159,42.354058],[-71.1448522,42.3538275]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621804,"name":"Saybrook Street"},"geometry":{"type":"LineString","coordinates":[[-71.1469416,42.3543651],[-71.1458347,42.3540904]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621805,"name":"Saybrook Street"},"geometry":{"type":"LineString","coordinates":[[-71.1469982,42.3542844],[-71.145883,42.3539937]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621794,"name":"Gardena Street"},"geometry":{"type":"LineString","coordinates":[[-71.1453777,42.3528882],[-71.1455837,42.352544]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621795,"name":"Montcalm Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1456286,42.3524611],[-71.1464864,42.3526697]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621797,"name":"Saybrook Street"},"geometry":{"type":"LineString","coordinates":[[-71.145883,42.3539937],[-71.1460797,42.35366]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621798,"name":"Saybrook Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1458347,42.3540904],[-71.1452696,42.355113]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621799,"name":"Murdock Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1451489,42.3550813],[-71.1454315,42.3545712],[-71.1457159,42.354058]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621802,"name":"Murdock Street"},"geometry":{"type":"LineString","coordinates":[[-71.1457159,42.354058],[-71.1448522,42.3538275]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621804,"name":"Etna Street"},"geometry":{"type":"LineString","coordinates":[[-71.1469416,42.3543651],[-71.1458347,42.3540904]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621805,"name":"Etna Street"},"geometry":{"type":"LineString","coordinates":[[-71.1469982,42.3542844],[-71.145883,42.3539937]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621806,"name":"Cushman Road"},"geometry":{"type":"LineString","coordinates":[[-71.1472166,42.353935],[-71.1460797,42.35366]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621807,"name":"Cushman Road"},"geometry":{"type":"LineString","coordinates":[[-71.147263,42.3538436],[-71.1461293,42.353565]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621808,"name":"Murdock Street"},"geometry":{"type":"LineString","coordinates":[[-71.1474738,42.3535163],[-71.1463172,42.3532386]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621809,"name":"Gardena Street"},"geometry":{"type":"LineString","coordinates":[[-71.1475254,42.3534235],[-71.1463719,42.3531335]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621810,"name":"Montcalm Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1477396,42.3530955],[-71.1465559,42.3527924]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621811,"name":"Murdock Street"},"geometry":{"type":"LineString","coordinates":[[-71.1477965,42.3530015],[-71.1466099,42.352701]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621807,"name":"Etna Street"},"geometry":{"type":"LineString","coordinates":[[-71.147263,42.3538436],[-71.1461293,42.353565]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621808,"name":"Etna Street"},"geometry":{"type":"LineString","coordinates":[[-71.1474738,42.3535163],[-71.1463172,42.3532386]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621809,"name":"Etna Street"},"geometry":{"type":"LineString","coordinates":[[-71.1475254,42.3534235],[-71.1463719,42.3531335]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621810,"name":"Etna Street"},"geometry":{"type":"LineString","coordinates":[[-71.1477396,42.3530955],[-71.1465559,42.3527924]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621811,"name":"Etna Street"},"geometry":{"type":"LineString","coordinates":[[-71.1477965,42.3530015],[-71.1466099,42.352701]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621812,"name":"Murdock Street"},"geometry":{"type":"LineString","coordinates":[[-71.1460032,42.353529],[-71.1461845,42.3531969]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621813,"name":"Dustin Street"},"geometry":{"type":"LineString","coordinates":[[-71.1451473,42.3533021],[-71.1453215,42.352975]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621814,"name":"Murdock Street"},"geometry":{"type":"LineString","coordinates":[[-71.1453777,42.3528882],[-71.1462439,42.3530937]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621815,"name":"Murdock Street"},"geometry":{"type":"LineString","coordinates":[[-71.1453215,42.352975],[-71.1461845,42.3531969]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621816,"name":"Murdock Street"},"geometry":{"type":"LineString","coordinates":[[-71.1451473,42.3533021],[-71.1460032,42.353529]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621817,"name":"Cushman Road"},"geometry":{"type":"LineString","coordinates":[[-71.1463172,42.3532386],[-71.1461293,42.353565]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621818,"name":"Gardena Street"},"geometry":{"type":"LineString","coordinates":[[-71.1465559,42.3527924],[-71.1463719,42.3531335]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621819,"name":"Elmira Street"},"geometry":{"type":"LineString","coordinates":[[-71.1466099,42.352701],[-71.1468046,42.3523493]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621820,"name":"Murdock Street"},"geometry":{"type":"LineString","coordinates":[[-71.1455837,42.352544],[-71.1464419,42.3527635]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621814,"name":"Gardena Street"},"geometry":{"type":"LineString","coordinates":[[-71.1453777,42.3528882],[-71.1462439,42.3530937]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621815,"name":"Dustin Street"},"geometry":{"type":"LineString","coordinates":[[-71.1453215,42.352975],[-71.1461845,42.3531969]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621816,"name":"Dustin Street"},"geometry":{"type":"LineString","coordinates":[[-71.1451473,42.3533021],[-71.1460032,42.353529]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621817,"name":"Murdock Street"},"geometry":{"type":"LineString","coordinates":[[-71.1463172,42.3532386],[-71.1461293,42.353565]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621818,"name":"Montcalm Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1465559,42.3527924],[-71.1463719,42.3531335]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621819,"name":"Murdock Street"},"geometry":{"type":"LineString","coordinates":[[-71.1466099,42.352701],[-71.1468046,42.3523493]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621820,"name":"Montcalm Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1455837,42.352544],[-71.1464419,42.3527635]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621821,"name":"Murdock Terrace"},"geometry":{"type":"LineString","coordinates":[[-71.1463966,42.3521247],[-71.1467362,42.3522209]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621822,"name":"Elmira Street"},"geometry":{"type":"LineString","coordinates":[[-71.1480108,42.3526714],[-71.1468046,42.3523493]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621822,"name":"Etna Street"},"geometry":{"type":"LineString","coordinates":[[-71.1480108,42.3526714],[-71.1468046,42.3523493]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":841621823,"name":"Glencoe Street","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1483057,42.3546146],[-71.1482379,42.3546016],[-71.1481891,42.3545921]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":841621824,"name":"Saybrook Street","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1482592,42.3546998],[-71.1482814,42.3546591],[-71.1483057,42.3546146]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":841621825,"name":"Etna Street","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1470637,42.3543937],[-71.1469975,42.3543782],[-71.1469416,42.3543651]]}},
@@ -609,7 +609,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":841621839,"name":"Gardena Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1474738,42.3535163],[-71.1474964,42.3534756],[-71.1475254,42.3534235]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621840,"name":"Etna Street"},"geometry":{"type":"LineString","coordinates":[[-71.147263,42.3538436],[-71.1474738,42.3535163]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":841621841,"name":"Cushman Road","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1472166,42.353935],[-71.1472346,42.3538996],[-71.147263,42.3538436]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621842,"name":"Cushman Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1469982,42.3542844],[-71.1472166,42.353935]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":841621842,"name":"Etna Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1469982,42.3542844],[-71.1472166,42.353935]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":841621843,"name":"Saybrook Street","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1469416,42.3543651],[-71.1469704,42.354324],[-71.1469982,42.3542844]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":842002600,"name":"Saybrook Street","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1496764,42.3550733],[-71.1497109,42.3550246],[-71.1497362,42.3549797]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":842640135,"name":"Glencoe Street","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1484583,42.3541661],[-71.1485013,42.3541805],[-71.1485633,42.3542013]]}},
@@ -619,7 +619,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":842640139,"name":"Glencoe Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.14866,42.3538275],[-71.1487136,42.3538411],[-71.1487826,42.3538586]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842640140,"name":"Glencoe Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1487826,42.3538586],[-71.1485633,42.3542013],[-71.1485076,42.3542946],[-71.1483057,42.3546146]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842640142,"name":"Murdock Street"},"geometry":{"type":"LineString","coordinates":[[-71.1464419,42.3527635],[-71.1462439,42.3530937]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":842640143,"name":"Murdock Terrace"},"geometry":{"type":"LineString","coordinates":[[-71.1464864,42.3526697],[-71.1466812,42.3523093]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":842640143,"name":"Murdock Street"},"geometry":{"type":"LineString","coordinates":[[-71.1464864,42.3526697],[-71.1466812,42.3523093]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842640144,"name":"Elmira Street"},"geometry":{"type":"LineString","coordinates":[[-71.1481762,42.3526195],[-71.149244,42.3528942]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842640145,"name":"Elmira Street"},"geometry":{"type":"LineString","coordinates":[[-71.1468481,42.3522638],[-71.1468588,42.35228],[-71.1468675,42.3522899],[-71.1468863,42.3522993],[-71.1480609,42.3525845]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842640146,"name":"Glencoe Street"},"geometry":{"type":"LineString","coordinates":[[-71.149244,42.3528942],[-71.1492602,42.352884],[-71.14948,42.3524635],[-71.1495608,42.3524865]]}},
@@ -633,21 +633,21 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715573,"name":"Merton Street"},"geometry":{"type":"LineString","coordinates":[[-71.1741221,42.3548404],[-71.1744708,42.354996],[-71.1747618,42.3551308],[-71.1750555,42.3552497],[-71.1753398,42.3553598]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715575,"name":"Elmhurst Road"},"geometry":{"type":"LineString","coordinates":[[-71.1747826,42.3539069],[-71.1743528,42.3544153],[-71.1738713,42.3549663],[-71.1735409,42.355336],[-71.1735213,42.3553558],[-71.1734995,42.3553727],[-71.1734878,42.3553784]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715576,"name":"Burton Street"},"geometry":{"type":"LineString","coordinates":[[-71.1735293,42.3532716],[-71.1734971,42.3532815],[-71.1734596,42.3533132],[-71.1724457,42.3543677],[-71.1716035,42.3552577],[-71.171295,42.3555887]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715577,"name":"Burton Street"},"geometry":{"type":"LineString","coordinates":[[-71.171633,42.3537909],[-71.1722741,42.3543994]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715578,"name":"Presentation Road"},"geometry":{"type":"LineString","coordinates":[[-71.1706674,42.3548196],[-71.171633,42.3537909]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715579,"name":"Bellamy Street"},"geometry":{"type":"LineString","coordinates":[[-71.1717859,42.3549168],[-71.1706674,42.3548196]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715577,"name":"Presentation Road"},"geometry":{"type":"LineString","coordinates":[[-71.171633,42.3537909],[-71.1722741,42.3543994]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715578,"name":"Bellamy Street"},"geometry":{"type":"LineString","coordinates":[[-71.1706674,42.3548196],[-71.171633,42.3537909]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715579,"name":"Burton Street"},"geometry":{"type":"LineString","coordinates":[[-71.1717859,42.3549168],[-71.1706674,42.3548196]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715580,"name":"Burton Street"},"geometry":{"type":"LineString","coordinates":[[-71.1722741,42.3543994],[-71.1717859,42.3549168]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715581,"name":"Matchett Street"},"geometry":{"type":"LineString","coordinates":[[-71.1715686,42.3537116],[-71.1709785,42.3531526]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715581,"name":"Presentation Road"},"geometry":{"type":"LineString","coordinates":[[-71.1715686,42.3537116],[-71.1709785,42.3531526]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715582,"name":"Presentation Road"},"geometry":{"type":"LineString","coordinates":[[-71.1705239,42.3548008],[-71.1715686,42.3537116]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715583,"name":"Bellamy Street"},"geometry":{"type":"LineString","coordinates":[[-71.1704233,42.3548959],[-71.170367,42.354885],[-71.1699405,42.3548553],[-71.1697045,42.3548593],[-71.1697045,42.3548188],[-71.1697027,42.3547681],[-71.1700451,42.3547641],[-71.1705239,42.3548008]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715584,"name":"Presentation Road"},"geometry":{"type":"LineString","coordinates":[[-71.1700907,42.355226],[-71.1704233,42.3548959]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715585,"name":"Bellamy Street"},"geometry":{"type":"LineString","coordinates":[[-71.171696,42.3550099],[-71.1705762,42.3548989]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715585,"name":"Burton Street"},"geometry":{"type":"LineString","coordinates":[[-71.171696,42.3550099],[-71.1705762,42.3548989]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715586,"name":"Perthshire Road"},"geometry":{"type":"LineString","coordinates":[[-71.169793,42.3544034],[-71.1697099,42.3543459],[-71.1694738,42.3542171],[-71.169211,42.3541279],[-71.1685565,42.3540129],[-71.1676647,42.3538672]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715587,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1734117,42.3532167],[-71.1733925,42.3532042],[-71.173355,42.3531665],[-71.172612,42.3527939],[-71.172587,42.3527897]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715587,"name":"Burton Street"},"geometry":{"type":"LineString","coordinates":[[-71.1734117,42.3532167],[-71.1733925,42.3532042],[-71.173355,42.3531665],[-71.172612,42.3527939],[-71.172587,42.3527897]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715588,"name":"Presentation Road"},"geometry":{"type":"LineString","coordinates":[[-71.1716813,42.3535867],[-71.1725075,42.3527375]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715589,"name":"Bigelow Street"},"geometry":{"type":"LineString","coordinates":[[-71.1678873,42.3528979],[-71.1678725,42.3529168],[-71.1678725,42.3529386],[-71.1678779,42.3529643],[-71.1678994,42.353113],[-71.1678967,42.3531715],[-71.1678699,42.3532706],[-71.1676928,42.3537681]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715590,"name":"Atkins Street"},"geometry":{"type":"LineString","coordinates":[[-71.1702865,42.3525283],[-71.1696643,42.3531636],[-71.1695758,42.3532567]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715591,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1716468,42.3523077],[-71.1716385,42.3523048],[-71.1713532,42.3521512],[-71.1709033,42.3519079],[-71.1708922,42.3519041]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715591,"name":"Matchett Street"},"geometry":{"type":"LineString","coordinates":[[-71.1716468,42.3523077],[-71.1716385,42.3523048],[-71.1713532,42.3521512],[-71.1709033,42.3519079],[-71.1708922,42.3519041]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715592,"name":"Atkins Street"},"geometry":{"type":"LineString","coordinates":[[-71.1703777,42.352449],[-71.1709033,42.3519079]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715593,"name":"Matchett Street"},"geometry":{"type":"LineString","coordinates":[[-71.1716385,42.3523048],[-71.1716354,42.3523274],[-71.1710107,42.3529743]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715594,"name":"Hunnewell Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1710107,42.3529743],[-71.1708619,42.3528315],[-71.1707023,42.3526928],[-71.1705185,42.3525441],[-71.1703777,42.352449]]}},
@@ -655,21 +655,21 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715596,"name":"Perthshire Road"},"geometry":{"type":"LineString","coordinates":[[-71.1676928,42.3537681],[-71.1688502,42.3539782],[-71.1691426,42.3540278],[-71.1693196,42.3540704],[-71.1694282,42.3540971],[-71.1696173,42.3541893],[-71.1696978,42.3542329],[-71.16973,42.3542448],[-71.1697622,42.3542468]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715597,"name":"Justin Road"},"geometry":{"type":"LineString","coordinates":[[-71.168924,42.3529733],[-71.1695395,42.3530981],[-71.1695744,42.3530942],[-71.1695972,42.3530833]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715598,"name":"Champney Street"},"geometry":{"type":"LineString","coordinates":[[-71.1688422,42.3519435],[-71.168814,42.3519614],[-71.1687966,42.3519861],[-71.1687912,42.3520099],[-71.168924,42.3529733]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715599,"name":"Champney Street"},"geometry":{"type":"LineString","coordinates":[[-71.1702892,42.3523855],[-71.1687765,42.3517948]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715599,"name":"Atkins Street"},"geometry":{"type":"LineString","coordinates":[[-71.1702892,42.3523855],[-71.1687765,42.3517948]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715600,"name":"Atkins Street"},"geometry":{"type":"LineString","coordinates":[[-71.1708109,42.3518543],[-71.1703576,42.3523201],[-71.1702892,42.3523855]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715601,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1708165,42.3518658],[-71.1708109,42.3518543],[-71.1703388,42.3516373],[-71.1701202,42.3515391],[-71.1698131,42.3514301],[-71.169348,42.3512779],[-71.1689013,42.3511667],[-71.1687389,42.3511308],[-71.1687054,42.3511338]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715602,"name":"Whittemore Road"},"geometry":{"type":"LineString","coordinates":[[-71.1783855,42.354561],[-71.1783707,42.3545441],[-71.1776465,42.3542498],[-71.1763617,42.3536462],[-71.1763121,42.3536006],[-71.1762866,42.3535639],[-71.1762719,42.3535362],[-71.1762759,42.3535025],[-71.1762907,42.3534738],[-71.1763054,42.3534321]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715603,"name":"Playstead Road"},"geometry":{"type":"LineString","coordinates":[[-71.1766541,42.3530297],[-71.1766364,42.3530226],[-71.1748168,42.3521279],[-71.1747953,42.3521239],[-71.1747725,42.3521259]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715604,"name":"Playstead Road"},"geometry":{"type":"LineString","coordinates":[[-71.1747725,42.3521259],[-71.1747524,42.3521358],[-71.174503,42.3524073],[-71.1744989,42.3524222],[-71.1745057,42.3524371],[-71.1745204,42.35245],[-71.1763242,42.3533231],[-71.1763483,42.353332],[-71.1763631,42.353332],[-71.1763845,42.3533281]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715605,"name":"Tremont Street"},"geometry":{"type":"LineString","coordinates":[[-71.1788312,42.3540447],[-71.1788181,42.3540359],[-71.1787917,42.3540181],[-71.177275,42.3533281],[-71.176769,42.3530883],[-71.176758,42.3530799]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715605,"name":"Waverley Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1788312,42.3540447],[-71.1788181,42.3540359],[-71.1787917,42.3540181],[-71.177275,42.3533281],[-71.176769,42.3530883],[-71.176758,42.3530799]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715606,"name":"Whittemore Road"},"geometry":{"type":"LineString","coordinates":[[-71.1764047,42.3534985],[-71.1764006,42.3535223],[-71.176406,42.3535481],[-71.1764207,42.3535659],[-71.1764449,42.3535858],[-71.1764704,42.3535996],[-71.1783841,42.3544371],[-71.1784123,42.354448],[-71.1784602,42.3544501]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715607,"name":"Marlboro Street"},"geometry":{"type":"LineString","coordinates":[[-71.1776787,42.3517453],[-71.1767389,42.3512843]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715608,"name":"Arlington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1786827,42.3522248],[-71.177782,42.3517849]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715607,"name":"Pembroke Street"},"geometry":{"type":"LineString","coordinates":[[-71.1776787,42.3517453],[-71.1767389,42.3512843]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715608,"name":"Belmont Street"},"geometry":{"type":"LineString","coordinates":[[-71.1786827,42.3522248],[-71.177782,42.3517849]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":842715609,"name":"Belmont Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1787864,42.3522733],[-71.1787285,42.3522462],[-71.1786827,42.3522248]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715610,"name":"Arlington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1778343,42.3533925],[-71.1787864,42.3522733]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715610,"name":"Belmont Street"},"geometry":{"type":"LineString","coordinates":[[-71.1778343,42.3533925],[-71.1787864,42.3522733]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715611,"name":"Pembroke Street"},"geometry":{"type":"LineString","coordinates":[[-71.1766722,42.3528324],[-71.1767174,42.3528028],[-71.1776787,42.3517453]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715612,"name":"Marlboro Street"},"geometry":{"type":"LineString","coordinates":[[-71.1767389,42.3512843],[-71.1763757,42.3516967],[-71.1758284,42.3523324],[-71.1757904,42.3523978]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715613,"name":"Tremont Street"},"geometry":{"type":"LineString","coordinates":[[-71.176683,42.352843],[-71.1766722,42.3528324],[-71.1758288,42.3524243],[-71.1757904,42.3523978]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715613,"name":"Pembroke Street"},"geometry":{"type":"LineString","coordinates":[[-71.176683,42.352843],[-71.1766722,42.3528324],[-71.1758288,42.3524243],[-71.1757904,42.3523978]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":842715614,"name":"Pembroke Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1767949,42.3529006],[-71.1767327,42.3528686],[-71.176683,42.352843]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715615,"name":"Belmont Street"},"geometry":{"type":"LineString","coordinates":[[-71.1786827,42.3522248],[-71.1777342,42.3532998],[-71.1777159,42.3533158],[-71.1776909,42.3533224]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842715616,"name":"Pembroke Street"},"geometry":{"type":"LineString","coordinates":[[-71.177782,42.3517849],[-71.1771369,42.3525154],[-71.1768299,42.3528673],[-71.176819,42.3529096]]}},
@@ -683,23 +683,23 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":842948424,"name":"Playstead Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.176758,42.3530799],[-71.1766996,42.3530517],[-71.1766541,42.3530297]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842948425,"name":"Waverley Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1784284,42.3552854],[-71.1784633,42.3552686],[-71.1784726,42.3552527],[-71.1784807,42.355218],[-71.1784753,42.3551873],[-71.1783881,42.3549931],[-71.1783573,42.3548731],[-71.17836,42.3547552],[-71.1783788,42.3546383],[-71.1783895,42.3545966],[-71.1783855,42.354561],[-71.1784026,42.3545575]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842948426,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1730222,42.352836],[-71.1730921,42.3528702],[-71.1738968,42.3532765],[-71.1748597,42.353784],[-71.1760506,42.3543281],[-71.176878,42.3546684],[-71.1769245,42.3546876],[-71.1770162,42.3547323],[-71.1783586,42.3552775],[-71.1783989,42.3552904],[-71.1784284,42.3552854]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":842948431,"name":"Merton Street"},"geometry":{"type":"LineString","coordinates":[[-71.1748891,42.3539614],[-71.1741932,42.3547512]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":842948431,"name":"Elmhurst Road"},"geometry":{"type":"LineString","coordinates":[[-71.1748891,42.3539614],[-71.1741932,42.3547512]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842948432,"name":"Matchett Street"},"geometry":{"type":"LineString","coordinates":[[-71.1697622,42.3542468],[-71.169797,42.3542319],[-71.1698306,42.3541992],[-71.1709048,42.3530803]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842948433,"name":"Matchett Street"},"geometry":{"type":"LineString","coordinates":[[-71.1709785,42.3531526],[-71.169793,42.3544034]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842948434,"name":"Atkins Street"},"geometry":{"type":"LineString","coordinates":[[-71.1695972,42.3530833],[-71.1696146,42.3530654],[-71.1702034,42.3524688]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842948435,"name":"Champney Street"},"geometry":{"type":"LineString","coordinates":[[-71.1687765,42.3517948],[-71.1686866,42.3511695],[-71.1686839,42.3511467],[-71.1687054,42.3511338]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842948436,"name":"Matchett Street"},"geometry":{"type":"LineString","coordinates":[[-71.171761,42.3523681],[-71.1717432,42.352381],[-71.1711019,42.3530357]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":842948437,"name":"Matchett Street"},"geometry":{"type":"LineString","coordinates":[[-71.1725131,42.3527519],[-71.1725075,42.3527375],[-71.171761,42.3523681],[-71.1717534,42.352362]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":842948437,"name":"Presentation Road"},"geometry":{"type":"LineString","coordinates":[[-71.1725131,42.3527519],[-71.1725075,42.3527375],[-71.171761,42.3523681],[-71.1717534,42.352362]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842948438,"name":"Presentation Road"},"geometry":{"type":"LineString","coordinates":[[-71.1726384,42.3527927],[-71.172612,42.3527939],[-71.1717457,42.3536779]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842948439,"name":"Burton Street"},"geometry":{"type":"LineString","coordinates":[[-71.1723948,42.3542745],[-71.1733872,42.3532478],[-71.1733925,42.3532042]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842948440,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1747929,42.3539089],[-71.1747826,42.3539069],[-71.1744164,42.3537152],[-71.1740803,42.3535423],[-71.1735615,42.3532755],[-71.1735293,42.3532716],[-71.1735015,42.3532696]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":842948441,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1759931,42.354448],[-71.1759728,42.354445],[-71.1752459,42.3541259],[-71.1748891,42.3539614],[-71.1748807,42.3539509]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":842948441,"name":"Grasmere Street"},"geometry":{"type":"LineString","coordinates":[[-71.1759931,42.354448],[-71.1759728,42.354445],[-71.1752459,42.3541259],[-71.1748891,42.3539614],[-71.1748807,42.3539509]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842948442,"name":"Grasmere Street"},"geometry":{"type":"LineString","coordinates":[[-71.1754042,42.3552795],[-71.1759728,42.354445]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842948443,"name":"Copley Street"},"geometry":{"type":"LineString","coordinates":[[-71.1769518,42.3548563],[-71.1769355,42.3548824],[-71.1768894,42.3549464],[-71.1761203,42.3560743],[-71.1761203,42.356108],[-71.1761445,42.3561338]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842948444,"name":"Grasmere Street"},"geometry":{"type":"LineString","coordinates":[[-71.1768217,42.3548048],[-71.1767869,42.3547898],[-71.1760886,42.3545016],[-71.1760796,42.3544895]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842948449,"name":"Hunnewell Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.173387,42.3554828],[-71.1733885,42.3554664],[-71.1733855,42.3554538],[-71.1733778,42.3554385],[-71.1733661,42.3554246],[-71.1733251,42.3553882],[-71.1732754,42.3553369],[-71.1732476,42.3553078],[-71.1732244,42.3552794],[-71.1732013,42.3552489],[-71.1730776,42.3550634],[-71.1730577,42.3550379],[-71.1730331,42.3550107],[-71.1730094,42.3549904],[-71.1729816,42.3549697],[-71.1729491,42.3549467],[-71.1729133,42.354925],[-71.1727335,42.3548273]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":842948450,"name":"Burton Street"},"geometry":{"type":"LineString","coordinates":[[-71.1717457,42.3536779],[-71.1723948,42.3542745]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":842948451,"name":"Hunnewell Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1711019,42.3530357],[-71.1714935,42.3534024],[-71.1716813,42.3535867]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":842948450,"name":"Presentation Road"},"geometry":{"type":"LineString","coordinates":[[-71.1717457,42.3536779],[-71.1723948,42.3542745]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":842948451,"name":"Matchett Street"},"geometry":{"type":"LineString","coordinates":[[-71.1711019,42.3530357],[-71.1714935,42.3534024],[-71.1716813,42.3535867]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":842948452,"name":"Hunnewell Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1709048,42.3530803],[-71.1709169,42.3530595],[-71.1709142,42.3530367],[-71.170886,42.353006],[-71.1707143,42.3528424],[-71.1705293,42.3526858],[-71.1702865,42.3525283]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":842948453,"name":"Hunnewell Avenue","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1710107,42.3529743],[-71.1709672,42.3530138],[-71.1709169,42.3530595]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":842948454,"name":"Matchett Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1711019,42.3530357],[-71.1710559,42.3530047],[-71.1710107,42.3529743]]}},
@@ -736,7 +736,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":845112125,"name":"Champney Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.168924,42.3529733],[-71.1688574,42.3529605],[-71.1687899,42.3529475]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":845112126,"name":"Champney Street"},"geometry":{"type":"LineString","coordinates":[[-71.1687899,42.3529475],[-71.168806,42.3529227],[-71.1688086,42.352894],[-71.1688086,42.3528444],[-71.1686759,42.3519445]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":847326441,"name":"Centre Street","surface":"asphalt","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1949217,42.3301901],[-71.1948195,42.3302006],[-71.194675,42.3302154]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":847333363,"name":"Union Street"},"geometry":{"type":"LineString","coordinates":[[-71.1917128,42.3301133],[-71.1916625,42.3300932],[-71.1916535,42.3300879],[-71.1916378,42.3300816]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":847333363,"name":"Langley Road"},"geometry":{"type":"LineString","coordinates":[[-71.1917128,42.3301133],[-71.1916625,42.3300932],[-71.1916535,42.3300879],[-71.1916378,42.3300816]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":847333364,"name":"Union Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1916378,42.3300816],[-71.1915514,42.3300485],[-71.1914924,42.3300259]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":847333365,"name":"Langley Road"},"geometry":{"type":"LineString","coordinates":[[-71.1913995,42.3300287],[-71.1914336,42.3299999],[-71.1914683,42.329982]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":847333366,"name":"Langley Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1913995,42.3300287],[-71.1913727,42.3300642],[-71.1913453,42.3301006]]}},
@@ -777,7 +777,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":851337288,"surface":"asphalt","width":"2","incline":"0%","wheelchair":"no","tactile":"no"},"geometry":{"type":"LineString","coordinates":[[-71.1652227,42.3266604],[-71.1651121,42.3266685],[-71.165025,42.3266753],[-71.1649389,42.3266831],[-71.1648705,42.32669],[-71.164809,42.3266968],[-71.1647378,42.3267054],[-71.1646773,42.3267131],[-71.1646156,42.3267209],[-71.1645556,42.3267289],[-71.1644781,42.3267402],[-71.1644267,42.3267484],[-71.1643866,42.3267548],[-71.1643137,42.3267672],[-71.1642933,42.3267707],[-71.1642535,42.3267775],[-71.1641807,42.3267892],[-71.1639871,42.3262821]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":851337289,"name":"Middlesex Road","surface":"asphalt","width":"2","incline":"0%","wheelchair":"no","tactile":"no","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.163983,42.326271],[-71.1639693,42.3262349],[-71.1639574,42.3262035]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":851337290,"name":"Middlesex Road","surface":"asphalt","width":"2","incline":"0%","wheelchair":"no","tactile":"no","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1652461,42.326045],[-71.1652191,42.3259804],[-71.1651954,42.3259239]]}},
-{"type":"Feature","properties":{"Type":"Crossing","osm":851337291,"name":"Hammond Street","surface":"asphalt","width":"2","incline":"0%","tactile":"no","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1651714,42.3272506],[-71.1651522,42.327289],[-71.165147,42.3273034],[-71.1651351,42.3273359],[-71.1651288,42.3273625],[-71.1651253,42.3273774],[-71.1651217,42.3274226],[-71.1651217,42.3274603],[-71.1651217,42.3274776],[-71.1651179,42.3275139]]}},
+{"type":"Feature","properties":{"Type":"Crossing","osm":851337291,"name":"Chestnut Hill Road","surface":"asphalt","width":"2","incline":"0%","tactile":"no","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1651714,42.3272506],[-71.1651522,42.327289],[-71.165147,42.3273034],[-71.1651351,42.3273359],[-71.1651288,42.3273625],[-71.1651253,42.3273774],[-71.1651217,42.3274226],[-71.1651217,42.3274776],[-71.1651179,42.3275139]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":851337293,"name":"Hammond Street","surface":"asphalt","width":"2","incline":"0%","wheelchair":"yes","tactile":"no"},"geometry":{"type":"LineString","coordinates":[[-71.1652461,42.326045],[-71.1652375,42.3260571],[-71.1652613,42.3260706],[-71.1652781,42.3260846],[-71.1652893,42.3261079],[-71.1653104,42.3261515],[-71.1653443,42.3262213],[-71.1653559,42.3262453],[-71.1653847,42.3263153],[-71.165405,42.3263785],[-71.1654253,42.3264521],[-71.165445,42.3265635],[-71.1654462,42.3265747],[-71.1654499,42.3266103]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":851337294,"name":"Hammond Street","surface":"asphalt","width":"2","incline":"0%","wheelchair":"yes","tactile":"no","level":true},"geometry":{"type":"LineString","coordinates":[[-71.1654499,42.3266103],[-71.165455,42.3266814],[-71.1654598,42.3267348],[-71.165464,42.3267971]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":851337295,"name":"Hammond Street","surface":"asphalt","width":"2","incline":"0%","wheelchair":"yes","tactile":"no"},"geometry":{"type":"LineString","coordinates":[[-71.165464,42.3267971],[-71.1654646,42.3268213],[-71.1654646,42.3268451],[-71.1654646,42.3268519],[-71.1654608,42.3268806],[-71.1654534,42.3269112],[-71.1654401,42.3269403],[-71.1654263,42.3269642],[-71.1654029,42.3269964],[-71.1653769,42.3270275],[-71.16531,42.3270974],[-71.1652786,42.3271272],[-71.1652345,42.3271748],[-71.1652085,42.3272015],[-71.165183,42.3272313],[-71.1651766,42.3272403]]}},
@@ -795,7 +795,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":851676944,"name":"Chestnut Hill Avenue","surface":"concrete","width":"2","incline":"0%","wheelchair":"yes","tactile":"yes"},"geometry":{"type":"LineString","coordinates":[[-71.1501014,42.3351755],[-71.1500454,42.3351476],[-71.1499281,42.3350884],[-71.1498144,42.3350327],[-71.1497306,42.3350055],[-71.1497152,42.3350003],[-71.1497004,42.3349936],[-71.1495442,42.334911],[-71.1494168,42.3348458],[-71.1492797,42.3347724],[-71.1491649,42.3347141],[-71.149071,42.3346717],[-71.1489154,42.3345989],[-71.1488945,42.3345891]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":851676945,"name":"Clinton Road","surface":"asphalt","wheelchair":"yes","tactile":"yes","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1488945,42.3345891],[-71.1487492,42.3345202],[-71.1486894,42.3344919]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":851676946,"name":"Chestnut Hill Avenue","surface":"concrete","width":"2","incline":"0%","wheelchair":"yes","tactile":"yes"},"geometry":{"type":"LineString","coordinates":[[-71.1486894,42.3344919],[-71.1486816,42.3344377],[-71.1486593,42.3344364],[-71.1486315,42.3344347],[-71.1486049,42.3344325],[-71.1485795,42.3344288],[-71.1485611,42.3344253],[-71.1485249,42.3344176],[-71.148489,42.3344078],[-71.148464,42.3343997],[-71.1483804,42.3343622],[-71.148204,42.3342807],[-71.1481129,42.3342325],[-71.1480243,42.3341785],[-71.1479514,42.334126],[-71.1478971,42.3340748],[-71.1478489,42.3340249],[-71.1478051,42.3339686],[-71.1477849,42.333931],[-71.1477629,42.3338912],[-71.1477569,42.3338775],[-71.1477558,42.3338629]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":851676947,"name":"Buckminster Road","surface":"concrete","width":"2","incline":"0%","wheelchair":"yes","tactile":"yes"},"geometry":{"type":"LineString","coordinates":[[-71.1466292,42.3332734],[-71.1470633,42.3331091],[-71.1470841,42.333101],[-71.1470958,42.3330953],[-71.1471019,42.3330908],[-71.1471101,42.333083],[-71.1471155,42.333074],[-71.1471203,42.3330582],[-71.1471193,42.33305],[-71.1471184,42.3330449],[-71.1471147,42.333037],[-71.1471088,42.3330281],[-71.1466549,42.3324042],[-71.1466474,42.3323963],[-71.146637,42.332389],[-71.1466233,42.3323852],[-71.1465984,42.3323848],[-71.1465763,42.3323901],[-71.1462261,42.3325367],[-71.1458714,42.33268],[-71.14564,42.3327737],[-71.1454114,42.3328624],[-71.1452685,42.3329214],[-71.1450841,42.3329948],[-71.144997,42.3330329],[-71.1449346,42.3330622],[-71.1449184,42.3330749],[-71.1449152,42.3330989],[-71.1449232,42.3331152],[-71.1449507,42.3331564],[-71.144999,42.3332228],[-71.1450781,42.3333353],[-71.1451244,42.3334012],[-71.145151,42.3334358],[-71.1451767,42.3334756],[-71.1452129,42.3335252],[-71.1452598,42.3335906],[-71.1453081,42.333662],[-71.1453316,42.3336892],[-71.1453477,42.3337001],[-71.1453825,42.3337006],[-71.1454248,42.3336927],[-71.145697,42.3335841],[-71.1459196,42.3334989],[-71.1460772,42.3334488],[-71.1463461,42.3333675],[-71.1464755,42.3333264],[-71.1466292,42.3332734]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":851676947,"name":"Dean Road","surface":"concrete","width":"2","incline":"0%","wheelchair":"yes","tactile":"yes"},"geometry":{"type":"LineString","coordinates":[[-71.1466292,42.3332734],[-71.1470633,42.3331091],[-71.1470841,42.333101],[-71.1470958,42.3330953],[-71.1471019,42.3330908],[-71.1471101,42.333083],[-71.1471155,42.333074],[-71.1471203,42.3330582],[-71.1471193,42.33305],[-71.1471184,42.3330449],[-71.1471147,42.333037],[-71.1471088,42.3330281],[-71.1466549,42.3324042],[-71.1466474,42.3323963],[-71.146637,42.332389],[-71.1466233,42.3323852],[-71.1465984,42.3323848],[-71.1465763,42.3323901],[-71.1462261,42.3325367],[-71.1458714,42.33268],[-71.14564,42.3327737],[-71.1454114,42.3328624],[-71.1452685,42.3329214],[-71.1450841,42.3329948],[-71.144997,42.3330329],[-71.1449346,42.3330622],[-71.1449184,42.3330749],[-71.1449152,42.3330989],[-71.1449232,42.3331152],[-71.1449507,42.3331564],[-71.144999,42.3332228],[-71.1450781,42.3333353],[-71.1451244,42.3334012],[-71.145151,42.3334358],[-71.1451767,42.3334756],[-71.1452129,42.3335252],[-71.1452598,42.3335906],[-71.1453081,42.333662],[-71.1453316,42.3336892],[-71.1453477,42.3337001],[-71.1453825,42.3337006],[-71.1454248,42.3336927],[-71.145697,42.3335841],[-71.1459196,42.3334989],[-71.1460772,42.3334488],[-71.1463461,42.3333675],[-71.1464755,42.3333264],[-71.1466292,42.3332734]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":851676950,"name":"Chestnut Hill Avenue","surface":"asphalt","wheelchair":"limited","tactile":"no","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1499543,42.335311],[-71.1500105,42.3353552],[-71.1500571,42.335392],[-71.1500889,42.3354171],[-71.1501103,42.335434],[-71.1501383,42.3354561]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":851676951,"name":"Chestnut Hill Avenue","surface":"concrete","width":"2","incline":"0%","wheelchair":"yes","tactile":"yes"},"geometry":{"type":"LineString","coordinates":[[-71.1501383,42.3354561],[-71.1502528,42.3355716]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":851676953,"name":"Chestnut Hill Avenue","surface":"asphalt","wheelchair":"limited","tactile":"yes","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1505026,42.3357915],[-71.1505916,42.3358007],[-71.1506568,42.3358074]]}},
@@ -858,7 +858,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":855661444,"name":"Cypress Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1880325,42.3213466],[-71.188064,42.3213478],[-71.1880898,42.3213487]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":855661445,"name":"Cypress Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1880898,42.3213487],[-71.188138,42.3213513],[-71.188152,42.3213527]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":855661446,"name":"Cypress Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.188138,42.3213513],[-71.1881102,42.3218272]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":855661447,"surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1871392,42.3211533],[-71.187149,42.3210295],[-71.1871521,42.3209922],[-71.187546,42.3210068],[-71.1875432,42.3210563],[-71.1876768,42.3210615],[-71.1879736,42.321178],[-71.1879862,42.3211884],[-71.187982,42.3212945],[-71.1879792,42.3213432],[-71.1879778,42.3213673]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":855661447,"name":"Cypress Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1871392,42.3211533],[-71.187149,42.3210295],[-71.1871521,42.3209922],[-71.187546,42.3210068],[-71.1875432,42.3210563],[-71.1876768,42.3210615],[-71.1879736,42.321178],[-71.1879862,42.3211884],[-71.187982,42.3212945],[-71.1879792,42.3213432],[-71.1879778,42.3213673]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":855661448,"surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.187149,42.3210295],[-71.1871169,42.3210286],[-71.1870869,42.3210332],[-71.1870571,42.3210443],[-71.186953,42.3210832]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":855661449,"name":"Cypress Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1879792,42.3213432],[-71.1880325,42.3213466]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":855661451,"surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.186953,42.3210832],[-71.1868937,42.3211004],[-71.1868412,42.3210957],[-71.186803,42.3210733],[-71.186717,42.3209439],[-71.1867266,42.3209156],[-71.1867618,42.3208755],[-71.1868555,42.3207685]]}},
@@ -936,10 +936,10 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":866124265,"surface":"ground","rough":true},"geometry":{"type":"LineString","coordinates":[[-71.1748595,42.3242451],[-71.1749563,42.3242638],[-71.175085,42.3242856],[-71.175136,42.3243055],[-71.1752003,42.3243213],[-71.1752674,42.3243055],[-71.1753001,42.3243504]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":866124266,"surface":"ground","rough":true},"geometry":{"type":"LineString","coordinates":[[-71.1730919,42.323426],[-71.1731672,42.3234349],[-71.1733174,42.3233932],[-71.1734569,42.3233635],[-71.1735347,42.3233754],[-71.1737144,42.3234111],[-71.1738002,42.3234111],[-71.1738914,42.323427],[-71.1739692,42.3234706],[-71.1740738,42.3235261],[-71.1741623,42.3235916],[-71.1741865,42.3236649],[-71.1742669,42.3237324],[-71.1743099,42.3238176],[-71.1743501,42.3238771],[-71.1743903,42.3239386],[-71.174401,42.3240021],[-71.1745217,42.3240655],[-71.1746077,42.3241052]]}},
{"type":"Feature","properties":{"Type":"Stairs","osm":866127474,"surface":"paving_stones","incline":"up","tactile":"no"},"geometry":{"type":"LineString","coordinates":[[-71.1739804,42.3286332],[-71.17399,42.3286264],[-71.1740623,42.3285773]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":868809273,"surface":"concrete","width":"2.5","incline":"up"},"geometry":{"type":"LineString","coordinates":[[-71.2023896,42.3135704],[-71.2023587,42.3138555],[-71.2023193,42.3142201]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":868809273,"name":"Dedham Street","surface":"concrete","width":"2.5","incline":"up"},"geometry":{"type":"LineString","coordinates":[[-71.2023896,42.3135704],[-71.2023587,42.3138555],[-71.2023193,42.3142201]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":870494397,"surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.1521698,42.3398734],[-71.152158,42.3399926],[-71.1521578,42.3400816],[-71.152188,42.3402489]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":894388436,"name":"Washington Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.176937,42.3548512],[-71.1769787,42.3547892],[-71.1770073,42.3547467]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":894389290,"name":"Waverley Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1804776,42.3559558],[-71.1805164,42.3559399],[-71.1806663,42.3555999],[-71.180984,42.3548761],[-71.1809764,42.3548369],[-71.1809496,42.3548254],[-71.1800713,42.3546614],[-71.1798878,42.3546272],[-71.1797207,42.3545688],[-71.1795756,42.3544841],[-71.1793882,42.3543586],[-71.1790305,42.3541353],[-71.1789821,42.3541301],[-71.1789749,42.3541293],[-71.1789387,42.3541416],[-71.1788962,42.3541791],[-71.1785603,42.3546019],[-71.1785175,42.3547518],[-71.1785213,42.3548974],[-71.1785737,42.3550481],[-71.1786788,42.3552857],[-71.178677,42.3553154],[-71.1786776,42.3553552],[-71.178689,42.3553867],[-71.1787136,42.3554045],[-71.178769,42.3554239],[-71.1789669,42.3554904],[-71.1791524,42.3555442],[-71.1795557,42.3556613],[-71.1799683,42.355781],[-71.1804776,42.3559558]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":894389290,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1804776,42.3559558],[-71.1805164,42.3559399],[-71.1806663,42.3555999],[-71.180984,42.3548761],[-71.1809764,42.3548369],[-71.1809496,42.3548254],[-71.1800713,42.3546614],[-71.1798878,42.3546272],[-71.1797207,42.3545688],[-71.1795756,42.3544841],[-71.1793882,42.3543586],[-71.1790305,42.3541353],[-71.1789821,42.3541301],[-71.1789749,42.3541293],[-71.1789387,42.3541416],[-71.1788962,42.3541791],[-71.1785603,42.3546019],[-71.1785175,42.3547518],[-71.1785213,42.3548974],[-71.1785737,42.3550481],[-71.1786788,42.3552857],[-71.178677,42.3553154],[-71.1786776,42.3553552],[-71.178689,42.3553867],[-71.1787136,42.3554045],[-71.178769,42.3554239],[-71.1789669,42.3554904],[-71.1791524,42.3555442],[-71.1795557,42.3556613],[-71.1799683,42.355781],[-71.1804776,42.3559558]]}},
{"type":"Feature","properties":{"Type":"Stairs","osm":895113169},"geometry":{"type":"LineString","coordinates":[[-71.1685802,42.34264],[-71.1685888,42.3426581]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":913671498,"name":"Centre Street","surface":"asphalt","tactile":"yes","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1947189,42.3299191],[-71.1946962,42.3299074],[-71.1946721,42.329895]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":922303594,"name":"Strathmore Road","surface":"concrete:plates"},"geometry":{"type":"LineString","coordinates":[[-71.1551613,42.3403831],[-71.155144,42.340386],[-71.1551201,42.3403863],[-71.1550878,42.3403818],[-71.1549081,42.340347],[-71.1547594,42.3403135],[-71.1546975,42.3402956],[-71.1546024,42.3402632],[-71.154532,42.3402374],[-71.1544524,42.340204],[-71.1543392,42.3401455],[-71.1541826,42.3400503],[-71.1541214,42.3400101],[-71.1540662,42.3399646],[-71.1539494,42.3398711],[-71.1538101,42.3397403],[-71.1537521,42.3396798],[-71.1536915,42.3396118],[-71.1536322,42.3395501],[-71.1536094,42.3395149],[-71.1535554,42.3394353],[-71.1535133,42.3393803],[-71.1534501,42.339302],[-71.1533916,42.3392449],[-71.1533101,42.3391756],[-71.1532433,42.3391223],[-71.1531607,42.3390709],[-71.1530641,42.339019],[-71.1529941,42.3389883],[-71.1527613,42.3389044],[-71.1527434,42.3388958],[-71.1527297,42.3388821],[-71.1527209,42.3388664]]}},
@@ -995,7 +995,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":924453823,"name":"Chestnut Hill Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1501831,42.335254],[-71.1502084,42.3352805],[-71.1502198,42.3352903],[-71.1504974,42.335467],[-71.150588,42.3355246]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":924453824,"name":"Beacon Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1511739,42.3358617],[-71.1511948,42.3358693],[-71.151221,42.3358773],[-71.1512404,42.335882],[-71.151265,42.3358853],[-71.1513054,42.3358896],[-71.1513337,42.3358908],[-71.1514085,42.335894],[-71.1514694,42.335894],[-71.1515526,42.3358892],[-71.1516797,42.3358784],[-71.1519456,42.3358589],[-71.152147,42.3358416],[-71.152229,42.3358342],[-71.1523268,42.3358195],[-71.1524346,42.3357996],[-71.1525225,42.3357753],[-71.1526179,42.335745],[-71.1527187,42.3357056],[-71.1528036,42.335671],[-71.1528821,42.3356338],[-71.1529811,42.3355788],[-71.1530783,42.335513],[-71.1531486,42.3354615],[-71.1532224,42.3353879],[-71.153302,42.3353143],[-71.1533612,42.3352415],[-71.1534104,42.3351779],[-71.153442,42.3351298],[-71.1534941,42.3350272],[-71.1535824,42.3348254],[-71.1537104,42.3345357],[-71.1537626,42.3344152],[-71.1538846,42.334125],[-71.1538952,42.3341219]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":924453825,"name":"Cleveland Circle","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.150588,42.3355246],[-71.1506259,42.3355535],[-71.1506872,42.3356009]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":924453826,"name":"Chestnut Hill Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1506872,42.3356009],[-71.1506949,42.3356114],[-71.1506952,42.3356215],[-71.1506943,42.3356312],[-71.1506974,42.3356449],[-71.1507018,42.3356547],[-71.1507141,42.3356671],[-71.1507935,42.3357346],[-71.1508757,42.3358064],[-71.1509233,42.3358454],[-71.1509331,42.335852],[-71.1509418,42.3358552],[-71.15096,42.335858],[-71.1509763,42.3358582],[-71.1509959,42.3358542],[-71.1510069,42.3358492],[-71.1510155,42.3358442],[-71.151026,42.3358351],[-71.1510392,42.3358223],[-71.1510463,42.3358198],[-71.1510553,42.3358214]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":924453826,"name":"Cleveland Circle"},"geometry":{"type":"LineString","coordinates":[[-71.1506872,42.3356009],[-71.1506949,42.3356114],[-71.1506952,42.3356215],[-71.1506943,42.3356312],[-71.1506974,42.3356449],[-71.1507018,42.3356547],[-71.1507141,42.3356671],[-71.1507935,42.3357346],[-71.1508757,42.3358064],[-71.1509233,42.3358454],[-71.1509331,42.335852],[-71.1509418,42.3358552],[-71.15096,42.335858],[-71.1509763,42.3358582],[-71.1509959,42.3358542],[-71.1510069,42.3358492],[-71.1510155,42.3358442],[-71.151026,42.3358351],[-71.1510392,42.3358223],[-71.1510463,42.3358198],[-71.1510553,42.3358214]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":924520562,"name":"Chestnut Hill Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1531828,42.337821],[-71.153172,42.3378273]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":924520563,"name":"Englewood Avenue","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1520906,42.3371571],[-71.152144,42.3372053],[-71.152195,42.3372512]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":924520564,"name":"Braemore Road"},"geometry":{"type":"LineString","coordinates":[[-71.152364,42.3385589],[-71.1523275,42.3385384],[-71.1522821,42.3385207],[-71.1521795,42.3384925],[-71.1520166,42.3384669],[-71.1519055,42.3384576],[-71.1517605,42.3384546],[-71.1516328,42.3384537],[-71.1515039,42.3384524],[-71.151443,42.3384501],[-71.1513564,42.3384462],[-71.1512257,42.3384338],[-71.1510837,42.3384149],[-71.1509876,42.338399],[-71.1508891,42.3383782],[-71.1508264,42.338361],[-71.1507936,42.3383535],[-71.1507692,42.3383509],[-71.1507477,42.3383522],[-71.1507286,42.3383584],[-71.1507119,42.3383672],[-71.1506993,42.33838],[-71.1506868,42.3384047],[-71.1505167,42.3386999],[-71.1504469,42.3388071],[-71.1503725,42.3389216],[-71.1503675,42.3389293]]}},
@@ -1016,8 +1016,8 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":924520580,"name":"Englewood Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1506604,42.3375653],[-71.1506301,42.3375702],[-71.1505193,42.3375927],[-71.1504279,42.3376104],[-71.1501086,42.3376822],[-71.1499332,42.3377251],[-71.1498784,42.3377385],[-71.1498603,42.3377429]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":924520581,"name":"Chiswick Road","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.150769,42.3375422],[-71.1507016,42.3375566],[-71.1506604,42.3375653]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":924520582,"name":"Braemore Road"},"geometry":{"type":"LineString","coordinates":[[-71.1507832,42.3375363],[-71.1507994,42.33762],[-71.1508096,42.3376868],[-71.1508153,42.337751],[-71.1508181,42.3378119],[-71.1508181,42.3378825],[-71.1508125,42.3379551],[-71.1507971,42.3380601],[-71.1507801,42.3381525],[-71.1507733,42.3382003],[-71.1507744,42.3382184],[-71.1507789,42.3382352],[-71.1507892,42.3382495],[-71.1508011,42.3382591],[-71.150821,42.3382675],[-71.1508687,42.3382805],[-71.1510289,42.3383129],[-71.1511246,42.338329],[-71.1512533,42.3383477],[-71.1513368,42.3383557],[-71.1514612,42.3383637],[-71.1515311,42.3383666],[-71.1517441,42.3383662],[-71.1518424,42.3383645],[-71.1519015,42.3383662],[-71.1519594,42.3383704],[-71.152023,42.3383767],[-71.1521412,42.3383948],[-71.1522292,42.3384116],[-71.1523008,42.3384292],[-71.1523485,42.3384418],[-71.1523832,42.338451],[-71.1524398,42.338455]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":927243173},"geometry":{"type":"LineString","coordinates":[[-71.1548287,42.3423049],[-71.1548464,42.3422655],[-71.1548488,42.3422547],[-71.1548462,42.3422468],[-71.1548351,42.3422404],[-71.1543203,42.3420782]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":927243174},"geometry":{"type":"LineString","coordinates":[[-71.1542819,42.3421373],[-71.1543785,42.3421637],[-71.1543912,42.3421707],[-71.1544025,42.3421814],[-71.1544141,42.3421876],[-71.1544975,42.342212],[-71.1545213,42.3422139],[-71.1545408,42.3422139],[-71.1545564,42.342217],[-71.1546825,42.3422551],[-71.1546961,42.3422637],[-71.1547071,42.3422746],[-71.1547119,42.342286],[-71.1547154,42.3422987]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":927243173,"name":"Chestnut Hill Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1548287,42.3423049],[-71.1548464,42.3422655],[-71.1548488,42.3422547],[-71.1548462,42.3422468],[-71.1548351,42.3422404],[-71.1543203,42.3420782]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":927243174,"name":"Chestnut Hill Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1542819,42.3421373],[-71.1543785,42.3421637],[-71.1543912,42.3421707],[-71.1544025,42.3421814],[-71.1544141,42.3421876],[-71.1544975,42.342212],[-71.1545213,42.3422139],[-71.1545408,42.3422139],[-71.1545564,42.342217],[-71.1546825,42.3422551],[-71.1546961,42.3422637],[-71.1547071,42.3422746],[-71.1547119,42.342286],[-71.1547154,42.3422987]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":927243175,"name":"Chiswick Road","surface":"concrete:plates"},"geometry":{"type":"LineString","coordinates":[[-71.1545083,42.3413181],[-71.1545019,42.3413091],[-71.1544744,42.3412837],[-71.1544407,42.3412595],[-71.1544004,42.3412354],[-71.1543348,42.341192],[-71.1542526,42.341146],[-71.154166,42.3411],[-71.1540624,42.3410516],[-71.1539357,42.3409935],[-71.1538185,42.3409466],[-71.1537231,42.3409076],[-71.153665,42.3408879],[-71.1536133,42.3408712],[-71.153526,42.3408423],[-71.1534697,42.3408267],[-71.1533807,42.3408049],[-71.1532714,42.3407822],[-71.1531351,42.3407519],[-71.1530441,42.3407356],[-71.1529499,42.34072],[-71.1528649,42.3407087],[-71.1527742,42.3406981],[-71.1526821,42.3406891],[-71.1525911,42.340686],[-71.1524567,42.3406763],[-71.1523876,42.340672],[-71.1522949,42.3406663],[-71.1521207,42.3406554],[-71.1520015,42.3406459],[-71.1519197,42.3406359],[-71.1518368,42.340622],[-71.1517508,42.3406027],[-71.15167,42.3405809],[-71.1515734,42.3405518],[-71.1515062,42.3405307],[-71.1514592,42.3405176],[-71.151432,42.3405142],[-71.1514108,42.3405184],[-71.1513911,42.3405285],[-71.1513658,42.3405451],[-71.151249,42.3406218],[-71.1507445,42.3409824],[-71.1507309,42.3409929],[-71.1507171,42.3410035],[-71.1507042,42.3410215],[-71.1506922,42.3410442],[-71.150677,42.3410789],[-71.1506634,42.3410899]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":927243176,"name":"Wallingford Road","surface":"asphalt","crossing":"traffic_signals","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1506634,42.3410899],[-71.1506114,42.3411539],[-71.1505488,42.341231]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":927243177,"name":"Wallingford Road"},"geometry":{"type":"LineString","coordinates":[[-71.150677,42.3410789],[-71.1507158,42.3411331],[-71.1507476,42.3411617],[-71.1507909,42.3411908],[-71.1508257,42.3412051],[-71.1508786,42.3412219],[-71.1509376,42.3412358],[-71.1510908,42.341268],[-71.1511675,42.3412864],[-71.1512252,42.3413005],[-71.1512808,42.3413199],[-71.1513369,42.3413432],[-71.1513965,42.3413757],[-71.1514383,42.341406],[-71.1514928,42.3414441],[-71.1515251,42.3414783],[-71.1515585,42.3415184],[-71.1515924,42.3415857],[-71.1516125,42.3416336],[-71.1516191,42.3416599],[-71.1516262,42.3416835],[-71.151631,42.3417421],[-71.1516329,42.3418146],[-71.151632,42.3418239],[-71.1516288,42.3418477],[-71.1516201,42.3419117],[-71.1516138,42.3419525],[-71.1516121,42.3419636],[-71.1516053,42.3419919],[-71.1515995,42.3420161],[-71.1515865,42.3420532],[-71.1515672,42.3420993],[-71.1514663,42.3423043]]}},
@@ -1062,19 +1062,19 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":927262636,"name":"Sutherland Road","surface":"asphalt","tactile":"yes","crossing":"traffic_signals","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1499823,42.3375871],[-71.149886,42.3376058],[-71.1498316,42.3376164]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":927262637,"name":"Sutherland Road","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1493438,42.3386122],[-71.149293,42.3385958],[-71.149257,42.3385842]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":927262638,"name":"Strathmore Road","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1491943,42.3386564],[-71.1492134,42.3386224],[-71.1492332,42.3385874]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":927262639,"name":"Englewood Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1518542,42.3369559],[-71.152007,42.3370811],[-71.1520719,42.3371488],[-71.1520906,42.3371571]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":927262639,"name":"Chestnut Hill Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1518542,42.3369559],[-71.152007,42.3370811],[-71.1520719,42.3371488],[-71.1520906,42.3371571]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":927262640,"name":"Chestnut Hill Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1489659,42.3348148],[-71.1489766,42.3348006]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":927262641,"name":"Clinton Road","surface":"asphalt","wheelchair":"yes","tactile":"yes","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1485375,42.3346202],[-71.148466,42.3345848],[-71.1482797,42.3344927]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":927262642,"name":"Chestnut Hill Avenue","surface":"concrete","width":"2","incline":"0%","wheelchair":"yes","tactile":"yes"},"geometry":{"type":"LineString","coordinates":[[-71.1499543,42.335311],[-71.1499159,42.3352965],[-71.1498304,42.3352702],[-71.1498419,42.3352506],[-71.1495167,42.3350904],[-71.1494993,42.3350823],[-71.149483,42.3350778],[-71.1494667,42.3350752],[-71.1494528,42.3350736],[-71.1494403,42.3350723],[-71.1494268,42.3350717],[-71.1493892,42.3350702],[-71.1493663,42.3350695],[-71.1493043,42.3350695],[-71.1491869,42.3350682],[-71.1491267,42.3350675],[-71.1491148,42.3350664],[-71.1490701,42.3350623],[-71.1490347,42.3350577],[-71.1489696,42.3350437],[-71.1488512,42.33501],[-71.1487818,42.3349934],[-71.14876,42.3349875],[-71.1487422,42.33498],[-71.1487219,42.3349678],[-71.1487093,42.3349589],[-71.1486955,42.3349472],[-71.1486838,42.3349349],[-71.1486708,42.3349181],[-71.1486621,42.3349026],[-71.1486561,42.3348865],[-71.1486523,42.3348673],[-71.14865,42.3348483],[-71.1486417,42.3346687]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":927262643,"name":"Clinton Road","surface":"concrete","width":"2","incline":"0%","wheelchair":"yes","tactile":"yes"},"geometry":{"type":"LineString","coordinates":[[-71.1486564,42.3346751],[-71.1486417,42.3346687],[-71.1485617,42.3346321],[-71.1485375,42.3346202]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":927262644,"name":"Penniman Road"},"geometry":{"type":"LineString","coordinates":[[-71.1477558,42.3338629],[-71.1477692,42.3338497],[-71.1477869,42.333841],[-71.1478227,42.3338289],[-71.1479226,42.3338072],[-71.1480369,42.3337768],[-71.1482116,42.3337214],[-71.1483093,42.3336808],[-71.1484214,42.3336247],[-71.1485119,42.3335735],[-71.1485986,42.3335128],[-71.1486668,42.3334643],[-71.1487311,42.3334104],[-71.148766,42.3333793],[-71.148788,42.333361],[-71.1488059,42.3333527],[-71.1488314,42.3333554],[-71.1488465,42.3333594],[-71.1488946,42.3333875],[-71.1491899,42.3335717],[-71.1493465,42.3336751],[-71.1494178,42.3337353],[-71.1494709,42.3338025],[-71.1495087,42.3338789],[-71.1495291,42.3339516],[-71.1495303,42.3340133],[-71.1495203,42.334063],[-71.1495119,42.3340821],[-71.1494778,42.3341363],[-71.1494349,42.334185],[-71.1493426,42.3342527],[-71.149292,42.3342852],[-71.1492356,42.334312],[-71.1491293,42.3343559],[-71.149037,42.3343874],[-71.1489392,42.3344141],[-71.1488735,42.3344253],[-71.1488083,42.3344337],[-71.1487479,42.3344369],[-71.1486816,42.3344377]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":927262643,"name":"Chestnut Hill Avenue","surface":"concrete","width":"2","incline":"0%","wheelchair":"yes","tactile":"yes"},"geometry":{"type":"LineString","coordinates":[[-71.1486564,42.3346751],[-71.1486417,42.3346687],[-71.1485617,42.3346321],[-71.1485375,42.3346202]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":927262644,"name":"Willard Road"},"geometry":{"type":"LineString","coordinates":[[-71.1477558,42.3338629],[-71.1477692,42.3338497],[-71.1477869,42.333841],[-71.1478227,42.3338289],[-71.1479226,42.3338072],[-71.1480369,42.3337768],[-71.1482116,42.3337214],[-71.1483093,42.3336808],[-71.1484214,42.3336247],[-71.1485119,42.3335735],[-71.1485986,42.3335128],[-71.1486668,42.3334643],[-71.1487311,42.3334104],[-71.148766,42.3333793],[-71.148788,42.333361],[-71.1488059,42.3333527],[-71.1488314,42.3333554],[-71.1488465,42.3333594],[-71.1488946,42.3333875],[-71.1491899,42.3335717],[-71.1493465,42.3336751],[-71.1494178,42.3337353],[-71.1494709,42.3338025],[-71.1495087,42.3338789],[-71.1495291,42.3339516],[-71.1495303,42.3340133],[-71.1495203,42.334063],[-71.1495119,42.3340821],[-71.1494778,42.3341363],[-71.1494349,42.334185],[-71.1493426,42.3342527],[-71.149292,42.3342852],[-71.1492356,42.334312],[-71.1491293,42.3343559],[-71.149037,42.3343874],[-71.1489392,42.3344141],[-71.1488735,42.3344253],[-71.1488083,42.3344337],[-71.1487479,42.3344369],[-71.1486816,42.3344377]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":927262645,"name":"Clinton Road"},"geometry":{"type":"LineString","coordinates":[[-71.1518708,42.3329238],[-71.1527784,42.3323927],[-71.1530724,42.332213],[-71.153191,42.3321335],[-71.153349,42.3320036],[-71.1534244,42.3319288],[-71.1535105,42.3318247],[-71.1535692,42.3317404],[-71.1536155,42.3316673],[-71.1536969,42.3315104],[-71.1538183,42.3312789],[-71.1539539,42.3310184],[-71.1539724,42.3309776],[-71.1539689,42.3309475],[-71.1539592,42.3309201],[-71.1539415,42.330891],[-71.1539296,42.3308581],[-71.1539292,42.3308267],[-71.1539402,42.3307836],[-71.1539658,42.3307415],[-71.1540003,42.3307134],[-71.1540528,42.3306916],[-71.1541257,42.3306791],[-71.1541849,42.3306827],[-71.1542436,42.3306984],[-71.1542873,42.3307232],[-71.154324,42.3307572],[-71.1543399,42.3307908],[-71.1543461,42.3308323],[-71.1543456,42.3308744],[-71.1543328,42.3309038],[-71.1543037,42.33094],[-71.1542489,42.3309714],[-71.1541858,42.3309896],[-71.1541535,42.3310079],[-71.1541279,42.3310301],[-71.1540992,42.3310765],[-71.1539252,42.3314105],[-71.1538085,42.3316428],[-71.1536976,42.3318299],[-71.1536508,42.3318942],[-71.1535254,42.3320324],[-71.1534366,42.3321144],[-71.1533037,42.3322215],[-71.153176,42.332307],[-71.1530605,42.3323768],[-71.1528717,42.3324899],[-71.1525299,42.3326876],[-71.152272,42.3328397],[-71.1519833,42.3330125],[-71.1515933,42.3332369],[-71.1514331,42.3333295],[-71.1513509,42.3333709],[-71.1512588,42.3334123],[-71.1511832,42.3334412],[-71.1511103,42.3334655],[-71.1509963,42.3334961],[-71.1508818,42.333528],[-71.1507806,42.3335562],[-71.150746,42.333571],[-71.1507098,42.3335864],[-71.1506727,42.3336132],[-71.1506376,42.33365],[-71.1506136,42.3336942],[-71.1505833,42.3337664],[-71.1505528,42.3338128],[-71.1504926,42.3338793],[-71.1504426,42.333925],[-71.1503581,42.3339792],[-71.1502506,42.3340194],[-71.1501462,42.3340526],[-71.1500348,42.334081],[-71.1499058,42.3341107],[-71.1497638,42.3341386],[-71.1496939,42.3341623],[-71.1496354,42.3341867],[-71.1495897,42.3342104],[-71.1495389,42.3342386],[-71.1495025,42.334265],[-71.1494595,42.3342978],[-71.1494157,42.334329],[-71.1493701,42.3343615],[-71.1493082,42.3343971],[-71.1492544,42.3344212],[-71.1491796,42.3344476],[-71.1490477,42.3344847],[-71.1489736,42.3345049],[-71.1489528,42.334512],[-71.1489328,42.3345232],[-71.1489196,42.3345366],[-71.1489108,42.3345497],[-71.1489089,42.3345688],[-71.1489104,42.334581],[-71.1489154,42.3345989]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":927262646,"name":"Cleveland Circle","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1513337,42.3358908],[-71.1512966,42.33575],[-71.1512781,42.3357095],[-71.1512397,42.3356491],[-71.1511928,42.3355942],[-71.1511452,42.3355541],[-71.1510818,42.3355153],[-71.1510001,42.3354802],[-71.1509194,42.3354526],[-71.150876,42.3354423],[-71.1508259,42.3354376],[-71.1507748,42.3354343],[-71.1507109,42.3354353],[-71.1506907,42.3354356],[-71.1505969,42.3354478],[-71.1504974,42.335467]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":927262647,"name":"Beacon Street","surface":"concrete:plates"},"geometry":{"type":"LineString","coordinates":[[-71.1495245,42.3359464],[-71.1492713,42.3360028],[-71.1487531,42.3361257],[-71.1485433,42.3361752],[-71.1482996,42.3362378],[-71.1480193,42.3363012],[-71.1471719,42.3364973]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":927262649,"name":"Beacon Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1504426,42.3361686],[-71.1504733,42.3361598],[-71.1505233,42.3361435],[-71.1505446,42.3361389],[-71.1505697,42.3361368],[-71.150733,42.3361466],[-71.1507598,42.3361527],[-71.1507768,42.3361654],[-71.1507859,42.3361761]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":927262649,"name":"Sutherland Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1504426,42.3361686],[-71.1504733,42.3361598],[-71.1505233,42.3361435],[-71.1505446,42.3361389],[-71.1505697,42.3361368],[-71.150733,42.3361466],[-71.1507598,42.3361527],[-71.1507768,42.3361654],[-71.1507859,42.3361761]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":927262650,"name":"Beacon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1512426,42.3361404],[-71.1512573,42.3361166],[-71.1512604,42.3361115],[-71.1512655,42.3361033],[-71.151272,42.3360928],[-71.151291,42.3360859],[-71.1513106,42.3360819],[-71.1513397,42.3360793],[-71.15178,42.3360472],[-71.1518637,42.3360415],[-71.1521183,42.3360243],[-71.1521388,42.3360229],[-71.1522496,42.3360117],[-71.1523594,42.3359966],[-71.1524624,42.3359744],[-71.1524954,42.3359667],[-71.1525637,42.3359508],[-71.1526965,42.3359037],[-71.1527508,42.3358853],[-71.1527907,42.3358731],[-71.1528203,42.3358651],[-71.1528353,42.335862],[-71.1528483,42.3358602],[-71.1528612,42.3358602],[-71.1528738,42.3358612],[-71.1528817,42.335863],[-71.1528945,42.3358671],[-71.152905,42.3358718],[-71.1529159,42.3358774]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":927262651,"name":"Chestnut Hill Avenue","surface":"asphalt","tactile":"yes","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1510309,42.3361525],[-71.1510727,42.3361495],[-71.1511119,42.3361467],[-71.1512034,42.3361402]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":927262656,"name":"Beacon Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1487441,42.336565],[-71.1487623,42.3365653],[-71.1488233,42.3365467],[-71.1494188,42.336405],[-71.149427,42.3364031],[-71.149785,42.3363176],[-71.1502399,42.3362122],[-71.150343,42.3361884]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":927262656,"name":"Ayr Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1487441,42.336565],[-71.1487623,42.3365653],[-71.1488233,42.3365467],[-71.1494188,42.336405],[-71.149427,42.3364031],[-71.149785,42.3363176],[-71.1502399,42.3362122],[-71.150343,42.3361884]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":927262657,"name":"Englewood Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1450698,42.3373733],[-71.1450532,42.3373753],[-71.1450188,42.3373819],[-71.1450044,42.3373847],[-71.1442391,42.337533],[-71.1442104,42.3375407]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":927262658,"name":"Ayr Road","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1486505,42.336581],[-71.1486921,42.3365739],[-71.1487441,42.336565]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":927262659,"name":"Ayr Road"},"geometry":{"type":"LineString","coordinates":[[-71.1487623,42.3365653],[-71.1487845,42.3366184],[-71.1488685,42.3368131],[-71.1489902,42.3371134],[-71.148997,42.3371231],[-71.1490046,42.3371298],[-71.1490158,42.337139]]}},
@@ -1090,7 +1090,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":927300393,"name":"Strathmore Road","surface":"concrete:plates"},"geometry":{"type":"LineString","coordinates":[[-71.1536823,42.3407557],[-71.1537142,42.3407426],[-71.1537434,42.3407213],[-71.1537633,42.340698],[-71.1537765,42.3406675],[-71.1537945,42.3406175],[-71.1538181,42.3404873],[-71.1538294,42.3404072],[-71.1538334,42.3403518],[-71.1538314,42.3403014],[-71.1538226,42.3402176],[-71.1538118,42.3401605],[-71.1538063,42.3401312],[-71.1537722,42.3400136],[-71.1537227,42.3398913],[-71.1536536,42.3397694],[-71.153507,42.3395585],[-71.1534331,42.3394503],[-71.1534077,42.3394173],[-71.1533618,42.3393637],[-71.1533088,42.3393109],[-71.1532539,42.3392597],[-71.1531913,42.3392109],[-71.1530927,42.339147],[-71.1530069,42.3390967],[-71.1529265,42.3390604],[-71.1528424,42.3390265],[-71.1527843,42.3390065],[-71.1527362,42.3389955],[-71.1527142,42.3389953],[-71.1526716,42.3390022]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":927300394,"name":"Commonwealth Avenue","surface":"concrete:plates"},"geometry":{"type":"LineString","coordinates":[[-71.1524039,42.3395676],[-71.1523979,42.3395224],[-71.1523979,42.3395012],[-71.1524024,42.3394795],[-71.1524088,42.3394622],[-71.1524559,42.3393728],[-71.1525632,42.3391872],[-71.1526368,42.3390623],[-71.1526716,42.3390022],[-71.1526714,42.3389908]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":927300395,"name":"Strathmore Road","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1526714,42.3389908],[-71.1526896,42.3389341],[-71.1527074,42.3388787]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":927300396,"name":"Sutherland Road"},"geometry":{"type":"LineString","coordinates":[[-71.149231,42.3393669],[-71.1491892,42.3393658],[-71.1491486,42.3393661],[-71.1490887,42.3393699],[-71.1489978,42.3393814],[-71.1489201,42.3393963],[-71.148864,42.339414],[-71.1488452,42.3394262],[-71.1488263,42.3394438],[-71.1486791,42.3396163],[-71.1484736,42.3398637],[-71.1484637,42.3398826],[-71.1484601,42.3399014],[-71.1484427,42.3399108]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":927300396,"name":"Selkirk Road"},"geometry":{"type":"LineString","coordinates":[[-71.149231,42.3393669],[-71.1491892,42.3393658],[-71.1491486,42.3393661],[-71.1490887,42.3393699],[-71.1489978,42.3393814],[-71.1489201,42.3393963],[-71.148864,42.339414],[-71.1488452,42.3394262],[-71.1488263,42.3394438],[-71.1486791,42.3396163],[-71.1484736,42.3398637],[-71.1484637,42.3398826],[-71.1484601,42.3399014],[-71.1484427,42.3399108]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":927300397,"name":"Lanark Road"},"geometry":{"type":"LineString","coordinates":[[-71.1483874,42.3399649],[-71.1483773,42.3399742],[-71.1483586,42.3399818],[-71.1478829,42.34042],[-71.1478082,42.3404859],[-71.1478023,42.3404989],[-71.1477986,42.3405229],[-71.1478028,42.3405422],[-71.1478076,42.3405493],[-71.147816,42.340562],[-71.1478317,42.3405703],[-71.1478723,42.3405782],[-71.1480904,42.3406034],[-71.1481768,42.3406188],[-71.148313,42.3406401],[-71.1483705,42.3406459],[-71.1484353,42.3406468]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":927300398,"name":"Commonwealth Avenue","surface":"asphalt","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1535806,42.3382385],[-71.153541,42.3381774],[-71.1534979,42.3381109]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":927300399,"name":"Commonwealth Avenue","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1535033,42.3380161],[-71.1534635,42.3379578],[-71.1534186,42.3378954]]}},
@@ -1114,7 +1114,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":927300417,"name":"Commonwealth Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1577112,42.3394647],[-71.1577205,42.3394495]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":927300418,"name":"Embassy Road"},"geometry":{"type":"LineString","coordinates":[[-71.1545841,42.3416353],[-71.1546072,42.3416405],[-71.1546879,42.3416638],[-71.1548533,42.3417239],[-71.1550796,42.3418049],[-71.1556713,42.3420042],[-71.1559471,42.3420891],[-71.1562882,42.3421935],[-71.1564629,42.3422467],[-71.1566447,42.3423025],[-71.1566549,42.3423057]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":927300419,"name":"Chestnut Hill Avenue","surface":"asphalt","crossing":"traffic_signals","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1544488,42.3415591],[-71.1545221,42.3416004],[-71.1545841,42.3416353]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":927300420,"name":"Embassy Road"},"geometry":{"type":"LineString","coordinates":[[-71.1543149,42.3420864],[-71.1543203,42.3420782],[-71.1546072,42.3416405],[-71.1546082,42.3416282]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":927300420,"name":"Chestnut Hill Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1543149,42.3420864],[-71.1543203,42.3420782],[-71.1546072,42.3416405],[-71.1546082,42.3416282]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":927300421,"name":"Chestnut Hill Avenue","surface":"concrete:plates"},"geometry":{"type":"LineString","coordinates":[[-71.1544354,42.3415496],[-71.1544488,42.3415591]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":927300422,"name":"Embassy Road","surface":"asphalt","crossing":"traffic_signals","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1546082,42.3416282],[-71.1546319,42.3415939],[-71.1546499,42.3415678]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":927300423,"name":"Embassy Road"},"geometry":{"type":"LineString","coordinates":[[-71.1546617,42.3415582],[-71.1549006,42.3416392],[-71.1551947,42.341745],[-71.1554296,42.3418298],[-71.1557633,42.3419429],[-71.156063,42.3420348],[-71.1564631,42.3421538],[-71.1566891,42.342224],[-71.1567044,42.3422267],[-71.1567148,42.3422247],[-71.1567213,42.3422193],[-71.1567861,42.3420984],[-71.1569105,42.3418876]]}},
@@ -1131,7 +1131,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":927300434,"name":"Chiswick Road","surface":"concrete:plates"},"geometry":{"type":"LineString","coordinates":[[-71.1545083,42.3413181],[-71.1545148,42.3413102]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":927300435,"name":"Chestnut Hill Avenue","surface":"concrete:plates"},"geometry":{"type":"LineString","coordinates":[[-71.1535092,42.3429655],[-71.153526,42.3429389],[-71.1535396,42.3429181],[-71.1535584,42.3428888],[-71.1535809,42.3428546],[-71.1537181,42.3426507],[-71.1538072,42.3425129],[-71.1539454,42.3423048],[-71.1540702,42.3421105],[-71.1541512,42.3419854],[-71.154176,42.3419441],[-71.1542446,42.3418414],[-71.1542935,42.3417649],[-71.1544354,42.3415496],[-71.1544944,42.3414586],[-71.1545093,42.3414328],[-71.1545228,42.3414057],[-71.1545269,42.3413877],[-71.1545276,42.3413706],[-71.1545239,42.3413482],[-71.1545146,42.341327],[-71.1545083,42.3413181]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":927300436,"name":"Chiswick Road","surface":"concrete:plates"},"geometry":{"type":"LineString","coordinates":[[-71.1545799,42.3412025],[-71.1545883,42.3411908]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":927300437,"name":"Chestnut Hill Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1546499,42.3415678],[-71.1546617,42.3415582],[-71.1547178,42.3414748],[-71.1548438,42.3412834],[-71.1548516,42.3412762]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":927300437,"name":"Embassy Road"},"geometry":{"type":"LineString","coordinates":[[-71.1546499,42.3415678],[-71.1546617,42.3415582],[-71.1547178,42.3414748],[-71.1548438,42.3412834],[-71.1548516,42.3412762]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":927300438,"name":"Chiswick Road","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1548516,42.3412762],[-71.1548744,42.3412413],[-71.1548928,42.3412115]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":927300439,"name":"Chiswick Road"},"geometry":{"type":"LineString","coordinates":[[-71.1549003,42.3411997],[-71.1551365,42.3412787],[-71.155355,42.3413496],[-71.1554764,42.3413848],[-71.1555828,42.3414125],[-71.15567,42.3414315],[-71.1557879,42.3414496],[-71.1559478,42.341471],[-71.1560294,42.3414872],[-71.1561182,42.3415111],[-71.1563005,42.3415678],[-71.1565256,42.3416372],[-71.1567112,42.3416935],[-71.1569212,42.3417578],[-71.1570675,42.3418001],[-71.1572259,42.341845],[-71.1574221,42.3419042]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":927300440,"name":"Rose Garden Circle"},"geometry":{"type":"LineString","coordinates":[[-71.1585093,42.3420806],[-71.158486,42.3420799],[-71.1580035,42.3419149],[-71.1579856,42.3419068],[-71.1579686,42.3418945],[-71.1579561,42.3418793],[-71.1579376,42.3418505],[-71.157922,42.3418328],[-71.1579045,42.3418201],[-71.1578816,42.3418106],[-71.1578524,42.3418055],[-71.1578185,42.3418028],[-71.1577894,42.3418064],[-71.1577614,42.3418139],[-71.1577343,42.3418255],[-71.1577098,42.3418427],[-71.1576953,42.3418617],[-71.1576892,42.3418827],[-71.1576883,42.3419095],[-71.1576936,42.3419331],[-71.1577075,42.3419567],[-71.157724,42.3419725],[-71.1577475,42.3419861],[-71.1577765,42.3419972],[-71.1577997,42.3420009],[-71.1578245,42.3420006],[-71.1578577,42.3419972],[-71.1578863,42.34199],[-71.1579062,42.3419878],[-71.1579276,42.3419903],[-71.1579638,42.3420003],[-71.1584496,42.3421698]]}},
@@ -1149,7 +1149,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":927300453,"name":"Chestnut Hill Avenue","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1499158,42.3352648],[-71.1499064,42.3352737],[-71.1498419,42.3352506]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":927300454,"name":"Chestnut Hill Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1500454,42.3351476],[-71.1500149,42.3351743]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":927300455,"name":"Chestnut Hill Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1490434,42.3347077],[-71.149071,42.3346717]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":927300456,"name":"Clinton Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.148237,42.3344716],[-71.1482426,42.334478],[-71.148247,42.3344852],[-71.1482498,42.3344918],[-71.1482521,42.3344985],[-71.1482534,42.3345045],[-71.1482536,42.3345093],[-71.1482529,42.334514],[-71.1482521,42.3345168],[-71.1482475,42.3345232],[-71.1482388,42.3345306],[-71.148226,42.3345366],[-71.1481859,42.3345464],[-71.1478207,42.3346155],[-71.1473156,42.3346937],[-71.1471784,42.334707],[-71.147181,42.3347228],[-71.1470895,42.3347358],[-71.1467026,42.3347963],[-71.1466541,42.3348042]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":927300456,"name":"Chestnut Hill Avenue","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.148237,42.3344716],[-71.1482426,42.334478],[-71.148247,42.3344852],[-71.1482498,42.3344918],[-71.1482521,42.3344985],[-71.1482534,42.3345045],[-71.1482536,42.3345093],[-71.1482529,42.334514],[-71.1482521,42.3345168],[-71.1482475,42.3345232],[-71.1482388,42.3345306],[-71.148226,42.3345366],[-71.1481859,42.3345464],[-71.1478207,42.3346155],[-71.1473156,42.3346937],[-71.1471784,42.334707],[-71.147181,42.3347228],[-71.1470895,42.3347358],[-71.1467026,42.3347963],[-71.1466541,42.3348042]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":927300458,"name":"Ayr Road","crossing":"unmarked","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.149009,42.3371405],[-71.1489389,42.3371558],[-71.1488876,42.3371665]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":927300459,"name":"Sutherland Road"},"geometry":{"type":"LineString","coordinates":[[-71.1498316,42.3376164],[-71.1498203,42.3376146]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":927300460,"name":"Englewood Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1499332,42.3377251],[-71.1499409,42.3377086]]}},
@@ -1217,27 +1217,27 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":944348606},"geometry":{"type":"LineString","coordinates":[[-71.177731,42.343216],[-71.1770523,42.3433064],[-71.1770298,42.3433085],[-71.1770078,42.3433083]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":945638186,"name":"Eliot Street","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1516726,42.3329227],[-71.1517237,42.332923],[-71.1518708,42.3329238]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":945638187,"name":"Eliot Street"},"geometry":{"type":"LineString","coordinates":[[-71.1516726,42.3329227],[-71.1516394,42.3329205]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":945638188,"name":"Eliot Street"},"geometry":{"type":"LineString","coordinates":[[-71.1506526,42.333404],[-71.1506811,42.3332886],[-71.1507099,42.3331916],[-71.1507595,42.3329964],[-71.1507825,42.332872],[-71.1508068,42.332702],[-71.1508139,42.3325838],[-71.1508193,42.3324782],[-71.1508197,42.3324082],[-71.1508259,42.3323633],[-71.1508417,42.3323048],[-71.1508728,42.3322443],[-71.1509173,42.3321848],[-71.1509521,42.332147],[-71.1510159,42.3320908],[-71.1511112,42.3320248],[-71.1512079,42.331974],[-71.1512766,42.3319439],[-71.1513834,42.33191],[-71.1514722,42.3318848],[-71.1515873,42.3318636],[-71.1516851,42.3318538],[-71.1517592,42.331849],[-71.1518003,42.3318536],[-71.1518286,42.3318624],[-71.1518494,42.3318801],[-71.1518544,42.3319077],[-71.1518366,42.3320202],[-71.151771,42.3322948],[-71.1517148,42.3325574],[-71.151668,42.332783],[-71.1516394,42.3329205],[-71.1516266,42.3329578],[-71.1516056,42.3330024],[-71.1515739,42.3330491],[-71.1515451,42.3330858],[-71.1515036,42.3331273],[-71.151464,42.3331594],[-71.1514026,42.3331974],[-71.15127,42.3332644],[-71.151199,42.333297],[-71.151124,42.333327],[-71.1510418,42.333355],[-71.1509572,42.3333825],[-71.1508724,42.3334085],[-71.1507879,42.3334321],[-71.1507574,42.333438],[-71.1507196,42.3334403],[-71.1507048,42.3334372],[-71.1506962,42.3334354],[-71.1506773,42.3334267],[-71.150665,42.3334179],[-71.1506526,42.333404]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":945638188,"name":"Taylor Crossway"},"geometry":{"type":"LineString","coordinates":[[-71.1506526,42.333404],[-71.1506811,42.3332886],[-71.1507099,42.3331916],[-71.1507595,42.3329964],[-71.1507825,42.332872],[-71.1508068,42.332702],[-71.1508139,42.3325838],[-71.1508193,42.3324782],[-71.1508197,42.3324082],[-71.1508259,42.3323633],[-71.1508417,42.3323048],[-71.1508728,42.3322443],[-71.1509173,42.3321848],[-71.1509521,42.332147],[-71.1510159,42.3320908],[-71.1511112,42.3320248],[-71.1512079,42.331974],[-71.1512766,42.3319439],[-71.1513834,42.33191],[-71.1514722,42.3318848],[-71.1515873,42.3318636],[-71.1516851,42.3318538],[-71.1517592,42.331849],[-71.1518003,42.3318536],[-71.1518286,42.3318624],[-71.1518494,42.3318801],[-71.1518544,42.3319077],[-71.1518366,42.3320202],[-71.151771,42.3322948],[-71.1517148,42.3325574],[-71.151668,42.332783],[-71.1516394,42.3329205],[-71.1516266,42.3329578],[-71.1516056,42.3330024],[-71.1515739,42.3330491],[-71.1515451,42.3330858],[-71.1515036,42.3331273],[-71.151464,42.3331594],[-71.1514026,42.3331974],[-71.15127,42.3332644],[-71.151199,42.333297],[-71.151124,42.333327],[-71.1510418,42.333355],[-71.1509572,42.3333825],[-71.1508724,42.3334085],[-71.1507879,42.3334321],[-71.1507574,42.333438],[-71.1507196,42.3334403],[-71.1507048,42.3334372],[-71.1506962,42.3334354],[-71.1506773,42.3334267],[-71.150665,42.3334179],[-71.1506526,42.333404]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":945638189,"name":"Taylor Crossway"},"geometry":{"type":"LineString","coordinates":[[-71.1506444,42.3334266],[-71.1506526,42.333404]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":945638190,"name":"Clinton Road"},"geometry":{"type":"LineString","coordinates":[[-71.1507048,42.3334372],[-71.1506976,42.3334492],[-71.1506948,42.3334539]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":945638191,"name":"Clinton Road","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1506948,42.3334539],[-71.1507166,42.3335167],[-71.1507264,42.3335482]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":945638192,"name":"Clinton Road"},"geometry":{"type":"LineString","coordinates":[[-71.1507264,42.3335482],[-71.150746,42.333571]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":945638193,"name":"Taylor Crossway","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1506444,42.3334266],[-71.1505713,42.3334337],[-71.1504745,42.3334436]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":945638194,"name":"Taylor Crossway"},"geometry":{"type":"LineString","coordinates":[[-71.1504745,42.3334436],[-71.1504621,42.3334457]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":945638195,"name":"Willard Road"},"geometry":{"type":"LineString","coordinates":[[-71.1519035,42.3316855],[-71.1519185,42.3316586],[-71.1519196,42.3316304],[-71.151911,42.3315327],[-71.1519084,42.3314255],[-71.1519014,42.331318],[-71.1518824,42.3312027],[-71.1518552,42.331079],[-71.1518365,42.3310286],[-71.1518269,42.3310104],[-71.1518156,42.3309988],[-71.1518024,42.3309894],[-71.1517862,42.3309809],[-71.1517711,42.3309742],[-71.1517583,42.3309702],[-71.1517454,42.330967],[-71.1517333,42.3309645],[-71.1517203,42.3309622],[-71.1517067,42.3309605],[-71.151695,42.3309595],[-71.1516816,42.330959],[-71.1516667,42.3309584],[-71.1515479,42.3309661],[-71.1514131,42.330974],[-71.1512696,42.3309944],[-71.1510931,42.3310349],[-71.150993,42.3310646],[-71.1508436,42.3311232],[-71.1507414,42.3311726],[-71.1506161,42.331243],[-71.1504655,42.3313579],[-71.149944,42.3318366],[-71.1498507,42.3319317],[-71.1497453,42.3320627],[-71.1496389,42.3322244],[-71.1494755,42.3324849],[-71.149458,42.3325193],[-71.1494571,42.3325472],[-71.1494668,42.3325727],[-71.1494847,42.3325958],[-71.1495262,42.3326316],[-71.1496536,42.3327276],[-71.1498031,42.3328292],[-71.1499785,42.3329371],[-71.1502897,42.3331456],[-71.1504465,42.3332559],[-71.1504658,42.3332663],[-71.1504877,42.3332696],[-71.1505111,42.3332635],[-71.1505263,42.3332495],[-71.150534,42.3332352],[-71.1505487,42.3331887],[-71.1505752,42.3330837],[-71.150597,42.3329784],[-71.1506352,42.3327981],[-71.1506505,42.3325278],[-71.1506556,42.3324225],[-71.1506668,42.3323306],[-71.150693,42.3322577],[-71.1507277,42.3321886],[-71.1507823,42.3321199],[-71.1508494,42.3320495],[-71.1509287,42.3319878],[-71.151024,42.3319269],[-71.1511444,42.3318662],[-71.1512661,42.3318128],[-71.151366,42.3317839],[-71.1514779,42.3317567],[-71.1516127,42.3317346],[-71.151714,42.3317275],[-71.1517974,42.3317207],[-71.1518393,42.3317169],[-71.1518777,42.3317057],[-71.1519035,42.3316855]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":945638196,"name":"Crafts Road"},"geometry":{"type":"LineString","coordinates":[[-71.1520073,42.3309753],[-71.1522337,42.3309252],[-71.1524669,42.3308674],[-71.1525893,42.3308325],[-71.1527131,42.3307808],[-71.1528192,42.330712],[-71.1528944,42.330657],[-71.1529612,42.3305902],[-71.1530309,42.3305001],[-71.1530787,42.3303949],[-71.1531018,42.3303137],[-71.1531155,42.3302157],[-71.1531139,42.3301194],[-71.1531029,42.3299733],[-71.1530708,42.3297559],[-71.1530689,42.3297352],[-71.1530715,42.3297212],[-71.153086,42.329705],[-71.1531086,42.3296899],[-71.153136,42.3296817],[-71.1531627,42.329677],[-71.1532708,42.3296635],[-71.1534458,42.3296518],[-71.1536151,42.3296389],[-71.1537443,42.3296362],[-71.1539456,42.3296426],[-71.1540479,42.3296554],[-71.1541848,42.3296798],[-71.1543097,42.3297132],[-71.1544371,42.3297544],[-71.1547567,42.3298724],[-71.1549846,42.3299588],[-71.1551377,42.3300375],[-71.1552681,42.33012],[-71.1554384,42.3302291],[-71.1555352,42.3302967],[-71.1556916,42.3304155],[-71.1558139,42.3305216],[-71.155883,42.3305812],[-71.1558992,42.3305986],[-71.1558995,42.3306118],[-71.1558956,42.3306244],[-71.1558805,42.3306539],[-71.1558124,42.3307557],[-71.1557722,42.3308118]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":945638195,"name":"Eliot Street"},"geometry":{"type":"LineString","coordinates":[[-71.1519035,42.3316855],[-71.1519185,42.3316586],[-71.1519196,42.3316304],[-71.151911,42.3315327],[-71.1519084,42.3314255],[-71.1519014,42.331318],[-71.1518824,42.3312027],[-71.1518552,42.331079],[-71.1518365,42.3310286],[-71.1518269,42.3310104],[-71.1518156,42.3309988],[-71.1518024,42.3309894],[-71.1517862,42.3309809],[-71.1517711,42.3309742],[-71.1517583,42.3309702],[-71.1517454,42.330967],[-71.1517333,42.3309645],[-71.1517203,42.3309622],[-71.1517067,42.3309605],[-71.151695,42.3309595],[-71.1516816,42.330959],[-71.1516667,42.3309584],[-71.1515479,42.3309661],[-71.1514131,42.330974],[-71.1512696,42.3309944],[-71.1510931,42.3310349],[-71.150993,42.3310646],[-71.1508436,42.3311232],[-71.1507414,42.3311726],[-71.1506161,42.331243],[-71.1504655,42.3313579],[-71.149944,42.3318366],[-71.1498507,42.3319317],[-71.1497453,42.3320627],[-71.1496389,42.3322244],[-71.1494755,42.3324849],[-71.149458,42.3325193],[-71.1494571,42.3325472],[-71.1494668,42.3325727],[-71.1494847,42.3325958],[-71.1495262,42.3326316],[-71.1496536,42.3327276],[-71.1498031,42.3328292],[-71.1499785,42.3329371],[-71.1502897,42.3331456],[-71.1504465,42.3332559],[-71.1504658,42.3332663],[-71.1504877,42.3332696],[-71.1505111,42.3332635],[-71.1505263,42.3332495],[-71.150534,42.3332352],[-71.1505487,42.3331887],[-71.1505752,42.3330837],[-71.150597,42.3329784],[-71.1506352,42.3327981],[-71.1506505,42.3325278],[-71.1506556,42.3324225],[-71.1506668,42.3323306],[-71.150693,42.3322577],[-71.1507277,42.3321886],[-71.1507823,42.3321199],[-71.1508494,42.3320495],[-71.1509287,42.3319878],[-71.151024,42.3319269],[-71.1511444,42.3318662],[-71.1512661,42.3318128],[-71.151366,42.3317839],[-71.1514779,42.3317567],[-71.1516127,42.3317346],[-71.151714,42.3317275],[-71.1517974,42.3317207],[-71.1518393,42.3317169],[-71.1518777,42.3317057],[-71.1519035,42.3316855]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":945638196,"name":"Cleveland Road"},"geometry":{"type":"LineString","coordinates":[[-71.1520073,42.3309753],[-71.1522337,42.3309252],[-71.1524669,42.3308674],[-71.1525893,42.3308325],[-71.1527131,42.3307808],[-71.1528192,42.330712],[-71.1528944,42.330657],[-71.1529612,42.3305902],[-71.1530309,42.3305001],[-71.1530787,42.3303949],[-71.1531018,42.3303137],[-71.1531155,42.3302157],[-71.1531139,42.3301194],[-71.1531029,42.3299733],[-71.1530708,42.3297559],[-71.1530689,42.3297352],[-71.1530715,42.3297212],[-71.153086,42.329705],[-71.1531086,42.3296899],[-71.153136,42.3296817],[-71.1531627,42.329677],[-71.1532708,42.3296635],[-71.1534458,42.3296518],[-71.1536151,42.3296389],[-71.1537443,42.3296362],[-71.1539456,42.3296426],[-71.1540479,42.3296554],[-71.1541848,42.3296798],[-71.1543097,42.3297132],[-71.1544371,42.3297544],[-71.1547567,42.3298724],[-71.1549846,42.3299588],[-71.1551377,42.3300375],[-71.1552681,42.33012],[-71.1554384,42.3302291],[-71.1555352,42.3302967],[-71.1556916,42.3304155],[-71.1558139,42.3305216],[-71.155883,42.3305812],[-71.1558992,42.3305986],[-71.1558995,42.3306118],[-71.1558956,42.3306244],[-71.1558805,42.3306539],[-71.1558124,42.3307557],[-71.1557722,42.3308118]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":945638198,"name":"Eliot Street"},"geometry":{"type":"LineString","coordinates":[[-71.1518189,42.3309707],[-71.1518024,42.3309894]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":945646430,"name":"Willard Road"},"geometry":{"type":"LineString","coordinates":[[-71.1475619,42.3339021],[-71.1474582,42.3339093]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":945646431,"name":"Chestnut Hill Avenue","surface":"concrete","width":"2","incline":"0%","wheelchair":"yes","tactile":"yes"},"geometry":{"type":"LineString","coordinates":[[-71.148237,42.3344716],[-71.1482314,42.3344665],[-71.1482241,42.3344618],[-71.1481406,42.3344232],[-71.148054,42.3343834],[-71.1479758,42.3343408],[-71.1479031,42.3342971],[-71.1478363,42.3342487],[-71.147795,42.3342165],[-71.1477129,42.3341421],[-71.1476424,42.334055],[-71.1475915,42.3339704],[-71.1475619,42.3339021],[-71.1475577,42.3338923]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":945646432,"name":"Willard Road","surface":"asphalt","width":"2","incline":"0%","wheelchair":"yes","tactile":"yes","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1475577,42.3338923],[-71.1475353,42.3338371],[-71.1475089,42.3337719]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":945646433,"name":"Dean Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1485208,42.3334403],[-71.1484184,42.3335055],[-71.1483353,42.3335566],[-71.1482448,42.3335986],[-71.1481341,42.333642],[-71.1480014,42.3336839],[-71.1478615,42.3337224],[-71.1477359,42.3337465],[-71.1477211,42.3337468],[-71.1477013,42.3337436],[-71.1476928,42.3337357],[-71.1476875,42.333725],[-71.1476381,42.3335904],[-71.1476068,42.3335182],[-71.1475833,42.3334663],[-71.1475538,42.3334],[-71.1475322,42.3333528],[-71.1474975,42.3332829],[-71.1474615,42.3332189],[-71.1474281,42.3331633],[-71.1474246,42.3331567],[-71.1474232,42.3331533],[-71.1474217,42.3331484],[-71.147421,42.3331432],[-71.1474212,42.333141],[-71.1474214,42.3331374],[-71.147423,42.333132],[-71.1474267,42.3331255],[-71.1474319,42.3331192],[-71.1474372,42.3331151],[-71.1474391,42.3331141],[-71.1474434,42.3331117],[-71.1474545,42.3331068],[-71.1475419,42.3330739],[-71.1475993,42.3330508],[-71.1476751,42.3330163],[-71.1477442,42.332981],[-71.1478053,42.3329411],[-71.1478724,42.3328871],[-71.1479542,42.332813],[-71.1480062,42.3327587],[-71.1480752,42.3326932],[-71.1480865,42.3326869],[-71.1481001,42.3326841],[-71.1481186,42.3326865],[-71.1481338,42.3326959],[-71.1483776,42.332964],[-71.1485467,42.3331039],[-71.1486908,42.3332193],[-71.1487196,42.3332426],[-71.1487331,42.3332624],[-71.1487383,42.3332816],[-71.1487247,42.3333032],[-71.1487046,42.3333201],[-71.1486707,42.3333414],[-71.1486033,42.3333857],[-71.1485208,42.3334403]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":945646434,"name":"Dean Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1463578,42.3316434],[-71.1463784,42.3316834],[-71.1465624,42.3319624],[-71.1466825,42.3321221],[-71.1473068,42.3329875],[-71.1473111,42.3329928],[-71.1473149,42.3329968],[-71.1473201,42.3330004],[-71.1473243,42.3330027],[-71.1473319,42.3330059],[-71.1473401,42.333008],[-71.1473476,42.333009],[-71.1473542,42.3330093],[-71.1473606,42.3330088],[-71.1473687,42.3330074],[-71.147377,42.3330051],[-71.1474078,42.3329948],[-71.1474586,42.3329745],[-71.147558,42.3329307],[-71.1476228,42.3328991],[-71.1476828,42.3328601],[-71.1477754,42.3327847],[-71.1478718,42.3326859],[-71.1480148,42.3325297]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":945646433,"name":"Willard Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1485208,42.3334403],[-71.1484184,42.3335055],[-71.1483353,42.3335566],[-71.1482448,42.3335986],[-71.1481341,42.333642],[-71.1480014,42.3336839],[-71.1478615,42.3337224],[-71.1477359,42.3337465],[-71.1477211,42.3337468],[-71.1477013,42.3337436],[-71.1476928,42.3337357],[-71.1476875,42.333725],[-71.1476381,42.3335904],[-71.1476068,42.3335182],[-71.1475833,42.3334663],[-71.1475538,42.3334],[-71.1475322,42.3333528],[-71.1474975,42.3332829],[-71.1474615,42.3332189],[-71.1474281,42.3331633],[-71.1474246,42.3331567],[-71.1474232,42.3331533],[-71.1474217,42.3331484],[-71.147421,42.3331432],[-71.1474212,42.333141],[-71.1474214,42.3331374],[-71.147423,42.333132],[-71.1474267,42.3331255],[-71.1474319,42.3331192],[-71.1474372,42.3331151],[-71.1474391,42.3331141],[-71.1474434,42.3331117],[-71.1474545,42.3331068],[-71.1475419,42.3330739],[-71.1475993,42.3330508],[-71.1476751,42.3330163],[-71.1477442,42.332981],[-71.1478053,42.3329411],[-71.1478724,42.3328871],[-71.1479542,42.332813],[-71.1480062,42.3327587],[-71.1480752,42.3326932],[-71.1480865,42.3326869],[-71.1481001,42.3326841],[-71.1481186,42.3326865],[-71.1481338,42.3326959],[-71.1483776,42.332964],[-71.1485467,42.3331039],[-71.1486908,42.3332193],[-71.1487196,42.3332426],[-71.1487331,42.3332624],[-71.1487383,42.3332816],[-71.1487247,42.3333032],[-71.1487046,42.3333201],[-71.1486707,42.3333414],[-71.1486033,42.3333857],[-71.1485208,42.3334403]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":945646434,"name":"Chestnut Hill Avenue","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1463578,42.3316434],[-71.1463784,42.3316834],[-71.1465624,42.3319624],[-71.1466825,42.3321221],[-71.1473068,42.3329875],[-71.1473111,42.3329928],[-71.1473149,42.3329968],[-71.1473201,42.3330004],[-71.1473243,42.3330027],[-71.1473319,42.3330059],[-71.1473401,42.333008],[-71.1473476,42.333009],[-71.1473542,42.3330093],[-71.1473606,42.3330088],[-71.1473687,42.3330074],[-71.147377,42.3330051],[-71.1474078,42.3329948],[-71.1474586,42.3329745],[-71.147558,42.3329307],[-71.1476228,42.3328991],[-71.1476828,42.3328601],[-71.1477754,42.3327847],[-71.1478718,42.3326859],[-71.1480148,42.3325297]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":945646435,"name":"Dean Road"},"geometry":{"type":"LineString","coordinates":[[-71.1481032,42.3324167],[-71.1482635,42.3321984],[-71.1483817,42.3320454],[-71.1485373,42.331859],[-71.1486734,42.3317095],[-71.1489115,42.3314736],[-71.1490145,42.3313639],[-71.149114,42.3312528],[-71.1492132,42.331126],[-71.149293,42.3310094],[-71.1493844,42.3308485],[-71.1494541,42.3306897],[-71.1495166,42.3305171],[-71.1495824,42.3302871],[-71.1496385,42.3300876],[-71.1496755,42.3299687],[-71.1497212,42.3298576],[-71.1497839,42.3297109],[-71.1498524,42.3295931],[-71.149901,42.3295132],[-71.1499565,42.3294496],[-71.1499998,42.3293955],[-71.1500032,42.3293792],[-71.1499995,42.3293615],[-71.1499892,42.3293491],[-71.1499698,42.3293343],[-71.1496587,42.3291895],[-71.1494987,42.3291184],[-71.1493724,42.3290624],[-71.1492391,42.3290038],[-71.1490259,42.3289102],[-71.1486738,42.3287668],[-71.1486464,42.3287617],[-71.1486231,42.3287648],[-71.1486041,42.3287707],[-71.1485871,42.3287824],[-71.1485353,42.328829],[-71.1481707,42.3291845]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":945646436,"name":"Penniman Place","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1481032,42.3324167],[-71.1480441,42.3324923],[-71.1480148,42.3325297]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":945646437,"name":"Penniman Road"},"geometry":{"type":"LineString","coordinates":[[-71.1504621,42.3334457],[-71.1504791,42.3334949],[-71.1504938,42.333549],[-71.1504961,42.3335895],[-71.1504918,42.3336455],[-71.1504744,42.333709],[-71.1504461,42.3337576],[-71.1504036,42.3338098],[-71.1503562,42.3338526],[-71.1503229,42.3338783],[-71.1502761,42.3339045],[-71.1502174,42.3339296],[-71.1501511,42.3339523],[-71.1500699,42.3339722],[-71.1497226,42.3340549],[-71.1497027,42.334055],[-71.149682,42.3340489],[-71.1496722,42.3340359],[-71.1496667,42.3340098],[-71.149661,42.3339642],[-71.1496547,42.3339226],[-71.1496431,42.3338847],[-71.149626,42.3338367],[-71.1495903,42.3337749],[-71.1495348,42.3336991],[-71.1494538,42.3336245],[-71.1493572,42.3335532],[-71.1492372,42.3334782],[-71.1491373,42.333418],[-71.1490128,42.3333364],[-71.148934,42.3332797],[-71.1489131,42.3332576],[-71.1489087,42.3332468],[-71.14892,42.3332297],[-71.1489855,42.3331614],[-71.1491387,42.3329817],[-71.1492676,42.3328138],[-71.1493373,42.3327071],[-71.1493587,42.3326849],[-71.1493812,42.3326784],[-71.1494058,42.3326784],[-71.1494267,42.3326857],[-71.149487,42.3327329],[-71.1495575,42.3327903],[-71.1496322,42.3328453],[-71.1496861,42.3328828],[-71.1498157,42.3329617],[-71.1499502,42.3330465],[-71.1501274,42.3331606],[-71.1502374,42.3332335],[-71.150321,42.3332924],[-71.1503801,42.3333463],[-71.1504062,42.3333701],[-71.1504621,42.3334457]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":945646438,"name":"Willard Road"},"geometry":{"type":"LineString","coordinates":[[-71.1482001,42.3325452],[-71.1482069,42.332524],[-71.1482705,42.3324386],[-71.1483946,42.3322746],[-71.1485147,42.3321143],[-71.1485847,42.3320233],[-71.1486048,42.3320097],[-71.1486296,42.3320029],[-71.1486533,42.3320053],[-71.1487145,42.3320301],[-71.1488144,42.3320822],[-71.1488843,42.3321222],[-71.1489486,42.3321736],[-71.1490158,42.332237],[-71.1490918,42.3323293],[-71.1491537,42.3324075],[-71.1492373,42.3325087],[-71.1492644,42.3325406],[-71.1492754,42.3325691],[-71.1492672,42.3326013],[-71.1492354,42.3326536],[-71.14914,42.3327913],[-71.1490609,42.3328975],[-71.1489493,42.3330242],[-71.1488664,42.3331125],[-71.1488361,42.3331458],[-71.1488216,42.3331575],[-71.1488041,42.3331682],[-71.1487872,42.3331654],[-71.1487712,42.3331588],[-71.1487369,42.3331364],[-71.1486292,42.3330413],[-71.148522,42.3329405],[-71.1483191,42.3327283],[-71.148263,42.3326685],[-71.1482181,42.3326156],[-71.1482079,42.3325946],[-71.1482003,42.3325718],[-71.1482001,42.3325452]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":945646439,"name":"Willard Road"},"geometry":{"type":"LineString","coordinates":[[-71.1487187,42.331894],[-71.1487233,42.3318752],[-71.148737,42.3318549],[-71.1490836,42.331496],[-71.1492684,42.3312921],[-71.1493739,42.3311504],[-71.1494584,42.3310257],[-71.149547,42.3308541],[-71.1496009,42.3307423],[-71.1496635,42.330575],[-71.1497323,42.3303443],[-71.1497446,42.33033],[-71.1497611,42.3303202],[-71.1497828,42.3303161],[-71.1498052,42.330315],[-71.1498335,42.3303191],[-71.1499039,42.330333],[-71.1500127,42.3303644],[-71.1501123,42.3304023],[-71.1501823,42.3304448],[-71.1503041,42.3305313],[-71.1503594,42.3305905],[-71.150405,42.3306475],[-71.1504423,42.3307037],[-71.1504714,42.3307576],[-71.1504874,42.330811],[-71.1505009,42.3308829],[-71.1505034,42.3309773],[-71.1504934,42.331054],[-71.1504704,42.3311251],[-71.1504318,42.3312011],[-71.1503821,42.3312664],[-71.1503114,42.3313453],[-71.1502408,42.3314105],[-71.150139,42.3315028],[-71.1499531,42.3316817],[-71.1496772,42.3319694],[-71.1496008,42.3320663],[-71.1494703,42.3322753],[-71.1494046,42.3323896],[-71.1493882,42.3324128],[-71.1493762,42.3324226],[-71.1493596,42.3324283],[-71.1493384,42.3324286],[-71.1493165,42.3324217],[-71.1492989,42.3324098],[-71.1492696,42.3323739],[-71.149235,42.3323182],[-71.1491332,42.3321858],[-71.1490829,42.3321387],[-71.1490226,42.3320918],[-71.1489184,42.3320229],[-71.1488537,42.3319866],[-71.1487633,42.3319411],[-71.1487392,42.3319278],[-71.1487247,42.3319112],[-71.1487187,42.331894]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":945646440,"name":"Cleveland Road"},"geometry":{"type":"LineString","coordinates":[[-71.1497878,42.330174],[-71.1497927,42.3301433],[-71.1498055,42.3300903],[-71.1498618,42.3299321],[-71.1499703,42.3296883],[-71.1500292,42.3295857],[-71.1500962,42.3294915],[-71.1501289,42.3294628],[-71.1501669,42.3294533],[-71.1502041,42.3294559],[-71.1502638,42.3294866],[-71.1505735,42.3296466],[-71.1508669,42.3298135],[-71.1510893,42.3299742],[-71.1511894,42.3300568],[-71.1513315,42.3301882],[-71.1514648,42.3303355],[-71.1515806,42.3304777],[-71.1516571,42.3305903],[-71.1517214,42.3307196],[-71.151731,42.3307401],[-71.1517351,42.3307585],[-71.1517363,42.33077],[-71.1517361,42.3307811],[-71.1517327,42.3307904],[-71.1517276,42.3307996],[-71.1517229,42.3308063],[-71.1517186,42.3308117],[-71.1517142,42.3308161],[-71.1517075,42.3308209],[-71.1517,42.330825],[-71.151692,42.3308283],[-71.1516805,42.3308309],[-71.1516655,42.3308328],[-71.1515281,42.3308417],[-71.151437,42.330852],[-71.1513273,42.3308618],[-71.1512057,42.3308821],[-71.1510288,42.3309269],[-71.1509207,42.3309614],[-71.1507975,42.3310086],[-71.1507179,42.3310334],[-71.1506917,42.3310357],[-71.1506699,42.3310319],[-71.1506531,42.3310162],[-71.150646,42.3310002],[-71.1506364,42.3309444],[-71.1506285,42.3308659],[-71.1506182,42.3308056],[-71.1505934,42.3307223],[-71.1505499,42.3306419],[-71.1504947,42.3305657],[-71.1504136,42.3304781],[-71.1503338,42.3304111],[-71.150229,42.3303464],[-71.1500904,42.3302862],[-71.1499989,42.3302525],[-71.1499148,42.3302358],[-71.1498512,42.3302241],[-71.1498131,42.3302126],[-71.1497924,42.3301963],[-71.1497878,42.330174]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":945646437,"name":"Taylor Crossway"},"geometry":{"type":"LineString","coordinates":[[-71.1504621,42.3334457],[-71.1504791,42.3334949],[-71.1504938,42.333549],[-71.1504961,42.3335895],[-71.1504918,42.3336455],[-71.1504744,42.333709],[-71.1504461,42.3337576],[-71.1504036,42.3338098],[-71.1503562,42.3338526],[-71.1503229,42.3338783],[-71.1502761,42.3339045],[-71.1502174,42.3339296],[-71.1501511,42.3339523],[-71.1500699,42.3339722],[-71.1497226,42.3340549],[-71.1497027,42.334055],[-71.149682,42.3340489],[-71.1496722,42.3340359],[-71.1496667,42.3340098],[-71.149661,42.3339642],[-71.1496547,42.3339226],[-71.1496431,42.3338847],[-71.149626,42.3338367],[-71.1495903,42.3337749],[-71.1495348,42.3336991],[-71.1494538,42.3336245],[-71.1493572,42.3335532],[-71.1492372,42.3334782],[-71.1491373,42.333418],[-71.1490128,42.3333364],[-71.148934,42.3332797],[-71.1489131,42.3332576],[-71.1489087,42.3332468],[-71.14892,42.3332297],[-71.1489855,42.3331614],[-71.1491387,42.3329817],[-71.1492676,42.3328138],[-71.1493373,42.3327071],[-71.1493587,42.3326849],[-71.1493812,42.3326784],[-71.1494058,42.3326784],[-71.1494267,42.3326857],[-71.149487,42.3327329],[-71.1495575,42.3327903],[-71.1496322,42.3328453],[-71.1496861,42.3328828],[-71.1498157,42.3329617],[-71.1499502,42.3330465],[-71.1501274,42.3331606],[-71.1502374,42.3332335],[-71.150321,42.3332924],[-71.1503801,42.3333463],[-71.1504062,42.3333701],[-71.1504621,42.3334457]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":945646438,"name":"Dean Road"},"geometry":{"type":"LineString","coordinates":[[-71.1482001,42.3325452],[-71.1482069,42.332524],[-71.1482705,42.3324386],[-71.1483946,42.3322746],[-71.1485147,42.3321143],[-71.1485847,42.3320233],[-71.1486048,42.3320097],[-71.1486296,42.3320029],[-71.1486533,42.3320053],[-71.1487145,42.3320301],[-71.1488144,42.3320822],[-71.1488843,42.3321222],[-71.1489486,42.3321736],[-71.1490158,42.332237],[-71.1490918,42.3323293],[-71.1491537,42.3324075],[-71.1492373,42.3325087],[-71.1492644,42.3325406],[-71.1492754,42.3325691],[-71.1492672,42.3326013],[-71.1492354,42.3326536],[-71.14914,42.3327913],[-71.1490609,42.3328975],[-71.1489493,42.3330242],[-71.1488664,42.3331125],[-71.1488361,42.3331458],[-71.1488216,42.3331575],[-71.1488041,42.3331682],[-71.1487872,42.3331654],[-71.1487712,42.3331588],[-71.1487369,42.3331364],[-71.1486292,42.3330413],[-71.148522,42.3329405],[-71.1483191,42.3327283],[-71.148263,42.3326685],[-71.1482181,42.3326156],[-71.1482079,42.3325946],[-71.1482003,42.3325718],[-71.1482001,42.3325452]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":945646439,"name":"Taylor Crossway"},"geometry":{"type":"LineString","coordinates":[[-71.1487187,42.331894],[-71.1487233,42.3318752],[-71.148737,42.3318549],[-71.1490836,42.331496],[-71.1492684,42.3312921],[-71.1493739,42.3311504],[-71.1494584,42.3310257],[-71.149547,42.3308541],[-71.1496009,42.3307423],[-71.1496635,42.330575],[-71.1497323,42.3303443],[-71.1497446,42.33033],[-71.1497611,42.3303202],[-71.1497828,42.3303161],[-71.1498052,42.330315],[-71.1498335,42.3303191],[-71.1499039,42.330333],[-71.1500127,42.3303644],[-71.1501123,42.3304023],[-71.1501823,42.3304448],[-71.1503041,42.3305313],[-71.1503594,42.3305905],[-71.150405,42.3306475],[-71.1504423,42.3307037],[-71.1504714,42.3307576],[-71.1504874,42.330811],[-71.1505009,42.3308829],[-71.1505034,42.3309773],[-71.1504934,42.331054],[-71.1504704,42.3311251],[-71.1504318,42.3312011],[-71.1503821,42.3312664],[-71.1503114,42.3313453],[-71.1502408,42.3314105],[-71.150139,42.3315028],[-71.1499531,42.3316817],[-71.1496772,42.3319694],[-71.1496008,42.3320663],[-71.1494703,42.3322753],[-71.1494046,42.3323896],[-71.1493882,42.3324128],[-71.1493762,42.3324226],[-71.1493596,42.3324283],[-71.1493384,42.3324286],[-71.1493165,42.3324217],[-71.1492989,42.3324098],[-71.1492696,42.3323739],[-71.149235,42.3323182],[-71.1491332,42.3321858],[-71.1490829,42.3321387],[-71.1490226,42.3320918],[-71.1489184,42.3320229],[-71.1488537,42.3319866],[-71.1487633,42.3319411],[-71.1487392,42.3319278],[-71.1487247,42.3319112],[-71.1487187,42.331894]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":945646440,"name":"Dean Road"},"geometry":{"type":"LineString","coordinates":[[-71.1497878,42.330174],[-71.1497927,42.3301433],[-71.1498055,42.3300903],[-71.1498618,42.3299321],[-71.1499703,42.3296883],[-71.1500292,42.3295857],[-71.1500962,42.3294915],[-71.1501289,42.3294628],[-71.1501669,42.3294533],[-71.1502041,42.3294559],[-71.1502638,42.3294866],[-71.1505735,42.3296466],[-71.1508669,42.3298135],[-71.1510893,42.3299742],[-71.1511894,42.3300568],[-71.1513315,42.3301882],[-71.1514648,42.3303355],[-71.1515806,42.3304777],[-71.1516571,42.3305903],[-71.1517214,42.3307196],[-71.151731,42.3307401],[-71.1517351,42.3307585],[-71.1517363,42.33077],[-71.1517361,42.3307811],[-71.1517327,42.3307904],[-71.1517276,42.3307996],[-71.1517229,42.3308063],[-71.1517186,42.3308117],[-71.1517142,42.3308161],[-71.1517075,42.3308209],[-71.1517,42.330825],[-71.151692,42.3308283],[-71.1516805,42.3308309],[-71.1516655,42.3308328],[-71.1515281,42.3308417],[-71.151437,42.330852],[-71.1513273,42.3308618],[-71.1512057,42.3308821],[-71.1510288,42.3309269],[-71.1509207,42.3309614],[-71.1507975,42.3310086],[-71.1507179,42.3310334],[-71.1506917,42.3310357],[-71.1506699,42.3310319],[-71.1506531,42.3310162],[-71.150646,42.3310002],[-71.1506364,42.3309444],[-71.1506285,42.3308659],[-71.1506182,42.3308056],[-71.1505934,42.3307223],[-71.1505499,42.3306419],[-71.1504947,42.3305657],[-71.1504136,42.3304781],[-71.1503338,42.3304111],[-71.150229,42.3303464],[-71.1500904,42.3302862],[-71.1499989,42.3302525],[-71.1499148,42.3302358],[-71.1498512,42.3302241],[-71.1498131,42.3302126],[-71.1497924,42.3301963],[-71.1497878,42.330174]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":945646441,"name":"Cleveland Road"},"geometry":{"type":"LineString","coordinates":[[-71.151958,42.3308489],[-71.1520198,42.3308359],[-71.1520333,42.3308336],[-71.1520477,42.3308317],[-71.1520621,42.3308302],[-71.1520773,42.3308288],[-71.1520906,42.3308269],[-71.1521047,42.3308242],[-71.1521193,42.3308206],[-71.1521349,42.3308166],[-71.1522728,42.3307852],[-71.1524315,42.3307463],[-71.1525501,42.330709],[-71.1526579,42.3306569],[-71.152773,42.3305738],[-71.1528386,42.3305105],[-71.1528833,42.3304335],[-71.1529308,42.3303285],[-71.1529477,42.3302246],[-71.152954,42.3301346],[-71.1529498,42.3300283],[-71.1529268,42.3298854],[-71.1529058,42.329758],[-71.1528982,42.32974],[-71.1528797,42.3297263],[-71.1528548,42.3297153],[-71.1528174,42.3297153],[-71.1527079,42.3297206],[-71.1525389,42.3297281],[-71.1524167,42.3297291],[-71.1521688,42.3297208],[-71.1520218,42.3297054],[-71.1518563,42.3296797],[-71.151611,42.329634],[-71.1514525,42.3295958],[-71.151234,42.3295245],[-71.1510192,42.3294432],[-71.151005,42.3294362]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":945646442,"name":"Reservoir Road"},"geometry":{"type":"LineString","coordinates":[[-71.1474608,42.326637],[-71.1475864,42.3266494],[-71.1476125,42.326653],[-71.1476347,42.3266569],[-71.1476646,42.3266679],[-71.1476988,42.326672],[-71.1479223,42.3266881],[-71.1479925,42.3266902],[-71.1480135,42.3266917],[-71.1480302,42.3266967],[-71.148045,42.3267089],[-71.1482625,42.3268902],[-71.1484639,42.3270924],[-71.1485706,42.3271977],[-71.1487108,42.3273267],[-71.1488543,42.3274423],[-71.1489353,42.3274971],[-71.1491607,42.3276494],[-71.1493697,42.3277662],[-71.1497119,42.3279481],[-71.1505157,42.3283527],[-71.1511515,42.3286692],[-71.1515077,42.3288506],[-71.1517939,42.3289982],[-71.1520032,42.3291047],[-71.1522873,42.3292434],[-71.1524806,42.3293467],[-71.1525799,42.3293998],[-71.1527295,42.3294689],[-71.1527667,42.3294834],[-71.1528097,42.3294911],[-71.1528444,42.3294916],[-71.1528724,42.3294855],[-71.1529046,42.3294707],[-71.1529284,42.3294487],[-71.1529516,42.3294235],[-71.1529569,42.3294158],[-71.1529617,42.3294099],[-71.152976,42.3294077],[-71.1529885,42.3294097],[-71.1532567,42.3294581],[-71.1534237,42.3294882],[-71.1534888,42.3294998],[-71.1535075,42.3295059],[-71.1535162,42.3295136],[-71.1535188,42.3295246],[-71.1535081,42.3295356],[-71.1534643,42.3295398],[-71.153221,42.3295603],[-71.1528475,42.3295917],[-71.1525955,42.3296071],[-71.1524065,42.3296113],[-71.1522287,42.3296036],[-71.1520503,42.3295882],[-71.1518736,42.3295634],[-71.1516613,42.3295173],[-71.1514049,42.3294452],[-71.1510737,42.3293259],[-71.1510586,42.3293205],[-71.1508716,42.3292537],[-71.1507248,42.3291997],[-71.1506377,42.3291683],[-71.1505827,42.3291529],[-71.1505147,42.3291455],[-71.1504346,42.3291458],[-71.1503554,42.3291542],[-71.1502946,42.3291708],[-71.1502295,42.3291961],[-71.1501913,42.3292061],[-71.1501606,42.3292106],[-71.1501319,42.3292116],[-71.1501019,42.3292127],[-71.1500223,42.3292067],[-71.1499558,42.3291917],[-71.149877,42.3291549],[-71.1497309,42.3290862],[-71.1494809,42.3289729],[-71.1491317,42.3288138],[-71.1489535,42.3287328],[-71.1488867,42.3286944],[-71.1488462,42.3286578]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":945646443,"name":"Eliot Street"},"geometry":{"type":"LineString","coordinates":[[-71.1487797,42.3286097],[-71.1487416,42.3285777],[-71.1486987,42.3285539],[-71.1486337,42.3285233],[-71.1484882,42.3284657],[-71.148241,42.3283768],[-71.1481424,42.3283434],[-71.147974,42.3282864],[-71.1479509,42.3282781],[-71.1476979,42.3281868],[-71.147587,42.3281351],[-71.1474645,42.3280919]]}},
@@ -1250,8 +1250,8 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":945652200,"name":"Valley Road"},"geometry":{"type":"LineString","coordinates":[[-71.1531827,42.3275927],[-71.1531817,42.3275067],[-71.1531668,42.3273933],[-71.1531654,42.3273506],[-71.153178,42.3273256],[-71.1531956,42.3273115],[-71.1532182,42.3272995],[-71.153272,42.3272864],[-71.1533887,42.3272538],[-71.1536038,42.3271839],[-71.1539107,42.3270823],[-71.1539347,42.3270808],[-71.1539615,42.3270872],[-71.1539811,42.327099],[-71.1540024,42.3271203],[-71.154025,42.3271538],[-71.1540501,42.3271996],[-71.1541163,42.3273436],[-71.1541469,42.3274164],[-71.1541679,42.3275031],[-71.1541792,42.3275837],[-71.1541824,42.327714],[-71.1541701,42.3278592],[-71.1541452,42.3279627],[-71.154134,42.3280351],[-71.1541039,42.3281686],[-71.1540787,42.328294],[-71.15407,42.3283787],[-71.1540637,42.328459],[-71.1540658,42.3285731],[-71.1540839,42.3287327],[-71.154122,42.3289662],[-71.1541321,42.3290474],[-71.1541281,42.3290954],[-71.1541263,42.3291166],[-71.1541032,42.3291669],[-71.1540678,42.3292256],[-71.1540176,42.3292795],[-71.1539598,42.3293301],[-71.153906,42.3293637],[-71.1538348,42.3293906],[-71.1537571,42.3294075],[-71.1537223,42.3294139],[-71.153697,42.3294235]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":945652201,"name":"Fairway Road"},"geometry":{"type":"LineString","coordinates":[[-71.154745,42.3260645],[-71.1545607,42.3261387],[-71.1541415,42.3263025],[-71.1538897,42.3263911],[-71.1534914,42.3265218],[-71.1530505,42.3266491],[-71.1526619,42.326752],[-71.1524399,42.3268051],[-71.1522788,42.3268347],[-71.152067,42.326864],[-71.1518548,42.3268822],[-71.1516489,42.3268904],[-71.1509991,42.3268777],[-71.1504481,42.3268517],[-71.1497681,42.3267974],[-71.1493182,42.3267458],[-71.1490906,42.3267196],[-71.148842,42.3267055],[-71.1485362,42.3266952],[-71.1483215,42.3266938],[-71.1482838,42.3266993],[-71.148261,42.3267137],[-71.1482533,42.3267287],[-71.1482531,42.3267527],[-71.1482625,42.3267724],[-71.1483994,42.326903],[-71.1485819,42.327065],[-71.1487458,42.3272094],[-71.148847,42.3272908],[-71.1488676,42.3272989],[-71.1488872,42.3273028],[-71.1489122,42.3272995],[-71.1489833,42.3272721],[-71.1491111,42.3272269],[-71.1492414,42.3271863],[-71.1493777,42.3271523],[-71.1495238,42.3271357],[-71.1496931,42.3271237],[-71.149808,42.327134],[-71.1501206,42.3271794],[-71.1505577,42.3272607],[-71.1508071,42.3273001],[-71.1510282,42.3273313],[-71.1513115,42.327358],[-71.1515239,42.3273687],[-71.1517779,42.3273701],[-71.1521166,42.327352],[-71.1525465,42.3273097],[-71.1528958,42.3272506],[-71.1531824,42.3271825],[-71.1533631,42.32714],[-71.1535637,42.3270771],[-71.1538393,42.3269716],[-71.1540598,42.3268847],[-71.1543397,42.3267662],[-71.154626,42.3266293],[-71.1549388,42.3264726],[-71.1553402,42.3262749],[-71.1556732,42.3261169],[-71.1558107,42.3260643],[-71.1559795,42.3260131],[-71.1561585,42.3259792],[-71.1563415,42.3259698],[-71.1564772,42.3259722],[-71.1565485,42.3259801],[-71.1567081,42.3260154],[-71.1567837,42.3260395],[-71.1568912,42.3260868],[-71.1570269,42.3261486],[-71.1572181,42.3262415],[-71.1574099,42.3263386],[-71.1576165,42.3264698],[-71.1577302,42.3265368],[-71.1577526,42.3265447],[-71.1577743,42.3265492],[-71.1578044,42.3265442],[-71.157826,42.3265312],[-71.157889,42.3264721],[-71.1579968,42.3263764],[-71.1583765,42.3260602]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":945652202,"name":"Fairway Road"},"geometry":{"type":"LineString","coordinates":[[-71.1543282,42.3279219],[-71.1543315,42.3278062],[-71.1543371,42.3277184],[-71.1543351,42.3276259],[-71.1543259,42.3275218],[-71.1543127,42.3274562],[-71.1542944,42.3273858],[-71.1542493,42.3272621],[-71.1541508,42.3270508],[-71.1541429,42.3270277],[-71.154143,42.327007],[-71.1541552,42.3269903],[-71.1541752,42.3269751],[-71.1543648,42.3268918],[-71.154581,42.3267872],[-71.1548964,42.3266376],[-71.1553323,42.3264205],[-71.1555528,42.3263103],[-71.1557507,42.3262136],[-71.155896,42.3261559],[-71.1560419,42.3261176],[-71.1562087,42.3260906],[-71.156388,42.3260862],[-71.1565089,42.3260866],[-71.1565928,42.3260939],[-71.1566392,42.3261105],[-71.1566598,42.3261322],[-71.1566694,42.3261592],[-71.1566765,42.3261792],[-71.1566673,42.3262069],[-71.156621,42.3262602],[-71.1564482,42.3264505],[-71.1562053,42.3266831],[-71.1559272,42.3269278],[-71.1556131,42.3271988],[-71.1552071,42.3275236],[-71.1549162,42.3277507],[-71.1548265,42.3278073],[-71.1546931,42.3278679]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":945652203,"name":"Valley Road"},"geometry":{"type":"LineString","coordinates":[[-71.1569505,42.3262185],[-71.1572229,42.3263759],[-71.15751,42.3265519],[-71.1576298,42.3266328],[-71.1576438,42.3266528],[-71.157643,42.3266806],[-71.1576268,42.3267146],[-71.1575957,42.3267415],[-71.1573134,42.3269771],[-71.1567966,42.3274358],[-71.1562583,42.3278999],[-71.1557506,42.3283463],[-71.1555635,42.3285063],[-71.1554554,42.3285898],[-71.1553489,42.3286593],[-71.1552348,42.3287181],[-71.1551053,42.3287676],[-71.1549491,42.3288116],[-71.1547168,42.3288598],[-71.1545655,42.3288994],[-71.1544152,42.3289411],[-71.1543425,42.3289601],[-71.1543257,42.3289631],[-71.1543078,42.3289624],[-71.1542938,42.3289546],[-71.1542862,42.3289442],[-71.1542431,42.3287445],[-71.1542215,42.328589],[-71.1542268,42.3283907],[-71.1542482,42.3282414],[-71.1542642,42.3281362],[-71.1542706,42.3281166],[-71.1542857,42.3280997],[-71.1543017,42.3280876],[-71.1543211,42.328079],[-71.1543863,42.3280657],[-71.1545336,42.3280408],[-71.1546946,42.3280065],[-71.1548133,42.3279635],[-71.1549135,42.3279111],[-71.1550233,42.3278383],[-71.1553745,42.3275602],[-71.1556238,42.3273634],[-71.1563379,42.32675],[-71.1567161,42.3263463],[-71.1567851,42.3262652],[-71.1568203,42.3262292],[-71.1568643,42.3262138],[-71.1569075,42.3262095],[-71.1569505,42.3262185]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":945652204,"name":"Circuit Road"},"geometry":{"type":"LineString","coordinates":[[-71.154308,42.3295137],[-71.1542785,42.3294682],[-71.1542602,42.3294269],[-71.1542486,42.3293515],[-71.1542556,42.329278],[-71.154279,42.3292167],[-71.1543198,42.3291536],[-71.1543704,42.329102],[-71.1544472,42.3290559],[-71.1545574,42.3290064],[-71.1546337,42.3289808],[-71.1547176,42.3289576],[-71.1548371,42.3289319],[-71.1549763,42.3289011],[-71.1551014,42.3288699],[-71.155234,42.3288273],[-71.1553648,42.3287701],[-71.1555043,42.3286917],[-71.1556306,42.3285994],[-71.1558989,42.3283646],[-71.1562124,42.3280904],[-71.1565612,42.3277856],[-71.1568536,42.3275326],[-71.1573515,42.3270922],[-71.157695,42.3267916],[-71.1577213,42.3267746],[-71.1577564,42.3267622],[-71.1577897,42.3267649],[-71.1578328,42.3267833],[-71.1581655,42.326988],[-71.1583322,42.327103],[-71.1583709,42.3271381],[-71.1584004,42.3271856],[-71.1584144,42.3272476],[-71.1584121,42.3273131],[-71.1583926,42.3273984],[-71.1583665,42.327469],[-71.1583046,42.3275603],[-71.1581953,42.327682],[-71.1580964,42.3277822],[-71.1579573,42.3279007],[-71.1578415,42.3279972],[-71.1576113,42.3281829],[-71.157317,42.3284175],[-71.1567598,42.3288347],[-71.1562644,42.329214],[-71.1559398,42.3294543],[-71.1556527,42.329648],[-71.1554748,42.3297505],[-71.1553431,42.3298247],[-71.155269,42.3298586],[-71.1552128,42.3298725],[-71.1551636,42.3298817],[-71.1551027,42.3298766],[-71.1550497,42.329859],[-71.1549462,42.3298174],[-71.1547578,42.3297419],[-71.1546753,42.3297086],[-71.1545254,42.3296532],[-71.1544157,42.329603],[-71.1543445,42.3295538],[-71.154335,42.3295434],[-71.154308,42.3295137]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":945652203,"name":"Fairway Road"},"geometry":{"type":"LineString","coordinates":[[-71.1569505,42.3262185],[-71.1572229,42.3263759],[-71.15751,42.3265519],[-71.1576298,42.3266328],[-71.1576438,42.3266528],[-71.157643,42.3266806],[-71.1576268,42.3267146],[-71.1575957,42.3267415],[-71.1573134,42.3269771],[-71.1567966,42.3274358],[-71.1562583,42.3278999],[-71.1557506,42.3283463],[-71.1555635,42.3285063],[-71.1554554,42.3285898],[-71.1553489,42.3286593],[-71.1552348,42.3287181],[-71.1551053,42.3287676],[-71.1549491,42.3288116],[-71.1547168,42.3288598],[-71.1545655,42.3288994],[-71.1544152,42.3289411],[-71.1543425,42.3289601],[-71.1543257,42.3289631],[-71.1543078,42.3289624],[-71.1542938,42.3289546],[-71.1542862,42.3289442],[-71.1542431,42.3287445],[-71.1542215,42.328589],[-71.1542268,42.3283907],[-71.1542482,42.3282414],[-71.1542642,42.3281362],[-71.1542706,42.3281166],[-71.1542857,42.3280997],[-71.1543017,42.3280876],[-71.1543211,42.328079],[-71.1543863,42.3280657],[-71.1545336,42.3280408],[-71.1546946,42.3280065],[-71.1548133,42.3279635],[-71.1549135,42.3279111],[-71.1550233,42.3278383],[-71.1553745,42.3275602],[-71.1556238,42.3273634],[-71.1563379,42.32675],[-71.1567161,42.3263463],[-71.1567851,42.3262652],[-71.1568203,42.3262292],[-71.1568643,42.3262138],[-71.1569075,42.3262095],[-71.1569505,42.3262185]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":945652204,"name":"Valley Road"},"geometry":{"type":"LineString","coordinates":[[-71.154308,42.3295137],[-71.1542785,42.3294682],[-71.1542602,42.3294269],[-71.1542486,42.3293515],[-71.1542556,42.329278],[-71.154279,42.3292167],[-71.1543198,42.3291536],[-71.1543704,42.329102],[-71.1544472,42.3290559],[-71.1545574,42.3290064],[-71.1546337,42.3289808],[-71.1547176,42.3289576],[-71.1548371,42.3289319],[-71.1549763,42.3289011],[-71.1551014,42.3288699],[-71.155234,42.3288273],[-71.1553648,42.3287701],[-71.1555043,42.3286917],[-71.1556306,42.3285994],[-71.1558989,42.3283646],[-71.1562124,42.3280904],[-71.1565612,42.3277856],[-71.1568536,42.3275326],[-71.1573515,42.3270922],[-71.157695,42.3267916],[-71.1577213,42.3267746],[-71.1577564,42.3267622],[-71.1577897,42.3267649],[-71.1578328,42.3267833],[-71.1581655,42.326988],[-71.1583322,42.327103],[-71.1583709,42.3271381],[-71.1584004,42.3271856],[-71.1584144,42.3272476],[-71.1584121,42.3273131],[-71.1583926,42.3273984],[-71.1583665,42.327469],[-71.1583046,42.3275603],[-71.1581953,42.327682],[-71.1580964,42.3277822],[-71.1579573,42.3279007],[-71.1578415,42.3279972],[-71.1576113,42.3281829],[-71.157317,42.3284175],[-71.1567598,42.3288347],[-71.1562644,42.329214],[-71.1559398,42.3294543],[-71.1556527,42.329648],[-71.1554748,42.3297505],[-71.1553431,42.3298247],[-71.155269,42.3298586],[-71.1552128,42.3298725],[-71.1551636,42.3298817],[-71.1551027,42.3298766],[-71.1550497,42.329859],[-71.1549462,42.3298174],[-71.1547578,42.3297419],[-71.1546753,42.3297086],[-71.1545254,42.3296532],[-71.1544157,42.329603],[-71.1543445,42.3295538],[-71.154335,42.3295434],[-71.154308,42.3295137]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":945652205,"name":"Crafts Road"},"geometry":{"type":"LineString","coordinates":[[-71.1584496,42.3261405],[-71.1583433,42.3262261],[-71.1582441,42.3263101],[-71.1581198,42.3264167],[-71.1579067,42.3266082],[-71.1578882,42.3266316],[-71.1578867,42.3266581],[-71.1578971,42.3266877],[-71.1579245,42.3267134],[-71.1580109,42.3267698],[-71.1584481,42.3270302]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":945652206,"name":"Boylston Street","surface":"asphalt","crossing":"traffic_signals","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1476096,42.3266401],[-71.1476211,42.3265769],[-71.1476407,42.3264698],[-71.147648,42.32643],[-71.1476535,42.3263997]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":945652207,"name":"Boylston Street","surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.1540763,42.3260627],[-71.1539457,42.3261086],[-71.1537328,42.3261821],[-71.1533889,42.3262968],[-71.1530843,42.3263905],[-71.1527702,42.3264773],[-71.1524963,42.3265447],[-71.1523517,42.3265739],[-71.1521595,42.3266042],[-71.1519691,42.3266271],[-71.1517714,42.3266428],[-71.1515871,42.3266526],[-71.1514416,42.3266538],[-71.1512297,42.326649],[-71.1509315,42.3266402],[-71.1504664,42.3266159],[-71.1501812,42.326596]]}},
@@ -1260,7 +1260,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":945652210,"name":"Boylston Street","crossing":"unmarked","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1501812,42.326596],[-71.1501809,42.3265739],[-71.1501805,42.3265544]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":945652211,"name":"Boylston Street","surface":"asphalt","crossing":"traffic_signals","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1482933,42.3264584],[-71.1482829,42.3264999],[-71.1482551,42.3266119],[-71.1482318,42.3267058]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":945652212,"name":"Reservoir Road","surface":"asphalt","crossing":"traffic_signals","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1482318,42.3267058],[-71.148143,42.3267008],[-71.1480409,42.326695]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":945652213,"name":"Reservoir Road"},"geometry":{"type":"LineString","coordinates":[[-71.1584491,42.3275628],[-71.1584153,42.3276192],[-71.1583636,42.3276883],[-71.1582609,42.3277989],[-71.1581168,42.3279207],[-71.1579984,42.3280192],[-71.1578518,42.3281251],[-71.1576192,42.3283109],[-71.1573322,42.3285346],[-71.1567498,42.3289824],[-71.1562605,42.329353],[-71.1558461,42.329654],[-71.1556794,42.3297576],[-71.155469,42.3298737],[-71.1554008,42.3299111],[-71.1553641,42.3299348],[-71.1553491,42.3299635],[-71.155353,42.3299986],[-71.15537,42.3300254],[-71.1554024,42.3300474],[-71.1556084,42.3301786],[-71.155774,42.3302969],[-71.1558609,42.3303734],[-71.1559093,42.3304168],[-71.155929,42.3304298],[-71.1559614,42.3304422],[-71.1559803,42.3304445],[-71.1559906,42.3304458],[-71.1560224,42.330443],[-71.1560528,42.3304323],[-71.1560752,42.3304145],[-71.1561307,42.3303592],[-71.1562032,42.3302788],[-71.1562933,42.330184],[-71.1564235,42.3300421],[-71.1565021,42.3299549],[-71.1565783,42.3298932],[-71.1566626,42.3298261],[-71.156777,42.3297537],[-71.1568825,42.3297006],[-71.1569967,42.3296464],[-71.1571743,42.3295601],[-71.1574306,42.3294368],[-71.1576246,42.3293415],[-71.1578278,42.3292439],[-71.1580681,42.3291253],[-71.1582125,42.3290536],[-71.1584451,42.3289257]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":945652213,"name":"Spooner Road"},"geometry":{"type":"LineString","coordinates":[[-71.1584491,42.3275628],[-71.1584153,42.3276192],[-71.1583636,42.3276883],[-71.1582609,42.3277989],[-71.1581168,42.3279207],[-71.1579984,42.3280192],[-71.1578518,42.3281251],[-71.1576192,42.3283109],[-71.1573322,42.3285346],[-71.1567498,42.3289824],[-71.1562605,42.329353],[-71.1558461,42.329654],[-71.1556794,42.3297576],[-71.155469,42.3298737],[-71.1554008,42.3299111],[-71.1553641,42.3299348],[-71.1553491,42.3299635],[-71.155353,42.3299986],[-71.15537,42.3300254],[-71.1554024,42.3300474],[-71.1556084,42.3301786],[-71.155774,42.3302969],[-71.1558609,42.3303734],[-71.1559093,42.3304168],[-71.155929,42.3304298],[-71.1559614,42.3304422],[-71.1559803,42.3304445],[-71.1559906,42.3304458],[-71.1560224,42.330443],[-71.1560528,42.3304323],[-71.1560752,42.3304145],[-71.1561307,42.3303592],[-71.1562032,42.3302788],[-71.1562933,42.330184],[-71.1564235,42.3300421],[-71.1565021,42.3299549],[-71.1565783,42.3298932],[-71.1566626,42.3298261],[-71.156777,42.3297537],[-71.1568825,42.3297006],[-71.1569967,42.3296464],[-71.1571743,42.3295601],[-71.1574306,42.3294368],[-71.1576246,42.3293415],[-71.1578278,42.3292439],[-71.1580681,42.3291253],[-71.1582125,42.3290536],[-71.1584451,42.3289257]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":945652214,"name":"Middlesex Road"},"geometry":{"type":"LineString","coordinates":[[-71.156005,42.3306574],[-71.1561139,42.3305483],[-71.1561488,42.3305128],[-71.156296,42.3303506],[-71.156455,42.3301764],[-71.1565594,42.3300702],[-71.1566197,42.3300078],[-71.1567006,42.329936],[-71.1567954,42.3298682],[-71.1569063,42.3298041],[-71.1571677,42.32968],[-71.1579708,42.3292895],[-71.1581955,42.3291782],[-71.1583532,42.3290945],[-71.1584488,42.3290405]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":945655445,"name":"Middlesex Road","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1559912,42.3306479],[-71.1559539,42.3306243],[-71.1559119,42.3305976]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":945655446,"name":"Middlesex Road"},"geometry":{"type":"LineString","coordinates":[[-71.1559119,42.3305976],[-71.1558992,42.3305986]]}},
@@ -1290,9 +1290,9 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":945657540,"name":"Willard Road"},"geometry":{"type":"LineString","coordinates":[[-71.1477558,42.3338629],[-71.1477475,42.3338553]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":945657541,"name":"Willard Road"},"geometry":{"type":"LineString","coordinates":[[-71.1477,42.3337496],[-71.1477013,42.3337436]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":945657542,"name":"Taylor Crossway","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1486963,42.3318976],[-71.1486544,42.3319437],[-71.1486107,42.3319917]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":945657543,"name":"Dean Road"},"geometry":{"type":"LineString","coordinates":[[-71.1486107,42.3319917],[-71.1486048,42.3320097]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":945657543,"name":"Taylor Crossway"},"geometry":{"type":"LineString","coordinates":[[-71.1486107,42.3319917],[-71.1486048,42.3320097]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":945657544,"name":"Taylor Crossway"},"geometry":{"type":"LineString","coordinates":[[-71.1487187,42.331894],[-71.1486963,42.3318976]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":947044968,"name":"Dean Road","surface":"concrete","width":"2","incline":"0%","wheelchair":"yes"},"geometry":{"type":"LineString","coordinates":[[-71.1475089,42.3337719],[-71.1475017,42.3337685],[-71.1474979,42.3337786],[-71.1474928,42.3337826],[-71.147481,42.3337856],[-71.1474615,42.3337897],[-71.1473533,42.3338154],[-71.1472593,42.3338333],[-71.1471787,42.3338452],[-71.1470807,42.3338571],[-71.1470015,42.3338551],[-71.1469168,42.3338452],[-71.1468564,42.3338283],[-71.1467812,42.3338005],[-71.1467087,42.3337588],[-71.1466483,42.3337141],[-71.1466133,42.3336724],[-71.1465905,42.3336387],[-71.1465529,42.3335612],[-71.1465354,42.3335315],[-71.1465207,42.3335176],[-71.1465126,42.3334947],[-71.1465046,42.3334555],[-71.146522,42.3334461],[-71.1465744,42.3334292],[-71.1467033,42.3333835],[-71.1468188,42.3333418],[-71.1471631,42.3332066],[-71.147173,42.3332039],[-71.1471853,42.3332023],[-71.1471869,42.3332023],[-71.1471955,42.3332022],[-71.1472062,42.333204],[-71.1472178,42.3332079],[-71.1472283,42.3332134],[-71.1472315,42.3332159],[-71.1472377,42.3332211],[-71.1472422,42.3332255],[-71.1472462,42.3332305],[-71.1473152,42.3333406],[-71.1473447,42.3333992],[-71.1474012,42.3335149],[-71.1474428,42.3336119],[-71.1474969,42.33374],[-71.1475014,42.3337526],[-71.1475017,42.3337685]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":947044968,"name":"Chestnut Hill Avenue","surface":"concrete","width":"2","incline":"0%","wheelchair":"yes"},"geometry":{"type":"LineString","coordinates":[[-71.1475089,42.3337719],[-71.1475017,42.3337685],[-71.1474979,42.3337786],[-71.1474928,42.3337826],[-71.147481,42.3337856],[-71.1474615,42.3337897],[-71.1473533,42.3338154],[-71.1472593,42.3338333],[-71.1471787,42.3338452],[-71.1470807,42.3338571],[-71.1470015,42.3338551],[-71.1469168,42.3338452],[-71.1468564,42.3338283],[-71.1467812,42.3338005],[-71.1467087,42.3337588],[-71.1466483,42.3337141],[-71.1466133,42.3336724],[-71.1465905,42.3336387],[-71.1465529,42.3335612],[-71.1465354,42.3335315],[-71.1465207,42.3335176],[-71.1465126,42.3334947],[-71.1465046,42.3334555],[-71.146522,42.3334461],[-71.1465744,42.3334292],[-71.1467033,42.3333835],[-71.1468188,42.3333418],[-71.1471631,42.3332066],[-71.147173,42.3332039],[-71.1471853,42.3332023],[-71.1471869,42.3332023],[-71.1471955,42.3332022],[-71.1472062,42.333204],[-71.1472178,42.3332079],[-71.1472283,42.3332134],[-71.1472315,42.3332159],[-71.1472377,42.3332211],[-71.1472422,42.3332255],[-71.1472462,42.3332305],[-71.1473152,42.3333406],[-71.1473447,42.3333992],[-71.1474012,42.3335149],[-71.1474428,42.3336119],[-71.1474969,42.33374],[-71.1475014,42.3337526],[-71.1475017,42.3337685]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":948293977,"name":"Cleveland Road","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.151958,42.3308489],[-71.1519819,42.3309096],[-71.1520073,42.3309753]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":948293978,"name":"Cleveland Road","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1517709,42.3307885],[-71.1517982,42.3308957],[-71.1518189,42.3309707]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":948293979,"name":"Eliot Street"},"geometry":{"type":"LineString","coordinates":[[-71.1517361,42.3307811],[-71.1517709,42.3307885]]}},
@@ -1300,7 +1300,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":948293981,"name":"Eliot Street"},"geometry":{"type":"LineString","coordinates":[[-71.1518635,42.331864],[-71.1518494,42.3318801]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":948293982,"name":"Eliot Street"},"geometry":{"type":"LineString","coordinates":[[-71.1518777,42.3317057],[-71.1518909,42.3317183]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":948293983,"name":"Dean Road","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1500187,42.3293573],[-71.150095,42.329395],[-71.1501547,42.3294245],[-71.1501654,42.3294299]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":948293984,"name":"Dean Road"},"geometry":{"type":"LineString","coordinates":[[-71.1501654,42.3294299],[-71.1501669,42.3294533]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":948293984,"name":"Eliot Street"},"geometry":{"type":"LineString","coordinates":[[-71.1501654,42.3294299],[-71.1501669,42.3294533]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":948293985,"name":"Dean Road"},"geometry":{"type":"LineString","coordinates":[[-71.1499995,42.3293615],[-71.1500187,42.3293573]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":948293986,"name":"Doran Road"},"geometry":{"type":"LineString","coordinates":[[-71.1484678,42.3286832],[-71.1482725,42.3286095],[-71.1480776,42.3285426],[-71.1480536,42.3285368],[-71.1480273,42.3285374],[-71.1480046,42.3285436],[-71.1479849,42.3285528],[-71.1479647,42.3285665],[-71.1476742,42.3288721],[-71.147665,42.3288833],[-71.1476641,42.3288946],[-71.1476683,42.3289076],[-71.147677,42.3289171],[-71.1480712,42.3291305],[-71.1480852,42.329134],[-71.1481005,42.3291296],[-71.1483062,42.3289369],[-71.1484941,42.3287678],[-71.1485093,42.3287432],[-71.148511,42.3287263],[-71.1485039,42.3287106],[-71.1484904,42.3286962],[-71.1484678,42.3286832]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":948293987,"name":"Doran Road","crossing":"marked","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1485184,42.3287077],[-71.1485792,42.32873],[-71.1486267,42.3287483]]}},
@@ -1320,9 +1320,9 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":948294001,"name":"Eliot Street","crossing":"traffic_signals","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1480215,42.3285173],[-71.1480641,42.3284573],[-71.1480873,42.3284247]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":948294002,"name":"Eliot Street","crossing":"unmarked","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1487797,42.3286097],[-71.1488044,42.3286268],[-71.1488462,42.3286578]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":952538284,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1697969,42.3333471],[-71.1698746,42.3336078],[-71.1699513,42.3338461],[-71.1699772,42.3339264],[-71.1700331,42.3341052],[-71.1700331,42.334115],[-71.170028,42.3341262],[-71.1700077,42.3341375],[-71.1698614,42.3341631],[-71.1698532,42.3341413],[-71.1698505,42.3341337]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":952538285,"surface":"concrete","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1709585,42.3331426],[-71.1708443,42.3331553],[-71.1708312,42.3331567],[-71.1707618,42.3331655],[-71.1706889,42.3331748],[-71.1705509,42.3331924],[-71.1702197,42.333233],[-71.1698448,42.3332846],[-71.1691769,42.3333713],[-71.1691577,42.3333799],[-71.1691481,42.3333842],[-71.1691334,42.3334164],[-71.1691362,42.3334387],[-71.1691622,42.3334972],[-71.1692581,42.3337332],[-71.1692721,42.3337675],[-71.1693645,42.3339946],[-71.1693854,42.3340343],[-71.16939,42.3340417],[-71.1694015,42.3340463],[-71.1694431,42.3340616],[-71.1695078,42.3340742],[-71.1695271,42.334085],[-71.169561,42.3341083],[-71.1695918,42.3341351],[-71.1696249,42.3341704],[-71.1696565,42.3341846],[-71.1696734,42.334188],[-71.1697193,42.3341873],[-71.1697411,42.3341836],[-71.1698614,42.3341631]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":952538285,"name":"Beacon Street","surface":"concrete","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1709585,42.3331426],[-71.1708443,42.3331553],[-71.1708312,42.3331567],[-71.1707618,42.3331655],[-71.1706889,42.3331748],[-71.1705509,42.3331924],[-71.1702197,42.333233],[-71.1698448,42.3332846],[-71.1691769,42.3333713],[-71.1691577,42.3333799],[-71.1691481,42.3333842],[-71.1691334,42.3334164],[-71.1691362,42.3334387],[-71.1691622,42.3334972],[-71.1692581,42.3337332],[-71.1692721,42.3337675],[-71.1693645,42.3339946],[-71.1693854,42.3340343],[-71.16939,42.3340417],[-71.1694015,42.3340463],[-71.1694431,42.3340616],[-71.1695078,42.3340742],[-71.1695271,42.334085],[-71.169561,42.3341083],[-71.1695918,42.3341351],[-71.1696249,42.3341704],[-71.1696565,42.3341846],[-71.1696734,42.334188],[-71.1697193,42.3341873],[-71.1697411,42.3341836],[-71.1698614,42.3341631]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":952538291,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1706455,42.3364662],[-71.1706499,42.3364781],[-71.1707359,42.3367138],[-71.1707485,42.3367482],[-71.1707794,42.3368375],[-71.1708148,42.3369395],[-71.1708949,42.337141],[-71.1709065,42.3371751],[-71.1709719,42.3373677],[-71.1710261,42.3375037],[-71.1710463,42.3375731],[-71.171042,42.3376037]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":952538292,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1710237,42.3376962],[-71.1709781,42.3376797],[-71.1707948,42.3376353],[-71.1707239,42.3376228],[-71.1706253,42.3376103],[-71.1704689,42.3375875],[-71.1704489,42.3375784],[-71.1702055,42.3374508],[-71.17014,42.3374053],[-71.1700509,42.337342],[-71.1700322,42.3373227],[-71.1700164,42.3373034],[-71.169986,42.3372385],[-71.1699623,42.3371685],[-71.1699359,42.3370956],[-71.1699091,42.3370214],[-71.1699002,42.337009],[-71.1698887,42.3370005],[-71.1698701,42.3369953],[-71.1698463,42.3370018],[-71.1698271,42.3370045]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":952538292,"name":"Commonwealth Avenue","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1710237,42.3376962],[-71.1709781,42.3376797],[-71.1707948,42.3376353],[-71.1707239,42.3376228],[-71.1706253,42.3376103],[-71.1704689,42.3375875],[-71.1704489,42.3375784],[-71.1702055,42.3374508],[-71.17014,42.3374053],[-71.1700509,42.337342],[-71.1700322,42.3373227],[-71.1700164,42.3373034],[-71.169986,42.3372385],[-71.1699623,42.3371685],[-71.1699359,42.3370956],[-71.1699091,42.3370214],[-71.1699002,42.337009],[-71.1698887,42.3370005],[-71.1698701,42.3369953],[-71.1698463,42.3370018],[-71.1698271,42.3370045]]}},
{"type":"Feature","properties":{"Type":"Stairs","osm":952538293,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1699359,42.3370956],[-71.1698504,42.3371073]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":952538298,"name":"Campanella Way","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1678931,42.3360273],[-71.1678551,42.3360067],[-71.1678109,42.335991],[-71.1677551,42.3359786],[-71.1676967,42.3359746],[-71.1676463,42.3359772],[-71.1675844,42.3359871],[-71.1675268,42.336006],[-71.1673932,42.336057],[-71.1669429,42.3362304],[-71.1667986,42.3362637],[-71.1666722,42.3362801],[-71.1664934,42.3363003],[-71.166411,42.3362953]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":952538299,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1660824,42.3363184],[-71.1660324,42.3363291],[-71.1655918,42.336405],[-71.1655512,42.3364109]]}},
@@ -1332,7 +1332,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":966831476,"name":"Spooner Road","surface":"asphalt","crossing":"unmarked","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1551741,42.3298883],[-71.1552214,42.3299158],[-71.1552937,42.3299549],[-71.1553383,42.3299897]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":966831477,"name":"Reservoir Road","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1536831,42.3294387],[-71.1535944,42.3294875],[-71.1535334,42.3295209]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":966831478,"name":"Valley Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1543001,42.3295389],[-71.1542364,42.3295355],[-71.1541833,42.3295322]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":966831479,"name":"Crafts Road"},"geometry":{"type":"LineString","coordinates":[[-71.1541833,42.3295322],[-71.1539287,42.3294734]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":966831479,"name":"Valley Road"},"geometry":{"type":"LineString","coordinates":[[-71.1541833,42.3295322],[-71.1539287,42.3294734]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":966831480,"name":"Cleveland Road","surface":"asphalt","crossing":"unmarked","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1530501,42.3297235],[-71.1529807,42.329731],[-71.1529152,42.3297381]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":966831481,"name":"Crafts Road"},"geometry":{"type":"LineString","coordinates":[[-71.1501319,42.3292116],[-71.1501398,42.329229]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":966831482,"name":"Valley Road","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1541425,42.3290903],[-71.1542072,42.3290296],[-71.1543032,42.3289674]]}},
@@ -1344,8 +1344,8 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":966831488,"name":"Denny Road"},"geometry":{"type":"LineString","coordinates":[[-71.1568396,42.3262069],[-71.1568643,42.3262138]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":966831489,"name":"Denny Road"},"geometry":{"type":"LineString","coordinates":[[-71.1566694,42.3261592],[-71.1566999,42.3261568]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":966831490,"name":"Valley Road","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1541201,42.3270039],[-71.1540336,42.3270333],[-71.1539515,42.3270648]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":966831491,"name":"Valley Road"},"geometry":{"type":"LineString","coordinates":[[-71.154143,42.327007],[-71.1541201,42.3270039]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":966831492,"name":"Fairway Road"},"geometry":{"type":"LineString","coordinates":[[-71.1539515,42.3270648],[-71.1539347,42.3270808]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":966831491,"name":"Fairway Road"},"geometry":{"type":"LineString","coordinates":[[-71.154143,42.327007],[-71.1541201,42.3270039]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":966831492,"name":"Valley Road"},"geometry":{"type":"LineString","coordinates":[[-71.1539515,42.3270648],[-71.1539347,42.3270808]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":966831493,"name":"Hilltop Road","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1531516,42.3273192],[-71.1530771,42.3273362],[-71.153024,42.3273505],[-71.1529681,42.3273656]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":966831494,"name":"Fairway Road"},"geometry":{"type":"LineString","coordinates":[[-71.1529681,42.3273656],[-71.1529468,42.327382]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":966831495,"name":"Hilltop Road"},"geometry":{"type":"LineString","coordinates":[[-71.153178,42.3273256],[-71.1531516,42.3273192]]}},
@@ -1363,14 +1363,14 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":966831507,"name":"Willard Road"},"geometry":{"type":"LineString","coordinates":[[-71.1494571,42.3325472],[-71.1494371,42.332547]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":966831508,"name":"Willard Road"},"geometry":{"type":"LineString","coordinates":[[-71.1493812,42.3326784],[-71.1493865,42.3326639]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":966831509,"name":"Willard Road"},"geometry":{"type":"LineString","coordinates":[[-71.1492754,42.3325691],[-71.1492894,42.3325727]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":966831510,"name":"Willard Road"},"geometry":{"type":"LineString","coordinates":[[-71.1493596,42.3324283],[-71.1493653,42.3324363]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":966831510,"name":"Taylor Crossway"},"geometry":{"type":"LineString","coordinates":[[-71.1493596,42.3324283],[-71.1493653,42.3324363]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":966831511,"name":"Taylor Crossway","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1504934,42.3332805],[-71.1504339,42.3333151],[-71.150389,42.3333412]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":966831512,"name":"Willow Crescent","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1504934,42.3332805],[-71.1505633,42.3333468],[-71.1506444,42.3334266]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":966831513,"name":"Taylor Crossway"},"geometry":{"type":"LineString","coordinates":[[-71.150389,42.3333412],[-71.1503801,42.3333463]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":966831514,"name":"Taylor Crossway"},"geometry":{"type":"LineString","coordinates":[[-71.1504877,42.3332696],[-71.1504934,42.3332805]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":966831515,"name":"Penniman Road","crossing":"unmarked","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1496695,42.3340536],[-71.1496135,42.3340606],[-71.1495336,42.3340644]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":966831516,"name":"Penniman Road"},"geometry":{"type":"LineString","coordinates":[[-71.1495336,42.3340644],[-71.1495203,42.334063]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":966831517,"name":"Penniman Road"},"geometry":{"type":"LineString","coordinates":[[-71.149682,42.3340489],[-71.1496695,42.3340536]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":966831517,"name":"Clinton Road"},"geometry":{"type":"LineString","coordinates":[[-71.149682,42.3340489],[-71.1496695,42.3340536]]}},
{"type":"Feature","properties":{"Type":"Stairs","osm":967060409,"incline":"down"},"geometry":{"type":"LineString","coordinates":[[-71.1555419,42.3324151],[-71.1554654,42.3323464]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":967411355},"geometry":{"type":"LineString","coordinates":[[-71.1798586,42.3165466],[-71.1797253,42.3164617]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":967411783},"geometry":{"type":"LineString","coordinates":[[-71.1693949,42.313297],[-71.1692864,42.3132671],[-71.1691255,42.3132195],[-71.1690557,42.3131997],[-71.1689109,42.3131481],[-71.1688197,42.3131084],[-71.1687714,42.313045],[-71.1687339,42.3129537],[-71.1686427,42.3128585],[-71.1685676,42.3127831],[-71.168471,42.3127593],[-71.1683608,42.3127821],[-71.1682159,42.3128343],[-71.168117,42.3128545],[-71.1679799,42.312866],[-71.1678541,42.3128863],[-71.1677332,42.3129176],[-71.1676312,42.3129176],[-71.1675239,42.312874],[-71.1675105,42.312753]]}},
@@ -1378,7 +1378,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":985005093,"surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1942527,42.3312753],[-71.1942728,42.3313358],[-71.1943043,42.3314335]]}},
{"type":"Feature","properties":{"Type":"Street","osm":985005094,"name":"Beacon Street","surface":"asphalt","width":"15.2"},"geometry":{"type":"LineString","coordinates":[[-71.1952984,42.3300691],[-71.1950865,42.3300407],[-71.1950739,42.3300401],[-71.1950546,42.3300402],[-71.1950442,42.3300414],[-71.1950245,42.3300441],[-71.1950044,42.3300471],[-71.1949779,42.3300513],[-71.1949514,42.3300555],[-71.1948418,42.3300715]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":988984908,"name":"Boylston Street","surface":"asphalt","tactile":"yes","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1738522,42.3211034],[-71.1738681,42.3210754],[-71.173883,42.3210491]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":991342371,"name":"Centre Street"},"geometry":{"type":"LineString","coordinates":[[-71.1942021,42.3321834],[-71.1940769,42.332373]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":991342371,"name":"Lyman Street"},"geometry":{"type":"LineString","coordinates":[[-71.1942021,42.3321834],[-71.1940769,42.332373]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":991342372,"name":"Centre Street","surface":"concrete:plates","tactile":"yes","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1940769,42.332373],[-71.1940484,42.3324081],[-71.1940177,42.332446]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":993140353,"name":"Willow Street"},"geometry":{"type":"LineString","coordinates":[[-71.193465,42.3330657],[-71.1934356,42.3330768],[-71.1934005,42.3330803],[-71.1933739,42.3330712],[-71.1931895,42.3328766],[-71.1931283,42.3328061],[-71.1929961,42.3326535]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":995236027,"name":"Saint Thomas More Road"},"geometry":{"type":"LineString","coordinates":[[-71.1635214,42.3362553],[-71.163522,42.3362698],[-71.1635507,42.3362851],[-71.1635728,42.3363132],[-71.163672,42.3364719],[-71.1637777,42.3366747],[-71.1638001,42.3367059],[-71.1638082,42.3367172],[-71.1638651,42.3367965],[-71.163983,42.337097],[-71.1642209,42.3376094],[-71.1643835,42.3379009],[-71.1644343,42.3380316],[-71.1644392,42.3380422],[-71.1645822,42.3383528],[-71.1647466,42.3385823]]}},
@@ -1407,9 +1407,9 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1024884533,"surface":"sett"},"geometry":{"type":"LineString","coordinates":[[-71.1468074,42.350189],[-71.1465676,42.3502919]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1024884534,"name":"Cambridge Street"},"geometry":{"type":"LineString","coordinates":[[-71.1469979,42.3501058],[-71.1470136,42.3500986],[-71.1471258,42.350055],[-71.1484124,42.3495554],[-71.1498229,42.3490077],[-71.1501532,42.3489389],[-71.1501907,42.3489064]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1024884535,"name":"Cambridge Street","surface":"asphalt","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1474071,42.350139],[-71.1472857,42.3501039],[-71.1471567,42.3500667]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1024884536,"name":"Murdock Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1474002,42.350174],[-71.1474423,42.3501495],[-71.1480115,42.349932],[-71.1480247,42.3499273]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1024884536,"name":"Sparhawk Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1474002,42.350174],[-71.1474423,42.3501495],[-71.1480115,42.349932],[-71.1480247,42.3499273]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1024884537,"name":"Murdock Street","surface":"asphalt","crossing":"marked","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1480247,42.3499273],[-71.1480882,42.3499073],[-71.1481688,42.3498819]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1024884538,"name":"Cambridge Street"},"geometry":{"type":"LineString","coordinates":[[-71.1481688,42.3498819],[-71.1482141,42.3498648],[-71.1485221,42.349737],[-71.1490026,42.3495376],[-71.1490194,42.349528]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1024884538,"name":"Murdock Street"},"geometry":{"type":"LineString","coordinates":[[-71.1481688,42.3498819],[-71.1482141,42.3498648],[-71.1485221,42.349737],[-71.1490026,42.3495376],[-71.1490194,42.349528]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1024884539,"name":"Cambridge Street","surface":"asphalt","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1485025,42.349702],[-71.1484642,42.3496398],[-71.1484303,42.3495846]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1024884540,"name":"Elko Street","surface":"asphalt","crossing":"marked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1490194,42.349528],[-71.1490534,42.349511],[-71.1490896,42.3494928]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1024884541,"name":"Henshaw Street"},"geometry":{"type":"LineString","coordinates":[[-71.1490896,42.3494928],[-71.1491072,42.3494904],[-71.149296,42.3494216],[-71.1494785,42.3493811],[-71.1496571,42.3493792],[-71.14968,42.3493834],[-71.1497252,42.3493975],[-71.1498913,42.3494961],[-71.1499824,42.3496348],[-71.1500567,42.3497185],[-71.150185,42.3497839],[-71.1503912,42.349844],[-71.1504699,42.3498558],[-71.1504865,42.3498763],[-71.1505,42.3498931],[-71.1504735,42.3500709],[-71.1504266,42.3503606],[-71.1503744,42.3506738],[-71.1503478,42.3508379],[-71.1503089,42.3509419],[-71.1502567,42.3510328],[-71.1502206,42.3510434]]}},
@@ -1430,14 +1430,14 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1024902850},"geometry":{"type":"LineString","coordinates":[[-71.1767879,42.3378627],[-71.1768994,42.337796]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1031033360,"name":"Commonwealth Avenue Service Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1914551,42.3364653],[-71.1914522,42.3364292],[-71.1914737,42.3363816],[-71.1915117,42.3363679],[-71.1916084,42.3363744],[-71.1918319,42.3363888],[-71.1922154,42.3363664],[-71.1927938,42.3362916],[-71.1928648,42.3362701],[-71.1928861,42.3362463]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1031033361,"name":"Centre Street","surface":"asphalt","crossing":"marked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1931728,42.3362149],[-71.1933046,42.3361858],[-71.1934255,42.3361591]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1031033362,"name":"Commonwealth Avenue Service Road"},"geometry":{"type":"LineString","coordinates":[[-71.1934255,42.3361591],[-71.1934083,42.3364401]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1031033362,"name":"Centre Street"},"geometry":{"type":"LineString","coordinates":[[-71.1934255,42.3361591],[-71.1934083,42.3364401]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1031033363,"name":"Commonwealth Avenue Service Road"},"geometry":{"type":"LineString","coordinates":[[-71.1934255,42.3361591],[-71.1935562,42.336123],[-71.1937826,42.3360605],[-71.1941434,42.3359465],[-71.1943329,42.3358904],[-71.1945602,42.3358556],[-71.1945644,42.3358767]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1031033364,"name":"Commonwealth Avenue","crossing":"marked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1931207,42.336192],[-71.1931391,42.3360604],[-71.1931554,42.3359479]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1031033365,"name":"Centre Street","crossing":"marked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1934735,42.335835],[-71.1933349,42.3358842],[-71.1932125,42.3359276],[-71.1931554,42.3359479]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1031033366,"name":"Commonwealth Avenue","crossing":"marked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.193532,42.3360651],[-71.1935232,42.335948],[-71.1935206,42.3358478],[-71.1934735,42.335835]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1031033367,"name":"Centre Street"},"geometry":{"type":"LineString","coordinates":[[-71.193532,42.3360651],[-71.1934723,42.3360863],[-71.1934408,42.336104],[-71.1934242,42.3361309],[-71.1934255,42.3361591]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1031033368,"name":"Commonwealth Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.193532,42.3360651],[-71.1935562,42.336123]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1031033369,"name":"Centre Street","surface":"paved"},"geometry":{"type":"LineString","coordinates":[[-71.1914551,42.3364653],[-71.1914561,42.3367971],[-71.1914581,42.3369039],[-71.1914669,42.3369407],[-71.1914782,42.3369579],[-71.191501,42.3369631],[-71.1915664,42.3369739],[-71.1916796,42.3369833],[-71.1930148,42.3371182],[-71.1930655,42.3371189],[-71.1930802,42.3371115],[-71.1930899,42.3371066],[-71.1931426,42.3368043],[-71.1932178,42.3363008],[-71.1932209,42.336254],[-71.1931728,42.3362149],[-71.1931378,42.3361938],[-71.1931207,42.336192],[-71.1930851,42.3361881],[-71.1930193,42.336197],[-71.1929431,42.3362092],[-71.1929059,42.3362233],[-71.1928861,42.3362463]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1031033369,"name":"Alden Street","surface":"paved"},"geometry":{"type":"LineString","coordinates":[[-71.1914551,42.3364653],[-71.1914561,42.3367971],[-71.1914581,42.3369039],[-71.1914669,42.3369407],[-71.1914782,42.3369579],[-71.191501,42.3369631],[-71.1915664,42.3369739],[-71.1916796,42.3369833],[-71.1930148,42.3371182],[-71.1930655,42.3371189],[-71.1930802,42.3371115],[-71.1930899,42.3371066],[-71.1931426,42.3368043],[-71.1932178,42.3363008],[-71.1932209,42.336254],[-71.1931728,42.3362149],[-71.1931378,42.3361938],[-71.1931207,42.336192],[-71.1930851,42.3361881],[-71.1930193,42.336197],[-71.1929431,42.3362092],[-71.1929059,42.3362233],[-71.1928861,42.3362463]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1050583596,"name":"Campanella Way","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1653996,42.3357846],[-71.1654661,42.3358359],[-71.1657103,42.3360112],[-71.165836,42.3360596],[-71.1660713,42.3361302],[-71.1662731,42.3361629],[-71.1662784,42.3361627],[-71.1665365,42.3361621],[-71.1666378,42.3361541],[-71.1667402,42.3361355],[-71.166903,42.3360936],[-71.1670057,42.3360701],[-71.1671136,42.3359942],[-71.1673631,42.3358935],[-71.1676356,42.335832],[-71.1676966,42.3358152],[-71.1678675,42.3357679],[-71.1681594,42.3357247],[-71.1682383,42.3357359]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1050583597,"name":"Campanella Way","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1661004,42.3392988],[-71.1660644,42.3392031],[-71.1660343,42.339123]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1051316636,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1653891,42.3363487],[-71.1653031,42.3363722],[-71.1652767,42.3363815],[-71.1649457,42.3365328],[-71.1646191,42.33669],[-71.1643495,42.3368152],[-71.1641477,42.3368744],[-71.1641028,42.3368897],[-71.1640676,42.3369006],[-71.1640058,42.3369174]]}},
@@ -1448,7 +1448,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1051316643},"geometry":{"type":"LineString","coordinates":[[-71.1538766,42.3365765],[-71.153832,42.336441],[-71.1538355,42.3363233],[-71.153856,42.3362746]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1051316644,"surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.1538823,42.3367429],[-71.1539151,42.3368949],[-71.1539877,42.3370571],[-71.1539788,42.3372468],[-71.1538992,42.3373371],[-71.1538418,42.337418],[-71.1536709,42.3376589],[-71.1536143,42.3378067],[-71.1535971,42.3378976]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1051316645},"geometry":{"type":"LineString","coordinates":[[-71.1532365,42.3336091],[-71.1534275,42.3336022],[-71.1534483,42.3336066]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1051316646},"geometry":{"type":"LineString","coordinates":[[-71.1537011,42.3340015],[-71.1536863,42.3339598],[-71.1536555,42.3338585],[-71.1536124,42.3338163],[-71.1535169,42.3337708],[-71.153463,42.333732],[-71.1534244,42.3336728],[-71.1534275,42.3336022],[-71.1534691,42.3334883],[-71.153523,42.3334416],[-71.1536016,42.3334257],[-71.1537202,42.333395],[-71.1537603,42.3333483],[-71.1537803,42.3332959],[-71.1537634,42.3332572],[-71.1537596,42.3332457]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1051316646,"name":"Beacon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1537011,42.3340015],[-71.1536863,42.3339598],[-71.1536555,42.3338585],[-71.1536124,42.3338163],[-71.1535169,42.3337708],[-71.153463,42.333732],[-71.1534244,42.3336728],[-71.1534275,42.3336022],[-71.1534691,42.3334883],[-71.153523,42.3334416],[-71.1536016,42.3334257],[-71.1537202,42.333395],[-71.1537603,42.3333483],[-71.1537803,42.3332959],[-71.1537634,42.3332572],[-71.1537596,42.3332457]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1051316647,"surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.1533213,42.3346105],[-71.1533461,42.3346801],[-71.1533603,42.3348005],[-71.1533072,42.33496],[-71.153178,42.3352766],[-71.1530046,42.3354584],[-71.1528294,42.3355735],[-71.1526506,42.3356298],[-71.1523538,42.3356896],[-71.152203,42.33572],[-71.1520521,42.3357438],[-71.1518675,42.3357719],[-71.1516643,42.3357957],[-71.1515222,42.335807],[-71.1515193,42.3358072],[-71.1514803,42.3358017],[-71.151455,42.3357956],[-71.1514297,42.3357843],[-71.1514042,42.3357667],[-71.1513894,42.3357528],[-71.1513745,42.3357388],[-71.1513468,42.3356819],[-71.1513345,42.3356181],[-71.1513405,42.3354367],[-71.1513414,42.3354119],[-71.1513199,42.3349777],[-71.1512876,42.3349234],[-71.1512923,42.3349185],[-71.1513015,42.3349092],[-71.1513186,42.3348896],[-71.151329,42.3348707],[-71.15133,42.3348461],[-71.15133,42.3348372],[-71.1513927,42.3348407],[-71.1513896,42.3347232],[-71.1513436,42.3347241],[-71.1513475,42.3346981],[-71.1513487,42.3345195],[-71.1513826,42.3344634],[-71.1514538,42.3343874],[-71.1515519,42.3342907],[-71.1516803,42.3341518],[-71.1518566,42.3339818],[-71.1519476,42.3339291],[-71.15201,42.3339053],[-71.1521012,42.3338973],[-71.152128,42.3339053],[-71.1527395,42.3342026],[-71.1527663,42.3342542],[-71.1527824,42.33427],[-71.1529487,42.3343692],[-71.1533213,42.3346105]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1051316649,"surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.1513405,42.3354367],[-71.1512591,42.3353635],[-71.1511406,42.3352968],[-71.1510662,42.3352772],[-71.1509646,42.3352832],[-71.1509238,42.3352905],[-71.15086,42.3353038],[-71.1507707,42.3353468],[-71.1507342,42.3353792],[-71.1507109,42.3354353]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1051316657,"name":"Beacon Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1419587,42.3375547],[-71.1419813,42.3375553],[-71.1420315,42.3375537],[-71.1424153,42.3374686],[-71.1424683,42.3374614],[-71.1434277,42.3372781],[-71.143608,42.3372449],[-71.1439384,42.3371807],[-71.1445051,42.337061],[-71.1446138,42.337038],[-71.144921,42.3369756],[-71.1451923,42.3369212],[-71.1453657,42.3368866],[-71.1454204,42.3368757],[-71.1454446,42.336866]]}},
@@ -1476,15 +1476,15 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1064562397,"name":"Commonwealth Avenue","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1636043,42.3403011],[-71.1635381,42.340303],[-71.1634815,42.3403047]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1064562398,"name":"Commonwealth Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1634815,42.3403047],[-71.1616601,42.3402494]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1064562399,"name":"Commonwealth Avenue","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1616601,42.3402494],[-71.1616095,42.34025],[-71.1615434,42.3402507]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1064562400,"name":"Commonwealth Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1613675,42.3402365],[-71.1613533,42.3402382],[-71.1612309,42.3402365],[-71.1606388,42.3402162],[-71.1606226,42.3402086]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1064562400,"name":"Greycliff Road"},"geometry":{"type":"LineString","coordinates":[[-71.1613675,42.3402365],[-71.1613533,42.3402382],[-71.1612309,42.3402365],[-71.1606388,42.3402162],[-71.1606226,42.3402086]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1064562401,"name":"Gerald Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1606226,42.3402086],[-71.1605653,42.3402105],[-71.1605157,42.3402122]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1064562402,"name":"Gerald Road"},"geometry":{"type":"LineString","coordinates":[[-71.1605157,42.3402122],[-71.160469,42.3402075],[-71.1597857,42.3401581]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1064562403,"name":"Foster Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1597751,42.3401491],[-71.159707,42.3401435],[-71.1596312,42.3401373]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1064562404,"name":"Commonwealth Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1596111,42.3401396],[-71.1590847,42.3400667],[-71.1586087,42.3399906],[-71.1584466,42.3399505]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1064562405,"name":"Lake Street","surface":"asphalt","tactile":"yes","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1660529,42.3401821],[-71.1661399,42.3401652],[-71.1662238,42.340149]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1064562406,"name":"Commonwealth Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1662238,42.340149],[-71.1665978,42.3401034]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1064562406,"name":"Lake Street"},"geometry":{"type":"LineString","coordinates":[[-71.1662238,42.340149],[-71.1665978,42.3401034]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1064562408,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1645863,42.3399892],[-71.1645836,42.3399289],[-71.1645828,42.3399188],[-71.1645809,42.3398971],[-71.1645945,42.3398646],[-71.164638,42.3398285],[-71.1646896,42.3397883],[-71.1647249,42.3397421],[-71.1647412,42.3396819],[-71.1647249,42.3395855],[-71.1646352,42.3391054]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1064562409,"name":"Central Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1645863,42.3399892],[-71.1642251,42.3399931],[-71.1638025,42.3399964],[-71.1631652,42.3399947],[-71.1625935,42.3399797],[-71.161214,42.3399305],[-71.1610634,42.3399333],[-71.160641,42.3399146],[-71.1600738,42.3398812],[-71.1599829,42.3398725],[-71.1598275,42.3398578],[-71.1597777,42.3398461],[-71.1597506,42.3398227]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1064562409,"name":"Commonwealth Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1645863,42.3399892],[-71.1642251,42.3399931],[-71.1638025,42.3399964],[-71.1631652,42.3399947],[-71.1625935,42.3399797],[-71.161214,42.3399305],[-71.1610634,42.3399333],[-71.160641,42.3399146],[-71.1600738,42.3398812],[-71.1599829,42.3398725],[-71.1598275,42.3398578],[-71.1597777,42.3398461],[-71.1597506,42.3398227]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1064562410,"name":"Wade Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1597368,42.3398185],[-71.1596479,42.3398101],[-71.1595742,42.3398032]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1064562411,"name":"Commonwealth Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1595512,42.339802],[-71.1594184,42.3398077],[-71.1592422,42.3397876],[-71.158998,42.3397394],[-71.1584479,42.3396308]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1064562412,"name":"Wade Street"},"geometry":{"type":"LineString","coordinates":[[-71.1597506,42.3398227],[-71.1597484,42.3397926],[-71.1597642,42.3397425],[-71.159817,42.339677],[-71.1609202,42.3383071]]}},
@@ -1496,7 +1496,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1064562422,"name":"Wallingford Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1532247,42.3445614],[-71.1532403,42.3444888],[-71.153252,42.3444337]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1064562423,"name":"Wiltshire Road"},"geometry":{"type":"LineString","coordinates":[[-71.1535436,42.3432975],[-71.1542073,42.343504],[-71.1546849,42.3436643],[-71.1547477,42.3436882],[-71.1547876,42.3437205],[-71.1549037,42.3438401],[-71.1549532,42.3438879],[-71.1550084,42.3439343],[-71.1550883,42.3439681],[-71.1554822,42.3441214],[-71.1558377,42.3442616]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1064562424,"name":"Hatherly Road","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1539733,42.3426252],[-71.1539525,42.3426561],[-71.1539308,42.3426885]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1064562425,"name":"Chestnut Hill Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1539106,42.3426946],[-71.1536978,42.3430184],[-71.1535926,42.3432042]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1064562425,"name":"Hatherly Road"},"geometry":{"type":"LineString","coordinates":[[-71.1539106,42.3426946],[-71.1536978,42.3430184],[-71.1535926,42.3432042]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1064562426,"name":"Wiltshire Road","surface":"asphalt","crossing":"unmarked","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1535817,42.343215],[-71.1535622,42.3432511],[-71.1535438,42.3432853]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1064562427,"name":"Wiltshire Road"},"geometry":{"type":"LineString","coordinates":[[-71.1535926,42.3432042],[-71.1543209,42.3434402],[-71.1547444,42.3435736],[-71.1548206,42.3436091],[-71.1548807,42.3436546],[-71.1549582,42.3437296],[-71.1550331,42.3438136],[-71.1550798,42.3438531],[-71.155148,42.3438886],[-71.1554486,42.3440032]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1064562428,"name":"Portina Road","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1554486,42.3440032],[-71.1555022,42.3440254],[-71.1555549,42.3440443]]}},
@@ -1511,11 +1511,11 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1064562439,"name":"Wallingford Road"},"geometry":{"type":"LineString","coordinates":[[-71.1512574,42.342722],[-71.1514663,42.3423043]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1064562440,"name":"Nottinghill Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.150147,42.3443966],[-71.150113,42.3443854],[-71.1500789,42.3443533],[-71.1500506,42.3443002],[-71.15006,42.3440697],[-71.1500771,42.3438784],[-71.1501375,42.3436577],[-71.1502188,42.3434384],[-71.1502433,42.3433407],[-71.1502547,42.3432499],[-71.1502074,42.3431437],[-71.1501016,42.3430446],[-71.149975,42.3429594],[-71.1498125,42.3429174],[-71.1496273,42.3428895],[-71.1494383,42.3428825],[-71.1492154,42.3428714],[-71.1490094,42.3428504],[-71.1489726,42.3428394],[-71.1488676,42.3428141],[-71.1487108,42.3427498],[-71.148571,42.3427065],[-71.1484066,42.3426842],[-71.1482233,42.3427093],[-71.1482051,42.3427145],[-71.1481307,42.3427359],[-71.1480078,42.3427959],[-71.1479058,42.3428867],[-71.1478529,42.3429482],[-71.1478189,42.3430166],[-71.1477848,42.3431325],[-71.1477981,42.3432317],[-71.1478264,42.3433267],[-71.1478661,42.3434161],[-71.1479663,42.3435152],[-71.1480929,42.3436326],[-71.148153,42.343672]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1064562441,"name":"Wallingford Road"},"geometry":{"type":"LineString","coordinates":[[-71.1514216,42.3420049],[-71.1514242,42.3420208],[-71.151425,42.3420269],[-71.151425,42.3420341],[-71.1514239,42.3420416],[-71.1514226,42.3420475],[-71.1514181,42.3420583],[-71.1514151,42.342064],[-71.1514104,42.342073],[-71.1514066,42.3420789],[-71.1513884,42.3421092],[-71.1513787,42.342126],[-71.1513662,42.342147],[-71.1513447,42.3421878],[-71.151334,42.3422048],[-71.1513135,42.3422455],[-71.151291,42.3422862],[-71.1512634,42.3423391],[-71.1512464,42.3423731],[-71.1512339,42.3424038],[-71.1512239,42.3424282],[-71.1512064,42.3424638],[-71.1511929,42.3424934],[-71.1511794,42.3425241],[-71.1511659,42.3425548],[-71.1511543,42.3425803],[-71.1511373,42.3426162],[-71.1511277,42.3426339],[-71.1508858,42.3431018],[-71.1508386,42.3432429],[-71.1507989,42.3433881],[-71.1507649,42.3435041],[-71.1506931,42.3436856],[-71.1506345,42.3438141],[-71.1505533,42.3439622],[-71.1504644,42.3440809],[-71.1504229,42.3441494],[-71.1503227,42.3442792],[-71.1502415,42.3443617],[-71.1502018,42.344391],[-71.150147,42.3443966]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1064562442,"name":"Euston Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1476889,42.3441418],[-71.1475524,42.3440893],[-71.1474182,42.3440237],[-71.1472255,42.3439077],[-71.147063,42.3437988],[-71.1469439,42.3437066],[-71.1467701,42.3435516],[-71.1466435,42.3433909],[-71.1465169,42.3431968],[-71.1464904,42.3431242],[-71.1465156,42.3430855],[-71.1466359,42.3430376],[-71.1468305,42.3430013],[-71.1470649,42.3429454],[-71.1471726,42.3429007],[-71.1472331,42.3428602],[-71.1473011,42.3428029],[-71.1473427,42.3426716],[-71.147337,42.3425906],[-71.1472916,42.3424579],[-71.1471839,42.3421842],[-71.1471027,42.3420179],[-71.1470779,42.3419187],[-71.147096,42.3418832],[-71.1471205,42.341857],[-71.1472085,42.3418336],[-71.1474619,42.3418471]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1064562442,"name":"Colborne Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1476889,42.3441418],[-71.1475524,42.3440893],[-71.1474182,42.3440237],[-71.1472255,42.3439077],[-71.147063,42.3437988],[-71.1469439,42.3437066],[-71.1467701,42.3435516],[-71.1466435,42.3433909],[-71.1465169,42.3431968],[-71.1464904,42.3431242],[-71.1465156,42.3430855],[-71.1466359,42.3430376],[-71.1468305,42.3430013],[-71.1470649,42.3429454],[-71.1471726,42.3429007],[-71.1472331,42.3428602],[-71.1473011,42.3428029],[-71.1473427,42.3426716],[-71.147337,42.3425906],[-71.1472916,42.3424579],[-71.1471839,42.3421842],[-71.1471027,42.3420179],[-71.1470779,42.3419187],[-71.147096,42.3418832],[-71.1471205,42.341857],[-71.1472085,42.3418336],[-71.1474619,42.3418471]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1064562443,"name":"Nottinghill Road","surface":"concrete:plates"},"geometry":{"type":"LineString","coordinates":[[-71.1499561,42.3439175],[-71.1499542,42.3439608],[-71.1499391,42.3441312],[-71.1499467,42.3442583],[-71.1499542,42.344391],[-71.1498994,42.3444957],[-71.1498125,42.3445726]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1077289557,"name":"Saint Thomas More Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1638437,42.336708],[-71.1638913,42.3366967],[-71.1639446,42.336684]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1077289558,"name":"Saint Thomas More Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1644553,42.3380385],[-71.1645017,42.3380278],[-71.1645608,42.3380141]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1077648663,"surface":"paved"},"geometry":{"type":"LineString","coordinates":[[-71.1781905,42.3235476],[-71.1781708,42.3236089],[-71.1781634,42.3236319],[-71.1781556,42.3236525],[-71.1781439,42.3236763],[-71.1781275,42.3237],[-71.1781086,42.3237239],[-71.1780938,42.3237393],[-71.1780748,42.3237586],[-71.1780459,42.3237939],[-71.1780252,42.3238248],[-71.1780118,42.3238524],[-71.1780021,42.3238767],[-71.1779958,42.3238996],[-71.1769703,42.3237557],[-71.1769255,42.3237474],[-71.1768882,42.3237377],[-71.1768678,42.3237301],[-71.1768477,42.3237217],[-71.1768322,42.323713],[-71.176822,42.3237069],[-71.1768073,42.3236959]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1077648663,"name":"Hammond Pond Parkway","surface":"paved"},"geometry":{"type":"LineString","coordinates":[[-71.1781905,42.3235476],[-71.1781708,42.3236089],[-71.1781634,42.3236319],[-71.1781556,42.3236525],[-71.1781439,42.3236763],[-71.1781275,42.3237],[-71.1781086,42.3237239],[-71.1780938,42.3237393],[-71.1780748,42.3237586],[-71.1780459,42.3237939],[-71.1780252,42.3238248],[-71.1780118,42.3238524],[-71.1780021,42.3238767],[-71.1779958,42.3238996],[-71.1769703,42.3237557],[-71.1769255,42.3237474],[-71.1768882,42.3237377],[-71.1768678,42.3237301],[-71.1768477,42.3237217],[-71.1768322,42.323713],[-71.176822,42.3237069],[-71.1768073,42.3236959]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1078681162,"surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.1981001,42.3490606],[-71.1980782,42.3490499],[-71.1980467,42.3490197],[-71.1980192,42.3489572],[-71.1979871,42.3489434],[-71.1978596,42.3489216],[-71.1977416,42.3488819],[-71.1976652,42.3488408],[-71.1975934,42.3487883],[-71.1975338,42.3487337],[-71.1974915,42.3486668],[-71.1974459,42.3485836],[-71.1973688,42.3485206],[-71.1973439,42.3485119],[-71.1972916,42.3484935]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1078681163},"geometry":{"type":"LineString","coordinates":[[-71.1975235,42.3504994],[-71.1974533,42.3505104],[-71.1972334,42.3505232],[-71.197122,42.3505351],[-71.1969611,42.3505609],[-71.1967331,42.3506184],[-71.1965601,42.350664],[-71.1964193,42.3506888],[-71.1962838,42.3506957],[-71.1962696,42.3506957],[-71.1961915,42.3506954]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1090260759,"surface":"concrete:plates"},"geometry":{"type":"LineString","coordinates":[[-71.1538076,42.3481814],[-71.1537512,42.3481618],[-71.1533661,42.3480277],[-71.1533381,42.348018]]}},
@@ -1550,7 +1550,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1106967701,"name":"Homer Street","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.2015289,42.3349135],[-71.2015213,42.3349506],[-71.2015132,42.33499]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1106967702,"name":"Homer Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1956635,42.33505],[-71.1956366,42.3350766],[-71.1956031,42.3351097]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1106967703,"name":"Bowen Street","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1950987,42.3346027],[-71.1950513,42.3345777],[-71.195008,42.3345549]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1106967704,"name":"Tyler Terrace","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1952739,42.3344116],[-71.1955935,42.3340155],[-71.1957108,42.3338523],[-71.1957426,42.3337994],[-71.1957456,42.3337406],[-71.1957326,42.3336833],[-71.1956909,42.3336106],[-71.1956521,42.333576],[-71.1956187,42.3335469],[-71.1955567,42.3335239],[-71.1954752,42.3335033],[-71.1954066,42.3335026],[-71.1951809,42.3335209],[-71.1950898,42.3335286],[-71.1950293,42.3335337],[-71.1949374,42.3335415],[-71.1944733,42.3335831],[-71.1944046,42.3335893],[-71.193646,42.3336359],[-71.1936119,42.333636],[-71.1935845,42.3336318],[-71.19357,42.3336242],[-71.1935575,42.3336126],[-71.1935537,42.3335957],[-71.1935656,42.3334915],[-71.1935854,42.3333593],[-71.1936342,42.3332218],[-71.1937008,42.3331226],[-71.1937621,42.3330285],[-71.1937783,42.3330036],[-71.1938817,42.3328948],[-71.1939841,42.3327743],[-71.1941431,42.3326295],[-71.1942484,42.3325139],[-71.194273,42.3325037],[-71.1942922,42.3324958],[-71.1944891,42.3325024],[-71.1949712,42.3325281],[-71.1951849,42.3325222],[-71.1952167,42.3325212],[-71.1953807,42.3325156],[-71.1959006,42.3324855],[-71.1963669,42.3324605],[-71.1966641,42.3324355],[-71.1968699,42.3323988],[-71.1971979,42.3323393],[-71.197684,42.3322415],[-71.1979802,42.3321827],[-71.1983083,42.3321144],[-71.1984673,42.3320813],[-71.1987099,42.3320306],[-71.1988699,42.3319887],[-71.1989952,42.3319454],[-71.1990737,42.3319204],[-71.1991443,42.3319145],[-71.1992765,42.3319263],[-71.1994594,42.3319527],[-71.199531,42.3319865],[-71.1995896,42.3320218],[-71.1997099,42.3321408],[-71.1997706,42.332221],[-71.1997387,42.3322819],[-71.199701,42.3323393],[-71.199697,42.3323922],[-71.1997729,42.3325084],[-71.1997944,42.3325414],[-71.1998451,42.3325913],[-71.1999306,42.3326317],[-71.2000131,42.332645],[-71.2001314,42.3326766],[-71.2002249,42.3326464],[-71.2002485,42.3326596],[-71.2004097,42.3327493],[-71.2005628,42.3328404]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1106967704,"name":"Bowen Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1952739,42.3344116],[-71.1955935,42.3340155],[-71.1957108,42.3338523],[-71.1957426,42.3337994],[-71.1957456,42.3337406],[-71.1957326,42.3336833],[-71.1956909,42.3336106],[-71.1956521,42.333576],[-71.1956187,42.3335469],[-71.1955567,42.3335239],[-71.1954752,42.3335033],[-71.1954066,42.3335026],[-71.1951809,42.3335209],[-71.1950898,42.3335286],[-71.1950293,42.3335337],[-71.1949374,42.3335415],[-71.1944733,42.3335831],[-71.1944046,42.3335893],[-71.193646,42.3336359],[-71.1936119,42.333636],[-71.1935845,42.3336318],[-71.19357,42.3336242],[-71.1935575,42.3336126],[-71.1935537,42.3335957],[-71.1935656,42.3334915],[-71.1935854,42.3333593],[-71.1936342,42.3332218],[-71.1937008,42.3331226],[-71.1937621,42.3330285],[-71.1937783,42.3330036],[-71.1938817,42.3328948],[-71.1939841,42.3327743],[-71.1941431,42.3326295],[-71.1942484,42.3325139],[-71.194273,42.3325037],[-71.1942922,42.3324958],[-71.1944891,42.3325024],[-71.1949712,42.3325281],[-71.1951849,42.3325222],[-71.1952167,42.3325212],[-71.1953807,42.3325156],[-71.1959006,42.3324855],[-71.1963669,42.3324605],[-71.1966641,42.3324355],[-71.1968699,42.3323988],[-71.1971979,42.3323393],[-71.197684,42.3322415],[-71.1979802,42.3321827],[-71.1983083,42.3321144],[-71.1984673,42.3320813],[-71.1987099,42.3320306],[-71.1988699,42.3319887],[-71.1989952,42.3319454],[-71.1990737,42.3319204],[-71.1991443,42.3319145],[-71.1992765,42.3319263],[-71.1994594,42.3319527],[-71.199531,42.3319865],[-71.1995896,42.3320218],[-71.1997099,42.3321408],[-71.1997706,42.332221],[-71.1997387,42.3322819],[-71.199701,42.3323393],[-71.199697,42.3323922],[-71.1997729,42.3325084],[-71.1997944,42.3325414],[-71.1998451,42.3325913],[-71.1999306,42.3326317],[-71.2000131,42.332645],[-71.2001314,42.3326766],[-71.2002249,42.3326464],[-71.2002485,42.3326596],[-71.2004097,42.3327493],[-71.2005628,42.3328404]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1106967705,"name":"Pleasant Street","surface":"asphalt","crossing":"uncontrolled","kerb":"flush"},"geometry":{"type":"LineString","coordinates":[[-71.2005628,42.3328404],[-71.200633,42.3328779],[-71.2006952,42.3329112]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1106967706,"name":"Pleasant Street","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.2002589,42.3326468],[-71.2003101,42.332613],[-71.2003653,42.3325767]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1106967707,"name":"Pleasant Street","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1997842,42.3322314],[-71.1998224,42.3322713],[-71.1998691,42.3323201]]}},
@@ -1576,7 +1576,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1119115503,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1697759,42.3342702],[-71.1696342,42.3342878],[-71.1695247,42.3342858],[-71.1694808,42.3342831],[-71.1694213,42.3342749],[-71.1693648,42.3342518],[-71.1693348,42.3342253]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1119115504,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1697732,42.3342593],[-71.1697759,42.3342702],[-71.1699719,42.3342313],[-71.1701342,42.3341982],[-71.1701787,42.3341461],[-71.1701379,42.3339889],[-71.1701575,42.3339177]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1119115505,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1686206,42.3340294],[-71.1686092,42.334056]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1119115506,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1686206,42.3340294],[-71.1691177,42.3339271],[-71.1691468,42.3339212],[-71.1691065,42.3338056],[-71.169048,42.3336379],[-71.1690686,42.3336143],[-71.1690326,42.3335329],[-71.1688916,42.3335595]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1119115506,"name":"Beacon Street","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1686206,42.3340294],[-71.1691177,42.3339271],[-71.1691468,42.3339212],[-71.1691065,42.3338056],[-71.169048,42.3336379],[-71.1690686,42.3336143],[-71.1690326,42.3335329],[-71.1688916,42.3335595]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1119115507,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.169216,42.3339845],[-71.1693348,42.3342253]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1119115508,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1693348,42.3342253],[-71.1693559,42.3343623]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1119115509,"name":"Perimeter Road","crossing":"uncontrolled","kerb":"unknown","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1670844,42.3341454],[-71.1670448,42.3341721],[-71.1670008,42.3342018]]}},
@@ -1586,9 +1586,9 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1119115513,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1702517,42.3360058],[-71.1701111,42.3359282],[-71.1700337,42.3357232],[-71.1699396,42.3354743]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1119115514,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.171206,42.3351606],[-71.1712534,42.3351579],[-71.1712634,42.3350972],[-71.1713409,42.3350727]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1119115515,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1712534,42.3351579],[-71.1712594,42.3351863],[-71.1714336,42.3352236]]}},
-{"type":"Feature","properties":{"Type":"Crossing","osm":1119115516,"name":"Linden Lane","crossing":"uncontrolled","kerb":"unknown","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1707548,42.3359371],[-71.1707154,42.3359177],[-71.1706849,42.3359027]]}},
+{"type":"Feature","properties":{"Type":"Crossing","osm":1119115516,"crossing":"uncontrolled","kerb":"unknown","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1707548,42.3359371],[-71.1707154,42.3359177],[-71.1706849,42.3359027]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1119115517,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1706849,42.3359027],[-71.1706734,42.3358978],[-71.1707214,42.3358392],[-71.1708839,42.3357818],[-71.170915,42.3357466],[-71.1708434,42.335557],[-71.1707744,42.3353668],[-71.1707291,42.3353355],[-71.170698,42.3352847],[-71.1706898,42.3352669]]}},
-{"type":"Feature","properties":{"Type":"Crossing","osm":1119115518,"name":"Linden Lane","crossing":"uncontrolled","kerb":"unknown","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1704774,42.3359947],[-71.1704973,42.3359608],[-71.1705143,42.3359318]]}},
+{"type":"Feature","properties":{"Type":"Crossing","osm":1119115518,"crossing":"uncontrolled","kerb":"unknown","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1704774,42.3359947],[-71.1704973,42.3359608],[-71.1705143,42.3359318]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1119115519,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1705143,42.3359318],[-71.17052,42.3359236],[-71.1704348,42.3359068],[-71.1704291,42.3358995],[-71.1707214,42.3358392]]}},
{"type":"Feature","properties":{"Type":"Stairs","osm":1119115520,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.165578,42.339116],[-71.1654501,42.3391426],[-71.1651486,42.3392823],[-71.1650685,42.3393687],[-71.1650429,42.339414]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1119115521,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1650429,42.339414],[-71.1650619,42.339479],[-71.1650872,42.3396234],[-71.165024,42.3396295]]}},
@@ -1632,7 +1632,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1158492840,"name":"Blue Trail"},"geometry":{"type":"LineString","coordinates":[[-71.1759336,42.326691],[-71.1762851,42.3266355],[-71.1764081,42.3265891]]}},
{"type":"Feature","properties":{"Type":"Street","osm":1159726149,"name":"Beacon Street","surface":"asphalt","width":"15.2"},"geometry":{"type":"LineString","coordinates":[[-71.1988628,42.330463],[-71.1987824,42.3304565],[-71.1980983,42.3303995]]}},
{"type":"Feature","properties":{"Type":"Street","osm":1159726150,"name":"Beacon Street","surface":"asphalt","width":"15.2"},"geometry":{"type":"LineString","coordinates":[[-71.2066416,42.3308091],[-71.2065842,42.3308056]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1163905491,"name":"Colborne Road"},"geometry":{"type":"LineString","coordinates":[[-71.143717,42.3432052],[-71.143797,42.3431231],[-71.143883,42.3430349],[-71.1440374,42.3428977],[-71.1441508,42.3428052],[-71.1442818,42.3427069],[-71.1443835,42.3426217],[-71.1446572,42.3424685],[-71.1448996,42.3423355],[-71.1450541,42.3422633],[-71.1452555,42.3421795],[-71.1454647,42.3421116],[-71.1456504,42.3420451],[-71.145752,42.342022],[-71.1458244,42.3420205],[-71.1458733,42.3420364],[-71.1459104,42.3420855],[-71.1459769,42.34223],[-71.1460727,42.3424772],[-71.1460429,42.3425164],[-71.1460179,42.3425494],[-71.1458048,42.3426563],[-71.1457876,42.342666],[-71.1455213,42.3428153],[-71.145277,42.3429656],[-71.1450013,42.3431549],[-71.1447647,42.3433398],[-71.144534,42.3435277],[-71.1444715,42.3435855],[-71.1444226,42.3436086],[-71.1443913,42.3436086],[-71.1441029,42.3434508],[-71.1437519,42.3432489],[-71.1437266,42.3432358],[-71.143722,42.3432211],[-71.143717,42.3432052]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1163905491,"name":"Commonwealth Avenue Frontage Road Westbound"},"geometry":{"type":"LineString","coordinates":[[-71.143717,42.3432052],[-71.143797,42.3431231],[-71.143883,42.3430349],[-71.1440374,42.3428977],[-71.1441508,42.3428052],[-71.1442818,42.3427069],[-71.1443835,42.3426217],[-71.1446572,42.3424685],[-71.1448996,42.3423355],[-71.1450541,42.3422633],[-71.1452555,42.3421795],[-71.1454647,42.3421116],[-71.1456504,42.3420451],[-71.145752,42.342022],[-71.1458244,42.3420205],[-71.1458733,42.3420364],[-71.1459104,42.3420855],[-71.1459769,42.34223],[-71.1460727,42.3424772],[-71.1460429,42.3425164],[-71.1460179,42.3425494],[-71.1458048,42.3426563],[-71.1457876,42.342666],[-71.1455213,42.3428153],[-71.145277,42.3429656],[-71.1450013,42.3431549],[-71.1447647,42.3433398],[-71.144534,42.3435277],[-71.1444715,42.3435855],[-71.1444226,42.3436086],[-71.1443913,42.3436086],[-71.1441029,42.3434508],[-71.1437519,42.3432489],[-71.1437266,42.3432358],[-71.143722,42.3432211],[-71.143717,42.3432052]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1163905532,"name":"Commonwealth Avenue Frontage Road Eastbound"},"geometry":{"type":"LineString","coordinates":[[-71.1462301,42.3413521],[-71.1462106,42.3413617],[-71.1459422,42.3414184],[-71.1459328,42.3414204],[-71.1458866,42.3414303],[-71.1455128,42.3415214],[-71.1452623,42.3416112],[-71.1450623,42.3416734]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1163905533,"name":"Cummings Road"},"geometry":{"type":"LineString","coordinates":[[-71.1450623,42.3416734],[-71.1450315,42.3416122],[-71.1450231,42.3415655],[-71.1449969,42.3414814],[-71.14498,42.3413833],[-71.14498,42.341299],[-71.14498,42.3411677],[-71.1449688,42.3410227],[-71.1449445,42.3409398],[-71.1448866,42.3408514],[-71.1448361,42.3407809],[-71.1447483,42.3407008],[-71.1447261,42.3406824],[-71.1446697,42.3406358],[-71.1445725,42.3405709],[-71.1444324,42.3405046],[-71.1442641,42.3404424],[-71.1440735,42.3403996],[-71.1438566,42.340383],[-71.1435034,42.3403664],[-71.1431912,42.340383],[-71.1429594,42.3403775],[-71.1428398,42.3403526],[-71.1427389,42.3403277],[-71.1426847,42.3402877],[-71.1426136,42.3402034],[-71.1425924,42.3401563],[-71.1425912,42.3401536],[-71.1425781,42.3400984],[-71.1425818,42.3400127],[-71.1426061,42.3399326],[-71.1426398,42.3398649],[-71.1426493,42.33979]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1163905535,"name":"Kilsyth Road","surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.1425768,42.3398464],[-71.1426398,42.3398649],[-71.1427239,42.3398055],[-71.1428136,42.3397682],[-71.1429015,42.3397378],[-71.1430529,42.3397074],[-71.1433108,42.3396701],[-71.1435258,42.3396452],[-71.1438361,42.33963],[-71.1441763,42.3396397],[-71.1444062,42.3396576],[-71.1445221,42.3396811],[-71.1445725,42.3396977],[-71.1446118,42.3397322],[-71.1446754,42.3398193],[-71.1447197,42.3398977],[-71.144737,42.3399284],[-71.1448043,42.3400403],[-71.1448922,42.3401523],[-71.1449651,42.34022],[-71.145081,42.3402987],[-71.1451651,42.3403443],[-71.1453053,42.3404065],[-71.1454585,42.3404548],[-71.1455782,42.3404673],[-71.1457726,42.3404673],[-71.1459558,42.3404617],[-71.1460754,42.3404617],[-71.1462567,42.3404493],[-71.1464156,42.3404203],[-71.1465333,42.3403982],[-71.1465819,42.3403802],[-71.1466567,42.3403678],[-71.1466941,42.3403636],[-71.1467446,42.3403761],[-71.1468081,42.3404327],[-71.146909,42.3405211],[-71.14701,42.3405695],[-71.1471614,42.3406344],[-71.1473147,42.3406565],[-71.1473651,42.3406717],[-71.1473932,42.3407021]]}},
@@ -1653,7 +1653,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188215488,"name":"Fisher Avenue","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1467026,42.3347963],[-71.146696,42.3347697],[-71.1466877,42.3347483],[-71.1466776,42.3347292],[-71.1466622,42.3347111],[-71.1466398,42.3346942],[-71.1465988,42.3346735],[-71.146546,42.3346509]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1188215489,"name":"Fisher Avenue","surface":"asphalt","tactile":"yes","crossing":"uncontrolled","kerb":"flush"},"geometry":{"type":"LineString","coordinates":[[-71.1465504,42.3348214],[-71.1465108,42.3348279],[-71.1464451,42.3348376]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188555891,"name":"Dean Road"},"geometry":{"type":"LineString","coordinates":[[-71.1422479,42.3335048],[-71.1422751,42.3335109],[-71.1423161,42.3335122],[-71.1423375,42.3335129],[-71.1425091,42.3335209],[-71.1426955,42.3335248],[-71.1429222,42.3335209],[-71.1431046,42.333507],[-71.1432964,42.3334881],[-71.1433862,42.3334762],[-71.143472,42.3334673],[-71.1435834,42.3334515],[-71.1437309,42.3334277],[-71.1438663,42.3333999],[-71.1440152,42.3333632],[-71.1441252,42.3333355],[-71.1443572,42.3332681],[-71.144502,42.3332195],[-71.1446683,42.333155],[-71.1446976,42.3331446],[-71.1447072,42.3331412],[-71.1447124,42.3331438],[-71.1447206,42.3331481],[-71.1447702,42.3332165],[-71.1448708,42.3333593],[-71.1449821,42.3335179],[-71.1451189,42.3337072],[-71.1451417,42.333741],[-71.1451471,42.3337747],[-71.1451384,42.333787],[-71.145131,42.3337975],[-71.1451028,42.3338133],[-71.1446683,42.3339759],[-71.1443022,42.3341177],[-71.1441064,42.3341841],[-71.1436866,42.3343021],[-71.1434948,42.3343526],[-71.1433795,42.3343913],[-71.1433259,42.3344062],[-71.1432521,42.3344131],[-71.1431958,42.3344022],[-71.1431341,42.3343834],[-71.1430791,42.3343358],[-71.1429691,42.3342357],[-71.1428542,42.3341392],[-71.1427666,42.3340592],[-71.1427157,42.3340166],[-71.1426325,42.3339422],[-71.1425588,42.3338758],[-71.1424488,42.3337727],[-71.1423737,42.3337033],[-71.1423227,42.3336527],[-71.1422879,42.333616],[-71.1422704,42.3335863],[-71.1422744,42.3335516],[-71.1422999,42.3335228],[-71.1423161,42.3335122]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188555923,"name":"Fisher Avenue","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1434053,42.3345185],[-71.1434425,42.3345212],[-71.1434533,42.3345053],[-71.1434895,42.3344885],[-71.1436008,42.3344518],[-71.1437711,42.3344032],[-71.1438865,42.3343715],[-71.144042,42.3343318],[-71.1441681,42.3342902],[-71.1443786,42.3342188],[-71.1444524,42.334193],[-71.144565,42.3341494],[-71.1446537,42.3341206],[-71.1448032,42.3340635],[-71.1449242,42.3340159],[-71.1451916,42.3339065],[-71.1452385,42.3339085],[-71.1452647,42.3339218],[-71.1452923,42.3339463],[-71.1453364,42.3340196],[-71.1454164,42.3341307],[-71.1454536,42.3341797],[-71.1454897,42.3342237],[-71.1455334,42.3342695],[-71.1455942,42.3343339],[-71.1456495,42.3343829],[-71.1457297,42.3344463],[-71.1458085,42.3345056],[-71.1458694,42.3345434],[-71.1459402,42.3345824],[-71.1460108,42.3346223],[-71.1460648,42.3346459],[-71.1461589,42.3346889],[-71.1462282,42.3347165],[-71.1463222,42.3347463],[-71.1463398,42.3347549],[-71.1463528,42.3347638],[-71.1463604,42.334773],[-71.1463694,42.3347894],[-71.1463719,42.334801],[-71.1463699,42.334813],[-71.1463645,42.3348268],[-71.1463584,42.3348378],[-71.1463497,42.3348468],[-71.1463337,42.3348558],[-71.1463098,42.3348626]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188555923,"name":"Dean Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1434053,42.3345185],[-71.1434425,42.3345212],[-71.1434533,42.3345053],[-71.1434895,42.3344885],[-71.1436008,42.3344518],[-71.1437711,42.3344032],[-71.1438865,42.3343715],[-71.144042,42.3343318],[-71.1441681,42.3342902],[-71.1443786,42.3342188],[-71.1444524,42.334193],[-71.144565,42.3341494],[-71.1446537,42.3341206],[-71.1448032,42.3340635],[-71.1449242,42.3340159],[-71.1451916,42.3339065],[-71.1452385,42.3339085],[-71.1452647,42.3339218],[-71.1452923,42.3339463],[-71.1453364,42.3340196],[-71.1454164,42.3341307],[-71.1454536,42.3341797],[-71.1454897,42.3342237],[-71.1455334,42.3342695],[-71.1455942,42.3343339],[-71.1456495,42.3343829],[-71.1457297,42.3344463],[-71.1458085,42.3345056],[-71.1458694,42.3345434],[-71.1459402,42.3345824],[-71.1460108,42.3346223],[-71.1460648,42.3346459],[-71.1461589,42.3346889],[-71.1462282,42.3347165],[-71.1463222,42.3347463],[-71.1463398,42.3347549],[-71.1463528,42.3347638],[-71.1463604,42.334773],[-71.1463694,42.3347894],[-71.1463719,42.334801],[-71.1463699,42.334813],[-71.1463645,42.3348268],[-71.1463584,42.3348378],[-71.1463497,42.3348468],[-71.1463337,42.3348558],[-71.1463098,42.3348626]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188555924,"name":"Clinton Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1464451,42.3348376],[-71.1463098,42.3348626],[-71.1461474,42.3348896],[-71.1456935,42.3349649],[-71.1453338,42.3350257],[-71.1451525,42.3350523],[-71.1450873,42.3350606],[-71.1449817,42.3350707],[-71.1449421,42.3350711],[-71.1448766,42.3350711],[-71.1447692,42.3350638],[-71.1446958,42.335054],[-71.1446494,42.3350452],[-71.14446,42.335001],[-71.144265,42.3349413],[-71.1441119,42.3348837],[-71.1439365,42.3348106],[-71.1437207,42.3347015],[-71.1435716,42.3346305],[-71.1434725,42.3345706],[-71.1434446,42.3345407],[-71.1434425,42.3345212]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1188555941,"name":"Buckminster Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1466288,42.332368],[-71.1465837,42.3323087],[-71.1465428,42.3322549]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188555942,"name":"Buckminster Road"},"geometry":{"type":"LineString","coordinates":[[-71.1465221,42.3322459],[-71.1465121,42.3322557],[-71.1465001,42.3322625],[-71.1464616,42.3322793],[-71.1462831,42.3323543],[-71.1460947,42.3324301],[-71.1458251,42.3325402],[-71.1456306,42.332616],[-71.1453242,42.3327434],[-71.1450962,42.3328332],[-71.1448562,42.3329353],[-71.1447965,42.3329635],[-71.1447964,42.3329735]]}},
@@ -1672,13 +1672,13 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188750874,"name":"Englewood Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.147298,42.3375856],[-71.1473637,42.3378235],[-71.1473918,42.3379138],[-71.1473744,42.3379504],[-71.1473315,42.3379772],[-71.1463927,42.3380515],[-71.1463599,42.3380514],[-71.1461781,42.3380565],[-71.1460212,42.3380317],[-71.1458898,42.3379901],[-71.145753,42.3379247],[-71.1456471,42.3378503],[-71.1455907,42.3377988],[-71.145517,42.3377264],[-71.1454553,42.3376629],[-71.1453534,42.337544],[-71.1452407,42.3373844],[-71.145226,42.3373394]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188750875,"name":"Lanark Road"},"geometry":{"type":"LineString","coordinates":[[-71.146308,42.3389042],[-71.1462818,42.3389265],[-71.1462604,42.3389553],[-71.1462222,42.3390143],[-71.1461786,42.3390767],[-71.1460954,42.3391659],[-71.1459881,42.3392933],[-71.1459782,42.3393207],[-71.1459659,42.3393619],[-71.1459615,42.3393943],[-71.1459586,42.3394194]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188750876,"name":"Colliston Road"},"geometry":{"type":"LineString","coordinates":[[-71.1458346,42.3395164],[-71.1458245,42.3395144],[-71.1455932,42.339669],[-71.1455201,42.3397131],[-71.145394,42.3397582],[-71.145282,42.3397914],[-71.1451915,42.3398113],[-71.1451023,42.3398202],[-71.1450319,42.3398237],[-71.1449454,42.3398237],[-71.1448931,42.3398217]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188750877,"name":"Colliston Road"},"geometry":{"type":"LineString","coordinates":[[-71.1459705,42.3381468],[-71.1459861,42.3381677],[-71.1460062,42.3381935],[-71.146025,42.3382232],[-71.1460451,42.3382866],[-71.146084,42.3384165],[-71.1461199,42.338536],[-71.1461694,42.3386879],[-71.1461873,42.3387446],[-71.1461994,42.3388101],[-71.1461953,42.3388785],[-71.1461846,42.3389231],[-71.1461497,42.3389835],[-71.1460827,42.3390658],[-71.1459741,42.3391758],[-71.1459352,42.3392284],[-71.145899,42.3392928],[-71.1458708,42.3393374],[-71.1458306,42.339386],[-71.1457997,42.3394267],[-71.1457813,42.3394428],[-71.1457473,42.3394724],[-71.1456199,42.3395675],[-71.145518,42.3396359],[-71.1454268,42.3396845],[-71.1453262,42.3397261],[-71.1452444,42.3397509],[-71.1451881,42.3397598],[-71.1451076,42.3397678],[-71.1450311,42.3397727],[-71.1449467,42.3397707],[-71.1448648,42.3397598],[-71.1448074,42.3397406],[-71.1447619,42.339707],[-71.1447414,42.3396806],[-71.1447269,42.3396469],[-71.1447088,42.3395924],[-71.144688,42.3395398],[-71.1446572,42.3394283],[-71.1446169,42.3392414],[-71.1445566,42.3389386],[-71.1444996,42.3386308],[-71.1444164,42.3381887],[-71.144401,42.3381189],[-71.1443675,42.3379864],[-71.1443004,42.3377525],[-71.1442334,42.3375473],[-71.1442391,42.337533]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188753300,"name":"Hammond Street"},"geometry":{"type":"LineString","coordinates":[[-71.1654724,42.3233627],[-71.1654646,42.3233713],[-71.1654238,42.3233623],[-71.16539,42.3233616],[-71.1653329,42.3233613],[-71.1652958,42.3233592],[-71.1652139,42.3233461],[-71.1651416,42.3233352],[-71.1650933,42.3233266],[-71.1650641,42.3233224],[-71.1650239,42.3233223],[-71.1649831,42.323326],[-71.1649399,42.3233319],[-71.1648531,42.3233527],[-71.1648084,42.3233669],[-71.1644023,42.3234785],[-71.1642357,42.3235236],[-71.1642263,42.3235474],[-71.1642303,42.3235791],[-71.164284,42.3236585],[-71.1643783,42.3238015],[-71.1644366,42.3239049],[-71.1644758,42.3239926],[-71.164489,42.3240268],[-71.1645093,42.3240789],[-71.1645348,42.3241483],[-71.1645562,42.3242504],[-71.1645951,42.324415],[-71.1646206,42.3245152],[-71.1646521,42.3245919],[-71.1646756,42.3246401],[-71.1647494,42.3247273],[-71.1647963,42.324768],[-71.1648526,42.3248126],[-71.1649693,42.324884],[-71.1650672,42.3249623],[-71.165149,42.3250555],[-71.1652,42.3251507],[-71.1652237,42.3252215],[-71.1652402,42.3252821],[-71.1652781,42.3254771],[-71.1653247,42.3257094],[-71.1653484,42.3258341],[-71.1653661,42.3259279],[-71.1654008,42.3260206],[-71.1653831,42.3260242]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188750877,"name":"Lanark Road"},"geometry":{"type":"LineString","coordinates":[[-71.1459705,42.3381468],[-71.1459861,42.3381677],[-71.1460062,42.3381935],[-71.146025,42.3382232],[-71.1460451,42.3382866],[-71.146084,42.3384165],[-71.1461199,42.338536],[-71.1461694,42.3386879],[-71.1461873,42.3387446],[-71.1461994,42.3388101],[-71.1461953,42.3388785],[-71.1461846,42.3389231],[-71.1461497,42.3389835],[-71.1460827,42.3390658],[-71.1459741,42.3391758],[-71.1459352,42.3392284],[-71.145899,42.3392928],[-71.1458708,42.3393374],[-71.1458306,42.339386],[-71.1457997,42.3394267],[-71.1457813,42.3394428],[-71.1457473,42.3394724],[-71.1456199,42.3395675],[-71.145518,42.3396359],[-71.1454268,42.3396845],[-71.1453262,42.3397261],[-71.1452444,42.3397509],[-71.1451881,42.3397598],[-71.1451076,42.3397678],[-71.1450311,42.3397727],[-71.1449467,42.3397707],[-71.1448648,42.3397598],[-71.1448074,42.3397406],[-71.1447619,42.339707],[-71.1447414,42.3396806],[-71.1447269,42.3396469],[-71.1447088,42.3395924],[-71.144688,42.3395398],[-71.1446572,42.3394283],[-71.1446169,42.3392414],[-71.1445566,42.3389386],[-71.1444996,42.3386308],[-71.1444164,42.3381887],[-71.144401,42.3381189],[-71.1443675,42.3379864],[-71.1443004,42.3377525],[-71.1442334,42.3375473],[-71.1442391,42.337533]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188753300,"name":"Boylston Street"},"geometry":{"type":"LineString","coordinates":[[-71.1654724,42.3233627],[-71.1654646,42.3233713],[-71.1654238,42.3233623],[-71.16539,42.3233616],[-71.1653329,42.3233613],[-71.1652958,42.3233592],[-71.1652139,42.3233461],[-71.1651416,42.3233352],[-71.1650933,42.3233266],[-71.1650641,42.3233224],[-71.1650239,42.3233223],[-71.1649831,42.323326],[-71.1649399,42.3233319],[-71.1648531,42.3233527],[-71.1648084,42.3233669],[-71.1644023,42.3234785],[-71.1642357,42.3235236],[-71.1642263,42.3235474],[-71.1642303,42.3235791],[-71.164284,42.3236585],[-71.1643783,42.3238015],[-71.1644366,42.3239049],[-71.1644758,42.3239926],[-71.164489,42.3240268],[-71.1645093,42.3240789],[-71.1645348,42.3241483],[-71.1645562,42.3242504],[-71.1645951,42.324415],[-71.1646206,42.3245152],[-71.1646521,42.3245919],[-71.1646756,42.3246401],[-71.1647494,42.3247273],[-71.1647963,42.324768],[-71.1648526,42.3248126],[-71.1649693,42.324884],[-71.1650672,42.3249623],[-71.165149,42.3250555],[-71.1652,42.3251507],[-71.1652237,42.3252215],[-71.1652402,42.3252821],[-71.1652781,42.3254771],[-71.1653247,42.3257094],[-71.1653484,42.3258341],[-71.1653661,42.3259279],[-71.1654008,42.3260206],[-71.1653831,42.3260242]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1188753301,"name":"Hammond Street","surface":"asphalt","crossing":"traffic_signals","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1642185,42.3235283],[-71.1640544,42.3235802],[-71.1638726,42.3236377]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188753302,"name":"Hammond Street"},"geometry":{"type":"LineString","coordinates":[[-71.1638615,42.3236451],[-71.1639219,42.3236629],[-71.1639809,42.3236818],[-71.1640382,42.3237197],[-71.164084,42.3237826],[-71.1641452,42.3238665],[-71.1641955,42.3239554],[-71.1642303,42.3240348],[-71.1642666,42.3241161],[-71.164284,42.3241765],[-71.1643028,42.3242509],[-71.1643242,42.3243282],[-71.1643443,42.3244145],[-71.1643685,42.324472],[-71.1644141,42.3245484],[-71.1644811,42.3246326],[-71.1645576,42.324711],[-71.1646193,42.3247933],[-71.1646917,42.3248637],[-71.1647061,42.3248714],[-71.1647561,42.3248984],[-71.1647949,42.3249252],[-71.1648258,42.3249506],[-71.1648633,42.3249767],[-71.1649103,42.3250124],[-71.1649612,42.325063],[-71.1649854,42.3250868],[-71.1650109,42.3251215],[-71.1650363,42.3251641],[-71.1650605,42.3252286],[-71.1650777,42.3252892],[-71.1651061,42.325414],[-71.1651839,42.3258393],[-71.1651918,42.3259074],[-71.1651745,42.3259206],[-71.1651302,42.3259474],[-71.1650149,42.3259722],[-71.164516,42.3260664],[-71.1639526,42.3261916]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188753303,"name":"Dunster Road"},"geometry":{"type":"LineString","coordinates":[[-71.1639526,42.3261916],[-71.1639112,42.3262002],[-71.1638602,42.3262082],[-71.163824,42.3261933],[-71.1637757,42.3261447],[-71.1635665,42.3259068],[-71.1632151,42.3254943],[-71.1629979,42.3252414],[-71.1626706,42.3248587],[-71.1624654,42.3246257],[-71.1624172,42.3245741],[-71.162389,42.3245513],[-71.1623354,42.3245088],[-71.1623045,42.3244919],[-71.1622227,42.3244403],[-71.1621275,42.3243907],[-71.1619411,42.3242916],[-71.1618231,42.3242281],[-71.161807,42.3242073],[-71.1618137,42.3241746],[-71.1618445,42.3241508],[-71.1620269,42.3241032],[-71.1625245,42.3239703],[-71.1627927,42.3239029],[-71.1629724,42.3238612],[-71.1630877,42.3238473],[-71.1632285,42.3238176],[-71.1634981,42.3237413],[-71.1638615,42.3236451]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188753304,"name":"Norfolk Road"},"geometry":{"type":"LineString","coordinates":[[-71.1620928,42.3244828],[-71.1620271,42.3244471],[-71.1618313,42.3243489],[-71.1616543,42.3242617],[-71.1615644,42.3242319],[-71.1614652,42.3242399],[-71.1612157,42.3243073],[-71.1605519,42.3244669],[-71.1601013,42.32457],[-71.1593416,42.3247299],[-71.1591826,42.3247634],[-71.1591706,42.3247719],[-71.1591504,42.3247862],[-71.1591384,42.324813],[-71.1591545,42.3248447],[-71.1593114,42.3250212],[-71.1594093,42.3251352],[-71.1597973,42.3255348],[-71.1599873,42.325745],[-71.1602971,42.3260771],[-71.1604585,42.3262332],[-71.1606488,42.3262373],[-71.1608266,42.3262198],[-71.1609696,42.3261927],[-71.1612198,42.3261099],[-71.1613995,42.3260395],[-71.1619198,42.3258432],[-71.1620097,42.3258243],[-71.1621783,42.3258303],[-71.162293,42.3258563]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188753305,"name":"Norfolk Road"},"geometry":{"type":"LineString","coordinates":[[-71.162699,42.3264242],[-71.1626775,42.3263924],[-71.1626185,42.326328],[-71.1624999,42.3261778],[-71.1624214,42.3260831],[-71.162353,42.3260107],[-71.1622819,42.3259602],[-71.1622256,42.3259364],[-71.1621438,42.3259195],[-71.1620351,42.3259185],[-71.1619507,42.3259354],[-71.1614437,42.3261277],[-71.1611447,42.3262378],[-71.1609975,42.3262773],[-71.160767,42.3263185],[-71.1605899,42.3263379],[-71.1605737,42.3263495],[-71.1605724,42.3263627],[-71.1606377,42.3264371],[-71.1608134,42.3266284],[-71.1611393,42.3269705],[-71.1611742,42.3269794],[-71.1612412,42.3269675],[-71.161614,42.3268109],[-71.1618179,42.3267286],[-71.1618567,42.3267141],[-71.1621532,42.3266036],[-71.1621781,42.3265963],[-71.1622142,42.3265856],[-71.162294,42.326562],[-71.1623614,42.3265429],[-71.1625045,42.3265025],[-71.1625348,42.3264951],[-71.1626346,42.3264708],[-71.1626708,42.3264589],[-71.1626951,42.3264475],[-71.162699,42.3264242]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188753304,"name":"Boylston Street"},"geometry":{"type":"LineString","coordinates":[[-71.1620928,42.3244828],[-71.1620271,42.3244471],[-71.1618313,42.3243489],[-71.1616543,42.3242617],[-71.1615644,42.3242319],[-71.1614652,42.3242399],[-71.1612157,42.3243073],[-71.1605519,42.3244669],[-71.1601013,42.32457],[-71.1593416,42.3247299],[-71.1591826,42.3247634],[-71.1591706,42.3247719],[-71.1591504,42.3247862],[-71.1591384,42.324813],[-71.1591545,42.3248447],[-71.1593114,42.3250212],[-71.1594093,42.3251352],[-71.1597973,42.3255348],[-71.1599873,42.325745],[-71.1602971,42.3260771],[-71.1604585,42.3262332],[-71.1606488,42.3262373],[-71.1608266,42.3262198],[-71.1609696,42.3261927],[-71.1612198,42.3261099],[-71.1613995,42.3260395],[-71.1619198,42.3258432],[-71.1620097,42.3258243],[-71.1621783,42.3258303],[-71.162293,42.3258563]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188753305,"name":"Devon Road"},"geometry":{"type":"LineString","coordinates":[[-71.162699,42.3264242],[-71.1626775,42.3263924],[-71.1626185,42.326328],[-71.1624999,42.3261778],[-71.1624214,42.3260831],[-71.162353,42.3260107],[-71.1622819,42.3259602],[-71.1622256,42.3259364],[-71.1621438,42.3259195],[-71.1620351,42.3259185],[-71.1619507,42.3259354],[-71.1614437,42.3261277],[-71.1611447,42.3262378],[-71.1609975,42.3262773],[-71.160767,42.3263185],[-71.1605899,42.3263379],[-71.1605737,42.3263495],[-71.1605724,42.3263627],[-71.1606377,42.3264371],[-71.1608134,42.3266284],[-71.1611393,42.3269705],[-71.1611742,42.3269794],[-71.1612412,42.3269675],[-71.161614,42.3268109],[-71.1618179,42.3267286],[-71.1618567,42.3267141],[-71.1621532,42.3266036],[-71.1621781,42.3265963],[-71.1622142,42.3265856],[-71.162294,42.326562],[-71.1623614,42.3265429],[-71.1625045,42.3265025],[-71.1625348,42.3264951],[-71.1626346,42.3264708],[-71.1626708,42.3264589],[-71.1626951,42.3264475],[-71.162699,42.3264242]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188753306,"name":"Norfolk Road"},"geometry":{"type":"LineString","coordinates":[[-71.1610333,42.3270627],[-71.1610387,42.3270379],[-71.1610079,42.3269963],[-71.1607584,42.3267315],[-71.1605237,42.3264797],[-71.1603896,42.32633],[-71.1599189,42.3258293],[-71.1597821,42.3256796],[-71.1596346,42.3255169],[-71.1595997,42.325506],[-71.1595246,42.3255397],[-71.1593436,42.3256349],[-71.1589211,42.3258471],[-71.1586891,42.325978],[-71.158508,42.326098],[-71.1584496,42.3261405]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188753307,"name":"Circuit Road"},"geometry":{"type":"LineString","coordinates":[[-71.1610575,42.3270483],[-71.1610333,42.3270627],[-71.1609629,42.3271004],[-71.1605633,42.3273785],[-71.1604721,42.3274514],[-71.1604406,42.3274762],[-71.1604151,42.3274895],[-71.1603762,42.3274861],[-71.1602535,42.3274092],[-71.1599229,42.3272099],[-71.1595434,42.3269759],[-71.1593,42.3268133],[-71.159196,42.3267434],[-71.1591598,42.3267162]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188753308,"name":"Boylston Street"},"geometry":{"type":"LineString","coordinates":[[-71.1595387,42.3254242],[-71.159544,42.3254133],[-71.1594904,42.3253618],[-71.1593476,42.3252071],[-71.1592416,42.3250995],[-71.1591115,42.3249617],[-71.1590076,42.3248506],[-71.1589741,42.3248288],[-71.1589454,42.3248218],[-71.1589332,42.3248189],[-71.1588728,42.3248258],[-71.158435,42.3249225],[-71.1580823,42.3250129],[-71.1577966,42.3250911],[-71.1573178,42.325218],[-71.1568813,42.3253305],[-71.1562899,42.3254847],[-71.1558419,42.3256077],[-71.1557608,42.3256334],[-71.1554879,42.325741],[-71.1554536,42.3257563],[-71.1553129,42.3258194],[-71.1548193,42.3260345],[-71.154745,42.3260645]]}},
@@ -1688,9 +1688,9 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188753312,"name":"Hilltop Road"},"geometry":{"type":"LineString","coordinates":[[-71.1531827,42.3275927],[-71.1531866,42.3277174],[-71.1531785,42.3278245],[-71.1531638,42.3279772],[-71.1531477,42.3280629],[-71.1531249,42.3281487]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188753313,"name":"Boylston Street"},"geometry":{"type":"LineString","coordinates":[[-71.1472639,42.3266208],[-71.1470819,42.3266059],[-71.1467484,42.3265764],[-71.1465333,42.3265692],[-71.1463513,42.3265598]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188753314,"name":"Eliot Crescent"},"geometry":{"type":"LineString","coordinates":[[-71.1463161,42.3269579],[-71.1463402,42.3269817],[-71.1464086,42.3270253],[-71.1464904,42.3270709],[-71.1466728,42.3271711],[-71.1467841,42.3272385],[-71.1469317,42.3273238],[-71.1469679,42.3273446],[-71.1469935,42.3273762],[-71.1470014,42.3274279],[-71.146996,42.3274794],[-71.1469089,42.3275786],[-71.1466688,42.3278156],[-71.1466715,42.3278473],[-71.1467028,42.3278597],[-71.1468056,42.3278879],[-71.1474645,42.3280919]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188753315,"name":"Eliot Street"},"geometry":{"type":"LineString","coordinates":[[-71.1453526,42.3265391],[-71.1453113,42.3265379],[-71.1445291,42.3265155],[-71.1442435,42.3265104],[-71.1441775,42.3265127],[-71.1441298,42.3265165],[-71.1441024,42.3265217],[-71.1440838,42.3265302],[-71.1440691,42.3265406],[-71.1440536,42.3265584],[-71.1440337,42.3265918],[-71.1440255,42.3266149],[-71.1440284,42.3266327],[-71.1440362,42.3266535],[-71.1440483,42.326677],[-71.1440663,42.3266986],[-71.1441475,42.3267507],[-71.1442897,42.3268251],[-71.1449267,42.3271909],[-71.1449924,42.3272266],[-71.1450192,42.3272385],[-71.1450581,42.3272207],[-71.1451386,42.3271463],[-71.1452271,42.327063],[-71.1453022,42.3270184],[-71.1453383,42.3270001]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188753315,"name":"Timon Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1453526,42.3265391],[-71.1453113,42.3265379],[-71.1445291,42.3265155],[-71.1442435,42.3265104],[-71.1441775,42.3265127],[-71.1441298,42.3265165],[-71.1441024,42.3265217],[-71.1440838,42.3265302],[-71.1440691,42.3265406],[-71.1440536,42.3265584],[-71.1440337,42.3265918],[-71.1440255,42.3266149],[-71.1440284,42.3266327],[-71.1440362,42.3266535],[-71.1440483,42.326677],[-71.1440663,42.3266986],[-71.1441475,42.3267507],[-71.1442897,42.3268251],[-71.1449267,42.3271909],[-71.1449924,42.3272266],[-71.1450192,42.3272385],[-71.1450581,42.3272207],[-71.1451386,42.3271463],[-71.1452271,42.327063],[-71.1453022,42.3270184],[-71.1453383,42.3270001]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188753316,"name":"Loveland Road"},"geometry":{"type":"LineString","coordinates":[[-71.1474624,42.3283306],[-71.1471637,42.328233],[-71.1465038,42.3280277],[-71.1463215,42.3279663],[-71.1462262,42.3279385],[-71.1459942,42.3278486],[-71.145955,42.3278397],[-71.1459218,42.3278485],[-71.145894,42.3278705],[-71.1458837,42.327907],[-71.145891,42.327998],[-71.1459245,42.3280773],[-71.1459875,42.3281735],[-71.1460532,42.3282429],[-71.1461712,42.3283757],[-71.1462584,42.32846],[-71.1463872,42.3285968],[-71.1465682,42.32881],[-71.1466259,42.3288913],[-71.1467157,42.3290559],[-71.1467734,42.3291649],[-71.1468458,42.3293176],[-71.1468995,42.3294237],[-71.1469249,42.3294376],[-71.1469571,42.3294406],[-71.146992,42.3294267],[-71.1470537,42.3293722],[-71.1471851,42.3292294],[-71.1473903,42.3290093],[-71.1474227,42.3289794],[-71.1474619,42.3289432]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188758758,"name":"Eliot Street"},"geometry":{"type":"LineString","coordinates":[[-71.1459822,42.3298203],[-71.1460036,42.3298312],[-71.1460237,42.3298342],[-71.1460452,42.3298332],[-71.1461042,42.3298193],[-71.146367,42.3297608],[-71.1464556,42.329735],[-71.1465146,42.3297182],[-71.1466098,42.3296845],[-71.1466983,42.3296438],[-71.1467466,42.329618],[-71.1467895,42.3295893],[-71.146811,42.3295685],[-71.146811,42.3295377],[-71.1468016,42.329511],[-71.1467117,42.3293285],[-71.1466286,42.3291501],[-71.1465964,42.3290876],[-71.1465468,42.3289954],[-71.146422,42.3288189],[-71.1463644,42.3287446],[-71.1462826,42.3286504],[-71.1462101,42.328579],[-71.1461444,42.3285145],[-71.1460371,42.3283926],[-71.1459419,42.3282885],[-71.1458346,42.3281715],[-71.1458118,42.3281299],[-71.1457971,42.3280942],[-71.1457783,42.3280565],[-71.1457689,42.3280208],[-71.1457568,42.3279553],[-71.1457568,42.327885],[-71.1457515,42.3278235],[-71.1457434,42.3277808],[-71.1457126,42.3277342],[-71.145692,42.327718],[-71.1453156,42.3275488],[-71.1450622,42.327417],[-71.1448114,42.3272801],[-71.1444989,42.3271017],[-71.1441837,42.3269222],[-71.1440308,42.3268389],[-71.1439531,42.3268042],[-71.1438605,42.3267725],[-71.1437398,42.3267457],[-71.1436527,42.3267408],[-71.14354,42.3267378],[-71.1432436,42.3267408],[-71.1431873,42.3267437],[-71.1431632,42.3267626],[-71.143162,42.3267839],[-71.1431792,42.3268062],[-71.1432315,42.3268409],[-71.143415,42.3269686],[-71.1436146,42.3271339],[-71.1438516,42.3273329],[-71.1439949,42.3274686],[-71.1442065,42.3276498],[-71.1444114,42.3278339],[-71.1445306,42.3279458],[-71.1447784,42.3281844],[-71.1451574,42.3285468],[-71.1452645,42.3286478],[-71.1454105,42.3288102],[-71.1455016,42.32893],[-71.1456248,42.329124],[-71.1457346,42.3293082],[-71.1458391,42.3295072],[-71.1459822,42.3298203]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188758758,"name":"Chestnut Hill Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1459822,42.3298203],[-71.1460036,42.3298312],[-71.1460237,42.3298342],[-71.1460452,42.3298332],[-71.1461042,42.3298193],[-71.146367,42.3297608],[-71.1464556,42.329735],[-71.1465146,42.3297182],[-71.1466098,42.3296845],[-71.1466983,42.3296438],[-71.1467466,42.329618],[-71.1467895,42.3295893],[-71.146811,42.3295685],[-71.146811,42.3295377],[-71.1468016,42.329511],[-71.1467117,42.3293285],[-71.1466286,42.3291501],[-71.1465964,42.3290876],[-71.1465468,42.3289954],[-71.146422,42.3288189],[-71.1463644,42.3287446],[-71.1462826,42.3286504],[-71.1462101,42.328579],[-71.1461444,42.3285145],[-71.1460371,42.3283926],[-71.1459419,42.3282885],[-71.1458346,42.3281715],[-71.1458118,42.3281299],[-71.1457971,42.3280942],[-71.1457783,42.3280565],[-71.1457689,42.3280208],[-71.1457568,42.3279553],[-71.1457568,42.327885],[-71.1457515,42.3278235],[-71.1457434,42.3277808],[-71.1457126,42.3277342],[-71.145692,42.327718],[-71.1453156,42.3275488],[-71.1450622,42.327417],[-71.1448114,42.3272801],[-71.1444989,42.3271017],[-71.1441837,42.3269222],[-71.1440308,42.3268389],[-71.1439531,42.3268042],[-71.1438605,42.3267725],[-71.1437398,42.3267457],[-71.1436527,42.3267408],[-71.14354,42.3267378],[-71.1432436,42.3267408],[-71.1431873,42.3267437],[-71.1431632,42.3267626],[-71.143162,42.3267839],[-71.1431792,42.3268062],[-71.1432315,42.3268409],[-71.143415,42.3269686],[-71.1436146,42.3271339],[-71.1438516,42.3273329],[-71.1439949,42.3274686],[-71.1442065,42.3276498],[-71.1444114,42.3278339],[-71.1445306,42.3279458],[-71.1447784,42.3281844],[-71.1451574,42.3285468],[-71.1452645,42.3286478],[-71.1454105,42.3288102],[-71.1455016,42.32893],[-71.1456248,42.329124],[-71.1457346,42.3293082],[-71.1458391,42.3295072],[-71.1459822,42.3298203]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1188758759,"name":"Loveland Road","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.146811,42.3295685],[-71.1468936,42.3294962],[-71.1469571,42.3294406]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188758760,"name":"Ackers Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1474616,42.329094],[-71.147248,42.3293191],[-71.147211,42.3293549],[-71.1471663,42.3293983],[-71.1471538,42.3294133],[-71.1470907,42.329489],[-71.1470119,42.3295614],[-71.1469229,42.3296313],[-71.1468523,42.3296784],[-71.14683,42.3296913],[-71.1467655,42.3297271],[-71.1466983,42.3297584],[-71.1466283,42.3297874],[-71.1465564,42.3298125],[-71.1464817,42.3298343],[-71.1463656,42.3298649],[-71.1462157,42.3298968],[-71.1460956,42.3299244],[-71.1460655,42.3299465],[-71.1460555,42.3299687],[-71.1460606,42.3299872],[-71.146077,42.3300359],[-71.146121,42.3301768],[-71.1461476,42.3302814],[-71.1461623,42.3303898],[-71.1462,42.3306498]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188758761,"name":"Chestnut Hill Avenue","surface":"unpaved","rough":true},"geometry":{"type":"LineString","coordinates":[[-71.1462,42.3306498],[-71.1462089,42.3307589]]}},
@@ -1698,29 +1698,29 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188758777,"name":"Hyslop Road"},"geometry":{"type":"LineString","coordinates":[[-71.1441292,42.3322326],[-71.1441401,42.3322105],[-71.1441741,42.3321834],[-71.1442869,42.3320828],[-71.1443685,42.3320034],[-71.144446,42.331925],[-71.1445045,42.3318506],[-71.1445296,42.3318186],[-71.1445725,42.3317531],[-71.1446106,42.3316707],[-71.1446568,42.3315551],[-71.144669,42.3314889],[-71.1446759,42.3314495],[-71.144684,42.3313952],[-71.1446827,42.3313209],[-71.1446718,42.3312465],[-71.1446514,42.3311851],[-71.1446215,42.3311309],[-71.1445847,42.3310504],[-71.1445399,42.33096],[-71.1445276,42.3309117],[-71.1445086,42.3308504],[-71.1445004,42.330783],[-71.1444964,42.3307328],[-71.144495,42.3306805],[-71.1445004,42.3306232],[-71.1445086,42.3305709],[-71.1445331,42.3305066],[-71.144582,42.3304081],[-71.1446541,42.3303095],[-71.1447248,42.3302422],[-71.1448322,42.3301598],[-71.1449397,42.3300934],[-71.1450144,42.3300572],[-71.1450716,42.3300391],[-71.1451205,42.3300341],[-71.14516,42.3300421],[-71.145204,42.3300659],[-71.1452691,42.330129],[-71.1454101,42.3302674],[-71.1454942,42.3303676],[-71.1456447,42.3305822],[-71.1457247,42.3307195],[-71.1457532,42.3307776],[-71.1458128,42.3308438],[-71.1458969,42.330915],[-71.1459729,42.3309651],[-71.1460487,42.3310102]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188762651,"name":"Eliot Crescent"},"geometry":{"type":"LineString","coordinates":[[-71.1451553,42.3273028],[-71.1451667,42.3272772],[-71.145219,42.3272158],[-71.1452998,42.3271455],[-71.145321,42.3271254],[-71.1453402,42.3271108],[-71.1453539,42.3271018],[-71.1453686,42.3270939],[-71.1453838,42.3270861],[-71.1454051,42.3270774],[-71.145428,42.3270699],[-71.1454571,42.3270611],[-71.1454765,42.3270581],[-71.1455187,42.3270527],[-71.1455952,42.3270517],[-71.1457045,42.3270586],[-71.145846,42.327068],[-71.1460217,42.3270789],[-71.1461243,42.3270849],[-71.1462329,42.3270908],[-71.1462678,42.3270948],[-71.1463014,42.3271003],[-71.146337,42.3271082],[-71.146394,42.327132],[-71.1464645,42.3271708],[-71.1466237,42.3272611],[-71.1467862,42.3273554],[-71.1468453,42.3273912],[-71.1468688,42.3274066],[-71.1468802,42.3274264],[-71.1468822,42.3274507],[-71.1468735,42.3274741],[-71.1468453,42.3275004],[-71.1467647,42.3275749],[-71.1465874,42.3277461],[-71.146525,42.3278112],[-71.1465048,42.327831],[-71.1464598,42.3278578]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1188762652,"name":"Eliot Crescent","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1451553,42.3273028],[-71.1451035,42.3272783],[-71.1450192,42.3272385]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188762653,"name":"Eliot Street"},"geometry":{"type":"LineString","coordinates":[[-71.1451553,42.3273028],[-71.1451642,42.3273212]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1188762653,"name":"Eliot Crescent"},"geometry":{"type":"LineString","coordinates":[[-71.1451553,42.3273028],[-71.1451642,42.3273212]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196111205,"name":"Chiswick Road"},"geometry":{"type":"LineString","coordinates":[[-71.1509845,42.3402546],[-71.1509627,42.3402298],[-71.1508907,42.3401822],[-71.1507932,42.3401338],[-71.1506519,42.3400735],[-71.1504967,42.3400288],[-71.1503488,42.3399898],[-71.1502017,42.3399311],[-71.1500503,42.3398537],[-71.149939,42.339778],[-71.1497703,42.3396442],[-71.1497447,42.3396258],[-71.1496113,42.3395295],[-71.1495315,42.3394885],[-71.1493239,42.3394289],[-71.1492708,42.3394264],[-71.1492643,42.3393809],[-71.149231,42.3393669]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196111206,"name":"Lanark Road"},"geometry":{"type":"LineString","coordinates":[[-71.147463,42.3405815],[-71.1474201,42.3405806],[-71.1473076,42.3405701],[-71.1471909,42.3405419],[-71.1470515,42.3404858],[-71.146941,42.3404223],[-71.1468539,42.3403512],[-71.1468223,42.3403082],[-71.1468158,42.3402834],[-71.1468189,42.3402602]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196111207,"name":"Kilsyth Road"},"geometry":{"type":"LineString","coordinates":[[-71.1462539,42.3398319],[-71.1463097,42.3398697],[-71.146418,42.3399508],[-71.1465177,42.3400385],[-71.1465963,42.3401199],[-71.1466456,42.3401928],[-71.1466652,42.3402318],[-71.1466651,42.340256],[-71.1466375,42.3402799],[-71.1465789,42.3402927],[-71.1464723,42.3403152],[-71.1463371,42.3403426],[-71.1461788,42.3403562],[-71.146017,42.3403645],[-71.145878,42.340369],[-71.1457332,42.3403719],[-71.1455587,42.3403707],[-71.1454297,42.3403443],[-71.1453184,42.3403144],[-71.1452002,42.3402594],[-71.1450989,42.3401857],[-71.144998,42.3401063],[-71.1449271,42.3400192],[-71.1448566,42.3399127],[-71.1448464,42.3398896],[-71.1448393,42.3398737],[-71.1448489,42.3398509],[-71.1448931,42.3398217]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196111211,"name":"Sutherland Road"},"geometry":{"type":"LineString","coordinates":[[-71.147461,42.3408158],[-71.1473368,42.3409173],[-71.1472289,42.3410266],[-71.1471095,42.3411365],[-71.1470197,42.3412265],[-71.1469971,42.3412492],[-71.1469647,42.3412862],[-71.1469745,42.3413156]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196111212,"name":"Sutherland Road"},"geometry":{"type":"LineString","coordinates":[[-71.1470887,42.34132],[-71.1470197,42.3412265]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196111212,"name":"Commonwealth Avenue Frontage Road Eastbound"},"geometry":{"type":"LineString","coordinates":[[-71.1470887,42.34132],[-71.1470197,42.3412265]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196111213,"name":"Sutherland Road"},"geometry":{"type":"LineString","coordinates":[[-71.1473932,42.3407021],[-71.1473898,42.3407214],[-71.1473413,42.3407766],[-71.1472838,42.3408239],[-71.1471855,42.3409235],[-71.1471029,42.3409947],[-71.1469283,42.3411539],[-71.1467943,42.3412842],[-71.1467593,42.3413075],[-71.1467371,42.3413271]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196111214,"name":"Euston Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1470813,42.3418774],[-71.1470087,42.3418859],[-71.1469443,42.3418933]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196111215,"name":"Commonwealth Avenue Frontage Road Westbound","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1460861,42.3419488],[-71.1460528,42.3418964],[-71.1460308,42.3418619]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196111216,"name":"Colborne Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1460521,42.3419984],[-71.1459767,42.3420427],[-71.1459245,42.3420734]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196111217,"name":"Commonwealth Avenue Frontage Road Westbound"},"geometry":{"type":"LineString","coordinates":[[-71.1460697,42.3419997],[-71.1460911,42.3419585],[-71.1461516,42.341927],[-71.1462888,42.3419002],[-71.1464746,42.3418839],[-71.1467294,42.3418512],[-71.1468754,42.3418584],[-71.1469356,42.3418996]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196111218,"name":"Euston Road"},"geometry":{"type":"LineString","coordinates":[[-71.1460697,42.3419997],[-71.1460711,42.3420572],[-71.1461215,42.3421899],[-71.1461861,42.3423547],[-71.1462613,42.3425509],[-71.1463516,42.3427824],[-71.1463905,42.3428949],[-71.1464303,42.3429518],[-71.1464728,42.3429688],[-71.1465533,42.3429636],[-71.1466551,42.3429427],[-71.1469975,42.3428701],[-71.1471629,42.3427837],[-71.147216,42.3426765],[-71.1472063,42.3425836],[-71.1471382,42.3424116],[-71.1470612,42.3422076],[-71.14704,42.3421703],[-71.1469736,42.341982],[-71.1469356,42.3418996]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196111219,"name":"Ransom Road"},"geometry":{"type":"LineString","coordinates":[[-71.1451155,42.3440485],[-71.1450102,42.3439831],[-71.1448457,42.3438844],[-71.1446253,42.343751],[-71.1445395,42.3436895],[-71.1445484,42.3436548],[-71.1446705,42.3435476],[-71.1449908,42.3432965],[-71.1453367,42.3430512],[-71.1456119,42.3428805],[-71.1459375,42.3426915],[-71.1460729,42.3426216],[-71.146087,42.3426216],[-71.1461136,42.3426216],[-71.1461357,42.342634],[-71.1461782,42.3427367],[-71.1462445,42.3429178],[-71.1463012,42.3430558],[-71.1462826,42.343099],[-71.1461286,42.3432369],[-71.1458835,42.3434292],[-71.1456871,42.3435921],[-71.1454208,42.3438144],[-71.1452385,42.3439648],[-71.1451368,42.3440505],[-71.1451155,42.3440485]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196111219,"name":"Euston Road"},"geometry":{"type":"LineString","coordinates":[[-71.1451155,42.3440485],[-71.1450102,42.3439831],[-71.1448457,42.3438844],[-71.1446253,42.343751],[-71.1445395,42.3436895],[-71.1445484,42.3436548],[-71.1446705,42.3435476],[-71.1449908,42.3432965],[-71.1453367,42.3430512],[-71.1456119,42.3428805],[-71.1459375,42.3426915],[-71.1460729,42.3426216],[-71.146087,42.3426216],[-71.1461136,42.3426216],[-71.1461357,42.342634],[-71.1461782,42.3427367],[-71.1462445,42.3429178],[-71.1463012,42.3430558],[-71.1462826,42.343099],[-71.1461286,42.3432369],[-71.1458835,42.3434292],[-71.1456871,42.3435921],[-71.1454208,42.3438144],[-71.1452385,42.3439648],[-71.1451368,42.3440505],[-71.1451155,42.3440485]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196111221,"name":"Ransom Road","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1460429,42.3425164],[-71.1460711,42.3425835],[-71.146087,42.3426216]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196111222,"name":"Euston Road","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1462878,42.3431121],[-71.1463034,42.3431536],[-71.1463227,42.3432048]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196111223,"name":"Monastery Road"},"geometry":{"type":"LineString","coordinates":[[-71.1463217,42.343216],[-71.1461552,42.3433416],[-71.1458826,42.3435751],[-71.1456871,42.343734],[-71.1454217,42.3439589],[-71.1452509,42.3440923],[-71.1452341,42.3441224],[-71.145296,42.3441859],[-71.1454225,42.3442669],[-71.1457535,42.3444985],[-71.1460623,42.34473],[-71.1462958,42.3449046],[-71.1465436,42.3450818],[-71.1467338,42.3452335],[-71.1468081,42.3452682],[-71.1468727,42.3452682],[-71.1469603,42.3451897],[-71.1470789,42.3450419],[-71.1472762,42.3448025],[-71.1474594,42.3445926],[-71.1475573,42.3444684],[-71.1475779,42.3444422],[-71.1476425,42.3443454],[-71.1476337,42.3442768],[-71.147608,42.3442382],[-71.1474939,42.3441911],[-71.1473886,42.3441427],[-71.1473384,42.3441168],[-71.1471417,42.3440152],[-71.1469568,42.3438824],[-71.1469415,42.3438701],[-71.1468621,42.3438059],[-71.1467241,42.3436895],[-71.1466206,42.343577],[-71.1465999,42.3435518],[-71.1465347,42.3434724],[-71.1464206,42.343318],[-71.1463755,42.3432343],[-71.1463217,42.343216]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196111223,"name":"Euston Road"},"geometry":{"type":"LineString","coordinates":[[-71.1463217,42.343216],[-71.1461552,42.3433416],[-71.1458826,42.3435751],[-71.1456871,42.343734],[-71.1454217,42.3439589],[-71.1452509,42.3440923],[-71.1452341,42.3441224],[-71.145296,42.3441859],[-71.1454225,42.3442669],[-71.1457535,42.3444985],[-71.1460623,42.34473],[-71.1462958,42.3449046],[-71.1465436,42.3450818],[-71.1467338,42.3452335],[-71.1468081,42.3452682],[-71.1468727,42.3452682],[-71.1469603,42.3451897],[-71.1470789,42.3450419],[-71.1472762,42.3448025],[-71.1474594,42.3445926],[-71.1475573,42.3444684],[-71.1475779,42.3444422],[-71.1476425,42.3443454],[-71.1476337,42.3442768],[-71.147608,42.3442382],[-71.1474939,42.3441911],[-71.1473886,42.3441427],[-71.1473384,42.3441168],[-71.1471417,42.3440152],[-71.1469568,42.3438824],[-71.1469415,42.3438701],[-71.1468621,42.3438059],[-71.1467241,42.3436895],[-71.1466206,42.343577],[-71.1465999,42.3435518],[-71.1465347,42.3434724],[-71.1464206,42.343318],[-71.1463755,42.3432343],[-71.1463217,42.343216]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196111224,"name":"Euston Road","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1452341,42.3441224],[-71.1451689,42.3440743],[-71.1451368,42.3440505]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196111225,"name":"Claymoss Road","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1452341,42.3441224],[-71.1451848,42.3441689],[-71.1451474,42.3442042]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196111226,"name":"Euston Road","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1451474,42.3442042],[-71.1450739,42.3441548],[-71.1450315,42.3441263],[-71.1450765,42.3440939],[-71.1451368,42.3440505]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196111227,"name":"Claymoss Road"},"geometry":{"type":"LineString","coordinates":[[-71.1450315,42.3441263],[-71.1448864,42.3440334],[-71.1446651,42.3438897],[-71.1444484,42.3437592],[-71.1443969,42.3437281],[-71.1442247,42.3436227],[-71.1441541,42.3435794],[-71.143965,42.3434714],[-71.1436836,42.3433196]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196111228,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1450315,42.3441263],[-71.1449668,42.3442],[-71.1448526,42.3442899],[-71.1447831,42.3443447],[-71.1446463,42.3444606],[-71.1445551,42.344533],[-71.144532,42.3445308],[-71.1445028,42.3445281],[-71.1443834,42.3444616],[-71.1440911,42.344306],[-71.1437102,42.3440998],[-71.1434165,42.3439442],[-71.1432797,42.3438709],[-71.1432427,42.3438615],[-71.1432327,42.3438559]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196111228,"name":"Euston Road"},"geometry":{"type":"LineString","coordinates":[[-71.1450315,42.3441263],[-71.1449668,42.3442],[-71.1448526,42.3442899],[-71.1447831,42.3443447],[-71.1446463,42.3444606],[-71.1445551,42.344533],[-71.144532,42.3445308],[-71.1445028,42.3445281],[-71.1443834,42.3444616],[-71.1440911,42.344306],[-71.1437102,42.3440998],[-71.1434165,42.3439442],[-71.1432797,42.3438709],[-71.1432427,42.3438615],[-71.1432327,42.3438559]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196111230,"name":"Euston Road"},"geometry":{"type":"LineString","coordinates":[[-71.1446495,42.3446319],[-71.1446541,42.3446079],[-71.1446935,42.3445587],[-71.1449593,42.3443389],[-71.1451474,42.3442042]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196111231,"name":"Monastery Road"},"geometry":{"type":"LineString","coordinates":[[-71.1446412,42.3446063],[-71.1446541,42.3446079],[-71.144722,42.34466],[-71.1449762,42.3448171],[-71.1451734,42.3449703],[-71.145406,42.3451678],[-71.1456972,42.3454433],[-71.1459298,42.3456859],[-71.1460815,42.3458305],[-71.1462679,42.3459813],[-71.1463099,42.34597],[-71.1463165,42.3459682],[-71.1464212,42.3458498],[-71.1465468,42.3456955],[-71.1466731,42.3455453],[-71.1467532,42.3454342],[-71.1467386,42.3453762],[-71.14665,42.3452902],[-71.1464328,42.3451308],[-71.1461201,42.3449037],[-71.1458813,42.3447283],[-71.1456756,42.3445678],[-71.145356,42.34434],[-71.1451474,42.3442042]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196111231,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1446412,42.3446063],[-71.1446541,42.3446079],[-71.144722,42.34466],[-71.1449762,42.3448171],[-71.1451734,42.3449703],[-71.145406,42.3451678],[-71.1456972,42.3454433],[-71.1459298,42.3456859],[-71.1460815,42.3458305],[-71.1462679,42.3459813],[-71.1463099,42.34597],[-71.1463165,42.3459682],[-71.1464212,42.3458498],[-71.1465468,42.3456955],[-71.1466731,42.3455453],[-71.1467532,42.3454342],[-71.1467386,42.3453762],[-71.14665,42.3452902],[-71.1464328,42.3451308],[-71.1461201,42.3449037],[-71.1458813,42.3447283],[-71.1456756,42.3445678],[-71.145356,42.34434],[-71.1451474,42.3442042]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196111232,"name":"Washington Street","surface":"asphalt","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1461298,42.346076],[-71.1461792,42.3460356],[-71.1462286,42.3459951]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196111233,"name":"Monastery Road","surface":"asphalt","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1464279,42.3460462],[-71.1463803,42.3460174],[-71.1463259,42.3459846]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196111234,"name":"Washington Street","surface":"asphalt","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.146328,42.346208],[-71.1463813,42.3461704],[-71.1464383,42.3461301]]}},
@@ -1728,8 +1728,8 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196111236,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1461077,42.3460912],[-71.1460299,42.3460269],[-71.1459354,42.3459434],[-71.1458375,42.3458397],[-71.1457156,42.3457153],[-71.1455789,42.3455724],[-71.1455273,42.3455167],[-71.1455202,42.3455113]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196111237,"name":"Lieutenant Pamela Donovan Road"},"geometry":{"type":"LineString","coordinates":[[-71.146328,42.346208],[-71.1462696,42.3462151],[-71.1462205,42.3462121]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196111238,"name":"Lieutenant Pamela Donovan Road"},"geometry":{"type":"LineString","coordinates":[[-71.1461476,42.3461497],[-71.1461277,42.3461197],[-71.1461077,42.3460912]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196111239,"name":"Lieutenant Pamela Donovan Road"},"geometry":{"type":"LineString","coordinates":[[-71.1461298,42.346076],[-71.1461277,42.3461197]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196111240,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1464447,42.3460538],[-71.1464482,42.3460832],[-71.1464456,42.3461073],[-71.1464383,42.3461301]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196111239,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1461298,42.346076],[-71.1461277,42.3461197]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196111240,"name":"Monastery Road"},"geometry":{"type":"LineString","coordinates":[[-71.1464447,42.3460538],[-71.1464482,42.3460832],[-71.1464456,42.3461073],[-71.1464383,42.3461301]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196111241,"name":"Washington Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1477502,42.3466712],[-71.1475643,42.3466016],[-71.1473841,42.3465298],[-71.1471946,42.346457],[-71.1469019,42.3463329],[-71.14666,42.346227],[-71.1465429,42.346153],[-71.1464456,42.3461073]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196111242,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1462696,42.3462151],[-71.1466666,42.3463995],[-71.1471569,42.3465936],[-71.1476473,42.3467903],[-71.147833,42.3468675],[-71.1478894,42.346891],[-71.1479893,42.3469327],[-71.1485976,42.3472684],[-71.1489677,42.3475272],[-71.1492969,42.3478223],[-71.1494919,42.3480337],[-71.1495441,42.3480864]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196142103,"name":"Kirkwood Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1588775,42.3414738],[-71.1588563,42.341511],[-71.1588371,42.3415445]]}},
@@ -1737,10 +1737,10 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196142105,"name":"Foster Street"},"geometry":{"type":"LineString","coordinates":[[-71.1584629,42.3421645],[-71.1584496,42.3421698],[-71.1584511,42.3421837],[-71.1584456,42.3422005],[-71.1583779,42.3423067],[-71.1582833,42.342468],[-71.1582205,42.3425648],[-71.1581788,42.342629],[-71.1581134,42.342736],[-71.1581089,42.3427427],[-71.1580165,42.3428801],[-71.1579955,42.3429178],[-71.157957,42.3429871],[-71.1578706,42.3431416],[-71.1578396,42.3432287],[-71.1577947,42.3433707],[-71.1577781,42.3434481],[-71.1577643,42.3435122],[-71.157755,42.3436641],[-71.1577661,42.3437883],[-71.1577778,42.3439609],[-71.1577708,42.3440644],[-71.1577392,42.3442219],[-71.1577147,42.3443095],[-71.1577087,42.3443303],[-71.1576733,42.3444523],[-71.15765,42.3445215],[-71.1576375,42.3445669],[-71.1576162,42.3446527],[-71.1576044,42.3447763],[-71.1576032,42.3448126],[-71.1576003,42.3448984],[-71.1576073,42.3450257],[-71.1576342,42.3451547],[-71.1576633,42.3453333],[-71.157703,42.3454908],[-71.1577217,42.3455676],[-71.1577924,42.3457544],[-71.1579225,42.3459775],[-71.1579885,42.346103],[-71.1581035,42.3462696],[-71.1581339,42.346339],[-71.1581514,42.3464387],[-71.158161,42.3464757],[-71.1581665,42.3465385],[-71.1581744,42.3465769],[-71.1581455,42.3466434],[-71.1581128,42.3467238],[-71.1580731,42.3467836],[-71.1580182,42.3468319],[-71.1579131,42.3469501],[-71.1578498,42.3470196],[-71.1577993,42.3470733]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196142106,"name":"Foster Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1580064,42.3460949],[-71.1580635,42.3460721],[-71.1581296,42.3460456]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196142107,"name":"Glenmont Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1581296,42.3460456],[-71.1581695,42.346092],[-71.1582063,42.3461347]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196142108,"name":"Lane Park"},"geometry":{"type":"LineString","coordinates":[[-71.1581363,42.346034],[-71.1580965,42.3459841],[-71.1580402,42.3458976],[-71.1579647,42.345771],[-71.1579285,42.3456927],[-71.1578735,42.3455569],[-71.1578474,42.3454454],[-71.1578072,42.345268],[-71.157779,42.3451071],[-71.1577515,42.3449228],[-71.1577495,42.3448135],[-71.1577579,42.3447671],[-71.1577901,42.344582],[-71.1578481,42.3443922],[-71.1578602,42.3443466],[-71.1578739,42.3442951],[-71.1579101,42.3441529],[-71.1579141,42.3441154],[-71.1579252,42.3439566],[-71.1579121,42.3437493],[-71.1579122,42.34374],[-71.1579124,42.3437018],[-71.1579129,42.3435967],[-71.1579133,42.3435258],[-71.1579658,42.3433092],[-71.1580336,42.3431461],[-71.15812,42.3430003],[-71.15819,42.3428812],[-71.1583278,42.3426663],[-71.1584679,42.3424342],[-71.1585975,42.3422228],[-71.1586628,42.342121],[-71.1587049,42.3420908],[-71.1587666,42.3420802],[-71.1587901,42.3420761],[-71.1588391,42.3420821],[-71.1588642,42.3420926],[-71.1589266,42.3421632],[-71.1590049,42.342311],[-71.1591133,42.3424958],[-71.1591739,42.3425913],[-71.1592354,42.3426508],[-71.1593022,42.3426959],[-71.1593633,42.3427306],[-71.1594314,42.3427492],[-71.1595327,42.342779],[-71.1597579,42.3428153],[-71.1599459,42.3428509],[-71.1600862,42.3428509],[-71.1602401,42.3428149],[-71.1603051,42.3427708],[-71.1603604,42.3427122],[-71.1603905,42.3426406],[-71.1603941,42.3425517],[-71.1603489,42.3424729],[-71.1602472,42.3423967],[-71.1601034,42.3423218],[-71.1599592,42.3422522],[-71.1597862,42.3421868],[-71.1595986,42.3421188],[-71.1593332,42.3420468],[-71.1591792,42.3420125],[-71.1590629,42.3420095],[-71.1589815,42.3420135],[-71.1589041,42.3420046],[-71.1588457,42.3419808],[-71.158836,42.3419697],[-71.1588134,42.3419441],[-71.1588103,42.3419069],[-71.158832,42.3418454],[-71.1588926,42.3417417],[-71.1589687,42.3416165],[-71.159058,42.3414595],[-71.1590788,42.3414347],[-71.1591301,42.3414357],[-71.1592496,42.3414792],[-71.1596026,42.3415894],[-71.1600154,42.34171],[-71.1604374,42.3418447],[-71.1605998,42.3418876],[-71.1606715,42.3417551],[-71.1607785,42.3415498],[-71.1608559,42.3414066],[-71.1609466,42.3412369],[-71.1610568,42.341038],[-71.1611669,42.3408477],[-71.1612802,42.3406486],[-71.1614038,42.3404225],[-71.1614669,42.3403072],[-71.161498,42.3402466]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196142109,"name":"Willoughby Street"},"geometry":{"type":"LineString","coordinates":[[-71.1582179,42.3461425],[-71.1582148,42.3461613],[-71.1582336,42.3462022],[-71.1582855,42.3462984],[-71.1583154,42.3464561],[-71.1583175,42.3465399],[-71.1583078,42.346588],[-71.1583327,42.3466131],[-71.1585421,42.346671],[-71.1588785,42.34676],[-71.1592068,42.3468471],[-71.1593618,42.3468903],[-71.1594797,42.3469433],[-71.1595925,42.3470019],[-71.1596479,42.3470398],[-71.1597663,42.3470845],[-71.1598995,42.3471224],[-71.1601774,42.3471994],[-71.1603533,42.3472422],[-71.160369,42.3472377],[-71.1604127,42.3471574],[-71.1604844,42.3470255],[-71.1605479,42.3468986],[-71.1606099,42.3467859],[-71.1606272,42.3467303],[-71.1606175,42.3467225],[-71.1606104,42.3467168],[-71.16046,42.3466762],[-71.1602786,42.3466278],[-71.1600992,42.3465808],[-71.1598309,42.3465106],[-71.1595732,42.3464464],[-71.1593643,42.3463874],[-71.1592886,42.346351],[-71.1592373,42.346301],[-71.1592261,42.3462732],[-71.1592129,42.3461996],[-71.1591961,42.3461219],[-71.159189,42.3460385],[-71.1591316,42.3460445],[-71.1588795,42.3460648],[-71.1586712,42.3460847],[-71.1584715,42.3461027],[-71.158286,42.3461181],[-71.1582382,42.3461309],[-71.1582179,42.3461425]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196142108,"name":"Foster Street"},"geometry":{"type":"LineString","coordinates":[[-71.1581363,42.346034],[-71.1580965,42.3459841],[-71.1580402,42.3458976],[-71.1579647,42.345771],[-71.1579285,42.3456927],[-71.1578735,42.3455569],[-71.1578474,42.3454454],[-71.1578072,42.345268],[-71.157779,42.3451071],[-71.1577515,42.3449228],[-71.1577495,42.3448135],[-71.1577579,42.3447671],[-71.1577901,42.344582],[-71.1578481,42.3443922],[-71.1578602,42.3443466],[-71.1578739,42.3442951],[-71.1579101,42.3441529],[-71.1579141,42.3441154],[-71.1579252,42.3439566],[-71.1579121,42.3437493],[-71.1579122,42.34374],[-71.1579124,42.3437018],[-71.1579129,42.3435967],[-71.1579133,42.3435258],[-71.1579658,42.3433092],[-71.1580336,42.3431461],[-71.15812,42.3430003],[-71.15819,42.3428812],[-71.1583278,42.3426663],[-71.1584679,42.3424342],[-71.1585975,42.3422228],[-71.1586628,42.342121],[-71.1587049,42.3420908],[-71.1587666,42.3420802],[-71.1587901,42.3420761],[-71.1588391,42.3420821],[-71.1588642,42.3420926],[-71.1589266,42.3421632],[-71.1590049,42.342311],[-71.1591133,42.3424958],[-71.1591739,42.3425913],[-71.1592354,42.3426508],[-71.1593022,42.3426959],[-71.1593633,42.3427306],[-71.1594314,42.3427492],[-71.1595327,42.342779],[-71.1597579,42.3428153],[-71.1599459,42.3428509],[-71.1600862,42.3428509],[-71.1602401,42.3428149],[-71.1603051,42.3427708],[-71.1603604,42.3427122],[-71.1603905,42.3426406],[-71.1603941,42.3425517],[-71.1603489,42.3424729],[-71.1602472,42.3423967],[-71.1601034,42.3423218],[-71.1599592,42.3422522],[-71.1597862,42.3421868],[-71.1595986,42.3421188],[-71.1593332,42.3420468],[-71.1591792,42.3420125],[-71.1590629,42.3420095],[-71.1589815,42.3420135],[-71.1589041,42.3420046],[-71.1588457,42.3419808],[-71.158836,42.3419697],[-71.1588134,42.3419441],[-71.1588103,42.3419069],[-71.158832,42.3418454],[-71.1588926,42.3417417],[-71.1589687,42.3416165],[-71.159058,42.3414595],[-71.1590788,42.3414347],[-71.1591301,42.3414357],[-71.1592496,42.3414792],[-71.1596026,42.3415894],[-71.1600154,42.34171],[-71.1604374,42.3418447],[-71.1605998,42.3418876],[-71.1606715,42.3417551],[-71.1607785,42.3415498],[-71.1608559,42.3414066],[-71.1609466,42.3412369],[-71.1610568,42.341038],[-71.1611669,42.3408477],[-71.1612802,42.3406486],[-71.1614038,42.3404225],[-71.1614669,42.3403072],[-71.161498,42.3402466]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196142109,"name":"Glenmont Road"},"geometry":{"type":"LineString","coordinates":[[-71.1582179,42.3461425],[-71.1582148,42.3461613],[-71.1582336,42.3462022],[-71.1582855,42.3462984],[-71.1583154,42.3464561],[-71.1583175,42.3465399],[-71.1583078,42.346588],[-71.1583327,42.3466131],[-71.1585421,42.346671],[-71.1588785,42.34676],[-71.1592068,42.3468471],[-71.1593618,42.3468903],[-71.1594797,42.3469433],[-71.1595925,42.3470019],[-71.1596479,42.3470398],[-71.1597663,42.3470845],[-71.1598995,42.3471224],[-71.1601774,42.3471994],[-71.1603533,42.3472422],[-71.160369,42.3472377],[-71.1604127,42.3471574],[-71.1604844,42.3470255],[-71.1605479,42.3468986],[-71.1606099,42.3467859],[-71.1606272,42.3467303],[-71.1606175,42.3467225],[-71.1606104,42.3467168],[-71.16046,42.3466762],[-71.1602786,42.3466278],[-71.1600992,42.3465808],[-71.1598309,42.3465106],[-71.1595732,42.3464464],[-71.1593643,42.3463874],[-71.1592886,42.346351],[-71.1592373,42.346301],[-71.1592261,42.3462732],[-71.1592129,42.3461996],[-71.1591961,42.3461219],[-71.159189,42.3460385],[-71.1591316,42.3460445],[-71.1588795,42.3460648],[-71.1586712,42.3460847],[-71.1584715,42.3461027],[-71.158286,42.3461181],[-71.1582382,42.3461309],[-71.1582179,42.3461425]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196142110,"name":"Trapelo Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.159189,42.3460385],[-71.1592593,42.346036],[-71.1593044,42.3460343]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196142111,"name":"Willoughby Street"},"geometry":{"type":"LineString","coordinates":[[-71.1593044,42.3460343],[-71.1593176,42.3460437],[-71.1593323,42.3461102],[-71.1593466,42.3461857],[-71.1593582,42.3462586],[-71.1593852,42.3462849],[-71.1594645,42.3463093],[-71.1596286,42.3463528],[-71.1598309,42.3464062],[-71.160149,42.3464881],[-71.1603644,42.3465481],[-71.1606348,42.3466169],[-71.1606775,42.3466225],[-71.1607156,42.346562],[-71.1607573,42.3464798],[-71.1608442,42.3463187],[-71.1609245,42.346162],[-71.1610139,42.3460095],[-71.1610596,42.345904],[-71.1610464,42.345877],[-71.1610068,42.345871],[-71.1607141,42.3458991],[-71.1605149,42.3459153],[-71.1602538,42.3459389],[-71.1602196,42.3459419],[-71.1599427,42.3459679],[-71.1596438,42.345993],[-71.1593598,42.3460189],[-71.1593044,42.3460343]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196142111,"name":"Trapelo Street"},"geometry":{"type":"LineString","coordinates":[[-71.1593044,42.3460343],[-71.1593176,42.3460437],[-71.1593323,42.3461102],[-71.1593466,42.3461857],[-71.1593582,42.3462586],[-71.1593852,42.3462849],[-71.1594645,42.3463093],[-71.1596286,42.3463528],[-71.1598309,42.3464062],[-71.160149,42.3464881],[-71.1603644,42.3465481],[-71.1606348,42.3466169],[-71.1606775,42.3466225],[-71.1607156,42.346562],[-71.1607573,42.3464798],[-71.1608442,42.3463187],[-71.1609245,42.346162],[-71.1610139,42.3460095],[-71.1610596,42.345904],[-71.1610464,42.345877],[-71.1610068,42.345871],[-71.1607141,42.3458991],[-71.1605149,42.3459153],[-71.1602538,42.3459389],[-71.1602196,42.3459419],[-71.1599427,42.3459679],[-71.1596438,42.345993],[-71.1593598,42.3460189],[-71.1593044,42.3460343]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196142112,"name":"Glenmont Road","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1602538,42.3459389],[-71.1602437,42.3458888],[-71.160238,42.3458546]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196142113,"name":"Glenmont Road"},"geometry":{"type":"LineString","coordinates":[[-71.160238,42.3458546],[-71.1600724,42.345867],[-71.1597062,42.3458977],[-71.1594387,42.345918],[-71.1594108,42.3459219],[-71.1593938,42.3458432],[-71.1593773,42.3457173]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196142114,"name":"Glenmont Road"},"geometry":{"type":"LineString","coordinates":[[-71.160238,42.3458546],[-71.1604822,42.3458305],[-71.1609016,42.3457867],[-71.1611281,42.3457769],[-71.1611717,42.3457798],[-71.1612137,42.3457831],[-71.1613696,42.3457945],[-71.1615581,42.3458318],[-71.1617421,42.3458959],[-71.1620067,42.3460384],[-71.16215,42.3461215],[-71.1621872,42.3461228],[-71.1622164,42.3461123],[-71.1622881,42.3460437],[-71.1624784,42.3457916],[-71.1626685,42.3455485],[-71.1627249,42.3454742],[-71.162731,42.3454408],[-71.1627365,42.3454389]]}},
@@ -1748,22 +1748,22 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1196142116,"name":"Lake Shore Road","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1630792,42.3453675],[-71.1629839,42.3454364],[-71.1629161,42.3454855]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196142117,"name":"Lake Shore Road"},"geometry":{"type":"LineString","coordinates":[[-71.1629161,42.3454855],[-71.162852,42.3455027],[-71.1628038,42.3455501],[-71.1627489,42.3456297],[-71.1626508,42.3457536],[-71.1625649,42.3458671],[-71.1624216,42.346059],[-71.1623057,42.3462149],[-71.1622336,42.346308],[-71.1622249,42.3463242],[-71.1622453,42.3463437],[-71.1623703,42.3463414],[-71.1626803,42.3463444],[-71.1629059,42.3463433],[-71.1632586,42.3463508],[-71.1636311,42.3463542],[-71.1640468,42.3463565],[-71.16431,42.3463628],[-71.1646261,42.3463628],[-71.1650687,42.3463903],[-71.1652979,42.3464105],[-71.1655083,42.3464289],[-71.1658071,42.3464492],[-71.1662406,42.3464849],[-71.1666482,42.3465127],[-71.1669805,42.3465409],[-71.167003,42.3465424],[-71.167226,42.346557],[-71.1674735,42.3465713],[-71.1675528,42.346581],[-71.1676981,42.3465987],[-71.1680152,42.3466258],[-71.168439,42.3466592],[-71.1686364,42.3466713],[-71.1687019,42.3466753],[-71.1688308,42.3466832],[-71.1689843,42.3467031],[-71.1692023,42.3467155],[-71.1692755,42.3466964],[-71.1692958,42.346652],[-71.1693151,42.3465867],[-71.1693619,42.3463835],[-71.169432,42.346127],[-71.1694594,42.3460267],[-71.1694909,42.3459084],[-71.1695255,42.3457709],[-71.1695285,42.3457596],[-71.1694239,42.3457465],[-71.1694269,42.3457164],[-71.1694503,42.3456199],[-71.1694889,42.3454809],[-71.1695021,42.3454077],[-71.1695992,42.345419],[-71.1696013,42.3453647],[-71.1696032,42.3453172],[-71.1695852,42.3452113],[-71.1695555,42.3450359],[-71.1694594,42.3450524],[-71.1694261,42.3449475],[-71.1693776,42.3447947],[-71.1693524,42.3447121],[-71.1693402,42.3446719],[-71.1693182,42.3445998],[-71.1694198,42.3445878],[-71.1694009,42.3445236],[-71.1693786,42.3444477],[-71.1693537,42.344359],[-71.1692927,42.3442888],[-71.1692607,42.3442524],[-71.1691306,42.3442152],[-71.1689868,42.3441791],[-71.1689468,42.3441682],[-71.1688435,42.3441401],[-71.1686428,42.3440882],[-71.1681869,42.3439688],[-71.1681404,42.3439563],[-71.1679857,42.3439151],[-71.1678274,42.3438743],[-71.1675731,42.3438088],[-71.1675538,42.3438034],[-71.1673149,42.3437359],[-71.1672422,42.3437243],[-71.1671426,42.3437509],[-71.1671242,42.3437565],[-71.167034,42.3437838],[-71.1669922,42.3437964],[-71.1668179,42.3438463],[-71.1666665,42.3438704],[-71.166542,42.3438677],[-71.1664529,42.3438483],[-71.1663529,42.3438264],[-71.1662304,42.3437904],[-71.1660272,42.3437663],[-71.1657909,42.343796],[-71.1656155,42.3438527],[-71.1654168,42.3439436],[-71.1653137,42.3440221],[-71.1652344,42.3441059],[-71.1650113,42.3442925],[-71.1647963,42.344471],[-71.1645814,42.3446576],[-71.164466,42.344759],[-71.1642287,42.3449619],[-71.1639863,42.3451561],[-71.1638699,42.3452699],[-71.1636839,42.3454344],[-71.1636133,42.3454866],[-71.1635056,42.3455219],[-71.1633617,42.3455339],[-71.1631727,42.3455163],[-71.1630167,42.3454986],[-71.1629161,42.3454855]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196147083,"name":"Trapelo Street","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1606369,42.3467158],[-71.1606595,42.3466802],[-71.1606888,42.3466341]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196147084,"name":"Glenmont Road"},"geometry":{"type":"LineString","coordinates":[[-71.1619825,42.3464499],[-71.1618979,42.3464335],[-71.1617262,42.3463869],[-71.1614875,42.346327],[-71.161247,42.3462536],[-71.1610678,42.3462096],[-71.1610444,42.3461928],[-71.1610736,42.3461246],[-71.1611384,42.3460068],[-71.1612108,42.345867],[-71.1614431,42.3458916],[-71.1617011,42.3459766],[-71.1618932,42.3460866],[-71.1620123,42.3461544],[-71.1620852,42.3462053],[-71.1621133,42.3462251],[-71.1621022,42.346283],[-71.1620345,42.3463818],[-71.1619825,42.3464499]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196147084,"name":"Cenacle Road"},"geometry":{"type":"LineString","coordinates":[[-71.1619825,42.3464499],[-71.1618979,42.3464335],[-71.1617262,42.3463869],[-71.1614875,42.346327],[-71.161247,42.3462536],[-71.1610678,42.3462096],[-71.1610444,42.3461928],[-71.1610736,42.3461246],[-71.1611384,42.3460068],[-71.1612108,42.345867],[-71.1614431,42.3458916],[-71.1617011,42.3459766],[-71.1618932,42.3460866],[-71.1620123,42.3461544],[-71.1620852,42.3462053],[-71.1621133,42.3462251],[-71.1621022,42.346283],[-71.1620345,42.3463818],[-71.1619825,42.3464499]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196147085,"name":"Cenacle Road","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1619306,42.3465274],[-71.1619541,42.3464923],[-71.1619825,42.3464499]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196147086,"name":"Glenmont Road","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1621133,42.3462251],[-71.162151,42.3461729],[-71.1621872,42.3461228]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196147087,"name":"Glenmont Road","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1612108,42.345867],[-71.1612121,42.345829],[-71.1612137,42.3457831]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196147088,"name":"Willoughby Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1612108,42.345867],[-71.1611317,42.3458718],[-71.1610464,42.345877]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196147089,"name":"Cenacle Road","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1610082,42.3462707],[-71.1610222,42.3462405],[-71.1610444,42.3461928]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196147090,"name":"Lake Street"},"geometry":{"type":"LineString","coordinates":[[-71.1610082,42.3462707],[-71.1611769,42.3463177],[-71.161442,42.3463906],[-71.1617,42.3464631],[-71.1619306,42.3465274],[-71.1619288,42.3465498],[-71.1618547,42.3466559],[-71.1617764,42.346772],[-71.1616924,42.3468932],[-71.1616841,42.3469043],[-71.161425,42.3468393],[-71.161247,42.3467931],[-71.1610094,42.346725],[-71.1608185,42.3466689],[-71.1608063,42.3466624],[-71.1608424,42.3465947],[-71.1609586,42.3463656],[-71.1610082,42.3462707]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196147090,"name":"Cenacle Road"},"geometry":{"type":"LineString","coordinates":[[-71.1610082,42.3462707],[-71.1611769,42.3463177],[-71.161442,42.3463906],[-71.1617,42.3464631],[-71.1619306,42.3465274],[-71.1619288,42.3465498],[-71.1618547,42.3466559],[-71.1617764,42.346772],[-71.1616924,42.3468932],[-71.1616841,42.3469043],[-71.161425,42.3468393],[-71.161247,42.3467931],[-71.1610094,42.346725],[-71.1608185,42.3466689],[-71.1608063,42.3466624],[-71.1608424,42.3465947],[-71.1609586,42.3463656],[-71.1610082,42.3462707]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196147091,"name":"Trapelo Street","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1607894,42.3466659],[-71.1607661,42.346706],[-71.1607511,42.3467318]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196147092,"name":"Lake Street"},"geometry":{"type":"LineString","coordinates":[[-71.1607511,42.3467318],[-71.1607668,42.3467363],[-71.1609569,42.3467918],[-71.1612674,42.3468734],[-71.1615266,42.3469497],[-71.16162,42.3469846],[-71.1616258,42.3469972],[-71.1615593,42.3470982],[-71.1614878,42.3472137],[-71.1614694,42.3472436],[-71.1613958,42.3473609],[-71.161324,42.3474701],[-71.1612809,42.3474978],[-71.1610958,42.3474493],[-71.1608232,42.3473747],[-71.1608059,42.34737],[-71.1605115,42.3472889],[-71.1604953,42.3472764],[-71.1605155,42.3472228],[-71.1606311,42.3469838],[-71.1607403,42.3467862],[-71.1607562,42.3467525],[-71.1607668,42.3467363]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196147092,"name":"Trapelo Street"},"geometry":{"type":"LineString","coordinates":[[-71.1607511,42.3467318],[-71.1607668,42.3467363],[-71.1609569,42.3467918],[-71.1612674,42.3468734],[-71.1615266,42.3469497],[-71.16162,42.3469846],[-71.1616258,42.3469972],[-71.1615593,42.3470982],[-71.1614878,42.3472137],[-71.1614694,42.3472436],[-71.1613958,42.3473609],[-71.161324,42.3474701],[-71.1612809,42.3474978],[-71.1610958,42.3474493],[-71.1608232,42.3473747],[-71.1608059,42.34737],[-71.1605115,42.3472889],[-71.1604953,42.3472764],[-71.1605155,42.3472228],[-71.1606311,42.3469838],[-71.1607403,42.3467862],[-71.1607562,42.3467525],[-71.1607668,42.3467363]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196147093,"name":"Willoughby Street","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1607511,42.3467318],[-71.1606955,42.346724],[-71.1606369,42.3467158]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196147094,"name":"Willoughby Street","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1606888,42.3466341],[-71.1607394,42.3466501],[-71.1607894,42.3466659]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196147095,"name":"Rogers Park Avenue","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1604879,42.3472885],[-71.1604631,42.3473279],[-71.1604441,42.3473581]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196147096,"name":"Willoughby Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1604781,42.3472751],[-71.1604197,42.3472599],[-71.1603688,42.3472467]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196147097,"name":"Lake Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1612563,42.3475955],[-71.161292,42.3476073],[-71.1613412,42.3476235]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196147098,"name":"Rogers Park Avenue","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.161249,42.3475786],[-71.1612631,42.3475461],[-71.1612794,42.3475085]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196147099,"name":"Foster Street"},"geometry":{"type":"LineString","coordinates":[[-71.1612563,42.3475955],[-71.1612413,42.3475917],[-71.161013,42.3475211],[-71.1608215,42.3474689],[-71.1606167,42.3474126],[-71.1604364,42.3473687],[-71.1603372,42.3473348],[-71.1602005,42.3473003],[-71.1599601,42.3472319],[-71.1597126,42.3471681],[-71.1595881,42.3471151],[-71.1593968,42.3470158],[-71.159306,42.3469686],[-71.1591109,42.3469127],[-71.1588527,42.3468473],[-71.1586175,42.3467816],[-71.1583415,42.3467129],[-71.1582775,42.3466997],[-71.1582363,42.3467782],[-71.1581555,42.3468913],[-71.1580422,42.3470231],[-71.157969,42.347108],[-71.1578788,42.3472031],[-71.1578074,42.3472826],[-71.1577114,42.3474137],[-71.1576969,42.3474447],[-71.1576651,42.3475129],[-71.1576168,42.3476706],[-71.1576006,42.3477983],[-71.1575899,42.3478975],[-71.1575782,42.3480514],[-71.1575538,42.3481863],[-71.1575299,42.3482948],[-71.1575127,42.3483568],[-71.1574583,42.3485134],[-71.1574019,42.3486467],[-71.1573333,42.348782],[-71.157284,42.34888],[-71.1572616,42.3489528],[-71.157286,42.348987],[-71.1573395,42.3489966],[-71.1573658,42.3490013],[-71.1575081,42.3489945],[-71.1576417,42.3489889],[-71.1578928,42.3489814],[-71.1579634,42.3489656],[-71.1580041,42.3488312],[-71.1580305,42.3487455],[-71.1580701,42.3485682],[-71.1581149,42.3484049],[-71.1581464,42.3482806],[-71.1581977,42.3480999],[-71.1582531,42.3479305]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196147099,"name":"Rogers Park Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1612563,42.3475955],[-71.1612413,42.3475917],[-71.161013,42.3475211],[-71.1608215,42.3474689],[-71.1606167,42.3474126],[-71.1604364,42.3473687],[-71.1603372,42.3473348],[-71.1602005,42.3473003],[-71.1599601,42.3472319],[-71.1597126,42.3471681],[-71.1595881,42.3471151],[-71.1593968,42.3470158],[-71.159306,42.3469686],[-71.1591109,42.3469127],[-71.1588527,42.3468473],[-71.1586175,42.3467816],[-71.1583415,42.3467129],[-71.1582775,42.3466997],[-71.1582363,42.3467782],[-71.1581555,42.3468913],[-71.1580422,42.3470231],[-71.157969,42.347108],[-71.1578788,42.3472031],[-71.1578074,42.3472826],[-71.1577114,42.3474137],[-71.1576969,42.3474447],[-71.1576651,42.3475129],[-71.1576168,42.3476706],[-71.1576006,42.3477983],[-71.1575899,42.3478975],[-71.1575782,42.3480514],[-71.1575538,42.3481863],[-71.1575299,42.3482948],[-71.1575127,42.3483568],[-71.1574583,42.3485134],[-71.1574019,42.3486467],[-71.1573333,42.348782],[-71.157284,42.34888],[-71.1572616,42.3489528],[-71.157286,42.348987],[-71.1573395,42.3489966],[-71.1573658,42.3490013],[-71.1575081,42.3489945],[-71.1576417,42.3489889],[-71.1578928,42.3489814],[-71.1579634,42.3489656],[-71.1580041,42.3488312],[-71.1580305,42.3487455],[-71.1580701,42.3485682],[-71.1581149,42.3484049],[-71.1581464,42.3482806],[-71.1581977,42.3480999],[-71.1582531,42.3479305]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196147100,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1582749,42.3482407],[-71.1582058,42.3484556],[-71.1581596,42.3486467],[-71.158125,42.3487823],[-71.158093,42.3489085],[-71.1580889,42.3489552],[-71.1581352,42.3489573],[-71.1583537,42.3489318],[-71.1584952,42.3489154],[-71.1586495,42.3488976],[-71.1589107,42.3488589],[-71.159177,42.348839],[-71.159309,42.3488317],[-71.159399,42.3488266],[-71.1598478,42.3488131],[-71.1599762,42.3488172],[-71.160144,42.3488225],[-71.1601785,42.348823],[-71.160358,42.3488255],[-71.160454,42.3488109],[-71.1604678,42.3488026],[-71.1604799,42.3488078]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196147101,"name":"Shanley Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1580763,42.3489601],[-71.1580302,42.348963],[-71.1579812,42.348966]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196147102,"name":"Lake Street","surface":"asphalt","crossing":"traffic_signals","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1604799,42.3488078],[-71.1605298,42.3488178],[-71.1605885,42.3488295]]}},
@@ -1810,16 +1810,16 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1196159579,"name":"Chestnut Hill Avenue","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1538525,42.3472336],[-71.153786,42.347256],[-71.1536807,42.3472915]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196159580,"name":"Chestnut Hill Avenue","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1539611,42.3473997],[-71.1538883,42.3474266],[-71.1538192,42.3474521]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196159581,"name":"Academy Hill Road","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1537603,42.3474323],[-71.1537147,42.347385],[-71.1536767,42.3473454]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196159582,"name":"Academy Hill Road"},"geometry":{"type":"LineString","coordinates":[[-71.1538087,42.3474539],[-71.1537645,42.3474402]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196159583,"name":"Academy Hill Road"},"geometry":{"type":"LineString","coordinates":[[-71.1522565,42.346579],[-71.152255,42.3465854],[-71.1521869,42.3466822],[-71.1520998,42.3468191],[-71.1519758,42.3470184],[-71.1518849,42.3471664],[-71.1517917,42.3473167],[-71.1516723,42.3474997],[-71.1516142,42.347595],[-71.1515814,42.3476383],[-71.151589,42.3476504],[-71.1515934,42.3476574],[-71.1516877,42.3476924],[-71.1517959,42.3477354],[-71.1520536,42.3478256],[-71.1523355,42.3479272],[-71.1525523,42.3480038],[-71.1527977,42.3480923],[-71.153011,42.3481689],[-71.1530911,42.3481945],[-71.1531008,42.3481851],[-71.1531832,42.3480624],[-71.1532525,42.3479582],[-71.1532943,42.3478981],[-71.1533049,42.3478828],[-71.1533665,42.3477974],[-71.1534208,42.34771],[-71.153446,42.3476715],[-71.1534582,42.3476528],[-71.1535098,42.3475788],[-71.1535772,42.3474775],[-71.1536384,42.3473867],[-71.1536698,42.3473387],[-71.1536743,42.3473127],[-71.1536722,42.3472943],[-71.1536699,42.3472838],[-71.1536465,42.3472256],[-71.1535686,42.347109],[-71.1534686,42.3469655],[-71.1534387,42.3469226],[-71.1533723,42.346822],[-71.15334,42.3467716],[-71.153321,42.3467401],[-71.153286,42.3466821],[-71.1531754,42.3465311],[-71.1531086,42.3464254],[-71.1530455,42.3463394],[-71.1530388,42.3463302],[-71.1530134,42.3463024],[-71.1529787,42.3462908],[-71.1529559,42.3462852],[-71.1529249,42.3462822],[-71.1529148,42.346279]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196159582,"name":"Chestnut Hill Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1538087,42.3474539],[-71.1537645,42.3474402]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196159583,"name":"Eulita Terrace"},"geometry":{"type":"LineString","coordinates":[[-71.1522565,42.346579],[-71.152255,42.3465854],[-71.1521869,42.3466822],[-71.1520998,42.3468191],[-71.1519758,42.3470184],[-71.1518849,42.3471664],[-71.1517917,42.3473167],[-71.1516723,42.3474997],[-71.1516142,42.347595],[-71.1515814,42.3476383],[-71.151589,42.3476504],[-71.1515934,42.3476574],[-71.1516877,42.3476924],[-71.1517959,42.3477354],[-71.1520536,42.3478256],[-71.1523355,42.3479272],[-71.1525523,42.3480038],[-71.1527977,42.3480923],[-71.153011,42.3481689],[-71.1530911,42.3481945],[-71.1531008,42.3481851],[-71.1531832,42.3480624],[-71.1532525,42.3479582],[-71.1532943,42.3478981],[-71.1533049,42.3478828],[-71.1533665,42.3477974],[-71.1534208,42.34771],[-71.153446,42.3476715],[-71.1534582,42.3476528],[-71.1535098,42.3475788],[-71.1535772,42.3474775],[-71.1536384,42.3473867],[-71.1536698,42.3473387],[-71.1536743,42.3473127],[-71.1536722,42.3472943],[-71.1536699,42.3472838],[-71.1536465,42.3472256],[-71.1535686,42.347109],[-71.1534686,42.3469655],[-71.1534387,42.3469226],[-71.1533723,42.346822],[-71.15334,42.3467716],[-71.153321,42.3467401],[-71.153286,42.3466821],[-71.1531754,42.3465311],[-71.1531086,42.3464254],[-71.1530455,42.3463394],[-71.1530388,42.3463302],[-71.1530134,42.3463024],[-71.1529787,42.3462908],[-71.1529559,42.3462852],[-71.1529249,42.3462822],[-71.1529148,42.346279]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196159584,"name":"Dighton Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1540807,42.3475944],[-71.1540569,42.3475435],[-71.1540107,42.3474447]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196159585,"name":"Academy Hill Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1538553,42.3472206],[-71.1538242,42.3471671],[-71.1537926,42.3471128]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196159586,"name":"Chestnut Hill Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1537955,42.3471018],[-71.153738,42.3470421],[-71.1536748,42.3469364],[-71.1535294,42.3467237],[-71.1534031,42.3465441],[-71.1532536,42.3463309],[-71.1532433,42.3463167],[-71.1531545,42.3461932],[-71.1531177,42.3460969],[-71.1531112,42.3460853],[-71.1530682,42.3460089],[-71.1530342,42.3458882],[-71.1530314,42.3458784],[-71.1530233,42.345824],[-71.1530122,42.3457496],[-71.153017,42.3455694],[-71.1530426,42.3454288],[-71.1531049,42.3452415],[-71.1532872,42.3448918],[-71.153373,42.3447226]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196159587,"name":"William Jackson Avenue","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1533769,42.3447136],[-71.1533928,42.3446926],[-71.1534076,42.3446728]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196160001,"name":"Melton Road"},"geometry":{"type":"LineString","coordinates":[[-71.1532209,42.3445713],[-71.1531489,42.3445294],[-71.1528943,42.3444739],[-71.1525735,42.3444075],[-71.1523153,42.3443422],[-71.1520516,42.344263],[-71.1519083,42.3441972],[-71.1516988,42.3441036],[-71.1516466,42.3440759],[-71.151536,42.3440172],[-71.1512417,42.3438279],[-71.1510949,42.3437014],[-71.1510142,42.3436695],[-71.150946,42.3436742],[-71.1508548,42.3437204],[-71.1508159,42.3438053],[-71.1507484,42.3439421],[-71.1506718,42.3440702],[-71.1505584,42.3442224],[-71.1504046,42.344406],[-71.1503093,42.3444806],[-71.1502689,42.3445325],[-71.1502787,42.3446513],[-71.1503044,42.3447084],[-71.1503768,42.3447598],[-71.1504916,42.3447943],[-71.1507713,42.3448606],[-71.1510302,42.3449033],[-71.1510933,42.3448924]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196160002,"name":"Monastery Road"},"geometry":{"type":"LineString","coordinates":[[-71.1510202,42.3450269],[-71.1508602,42.3450022],[-71.1507155,42.3449718],[-71.1505262,42.3449266],[-71.1503081,42.344868],[-71.1501915,42.3448088],[-71.1500819,42.3447463],[-71.150004,42.344698],[-71.1499021,42.3446856],[-71.1497692,42.3447062],[-71.1496561,42.3447245],[-71.1495204,42.3447301],[-71.149295,42.3447186],[-71.149112,42.3446903],[-71.1489603,42.3446496],[-71.1487421,42.3445838],[-71.1485393,42.3445239],[-71.1482599,42.3444375],[-71.1479903,42.3443575],[-71.1479409,42.3443449],[-71.1478596,42.3443552],[-71.1477996,42.3443884],[-71.1477433,42.3444542],[-71.1476716,42.3445509],[-71.1476083,42.3446239],[-71.1475338,42.3447162],[-71.1474987,42.3447638],[-71.147499,42.3447939],[-71.1475244,42.3448235],[-71.1475805,42.3448433],[-71.1478737,42.3449127],[-71.1480693,42.3449636],[-71.1483476,42.345031],[-71.1486357,42.3450989],[-71.1489408,42.3451734],[-71.1492929,42.3452676],[-71.1496547,42.3453509],[-71.1499856,42.3454321],[-71.1503022,42.3455103],[-71.1506769,42.3456039],[-71.1509761,42.3456754],[-71.1511504,42.3457248],[-71.1514607,42.3457998],[-71.151604,42.3458327]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196160001,"name":"Wallingford Road"},"geometry":{"type":"LineString","coordinates":[[-71.1532209,42.3445713],[-71.1531489,42.3445294],[-71.1528943,42.3444739],[-71.1525735,42.3444075],[-71.1523153,42.3443422],[-71.1520516,42.344263],[-71.1519083,42.3441972],[-71.1516988,42.3441036],[-71.1516466,42.3440759],[-71.151536,42.3440172],[-71.1512417,42.3438279],[-71.1510949,42.3437014],[-71.1510142,42.3436695],[-71.150946,42.3436742],[-71.1508548,42.3437204],[-71.1508159,42.3438053],[-71.1507484,42.3439421],[-71.1506718,42.3440702],[-71.1505584,42.3442224],[-71.1504046,42.344406],[-71.1503093,42.3444806],[-71.1502689,42.3445325],[-71.1502787,42.3446513],[-71.1503044,42.3447084],[-71.1503768,42.3447598],[-71.1504916,42.3447943],[-71.1507713,42.3448606],[-71.1510302,42.3449033],[-71.1510933,42.3448924]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196160002,"name":"Blenford Road"},"geometry":{"type":"LineString","coordinates":[[-71.1510202,42.3450269],[-71.1508602,42.3450022],[-71.1507155,42.3449718],[-71.1505262,42.3449266],[-71.1503081,42.344868],[-71.1501915,42.3448088],[-71.1500819,42.3447463],[-71.150004,42.344698],[-71.1499021,42.3446856],[-71.1497692,42.3447062],[-71.1496561,42.3447245],[-71.1495204,42.3447301],[-71.149295,42.3447186],[-71.149112,42.3446903],[-71.1489603,42.3446496],[-71.1487421,42.3445838],[-71.1485393,42.3445239],[-71.1482599,42.3444375],[-71.1479903,42.3443575],[-71.1479409,42.3443449],[-71.1478596,42.3443552],[-71.1477996,42.3443884],[-71.1477433,42.3444542],[-71.1476716,42.3445509],[-71.1476083,42.3446239],[-71.1475338,42.3447162],[-71.1474987,42.3447638],[-71.147499,42.3447939],[-71.1475244,42.3448235],[-71.1475805,42.3448433],[-71.1478737,42.3449127],[-71.1480693,42.3449636],[-71.1483476,42.345031],[-71.1486357,42.3450989],[-71.1489408,42.3451734],[-71.1492929,42.3452676],[-71.1496547,42.3453509],[-71.1499856,42.3454321],[-71.1503022,42.3455103],[-71.1506769,42.3456039],[-71.1509761,42.3456754],[-71.1511504,42.3457248],[-71.1514607,42.3457998],[-71.151604,42.3458327]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196160003,"name":"Lyne Road","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.151615,42.345837],[-71.1516594,42.3458481],[-71.1517059,42.3458596]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196173045,"name":"Beacon Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1673992,42.3321113],[-71.1671928,42.3325136],[-71.1668095,42.3332317],[-71.1667035,42.3334427],[-71.166666,42.3334633],[-71.1666351,42.3334804],[-71.1665273,42.3334924],[-71.1655268,42.3335959]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196173045,"name":"Acacia Avenue","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1673992,42.3321113],[-71.1671928,42.3325136],[-71.1668095,42.3332317],[-71.1667035,42.3334427],[-71.166666,42.3334633],[-71.1666351,42.3334804],[-71.1665273,42.3334924],[-71.1655268,42.3335959]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196173048,"name":"Acacia Avenue","surface":"asphalt","crossing":"unmarked","kerb":"raised"},"geometry":{"type":"LineString","coordinates":[[-71.1666869,42.3334621],[-71.166776,42.3334568],[-71.1668598,42.3334519]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196173050,"name":"Beacon Street","surface":"concrete","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1675098,42.3322614],[-71.1673453,42.3325668],[-71.1668885,42.3334171],[-71.1668842,42.3334504],[-71.1677224,42.33335],[-71.1677304,42.333349],[-71.1678566,42.333334],[-71.1680327,42.3333154],[-71.1690091,42.3332122],[-71.1691206,42.3331984],[-71.1692572,42.3331814],[-71.1692729,42.3331521],[-71.1695604,42.3326036],[-71.1695964,42.3325299],[-71.1695767,42.3325102],[-71.1688474,42.3321965],[-71.1688155,42.3321779]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196173051,"name":"Lee Road","surface":"unpaved","rough":true,"crossing":"unmarked","kerb":"unknown","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1695964,42.3325299],[-71.1696015,42.3325183],[-71.1696261,42.3324624]]}},
@@ -1829,10 +1829,10 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1196215121,"name":"Priscilla Road","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1512991,42.3447144],[-71.15133,42.3446566],[-71.1513407,42.3446365]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196215122,"name":"Priscilla Road"},"geometry":{"type":"LineString","coordinates":[[-71.1513407,42.3446365],[-71.1515981,42.3447013],[-71.1520804,42.344821],[-71.1525095,42.3449315],[-71.152928,42.3450328],[-71.1529714,42.3450355],[-71.1529935,42.345025],[-71.153028,42.3449629],[-71.1531386,42.3447366],[-71.1531593,42.3446979],[-71.1532058,42.344611],[-71.1532209,42.3445713],[-71.1532247,42.3445614]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196215123,"name":"Winship Street"},"geometry":{"type":"LineString","coordinates":[[-71.1512991,42.3447144],[-71.1515628,42.344783],[-71.15206,42.3449047],[-71.1526227,42.3450472],[-71.1528599,42.345108],[-71.1528988,42.3451146],[-71.152933,42.345134],[-71.1528935,42.3452218],[-71.1528068,42.3453971],[-71.1528094,42.3455142],[-71.1527935,42.3456319],[-71.1527593,42.3456737],[-71.1527475,42.3456881],[-71.1526811,42.3456966],[-71.1526458,42.3456927],[-71.1525856,42.3457182],[-71.1525051,42.3458392],[-71.1524378,42.3459471],[-71.1523983,42.3460062],[-71.1523352,42.3460085],[-71.1522617,42.3459922],[-71.1520786,42.3459471],[-71.1517178,42.3458585]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196215124,"name":"Winship Street"},"geometry":{"type":"LineString","coordinates":[[-71.1528068,42.3453971],[-71.152767,42.3454363],[-71.1526997,42.3455338],[-71.1526449,42.3456194],[-71.152605,42.3456783],[-71.1525856,42.3457182]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196215124,"name":"Chestnut Hill Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1528068,42.3453971],[-71.152767,42.3454363],[-71.1526997,42.3455338],[-71.1526449,42.3456194],[-71.152605,42.3456783],[-71.1525856,42.3457182]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196215125,"name":"Winship Street","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1527757,42.3458291],[-71.1527704,42.3457758],[-71.1527629,42.3457008]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196215126,"name":"Lyne Road"},"geometry":{"type":"LineString","coordinates":[[-71.1517178,42.3458585],[-71.1518211,42.3456521],[-71.1519733,42.3453807],[-71.1520901,42.3451761]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196215127,"name":"Union Street"},"geometry":{"type":"LineString","coordinates":[[-71.1527738,42.345837],[-71.1528156,42.345849],[-71.1528342,42.3458679],[-71.1528572,42.3459144],[-71.1528728,42.3459692],[-71.1528917,42.346036],[-71.1528917,42.3460831],[-71.1528701,42.3461076],[-71.1528369,42.3461282],[-71.1527749,42.3461256],[-71.1527121,42.3461086],[-71.1526484,42.3460955],[-71.1526,42.346065],[-71.152598,42.3460354],[-71.1526334,42.3459673],[-71.1526705,42.3459039],[-71.1526974,42.3458636],[-71.152717,42.3458438],[-71.1527509,42.3458367],[-71.1527738,42.345837]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196215127,"name":"Winship Street"},"geometry":{"type":"LineString","coordinates":[[-71.1527738,42.345837],[-71.1528156,42.345849],[-71.1528342,42.3458679],[-71.1528572,42.3459144],[-71.1528728,42.3459692],[-71.1528917,42.346036],[-71.1528917,42.3460831],[-71.1528701,42.3461076],[-71.1528369,42.3461282],[-71.1527749,42.3461256],[-71.1527121,42.3461086],[-71.1526484,42.3460955],[-71.1526,42.346065],[-71.152598,42.3460354],[-71.1526334,42.3459673],[-71.1526705,42.3459039],[-71.1526974,42.3458636],[-71.152717,42.3458438],[-71.1527509,42.3458367],[-71.1527738,42.345837]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196215128,"name":"Chestnut Hill Avenue","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.153014,42.345891],[-71.1529343,42.345881],[-71.1528521,42.3458705]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196215129,"name":"Union Street","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1529754,42.3462802],[-71.152944,42.346227],[-71.1529175,42.3461821],[-71.1528794,42.3461175]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196215130,"name":"Winship Street","surface":"asphalt","crossing":"traffic_signals","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1523188,42.346135],[-71.1524139,42.3461582],[-71.1525198,42.3461839]]}},
@@ -1842,7 +1842,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1196215136,"name":"Eulita Terrace","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1522838,42.3465338],[-71.1522711,42.3465548],[-71.1522565,42.346579]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196215137,"name":"Eulita Terrace"},"geometry":{"type":"LineString","coordinates":[[-71.152255,42.3465854],[-71.1523598,42.3466164],[-71.1524801,42.3466634],[-71.1525428,42.346677],[-71.1525939,42.3466751],[-71.1526535,42.3466647],[-71.1526943,42.3466408],[-71.1527279,42.3465888],[-71.1528041,42.3464667],[-71.1528464,42.3464085],[-71.1529249,42.3462822]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196215138,"name":"Winship Street"},"geometry":{"type":"LineString","coordinates":[[-71.1528468,42.3462593],[-71.1527037,42.3462238],[-71.1526386,42.3462081],[-71.1525589,42.3461936],[-71.1525242,42.3461946],[-71.1524891,42.3462094],[-71.1524559,42.3462523],[-71.152445,42.3462715],[-71.1524133,42.3463276],[-71.1523438,42.34644],[-71.1522991,42.3465129],[-71.1522838,42.3465338]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196215139,"name":"Crossland Place"},"geometry":{"type":"LineString","coordinates":[[-71.1523188,42.346135],[-71.1523144,42.3461389],[-71.1523085,42.3461607],[-71.1522709,42.3462172],[-71.1522557,42.346241],[-71.152223,42.3462923],[-71.1521823,42.3463576],[-71.152117,42.3464567],[-71.1520573,42.3465604],[-71.1519684,42.3466968],[-71.1519224,42.3467711],[-71.1519014,42.3468049],[-71.1518324,42.34691],[-71.1518015,42.3469574],[-71.1517698,42.347006],[-71.1516786,42.3471468],[-71.1516632,42.3471765],[-71.151636,42.3472292],[-71.1515619,42.3473421],[-71.1515258,42.3473874],[-71.1515047,42.3474377],[-71.1514124,42.3475796],[-71.1513485,42.3476819],[-71.1512792,42.3477914],[-71.1511948,42.3479266],[-71.1511134,42.3480532],[-71.1510683,42.3481321],[-71.15102,42.3482091],[-71.1509643,42.3483086],[-71.1509081,42.3483863],[-71.1508634,42.3484585],[-71.150844,42.3484889],[-71.1507895,42.3485761],[-71.1507067,42.3487002],[-71.1506841,42.3487306]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196215139,"name":"Winship Street"},"geometry":{"type":"LineString","coordinates":[[-71.1523188,42.346135],[-71.1523144,42.3461389],[-71.1523085,42.3461607],[-71.1522709,42.3462172],[-71.1522557,42.346241],[-71.152223,42.3462923],[-71.1521823,42.3463576],[-71.152117,42.3464567],[-71.1520573,42.3465604],[-71.1519684,42.3466968],[-71.1519224,42.3467711],[-71.1519014,42.3468049],[-71.1518324,42.34691],[-71.1518015,42.3469574],[-71.1517698,42.347006],[-71.1516786,42.3471468],[-71.1516632,42.3471765],[-71.151636,42.3472292],[-71.1515619,42.3473421],[-71.1515258,42.3473874],[-71.1515047,42.3474377],[-71.1514124,42.3475796],[-71.1513485,42.3476819],[-71.1512792,42.3477914],[-71.1511948,42.3479266],[-71.1511134,42.3480532],[-71.1510683,42.3481321],[-71.15102,42.3482091],[-71.1509643,42.3483086],[-71.1509081,42.3483863],[-71.1508634,42.3484585],[-71.150844,42.3484889],[-71.1507895,42.3485761],[-71.1507067,42.3487002],[-71.1506841,42.3487306]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196215140,"name":"Winship Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1508224,42.3488734],[-71.1509349,42.3486841],[-71.1509668,42.3486285],[-71.1510323,42.3485247],[-71.1510685,42.3484662],[-71.1511275,42.348371],[-71.151171,42.3482961],[-71.1512468,42.3481729],[-71.1512538,42.348163],[-71.1513246,42.3480619],[-71.1513643,42.347985],[-71.1514406,42.3478746],[-71.1515499,42.3477067]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196215141,"name":"Peaceable Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.151589,42.3476504],[-71.1515773,42.3476673],[-71.1515499,42.3477067]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196215142,"name":"Peaceable Street"},"geometry":{"type":"LineString","coordinates":[[-71.1515499,42.3477067],[-71.1515684,42.3477036],[-71.1516255,42.3477248],[-71.1517762,42.3477806],[-71.1518568,42.3478063],[-71.1519851,42.347852],[-71.1521736,42.3479201],[-71.1523286,42.3479755],[-71.1525176,42.3480428],[-71.1527451,42.3481229],[-71.1529054,42.3481806],[-71.1530433,42.3482373],[-71.1530473,42.348257],[-71.1530192,42.3483042],[-71.1529466,42.3484086],[-71.1528835,42.348501],[-71.1528269,42.3485723],[-71.1527646,42.3486643],[-71.1527344,42.348709],[-71.1526485,42.3488441],[-71.1525654,42.3489663]]}},
@@ -1860,7 +1860,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196253990,"name":"Dickinson Road"},"geometry":{"type":"LineString","coordinates":[[-71.1622993,42.3478212],[-71.1621922,42.3479624],[-71.1620542,42.3481488],[-71.1619152,42.3483345],[-71.1617985,42.3484898],[-71.1616786,42.3486464],[-71.1615295,42.3488321],[-71.1615206,42.3488632],[-71.1615295,42.3488838],[-71.1615857,42.3488903],[-71.1619192,42.3489018],[-71.1622665,42.3489152],[-71.1623757,42.3489232]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196253991,"name":"Greymere Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1623757,42.3489232],[-71.1624283,42.3489249],[-71.1624841,42.3489268]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196253992,"name":"Langley Road"},"geometry":{"type":"LineString","coordinates":[[-71.1624841,42.3489268],[-71.1626691,42.3489374],[-71.1629544,42.348957],[-71.1630578,42.3489731],[-71.1630897,42.3489768],[-71.1631027,42.3489783],[-71.1633154,42.3490224],[-71.1633787,42.3489894],[-71.1634384,42.3489374],[-71.163507,42.3489086],[-71.1635742,42.3488733],[-71.1637326,42.3488446],[-71.1638884,42.3488498],[-71.1640003,42.3488779],[-71.1641525,42.348923],[-71.1643467,42.3489845],[-71.1645617,42.3490466],[-71.1647338,42.3490934],[-71.1649643,42.3491552],[-71.1651987,42.3492232],[-71.1655788,42.3493301],[-71.1657531,42.3493811],[-71.1661335,42.349486],[-71.1665711,42.3496155],[-71.1669166,42.3497136],[-71.1673315,42.3498323],[-71.1676673,42.3499238],[-71.1677164,42.3499379],[-71.1677753,42.3499333],[-71.1678598,42.3498787],[-71.1679797,42.3497816],[-71.1681464,42.3496606],[-71.1682991,42.3495492],[-71.1683668,42.3494957],[-71.1683743,42.3494761],[-71.1683674,42.3494626],[-71.1683515,42.349447],[-71.1682668,42.3494226],[-71.1680159,42.3493576],[-71.1677399,42.3492824],[-71.1674174,42.3491905],[-71.1671475,42.3491179],[-71.1667401,42.3490074],[-71.1665445,42.3489528],[-71.1662079,42.3488616],[-71.1658716,42.34877],[-71.1656128,42.3486997],[-71.1654354,42.3486517],[-71.1653244,42.3485977],[-71.1652881,42.3485814]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196253993,"name":"Regal Street"},"geometry":{"type":"LineString","coordinates":[[-71.1689925,42.3490265],[-71.1688822,42.3491046],[-71.1687122,42.3492421],[-71.1685673,42.3493429],[-71.168524,42.349374],[-71.1685023,42.34938],[-71.1684781,42.3493836],[-71.1684326,42.3493737],[-71.1683273,42.349341],[-71.1679866,42.3492527],[-71.1678364,42.3492126],[-71.1674153,42.3490939],[-71.1670693,42.3490012],[-71.1668621,42.3489438],[-71.1667676,42.348921],[-71.166725,42.3489091],[-71.1667069,42.3488887],[-71.1667069,42.3488595],[-71.1667713,42.3487307],[-71.166842,42.3485924],[-71.1669151,42.3484453],[-71.1669178,42.3484398],[-71.1669349,42.3484264],[-71.1669453,42.3484264],[-71.166973,42.3484264],[-71.1669822,42.3484264],[-71.1670794,42.3484536],[-71.1673355,42.3485225],[-71.1677201,42.3486328],[-71.1679568,42.3486967],[-71.1683856,42.3488161],[-71.168738,42.3489073],[-71.1689653,42.3489656],[-71.1689965,42.3489839],[-71.169003,42.3490016],[-71.1689987,42.349015],[-71.1689925,42.3490265]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196253993,"name":"Breck Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1689925,42.3490265],[-71.1688822,42.3491046],[-71.1687122,42.3492421],[-71.1685673,42.3493429],[-71.168524,42.349374],[-71.1685023,42.34938],[-71.1684781,42.3493836],[-71.1684326,42.3493737],[-71.1683273,42.349341],[-71.1679866,42.3492527],[-71.1678364,42.3492126],[-71.1674153,42.3490939],[-71.1670693,42.3490012],[-71.1668621,42.3489438],[-71.1667676,42.348921],[-71.166725,42.3489091],[-71.1667069,42.3488887],[-71.1667069,42.3488595],[-71.1667713,42.3487307],[-71.166842,42.3485924],[-71.1669151,42.3484453],[-71.1669178,42.3484398],[-71.1669349,42.3484264],[-71.1669453,42.3484264],[-71.166973,42.3484264],[-71.1669822,42.3484264],[-71.1670794,42.3484536],[-71.1673355,42.3485225],[-71.1677201,42.3486328],[-71.1679568,42.3486967],[-71.1683856,42.3488161],[-71.168738,42.3489073],[-71.1689653,42.3489656],[-71.1689965,42.3489839],[-71.169003,42.3490016],[-71.1689987,42.349015],[-71.1689925,42.3490265]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196253994,"name":"Bostonia Avenue","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1690066,42.3489762],[-71.1690427,42.3489566],[-71.1691165,42.3489164]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196253995,"name":"Breck Avenue","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.169015,42.3490225],[-71.1690541,42.3490429],[-71.1691068,42.3490705]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196253996,"name":"North Crescent Circuit","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1684699,42.3493911],[-71.1684261,42.3494297],[-71.1683878,42.3494634]]}},
@@ -1869,9 +1869,9 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196253999,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1613751,42.3488788],[-71.1613643,42.3488756],[-71.1612518,42.3488715],[-71.1610292,42.3488603],[-71.1607771,42.3488505],[-71.1606823,42.3488507]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196254000,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1605305,42.3489961],[-71.1607235,42.3490107],[-71.1610296,42.3490221],[-71.1611862,42.3490418],[-71.1611972,42.3490488]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196254001,"name":"Beechcroft Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1611972,42.3490488],[-71.16125,42.3490498],[-71.161294,42.3490506]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196254002,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.161294,42.3490506],[-71.1613052,42.3490506],[-71.1613437,42.3490401],[-71.1615401,42.3490503],[-71.1618697,42.3490741],[-71.1620772,42.3490771],[-71.1620869,42.3490756]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196254002,"name":"Beechcroft Street"},"geometry":{"type":"LineString","coordinates":[[-71.161294,42.3490506],[-71.1613052,42.3490506],[-71.1613437,42.3490401],[-71.1615401,42.3490503],[-71.1618697,42.3490741],[-71.1620772,42.3490771],[-71.1620869,42.3490756]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196254003,"name":"Turner Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1620869,42.3490756],[-71.1621348,42.3490795],[-71.1621834,42.3490834]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196254004,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1621834,42.3490834],[-71.1621967,42.3490846],[-71.1626395,42.3491016],[-71.1629032,42.349116],[-71.1630332,42.3491404],[-71.163062,42.3491495]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196254004,"name":"Turner Street"},"geometry":{"type":"LineString","coordinates":[[-71.1621834,42.3490834],[-71.1621967,42.3490846],[-71.1626395,42.3491016],[-71.1629032,42.349116],[-71.1630332,42.3491404],[-71.163062,42.3491495]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196254005,"name":"Washington Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1630148,42.3491157],[-71.163033,42.3490518],[-71.1630501,42.3489916]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196254006,"name":"Fairbanks Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.163062,42.3491495],[-71.1630938,42.34916],[-71.1631311,42.3491724]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1196254007,"name":"Langley Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1633415,42.3490393],[-71.1633861,42.3490538],[-71.1634377,42.3490705]]}},
@@ -1882,7 +1882,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1196254012,"name":"Fairbanks Street"},"geometry":{"type":"LineString","coordinates":[[-71.1629627,42.3523421],[-71.162962,42.3522811],[-71.1629714,42.3521389],[-71.1629755,42.3519709],[-71.1629808,42.3517781],[-71.1629922,42.3515076],[-71.1630016,42.3511874],[-71.1630184,42.3508812],[-71.1630405,42.3505283],[-71.163064,42.3502439],[-71.1630874,42.3499455],[-71.1631076,42.3496497],[-71.1631257,42.3494495],[-71.1631458,42.3492329],[-71.1631464,42.3491746]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1197832145,"name":"Kilsyth Terrace"},"geometry":{"type":"LineString","coordinates":[[-71.1471674,42.3393738],[-71.1471466,42.3393488],[-71.1471321,42.3393133],[-71.1471092,42.3392562],[-71.1471069,42.3392496],[-71.1471351,42.3392397],[-71.1471542,42.3392305],[-71.1471745,42.339222],[-71.1472713,42.3391758],[-71.1473036,42.339155],[-71.147373,42.3390845],[-71.1474615,42.3390047]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1197832146,"name":"Kilsyth Road"},"geometry":{"type":"LineString","coordinates":[[-71.1474606,42.3388892],[-71.1473939,42.3389583],[-71.1473249,42.3390277],[-71.1472491,42.3390961],[-71.147178,42.3391383],[-71.1471036,42.339171],[-71.1470842,42.3391789],[-71.147058,42.3391635],[-71.1470231,42.339108],[-71.1469614,42.3390327],[-71.1469276,42.3389999],[-71.1468724,42.3389558],[-71.1467997,42.338905],[-71.1467675,42.3388825],[-71.1465965,42.3388099],[-71.1465063,42.3387787],[-71.1464029,42.3387618],[-71.1463693,42.3387505],[-71.1463299,42.338731],[-71.146302,42.3387097],[-71.1462785,42.3386847]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1197832147},"geometry":{"type":"LineString","coordinates":[[-71.1467997,42.338905],[-71.1469814,42.3387723],[-71.1470904,42.3386949],[-71.1470917,42.338694],[-71.1473056,42.3385353],[-71.1473588,42.3384983],[-71.1473788,42.3384921],[-71.1474063,42.3384907]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1197832147,"name":"Kilsyth Road"},"geometry":{"type":"LineString","coordinates":[[-71.1467997,42.338905],[-71.1469814,42.3387723],[-71.1470904,42.3386949],[-71.1470917,42.338694],[-71.1473056,42.3385353],[-71.1473588,42.3384983],[-71.1473788,42.3384921],[-71.1474063,42.3384907]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1197832148},"geometry":{"type":"LineString","coordinates":[[-71.1470904,42.3386949],[-71.1471766,42.3387576]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1197832149,"name":"Kilsyth Road"},"geometry":{"type":"LineString","coordinates":[[-71.1469814,42.3387723],[-71.1470638,42.3388251],[-71.1470422,42.3388408]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1197832150,"name":"Kilsyth Terrace","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1471069,42.3392496],[-71.1470948,42.3392121],[-71.1470842,42.3391789]]}},
@@ -1900,7 +1900,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1199932894,"name":"Walnut Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2070249,42.3500002],[-71.2069085,42.3500095],[-71.2068107,42.3500172]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1199932895,"name":"Madison Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.2068107,42.3500172],[-71.2068016,42.3500024],[-71.20679,42.349995],[-71.2067793,42.3499882],[-71.2067503,42.3499843],[-71.2062455,42.3500072]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1199932896,"name":"Madison Avenue","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.20679,42.349995],[-71.2067864,42.3499369],[-71.2067796,42.349879]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1199932897,"name":"Walnut Street"},"geometry":{"type":"LineString","coordinates":[[-71.2062488,42.3499159],[-71.2066873,42.3499014],[-71.2067304,42.3498988],[-71.2067603,42.3498921],[-71.2067796,42.349879],[-71.2067852,42.3498596],[-71.2067869,42.3498332],[-71.2067865,42.3498043],[-71.20678,42.3497193],[-71.2067697,42.3495912],[-71.2067561,42.349449],[-71.2067535,42.3494213],[-71.2067343,42.3492464],[-71.2067233,42.3492197],[-71.2067121,42.3492118],[-71.2066935,42.3491989],[-71.2065296,42.3492018]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1199932897,"name":"Madison Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.2062488,42.3499159],[-71.2066873,42.3499014],[-71.2067304,42.3498988],[-71.2067603,42.3498921],[-71.2067796,42.349879],[-71.2067852,42.3498596],[-71.2067869,42.3498332],[-71.2067865,42.3498043],[-71.20678,42.3497193],[-71.2067697,42.3495912],[-71.2067561,42.349449],[-71.2067535,42.3494213],[-71.2067343,42.3492464],[-71.2067233,42.3492197],[-71.2067121,42.3492118],[-71.2066935,42.3491989],[-71.2065296,42.3492018]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1199932899,"name":"Walnut Street"},"geometry":{"type":"LineString","coordinates":[[-71.2060405,42.3491365],[-71.2066456,42.3491092],[-71.2066668,42.3491061],[-71.2066934,42.3490987],[-71.2067046,42.3490873],[-71.2067108,42.3490718],[-71.2067141,42.3490554],[-71.2067017,42.3489659],[-71.2066708,42.3486801],[-71.2066469,42.3484553],[-71.2066461,42.348448],[-71.2066389,42.348429],[-71.2066264,42.3484118],[-71.2065984,42.3484057],[-71.2063279,42.3484306],[-71.2062086,42.3484407],[-71.206016,42.3484581],[-71.2059582,42.3484634]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1199932900,"name":"Washington Park","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2067121,42.3492118],[-71.2067023,42.3491527],[-71.2066934,42.3490987]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1199932901,"name":"Walnut Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2068931,42.3490475],[-71.2067983,42.3490513],[-71.2067141,42.3490554]]}},
@@ -1930,7 +1930,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1217636266,"name":"Walnut Street","surface":"concrete","width":"1.5","incline":"0%","wheelchair":"yes"},"geometry":{"type":"LineString","coordinates":[[-71.2060746,42.3278973],[-71.2060755,42.3279283],[-71.2060722,42.3280113],[-71.2060852,42.3280653],[-71.2061087,42.3281445],[-71.2061307,42.3282399],[-71.2061983,42.3284874],[-71.2062416,42.3286328],[-71.206294,42.3287789]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1217636267,"name":"Walnut Street","surface":"concrete","width":"1.5","incline":"0%","wheelchair":"yes"},"geometry":{"type":"LineString","coordinates":[[-71.2064107,42.328662],[-71.2063392,42.3284359],[-71.2063171,42.3283557],[-71.2062829,42.3282051],[-71.2062741,42.3281544],[-71.2062653,42.3280915],[-71.2062446,42.3279221],[-71.2062435,42.3279016],[-71.2062482,42.3278815]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1217636269,"name":"Commonwealth Avenue","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2071174,42.3384544],[-71.2069144,42.338494],[-71.2067627,42.3385237],[-71.2067533,42.3385766],[-71.2067384,42.3386598]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1217636271,"surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2071956,42.3316387],[-71.207219,42.3317204],[-71.2072639,42.3318775],[-71.207349,42.3321346],[-71.2073973,42.3322806],[-71.207446,42.3324291],[-71.2074572,42.3324634],[-71.2074503,42.3325104],[-71.2074657,42.3325538],[-71.2074957,42.3326227],[-71.2075336,42.3327331],[-71.2076669,42.3331623],[-71.2077096,42.3332933],[-71.2077364,42.3333979],[-71.207748,42.333477],[-71.2077458,42.3335851],[-71.2077339,42.333657],[-71.207677,42.3338395],[-71.2075997,42.334107],[-71.2075973,42.3341149],[-71.2075048,42.3344177],[-71.2074445,42.3346378],[-71.207354,42.3349162],[-71.2072705,42.3351984],[-71.2072318,42.3353044],[-71.2072079,42.3353796],[-71.2072076,42.3353996],[-71.2071861,42.3354849],[-71.2071056,42.3357671],[-71.2070643,42.3358973],[-71.2070252,42.3359983],[-71.2070109,42.3360181],[-71.2069847,42.336033],[-71.2069549,42.3360412],[-71.2069522,42.336053]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1217636271,"name":"Brentwood Avenue","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2071956,42.3316387],[-71.207219,42.3317204],[-71.2072639,42.3318775],[-71.207349,42.3321346],[-71.2073973,42.3322806],[-71.207446,42.3324291],[-71.2074572,42.3324634],[-71.2074503,42.3325104],[-71.2074657,42.3325538],[-71.2074957,42.3326227],[-71.2075336,42.3327331],[-71.2076669,42.3331623],[-71.2077096,42.3332933],[-71.2077364,42.3333979],[-71.207748,42.333477],[-71.2077458,42.3335851],[-71.2077339,42.333657],[-71.207677,42.3338395],[-71.2075997,42.334107],[-71.2075973,42.3341149],[-71.2075048,42.3344177],[-71.2074445,42.3346378],[-71.207354,42.3349162],[-71.2072705,42.3351984],[-71.2072318,42.3353044],[-71.2072079,42.3353796],[-71.2072076,42.3353996],[-71.2071861,42.3354849],[-71.2071056,42.3357671],[-71.2070643,42.3358973],[-71.2070252,42.3359983],[-71.2070109,42.3360181],[-71.2069847,42.336033],[-71.2069549,42.3360412],[-71.2069522,42.336053]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1217636272,"name":"Walnut Street"},"geometry":{"type":"LineString","coordinates":[[-71.2068031,42.3387931],[-71.2067989,42.3389221],[-71.2068025,42.3391924],[-71.2067928,42.3393362],[-71.2067618,42.3397001],[-71.2067447,42.3398816],[-71.2067086,42.3401928],[-71.2066778,42.3404717],[-71.2066488,42.3408072],[-71.2066263,42.3410624],[-71.2065971,42.3413497],[-71.2065709,42.3415352],[-71.2065542,42.3416043],[-71.2065335,42.3416737],[-71.2065041,42.3417772],[-71.2064678,42.3418818],[-71.2064572,42.3419191],[-71.2064548,42.3419253]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1217636273,"name":"Walnut Street"},"geometry":{"type":"LineString","coordinates":[[-71.2065728,42.3478264],[-71.206581,42.3478995],[-71.2066099,42.3481416],[-71.2066241,42.3483085],[-71.2066189,42.3483228]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1217636275,"name":"Walnut Street"},"geometry":{"type":"LineString","coordinates":[[-71.2069782,42.3494225],[-71.2069651,42.3494173],[-71.2069531,42.3494042],[-71.2069484,42.3493728],[-71.206916,42.3491782],[-71.2068942,42.3490633]]}},
@@ -1939,7 +1939,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1217636278,"name":"Walnut Street"},"geometry":{"type":"LineString","coordinates":[[-71.2069876,42.338879],[-71.2069964,42.338765],[-71.2069996,42.3387304],[-71.2070034,42.3386896],[-71.2070182,42.3386574],[-71.2070464,42.3386367]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1217636279,"name":"Walnut Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2067384,42.3386598],[-71.206761,42.3386864],[-71.2067815,42.3387066],[-71.2067978,42.3387271],[-71.2068029,42.3387536],[-71.2068031,42.3387931]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1234189607,"name":"Boylston Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1554399,42.3257382],[-71.1554083,42.3256982],[-71.1553656,42.3256443]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1243950157,"name":"Heath Street"},"geometry":{"type":"LineString","coordinates":[[-71.1771271,42.3181578],[-71.1769525,42.3181721],[-71.1768472,42.3181758],[-71.1767468,42.318176],[-71.1765528,42.3181598],[-71.1763446,42.3181294],[-71.1762319,42.3181035],[-71.1760933,42.3180663],[-71.1757367,42.3179698],[-71.1755499,42.317932],[-71.1754269,42.3179177],[-71.1752771,42.3179041],[-71.1751559,42.3179037],[-71.1749274,42.3179193],[-71.1749073,42.3179201],[-71.1748693,42.3179216],[-71.174722,42.3179443],[-71.1746596,42.3179594],[-71.1746245,42.3179678],[-71.1746183,42.3179693],[-71.1742429,42.3180673],[-71.174163,42.3180827],[-71.1741015,42.3180946],[-71.1740877,42.3180973],[-71.1737869,42.3181235],[-71.1737468,42.3181161],[-71.1736672,42.3181014],[-71.1735641,42.3180848],[-71.1735088,42.3180742],[-71.1734219,42.3180589],[-71.1733253,42.3180422],[-71.1732868,42.3180365],[-71.1732391,42.3180317],[-71.1729861,42.3180133],[-71.1728719,42.3180053],[-71.17282,42.3180029],[-71.1727649,42.3180018],[-71.1727167,42.3180022],[-71.1726572,42.3180036],[-71.1725891,42.3180075],[-71.1725452,42.3180112],[-71.1724965,42.3180166],[-71.1724366,42.3180256],[-71.1724016,42.3180312],[-71.1723584,42.3180382],[-71.1723244,42.3180446],[-71.172311,42.318051],[-71.1722957,42.318061],[-71.172282,42.3180758],[-71.1722794,42.3180814],[-71.1722758,42.3180891],[-71.1722732,42.3180992],[-71.1722713,42.3181091],[-71.1722705,42.3181192],[-71.172272,42.3181287],[-71.1722734,42.3181387],[-71.1722792,42.318154],[-71.1722827,42.3181585],[-71.1722887,42.318165],[-71.1723056,42.3181796],[-71.1724598,42.3182843],[-71.1726249,42.3183958],[-71.1727904,42.3185098]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1243950157,"name":"Florence Street"},"geometry":{"type":"LineString","coordinates":[[-71.1771271,42.3181578],[-71.1769525,42.3181721],[-71.1768472,42.3181758],[-71.1767468,42.318176],[-71.1765528,42.3181598],[-71.1763446,42.3181294],[-71.1762319,42.3181035],[-71.1760933,42.3180663],[-71.1757367,42.3179698],[-71.1755499,42.317932],[-71.1754269,42.3179177],[-71.1752771,42.3179041],[-71.1751559,42.3179037],[-71.1749274,42.3179193],[-71.1749073,42.3179201],[-71.1748693,42.3179216],[-71.174722,42.3179443],[-71.1746596,42.3179594],[-71.1746245,42.3179678],[-71.1746183,42.3179693],[-71.1742429,42.3180673],[-71.174163,42.3180827],[-71.1741015,42.3180946],[-71.1740877,42.3180973],[-71.1737869,42.3181235],[-71.1737468,42.3181161],[-71.1736672,42.3181014],[-71.1735641,42.3180848],[-71.1735088,42.3180742],[-71.1734219,42.3180589],[-71.1733253,42.3180422],[-71.1732868,42.3180365],[-71.1732391,42.3180317],[-71.1729861,42.3180133],[-71.1728719,42.3180053],[-71.17282,42.3180029],[-71.1727649,42.3180018],[-71.1727167,42.3180022],[-71.1726572,42.3180036],[-71.1725891,42.3180075],[-71.1725452,42.3180112],[-71.1724965,42.3180166],[-71.1724366,42.3180256],[-71.1724016,42.3180312],[-71.1723584,42.3180382],[-71.1723244,42.3180446],[-71.172311,42.318051],[-71.1722957,42.318061],[-71.172282,42.3180758],[-71.1722794,42.3180814],[-71.1722758,42.3180891],[-71.1722732,42.3180992],[-71.1722713,42.3181091],[-71.1722705,42.3181192],[-71.172272,42.3181287],[-71.1722734,42.3181387],[-71.1722792,42.318154],[-71.1722827,42.3181585],[-71.1722887,42.318165],[-71.1723056,42.3181796],[-71.1724598,42.3182843],[-71.1726249,42.3183958],[-71.1727904,42.3185098]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1243950160,"name":"Belmont Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.172268,42.3180843],[-71.172129,42.3181133],[-71.1720217,42.3181472]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1243950161,"name":"Hammond Pond Parkway","surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.1722843,42.3202983],[-71.1721756,42.320048],[-71.1721551,42.3200008],[-71.1719543,42.3196421],[-71.1718754,42.3194935]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1243950162,"name":"Heath Street","surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.1698258,42.320149],[-71.1697953,42.3201928],[-71.1697505,42.3203013],[-71.1697189,42.320413],[-71.1696905,42.3205341],[-71.1696849,42.3205645],[-71.1696842,42.3206066],[-71.1696845,42.320672],[-71.1696755,42.3207267],[-71.169653,42.3207872],[-71.1696048,42.3208607],[-71.1695644,42.3209058],[-71.169486,42.3209703],[-71.1693884,42.3210224],[-71.1692759,42.3210647],[-71.169108,42.3211091],[-71.1689203,42.3211547],[-71.1686509,42.3212152],[-71.1684532,42.3212546],[-71.1683238,42.3212748],[-71.168207,42.321286],[-71.168105,42.3212939],[-71.1678573,42.3213124],[-71.1674557,42.3213415],[-71.1673492,42.3213504],[-71.1672595,42.3213596],[-71.1672195,42.3213651],[-71.1671967,42.3213745],[-71.1671813,42.3213891]]}},
@@ -1948,8 +1948,8 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1243950165,"name":"Holly Lane"},"geometry":{"type":"LineString","coordinates":[[-71.1669012,42.3225453],[-71.1668446,42.3225596],[-71.1665071,42.3226466],[-71.166477,42.3226545],[-71.1663825,42.3226792],[-71.1662395,42.3227167],[-71.1661353,42.3227439],[-71.1657314,42.3228464],[-71.1657184,42.3228464],[-71.1657074,42.3228396],[-71.1656948,42.3228152],[-71.1656565,42.3227357],[-71.1656009,42.3226072],[-71.1655462,42.3224736],[-71.1655124,42.3223958],[-71.1654797,42.3223103],[-71.1654527,42.3222313],[-71.1654143,42.3220943],[-71.1654066,42.3220594],[-71.1654026,42.3220355],[-71.1653945,42.3219722],[-71.1653828,42.321868],[-71.1653716,42.3217372],[-71.1653691,42.321686],[-71.1653708,42.3216776],[-71.1653751,42.3216717],[-71.1653835,42.3216671],[-71.1653943,42.3216656],[-71.165486,42.321657],[-71.1655917,42.3216464]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1243950166,"name":"Tully Street"},"geometry":{"type":"LineString","coordinates":[[-71.1662986,42.3214433],[-71.166329,42.3214342],[-71.1663921,42.3214245],[-71.1664699,42.3214173],[-71.166547,42.3214102],[-71.1666496,42.3214028],[-71.1668307,42.3213916],[-71.1669563,42.321385],[-71.1669773,42.3213886],[-71.1669904,42.321393],[-71.1670048,42.3214006],[-71.1670178,42.3214098],[-71.1670292,42.3214231],[-71.1670363,42.3214355],[-71.1670583,42.3214884],[-71.1671158,42.3216256],[-71.1671583,42.3217173],[-71.1671856,42.3217761],[-71.167274,42.3219777],[-71.1673611,42.3221842],[-71.1673694,42.3222028],[-71.167402,42.3222754],[-71.1674402,42.3223614],[-71.167447,42.3223821],[-71.1674466,42.3223913],[-71.1674408,42.3224036],[-71.1674331,42.3224088]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1243950167,"name":"Boylston Street","surface":"asphalt","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1676615,42.322367],[-71.1676813,42.3224124],[-71.1677283,42.3225205],[-71.1677594,42.3225713],[-71.1677911,42.3226231]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1243950168,"name":"Sheafe Street"},"geometry":{"type":"LineString","coordinates":[[-71.1655652,42.3228855],[-71.1655633,42.3228722],[-71.1655541,42.3228492],[-71.1654867,42.3226794],[-71.1654717,42.3226428],[-71.1653957,42.322443],[-71.1653833,42.3224166],[-71.1653675,42.3224034],[-71.1653472,42.3223957],[-71.1653246,42.3223896],[-71.1653014,42.3223915],[-71.1652091,42.3224278],[-71.1648247,42.3225936],[-71.1646081,42.322687],[-71.1643042,42.3228172],[-71.1640871,42.3229088],[-71.1638125,42.3230275],[-71.1637677,42.3230537],[-71.1637527,42.3230777],[-71.1637528,42.323095],[-71.1637528,42.3230997],[-71.1638015,42.3231517],[-71.1638977,42.3232399],[-71.163942,42.323281],[-71.1639667,42.3232996],[-71.1639859,42.3233053],[-71.1640278,42.3233039],[-71.1642672,42.3232429],[-71.1643206,42.3232293],[-71.1650353,42.3230404],[-71.1651152,42.3230189],[-71.1651275,42.3230156],[-71.1653091,42.3229676],[-71.1655145,42.3229117],[-71.1655385,42.3229055],[-71.1655555,42.322897],[-71.1655603,42.3228913],[-71.1655652,42.3228855]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1243950169,"name":"Heath Street"},"geometry":{"type":"LineString","coordinates":[[-71.1653058,42.3222945],[-71.165318,42.3222854],[-71.1653256,42.3222707],[-71.1653254,42.3222591],[-71.1652908,42.3221543],[-71.1652824,42.3221196],[-71.1652696,42.3220467],[-71.1652528,42.3219],[-71.1652387,42.3217356],[-71.1652342,42.321726],[-71.1652261,42.3217195],[-71.1652126,42.3217172],[-71.1651857,42.3217218],[-71.1651509,42.3217323],[-71.1650742,42.3217637],[-71.1650163,42.321789],[-71.1649732,42.3218105],[-71.164892,42.3218575],[-71.164816,42.3219054],[-71.1646133,42.3220391],[-71.1643377,42.3222039],[-71.1639724,42.3224317],[-71.1637035,42.3225917],[-71.163478,42.3227219],[-71.1634215,42.3227545],[-71.1634069,42.3227637],[-71.1634031,42.3227721],[-71.1634076,42.3227799],[-71.1634166,42.3227896],[-71.1634326,42.3228052],[-71.1635038,42.3228744],[-71.1636357,42.3229902],[-71.1636433,42.322992],[-71.1636532,42.3229943],[-71.1636672,42.3229921],[-71.1640622,42.3228169],[-71.1644297,42.3226596],[-71.1649293,42.3224502],[-71.165276,42.3223072],[-71.1653058,42.3222945]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1243950168,"name":"Holly Lane"},"geometry":{"type":"LineString","coordinates":[[-71.1655652,42.3228855],[-71.1655633,42.3228722],[-71.1655541,42.3228492],[-71.1654867,42.3226794],[-71.1654717,42.3226428],[-71.1653957,42.322443],[-71.1653833,42.3224166],[-71.1653675,42.3224034],[-71.1653472,42.3223957],[-71.1653246,42.3223896],[-71.1653014,42.3223915],[-71.1652091,42.3224278],[-71.1648247,42.3225936],[-71.1646081,42.322687],[-71.1643042,42.3228172],[-71.1640871,42.3229088],[-71.1638125,42.3230275],[-71.1637677,42.3230537],[-71.1637527,42.3230777],[-71.1637528,42.323095],[-71.1637528,42.3230997],[-71.1638015,42.3231517],[-71.1638977,42.3232399],[-71.163942,42.323281],[-71.1639667,42.3232996],[-71.1639859,42.3233053],[-71.1640278,42.3233039],[-71.1642672,42.3232429],[-71.1643206,42.3232293],[-71.1650353,42.3230404],[-71.1651152,42.3230189],[-71.1651275,42.3230156],[-71.1653091,42.3229676],[-71.1655145,42.3229117],[-71.1655385,42.3229055],[-71.1655555,42.322897],[-71.1655603,42.3228913],[-71.1655652,42.3228855]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1243950169,"name":"Sheafe Street"},"geometry":{"type":"LineString","coordinates":[[-71.1653058,42.3222945],[-71.165318,42.3222854],[-71.1653256,42.3222707],[-71.1653254,42.3222591],[-71.1652908,42.3221543],[-71.1652824,42.3221196],[-71.1652696,42.3220467],[-71.1652528,42.3219],[-71.1652387,42.3217356],[-71.1652342,42.321726],[-71.1652261,42.3217195],[-71.1652126,42.3217172],[-71.1651857,42.3217218],[-71.1651509,42.3217323],[-71.1650742,42.3217637],[-71.1650163,42.321789],[-71.1649732,42.3218105],[-71.164892,42.3218575],[-71.164816,42.3219054],[-71.1646133,42.3220391],[-71.1643377,42.3222039],[-71.1639724,42.3224317],[-71.1637035,42.3225917],[-71.163478,42.3227219],[-71.1634215,42.3227545],[-71.1634069,42.3227637],[-71.1634031,42.3227721],[-71.1634076,42.3227799],[-71.1634166,42.3227896],[-71.1634326,42.3228052],[-71.1635038,42.3228744],[-71.1636357,42.3229902],[-71.1636433,42.322992],[-71.1636532,42.3229943],[-71.1636672,42.3229921],[-71.1640622,42.3228169],[-71.1644297,42.3226596],[-71.1649293,42.3224502],[-71.165276,42.3223072],[-71.1653058,42.3222945]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1243950170,"name":"Sheafe Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1636523,42.3230031],[-71.163689,42.3230386],[-71.1637318,42.3230799]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1245111746,"name":"Heath Street"},"geometry":{"type":"LineString","coordinates":[[-71.1737747,42.3180093],[-71.1736428,42.3179884],[-71.17348,42.3179592],[-71.1733762,42.3179407],[-71.1732943,42.3179286],[-71.1731397,42.317915],[-71.1729414,42.317903],[-71.172829,42.3178972],[-71.1726956,42.3178943],[-71.1726046,42.3178973],[-71.172517,42.3179057],[-71.1724156,42.3179208],[-71.1723741,42.317927],[-71.1723459,42.3179312],[-71.1723183,42.3179298],[-71.1723013,42.3179252],[-71.1722795,42.317917],[-71.17227,42.3179195]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1245111747,"name":"Heath Street"},"geometry":{"type":"LineString","coordinates":[[-71.1711172,42.3183646],[-71.1711191,42.3183718],[-71.1711196,42.3183837],[-71.171119,42.3183991],[-71.1711079,42.31842],[-71.1710784,42.3184475],[-71.1710698,42.3184534],[-71.171024,42.3184845],[-71.1709648,42.3185176],[-71.170736,42.3186427],[-71.1706883,42.3186668],[-71.1706588,42.3186746],[-71.170613,42.3186813],[-71.1705777,42.3186825]]}},
@@ -2007,7 +2007,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1267292909,"name":"Walnut Place","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2068942,42.3490633],[-71.2068931,42.3490475],[-71.2068926,42.3490393],[-71.2068982,42.3490241],[-71.2069147,42.349013]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1267292910,"name":"Walnut Place","surface":"concrete","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2069147,42.349013],[-71.2069076,42.3490059],[-71.206899,42.3489691],[-71.2068889,42.3489094]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1267292911,"name":"Claflin Place","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2066189,42.3483228],[-71.2066203,42.3483356],[-71.2066239,42.3483693],[-71.2066264,42.3484118]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1268298093,"surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1413917,42.349263],[-71.1413996,42.3492655],[-71.1416439,42.3493419],[-71.1421287,42.349429],[-71.142146,42.3494322],[-71.1430637,42.3496003],[-71.1430801,42.3496031],[-71.1437752,42.3497235],[-71.1444185,42.3498227],[-71.1450281,42.3499168],[-71.1456772,42.350017],[-71.1457561,42.3500292],[-71.1461238,42.350083]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1268298093,"name":"Warren Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1413917,42.349263],[-71.1413996,42.3492655],[-71.1416439,42.3493419],[-71.1421287,42.349429],[-71.142146,42.3494322],[-71.1430637,42.3496003],[-71.1430801,42.3496031],[-71.1437752,42.3497235],[-71.1444185,42.3498227],[-71.1450281,42.3499168],[-71.1456772,42.350017],[-71.1457561,42.3500292],[-71.1461238,42.350083]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1268298094,"name":"Warren Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1440653,42.3496568],[-71.1441512,42.3496699],[-71.1443245,42.349696],[-71.1445323,42.3497272],[-71.1457166,42.3499047],[-71.1458683,42.3499275],[-71.1462877,42.3499904],[-71.146372,42.3500021]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1268298099,"name":"Warren Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1456816,42.3500042],[-71.145697,42.3499603],[-71.1457129,42.3499149]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1268298100,"name":"Warren Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1465141,42.3500181],[-71.146525,42.3500233],[-71.1470136,42.3500986]]}},
@@ -2023,12 +2023,12 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1271133924,"name":"Blue Trail"},"geometry":{"type":"LineString","coordinates":[[-71.1772658,42.3262811],[-71.1776928,42.3263634]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1271139345,"name":"Hammond Pond Parkway","surface":"gravel","rough":true},"geometry":{"type":"LineString","coordinates":[[-71.1778553,42.3287842],[-71.1775717,42.3285033],[-71.1775366,42.32847],[-71.1775036,42.3284389],[-71.1774559,42.3283949],[-71.1774137,42.3283571],[-71.177334,42.3282865],[-71.177226,42.3281931],[-71.1771223,42.3281044],[-71.1770279,42.3280259],[-71.1769211,42.327939],[-71.1768184,42.3278592],[-71.1765311,42.3276358],[-71.1763518,42.3274878],[-71.176271,42.3274173],[-71.1762305,42.3273784],[-71.176109,42.3272634],[-71.1760354,42.3271761],[-71.1759354,42.3270479],[-71.1758365,42.3269012],[-71.1757882,42.3268221],[-71.1757766,42.326803],[-71.1757712,42.3267946],[-71.1757651,42.3267865],[-71.1757562,42.3267761],[-71.1757505,42.32677],[-71.1757452,42.3267636],[-71.175742,42.3267586],[-71.1757371,42.3267502],[-71.1757276,42.3267302],[-71.1757181,42.3267087],[-71.1757025,42.3266739],[-71.1756868,42.3266386],[-71.1756538,42.3265588],[-71.1756259,42.3264798],[-71.1756063,42.3264125],[-71.1755858,42.3263406],[-71.175563,42.3262442],[-71.1755479,42.3261591],[-71.1755403,42.3260967],[-71.175535,42.3260314],[-71.1755306,42.3259729],[-71.1755274,42.3258634]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1271140415},"geometry":{"type":"LineString","coordinates":[[-71.1785701,42.3264357],[-71.1785061,42.3263395],[-71.1784499,42.3262406],[-71.1783348,42.3260836]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1272137400,"name":"Ayr Road"},"geometry":{"type":"LineString","coordinates":[[-71.147218,42.336917],[-71.1472732,42.3369031],[-71.1474615,42.3368557],[-71.1480839,42.3367186],[-71.1485329,42.3366144],[-71.1486435,42.3365829],[-71.1487646,42.3368612],[-71.1488876,42.3371665],[-71.1487339,42.3371998],[-71.1484237,42.3372667],[-71.148104,42.3373359],[-71.1477751,42.3374066],[-71.1474636,42.3374701]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1272137400,"name":"Orkney Road"},"geometry":{"type":"LineString","coordinates":[[-71.147218,42.336917],[-71.1472732,42.3369031],[-71.1474615,42.3368557],[-71.1480839,42.3367186],[-71.1485329,42.3366144],[-71.1486435,42.3365829],[-71.1487646,42.3368612],[-71.1488876,42.3371665],[-71.1487339,42.3371998],[-71.1484237,42.3372667],[-71.148104,42.3373359],[-71.1477751,42.3374066],[-71.1474636,42.3374701]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1272137402,"name":"Beacon Street","surface":"asphalt","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1452474,42.3372823],[-71.1452479,42.3372308],[-71.1452484,42.337186]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1272137404,"name":"Englewood Avenue","surface":"asphalt","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1451715,42.3371337],[-71.145052,42.3371555],[-71.1449551,42.3371732]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1272137406,"name":"Beacon Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1456025,42.3368313],[-71.1456351,42.3368269],[-71.1458832,42.3367731],[-71.1460795,42.3367306],[-71.1470065,42.33651]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1272137407,"name":"Clinton Path","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1454446,42.336866],[-71.1455104,42.3368515],[-71.1456025,42.3368313]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1272137408,"name":"Beacon Street"},"geometry":{"type":"LineString","coordinates":[[-71.147102,42.3365003],[-71.1471719,42.3364973]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1272137408,"name":"Strathmore Road"},"geometry":{"type":"LineString","coordinates":[[-71.147102,42.3365003],[-71.1471719,42.3364973]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1272137409,"name":"Strathmore Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1470065,42.33651],[-71.1470519,42.3365054],[-71.147102,42.3365003]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1272137410,"name":"Beacon Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1472663,42.3368528],[-71.1472665,42.3367987],[-71.1472668,42.3367532]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1272137411,"name":"Beacon Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1472146,42.336671],[-71.1472067,42.3366505],[-71.1471989,42.3366244],[-71.1471942,42.3366088]]}},
@@ -2038,7 +2038,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1272137415},"geometry":{"type":"LineString","coordinates":[[-71.1470589,42.3367327],[-71.14695,42.3367582],[-71.1468412,42.3367791],[-71.146814,42.3367851]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1272137416},"geometry":{"type":"LineString","coordinates":[[-71.14695,42.3367582],[-71.1469709,42.3367948]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1272137417,"name":"Beacon Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1469709,42.3367948],[-71.1470029,42.3368556],[-71.1470279,42.3369032]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1272137418,"name":"Reservoir Court","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1451912,42.3373456],[-71.145226,42.3373394],[-71.1452563,42.3373328],[-71.1463122,42.337102],[-71.1463502,42.337094],[-71.1463886,42.3370859],[-71.1470646,42.3369507],[-71.1471132,42.3369393]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1272137418,"name":"Englewood Avenue","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1451912,42.3373456],[-71.145226,42.3373394],[-71.1452563,42.3373328],[-71.1463122,42.337102],[-71.1463502,42.337094],[-71.1463886,42.3370859],[-71.1470646,42.3369507],[-71.1471132,42.3369393]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1272137419,"name":"Strathmore Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1471132,42.3369393],[-71.1471621,42.3369289],[-71.147218,42.336917]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1272137422,"name":"Beacon Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1493566,42.336245],[-71.1493505,42.3362318],[-71.1493806,42.3362243],[-71.1493614,42.3361828],[-71.1493576,42.3361742]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1272190502},"geometry":{"type":"LineString","coordinates":[[-71.1593577,42.3123536],[-71.1594491,42.3123731],[-71.1595081,42.312387],[-71.1595832,42.312393],[-71.1596623,42.3123831],[-71.1597347,42.3123553],[-71.159838,42.3123057],[-71.159897,42.312273],[-71.1599815,42.3122234],[-71.1600338,42.3121649],[-71.1600874,42.3120796],[-71.1601116,42.3119933],[-71.1601438,42.3118703],[-71.1601679,42.3118356],[-71.1602578,42.3117642],[-71.1604536,42.3116373],[-71.1605265,42.3115731],[-71.1606393,42.3114022]]}},
@@ -2058,7 +2058,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1272207429},"geometry":{"type":"LineString","coordinates":[[-71.1468212,42.3118515],[-71.1467048,42.3120037]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1272439043,"name":"Floral Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2059521,42.3213043],[-71.2059132,42.3212795],[-71.2058679,42.3212506],[-71.2058599,42.3212455]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1272439044,"name":"Floral Street"},"geometry":{"type":"LineString","coordinates":[[-71.2058599,42.3212455],[-71.205868,42.3212354]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1272634588},"geometry":{"type":"LineString","coordinates":[[-71.1537175,42.3572672],[-71.1535081,42.357217],[-71.1532541,42.3571543],[-71.1530316,42.3570995],[-71.1528064,42.3570417],[-71.1523796,42.3569321],[-71.1522699,42.3569039],[-71.1521327,42.3568687],[-71.1510169,42.3565809],[-71.1506096,42.3564758],[-71.1505881,42.3564703],[-71.1503877,42.3564193],[-71.149857,42.3562845],[-71.1496191,42.356224],[-71.1493452,42.3561519],[-71.1493165,42.3561412],[-71.149303,42.3561291],[-71.1492979,42.3561242],[-71.1492889,42.3561158],[-71.1492806,42.3561015],[-71.1492804,42.3560884],[-71.1492879,42.3560646],[-71.1493936,42.3558927],[-71.1494772,42.3557576],[-71.1495529,42.3556353],[-71.1497129,42.3553811],[-71.1497959,42.3552491],[-71.1499636,42.3549706],[-71.14998,42.3549571],[-71.1499948,42.3549449],[-71.1500286,42.3549333],[-71.1500593,42.3549299],[-71.1500869,42.3549299],[-71.1501057,42.3549333],[-71.1501572,42.3549533],[-71.1502119,42.3549751],[-71.1502644,42.354996],[-71.1503075,42.3550109],[-71.1503878,42.3550387]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1272634588,"name":"Faneuil Street"},"geometry":{"type":"LineString","coordinates":[[-71.1537175,42.3572672],[-71.1535081,42.357217],[-71.1532541,42.3571543],[-71.1530316,42.3570995],[-71.1528064,42.3570417],[-71.1523796,42.3569321],[-71.1522699,42.3569039],[-71.1521327,42.3568687],[-71.1510169,42.3565809],[-71.1506096,42.3564758],[-71.1505881,42.3564703],[-71.1503877,42.3564193],[-71.149857,42.3562845],[-71.1496191,42.356224],[-71.1493452,42.3561519],[-71.1493165,42.3561412],[-71.149303,42.3561291],[-71.1492979,42.3561242],[-71.1492889,42.3561158],[-71.1492806,42.3561015],[-71.1492804,42.3560884],[-71.1492879,42.3560646],[-71.1493936,42.3558927],[-71.1494772,42.3557576],[-71.1495529,42.3556353],[-71.1497129,42.3553811],[-71.1497959,42.3552491],[-71.1499636,42.3549706],[-71.14998,42.3549571],[-71.1499948,42.3549449],[-71.1500286,42.3549333],[-71.1500593,42.3549299],[-71.1500869,42.3549299],[-71.1501057,42.3549333],[-71.1501572,42.3549533],[-71.1502119,42.3549751],[-71.1502644,42.354996],[-71.1503075,42.3550109],[-71.1503878,42.3550387]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1272706786},"geometry":{"type":"LineString","coordinates":[[-71.1460864,42.3475978],[-71.146243,42.3476206],[-71.1465191,42.3476873],[-71.1466306,42.3476913],[-71.1467393,42.3476683]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1272960645,"surface":"concrete:plates"},"geometry":{"type":"LineString","coordinates":[[-71.1515869,42.3456879],[-71.1516141,42.3456534],[-71.1516315,42.345632],[-71.1516493,42.3456121],[-71.1516574,42.3456043],[-71.1516646,42.3455988],[-71.1516743,42.3455937],[-71.1516861,42.3455909],[-71.1516996,42.3455905],[-71.1517133,42.3455912],[-71.1517255,42.3455937],[-71.1517401,42.3455983],[-71.1517494,42.3456015],[-71.1517818,42.3456104]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1272960646,"surface":"concrete:plates"},"geometry":{"type":"LineString","coordinates":[[-71.1516688,42.3457116],[-71.1516858,42.3457164],[-71.1517163,42.3457244]]}},
@@ -2118,7 +2118,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1274228702,"name":"Hammond Pond Parkway","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1724654,42.3207513],[-71.172454,42.3207747],[-71.1724398,42.3208039]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1282451253,"name":"Centre Street","surface":"asphalt","crossing":"traffic_signals","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.2052522,42.320468],[-71.2051492,42.3204239],[-71.2050803,42.3203944]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1282451254,"name":"Walnut Street","surface":"asphalt","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2052522,42.320468],[-71.2051151,42.3205323],[-71.2050369,42.320569]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1282451255,"name":"Walnut Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2050425,42.320577],[-71.2050422,42.3205918]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1282451255,"name":"Centre Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2050425,42.320577],[-71.2050422,42.3205918]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1282451256,"name":"Centre Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2052763,42.3204739],[-71.2052522,42.320468]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1284766180,"name":"Englewood Avenue","surface":"asphalt","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1450698,42.3373733],[-71.1451274,42.3373602],[-71.1451912,42.3373456]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1284766181,"name":"Ayr Road","surface":"asphalt","crossing":"uncontrolled","kerb":"flush"},"geometry":{"type":"LineString","coordinates":[[-71.1486519,42.3362775],[-71.148658,42.3362922],[-71.1486698,42.3363204],[-71.1486748,42.3363325]]}},
@@ -2185,7 +2185,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290519803,"name":"Central Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.2060336,42.3520166],[-71.2060425,42.3520515],[-71.2060589,42.3521097],[-71.206066,42.3521317]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290519804,"name":"Central Avenue","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.206066,42.3521317],[-71.2060814,42.3521782],[-71.2060924,42.3522112]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290519805,"name":"Chesley Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.2060924,42.3522112],[-71.2062073,42.3526499],[-71.2063823,42.3532674],[-71.2063959,42.3532797],[-71.2064197,42.3532908],[-71.2064475,42.3532921],[-71.2067525,42.3532492],[-71.2071572,42.3531877]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290519807,"name":"Central Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.2071766,42.3532669],[-71.2071369,42.3532655],[-71.2070664,42.3532751],[-71.2064688,42.353361],[-71.2064375,42.3533702],[-71.206414,42.3533934],[-71.2064133,42.3534069],[-71.2064982,42.3538512],[-71.2065104,42.3538646],[-71.2065385,42.3538704],[-71.2075241,42.3537237],[-71.2075609,42.3537182]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290519807,"name":"Chesley Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.2071766,42.3532669],[-71.2071369,42.3532655],[-71.2070664,42.3532751],[-71.2064688,42.353361],[-71.2064375,42.3533702],[-71.206414,42.3533934],[-71.2064133,42.3534069],[-71.2064982,42.3538512],[-71.2065104,42.3538646],[-71.2065385,42.3538704],[-71.2075241,42.3537237],[-71.2075609,42.3537182]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290519808,"name":"Chesley Avenue","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.206414,42.3533934],[-71.2063979,42.3533294],[-71.2063823,42.3532674]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290519809,"name":"Court Street"},"geometry":{"type":"LineString","coordinates":[[-71.2014343,42.3536395],[-71.2015624,42.35362],[-71.2016449,42.3536084],[-71.2018971,42.3535712]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290519810,"name":"Court Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2018971,42.3535712],[-71.2019291,42.353566],[-71.2019567,42.3535615]]}},
@@ -2202,10 +2202,10 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290519821,"name":"Court Street"},"geometry":{"type":"LineString","coordinates":[[-71.2047295,42.3530964],[-71.2050086,42.3530508]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290519822,"name":"Court Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2050086,42.3530508],[-71.2050806,42.3530392],[-71.2051259,42.3530319]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290519823,"name":"Court Street"},"geometry":{"type":"LineString","coordinates":[[-71.2051259,42.3530319],[-71.2061084,42.3528666]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290519824,"name":"Central Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.2061084,42.3528666],[-71.2061466,42.3528744],[-71.2061699,42.3528918],[-71.2062748,42.3532994]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290519824,"name":"Court Street"},"geometry":{"type":"LineString","coordinates":[[-71.2061084,42.3528666],[-71.2061466,42.3528744],[-71.2061699,42.3528918],[-71.2062748,42.3532994]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290519825,"name":"Central Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.2062748,42.3532994],[-71.206375,42.3538773]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290519826,"name":"Wilton Road","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.206375,42.3538773],[-71.2063822,42.3539287],[-71.2063893,42.3539745]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290519827,"name":"Central Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.2063893,42.3539745],[-71.2064317,42.3542334]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290519827,"name":"Wilton Road"},"geometry":{"type":"LineString","coordinates":[[-71.2063893,42.3539745],[-71.2064317,42.3542334]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290519828,"name":"Turner Terrace","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2064317,42.3542334],[-71.2064376,42.3542702],[-71.2064453,42.3543183],[-71.2064567,42.3543728]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290519829,"name":"Court Street"},"geometry":{"type":"LineString","coordinates":[[-71.2059315,42.3520664],[-71.2059867,42.3522663],[-71.2060801,42.3526115],[-71.2061222,42.3527512],[-71.2061176,42.3527677],[-71.2061139,42.3527807],[-71.2060612,42.3527986],[-71.205806,42.3528383],[-71.2055125,42.3528859],[-71.2051236,42.3529437],[-71.2050568,42.3529548],[-71.2046671,42.3530274],[-71.2045386,42.3530483],[-71.2043759,42.3530747],[-71.2040418,42.3531297],[-71.2040091,42.353119],[-71.2039917,42.3530948],[-71.2039545,42.3529603],[-71.2038942,42.352719],[-71.2038609,42.3525753]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290519830,"name":"Beach Street"},"geometry":{"type":"LineString","coordinates":[[-71.2038609,42.3525753],[-71.2038457,42.352489]]}},
@@ -2232,7 +2232,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290538401,"name":"Bowers Street"},"geometry":{"type":"LineString","coordinates":[[-71.2058346,42.350845],[-71.2058572,42.3508781],[-71.205871,42.3509147],[-71.2058677,42.3510934],[-71.2058522,42.3511385],[-71.205809,42.351162],[-71.2056489,42.3511587],[-71.2055045,42.3511582],[-71.2053254,42.351174],[-71.2050854,42.3512124],[-71.2048217,42.3512609],[-71.2045005,42.3513175],[-71.2040084,42.3514105],[-71.2036416,42.3514716],[-71.2031518,42.3515557],[-71.2026107,42.3516501],[-71.2022976,42.3517031]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290538402,"name":"Court Street"},"geometry":{"type":"LineString","coordinates":[[-71.2014276,42.3532953],[-71.2015319,42.3535029],[-71.2015799,42.3535143],[-71.2016934,42.3535026],[-71.2018066,42.3534888],[-71.2038634,42.353141],[-71.2038797,42.353114],[-71.2038341,42.3528575],[-71.2037881,42.3526616],[-71.2037431,42.3524698]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290538403,"name":"Madison Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.2062488,42.3499159],[-71.2052268,42.3499547],[-71.2044031,42.3499927]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290538404,"name":"Harvard Street"},"geometry":{"type":"LineString","coordinates":[[-71.2044031,42.3499927],[-71.2041396,42.3500095],[-71.2030926,42.3501205],[-71.2022936,42.3502096],[-71.2015508,42.3502943],[-71.2014602,42.3502965],[-71.2014268,42.350272],[-71.2013856,42.3501179],[-71.2013243,42.3498053],[-71.2012907,42.3495832],[-71.2013004,42.3495598],[-71.2013291,42.3495529],[-71.2018534,42.3495273],[-71.2022242,42.3495108],[-71.2027574,42.3494793],[-71.2035715,42.3494337],[-71.2042936,42.3493971]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290538404,"name":"Madison Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.2044031,42.3499927],[-71.2041396,42.3500095],[-71.2030926,42.3501205],[-71.2022936,42.3502096],[-71.2015508,42.3502943],[-71.2014602,42.3502965],[-71.2014268,42.350272],[-71.2013856,42.3501179],[-71.2013243,42.3498053],[-71.2012907,42.3495832],[-71.2013004,42.3495598],[-71.2013291,42.3495529],[-71.2018534,42.3495273],[-71.2022242,42.3495108],[-71.2027574,42.3494793],[-71.2035715,42.3494337],[-71.2042936,42.3493971]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290538405,"name":"Washington Park","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2042936,42.3493971],[-71.2043561,42.3493946],[-71.204413,42.349392]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290538406,"name":"Washington Park"},"geometry":{"type":"LineString","coordinates":[[-71.204413,42.349392],[-71.2044917,42.3493844],[-71.2046138,42.3493587],[-71.2047378,42.349303],[-71.2048018,42.3492702],[-71.2051087,42.3492565],[-71.206166,42.3492211]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290538407,"name":"Washington Park","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2065296,42.3492018],[-71.2063076,42.3492112],[-71.206166,42.3492211]]}},
@@ -2262,16 +2262,16 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1290538431,"name":"Albany Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1987827,42.3522599],[-71.1987117,42.3522754],[-71.1986616,42.3522864]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290538432,"name":"Farquhar Road"},"geometry":{"type":"LineString","coordinates":[[-71.2018631,42.351928],[-71.2018616,42.3519549],[-71.2018493,42.351981],[-71.2018271,42.3519911],[-71.2017808,42.3520121],[-71.2015946,42.352046],[-71.2012582,42.3521353],[-71.2009368,42.3522519],[-71.2008036,42.3522921],[-71.2007086,42.3522875],[-71.2006121,42.3522139],[-71.2005141,42.3520904],[-71.2003877,42.3519087],[-71.2002922,42.3516838],[-71.2002795,42.3515898],[-71.2002888,42.351586],[-71.200383,42.3515474],[-71.2007906,42.3514398],[-71.2010898,42.3513626],[-71.2016082,42.3512282]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290538433,"name":"Farquhar Road","surface":"asphalt","crossing":"unmarked","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.2018174,42.3520827],[-71.2018222,42.3520493],[-71.2018286,42.3520045]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290538434,"name":"Newtonville Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.2018631,42.351928],[-71.2016082,42.3512282]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290538434,"name":"Harvard Street"},"geometry":{"type":"LineString","coordinates":[[-71.2018631,42.351928],[-71.2016082,42.3512282]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290538435,"name":"Farquhar Road","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2002888,42.351586],[-71.2001935,42.3516243],[-71.2001177,42.3516587]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290589901,"name":"Bowers Street","surface":"asphalt","crossing":"unmarked","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.2019623,42.3518342],[-71.2019515,42.3517975],[-71.2019415,42.3517634]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290589902,"name":"Washington Park"},"geometry":{"type":"LineString","coordinates":[[-71.2022903,42.3492204],[-71.2022591,42.3492226]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290589903,"name":"Dale Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2022591,42.3492226],[-71.2022007,42.3492262],[-71.2021437,42.3492304]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290589904,"name":"Cabot Street"},"geometry":{"type":"LineString","coordinates":[[-71.2021437,42.3492304],[-71.2021051,42.3492332],[-71.2019152,42.3492457],[-71.2018558,42.349249],[-71.2018004,42.3492536],[-71.2012993,42.3492813],[-71.2012643,42.349266],[-71.2012577,42.3492201],[-71.2011962,42.3487132],[-71.2011442,42.3482358],[-71.2011523,42.3482287],[-71.2011579,42.3482237],[-71.201978,42.3481522],[-71.2019971,42.348153],[-71.2020273,42.3481696],[-71.2020446,42.3481856],[-71.2020694,42.3483445],[-71.2021033,42.3486145],[-71.2021398,42.34896],[-71.2021586,42.3491536],[-71.2021572,42.3491956],[-71.2021494,42.3492138],[-71.2021241,42.3492242],[-71.2021051,42.3492332]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290589904,"name":"Washington Park"},"geometry":{"type":"LineString","coordinates":[[-71.2021437,42.3492304],[-71.2021051,42.3492332],[-71.2019152,42.3492457],[-71.2018558,42.349249],[-71.2018004,42.3492536],[-71.2012993,42.3492813],[-71.2012643,42.349266],[-71.2012577,42.3492201],[-71.2011962,42.3487132],[-71.2011442,42.3482358],[-71.2011523,42.3482287],[-71.2011579,42.3482237],[-71.201978,42.3481522],[-71.2019971,42.348153],[-71.2020273,42.3481696],[-71.2020446,42.3481856],[-71.2020694,42.3483445],[-71.2021033,42.3486145],[-71.2021398,42.34896],[-71.2021586,42.3491536],[-71.2021572,42.3491956],[-71.2021494,42.3492138],[-71.2021241,42.3492242],[-71.2021051,42.3492332]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290589905,"name":"Washington Park","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.2013004,42.3495598],[-71.2012931,42.3495216],[-71.2012926,42.3495166],[-71.2012713,42.3493185],[-71.201271,42.349316],[-71.2012643,42.349266]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290589906,"name":"Clarendon Street"},"geometry":{"type":"LineString","coordinates":[[-71.2012109,42.3499021],[-71.2011827,42.349937],[-71.2011287,42.3499543],[-71.2009917,42.3499875],[-71.2006769,42.3500713],[-71.2004432,42.3501296],[-71.200255,42.3501841],[-71.2002241,42.3501811],[-71.2002047,42.3501622],[-71.2001816,42.3499459],[-71.2001615,42.3497968],[-71.2001373,42.3495692],[-71.200115,42.3493502],[-71.2000797,42.3490774],[-71.2000548,42.3487669],[-71.2000421,42.3486371],[-71.2000185,42.3484578],[-71.2000075,42.3483486],[-71.2000215,42.3483148],[-71.2000713,42.3483094],[-71.200108,42.3483055],[-71.2003905,42.3482821],[-71.2008263,42.3482508],[-71.2009829,42.3482407],[-71.2009983,42.3482439],[-71.2010083,42.348246],[-71.2010216,42.3482624],[-71.201049,42.3485192],[-71.2010812,42.3488325],[-71.2011097,42.3490977],[-71.2011547,42.3494815],[-71.2012109,42.3499021]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290589906,"name":"Harvard Street"},"geometry":{"type":"LineString","coordinates":[[-71.2012109,42.3499021],[-71.2011827,42.349937],[-71.2011287,42.3499543],[-71.2009917,42.3499875],[-71.2006769,42.3500713],[-71.2004432,42.3501296],[-71.200255,42.3501841],[-71.2002241,42.3501811],[-71.2002047,42.3501622],[-71.2001816,42.3499459],[-71.2001615,42.3497968],[-71.2001373,42.3495692],[-71.200115,42.3493502],[-71.2000797,42.3490774],[-71.2000548,42.3487669],[-71.2000421,42.3486371],[-71.2000185,42.3484578],[-71.2000075,42.3483486],[-71.2000215,42.3483148],[-71.2000713,42.3483094],[-71.200108,42.3483055],[-71.2003905,42.3482821],[-71.2008263,42.3482508],[-71.2009829,42.3482407],[-71.2009983,42.3482439],[-71.2010083,42.348246],[-71.2010216,42.3482624],[-71.201049,42.3485192],[-71.2010812,42.3488325],[-71.2011097,42.3490977],[-71.2011547,42.3494815],[-71.2012109,42.3499021]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290589907,"name":"Harvard Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2011442,42.3482358],[-71.2010792,42.3482389],[-71.2010272,42.3482413]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290589908,"name":"Cabot Street"},"geometry":{"type":"LineString","coordinates":[[-71.2010272,42.3482413],[-71.2009983,42.3482439]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290589908,"name":"Harvard Street"},"geometry":{"type":"LineString","coordinates":[[-71.2010272,42.3482413],[-71.2009983,42.3482439]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290589909,"name":"Cabot Street"},"geometry":{"type":"LineString","coordinates":[[-71.2009983,42.3482439],[-71.2009976,42.3482284]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290589910,"name":"Cabot Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2009976,42.3482284],[-71.2009947,42.3481925],[-71.2009945,42.3481897],[-71.2009914,42.3481464]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290589911,"name":"Harvard Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.201011,42.3481266],[-71.2010611,42.3481219],[-71.2011346,42.3481172]]}},
@@ -2281,7 +2281,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1290589915,"name":"Clarendon Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.19993,42.3483347],[-71.1998848,42.3483453]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290589916,"name":"Norwood Avenue","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2012442,42.3500555],[-71.201224,42.3499621],[-71.2012109,42.3499021]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290589917,"name":"Norwood Avenue","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2002121,42.3502341],[-71.2002073,42.3501874],[-71.2002047,42.3501622]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290589918,"name":"Norwood Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1998848,42.3483453],[-71.1998677,42.3483521],[-71.1998247,42.3483312],[-71.1996738,42.3483223],[-71.1995268,42.3483185],[-71.1994964,42.348329],[-71.1994741,42.348365],[-71.1993553,42.3486763],[-71.1992162,42.3489988],[-71.1990315,42.3494497],[-71.1989871,42.3495569],[-71.1987877,42.35004],[-71.1986424,42.3503894],[-71.1986398,42.3504111],[-71.1986499,42.3504335],[-71.1986708,42.3504459],[-71.1986999,42.3504576],[-71.1989497,42.3505114],[-71.1990122,42.3505112],[-71.1995089,42.3503786],[-71.1995262,42.3503737],[-71.1995625,42.3503646],[-71.2000289,42.3502442],[-71.2000688,42.3502279],[-71.2000901,42.3502098],[-71.2000855,42.3501517],[-71.2000717,42.3500035],[-71.2000619,42.3499245],[-71.2000443,42.3497463],[-71.2000229,42.3495401],[-71.1999985,42.3493432],[-71.1999769,42.3491672],[-71.1999631,42.3490491],[-71.1999452,42.3488811],[-71.1999291,42.3487488],[-71.1999109,42.3485658],[-71.1998907,42.348419],[-71.1998825,42.3483738],[-71.1998777,42.3483612],[-71.1998677,42.3483521]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290589918,"name":"Clarendon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1998848,42.3483453],[-71.1998677,42.3483521],[-71.1998247,42.3483312],[-71.1996738,42.3483223],[-71.1995268,42.3483185],[-71.1994964,42.348329],[-71.1994741,42.348365],[-71.1993553,42.3486763],[-71.1992162,42.3489988],[-71.1990315,42.3494497],[-71.1989871,42.3495569],[-71.1987877,42.35004],[-71.1986424,42.3503894],[-71.1986398,42.3504111],[-71.1986499,42.3504335],[-71.1986708,42.3504459],[-71.1986999,42.3504576],[-71.1989497,42.3505114],[-71.1990122,42.3505112],[-71.1995089,42.3503786],[-71.1995262,42.3503737],[-71.1995625,42.3503646],[-71.2000289,42.3502442],[-71.2000688,42.3502279],[-71.2000901,42.3502098],[-71.2000855,42.3501517],[-71.2000717,42.3500035],[-71.2000619,42.3499245],[-71.2000443,42.3497463],[-71.2000229,42.3495401],[-71.1999985,42.3493432],[-71.1999769,42.3491672],[-71.1999631,42.3490491],[-71.1999452,42.3488811],[-71.1999291,42.3487488],[-71.1999109,42.3485658],[-71.1998907,42.348419],[-71.1998825,42.3483738],[-71.1998777,42.3483612],[-71.1998677,42.3483521]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290589919,"name":"Bridges Avenue","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1994964,42.348329],[-71.1994154,42.3483251],[-71.199341,42.3483222]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290589920,"name":"Bridges Avenue","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1989871,42.3495569],[-71.1989286,42.3495456],[-71.1988746,42.3495351]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290589921,"name":"Bridges Avenue","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1986499,42.3504335],[-71.198557,42.3504104],[-71.1985056,42.3503986]]}},
@@ -2311,21 +2311,21 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1290589945,"name":"Munroe Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1986066,42.3521962],[-71.1986698,42.3521686],[-71.1987573,42.3521302]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290589946,"name":"Carter Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1992005,42.3519299],[-71.1992961,42.3518856],[-71.1993883,42.3518415]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290589947,"name":"Norwood Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.2002331,42.3502867],[-71.1996469,42.3504408],[-71.1991679,42.3505695],[-71.1990068,42.350605],[-71.1988897,42.3506017],[-71.1984017,42.3504852],[-71.197848,42.3503582]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290589948,"name":"Parkview Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.197848,42.3503582],[-71.1978608,42.3503191]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290589948,"name":"Norwood Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.197848,42.3503582],[-71.1978608,42.3503191]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290589949,"name":"Holland Street"},"geometry":{"type":"LineString","coordinates":[[-71.1962242,42.3521853],[-71.1960478,42.3520158],[-71.1958716,42.3518729],[-71.1958245,42.3518385],[-71.1955141,42.3516442],[-71.1953409,42.3515537],[-71.1951525,42.35146],[-71.1951251,42.351429],[-71.1951274,42.3514096],[-71.1951312,42.3513771],[-71.1951812,42.3512414],[-71.1952224,42.3511277],[-71.1952688,42.3509838],[-71.1953341,42.3507966],[-71.1954156,42.3505749],[-71.195441,42.3505468],[-71.1954866,42.3505455],[-71.1958329,42.3506144],[-71.1960602,42.3506567],[-71.1960897,42.3506666],[-71.1961087,42.3506911],[-71.1961354,42.3506918]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290589950,"name":"East Side Parkway","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1961915,42.3506954],[-71.1961354,42.3506918]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290589951,"name":"East Side Parkway"},"geometry":{"type":"LineString","coordinates":[[-71.1961087,42.3506911],[-71.1961152,42.3507159],[-71.1961247,42.3508587],[-71.1961307,42.3509012],[-71.1961459,42.3509955],[-71.1961674,42.3510899],[-71.1962128,42.3512318],[-71.1962566,42.3513361],[-71.1963304,42.3514696],[-71.196396,42.351584],[-71.1964928,42.3517076],[-71.1965757,42.3517874],[-71.1966458,42.3518496],[-71.1967422,42.3519338],[-71.1968182,42.3520052],[-71.1968921,42.352083],[-71.1969061,42.3520783]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290589952,"name":"Lewis Street"},"geometry":{"type":"LineString","coordinates":[[-71.1960639,42.3521933],[-71.1959584,42.3520853],[-71.1958555,42.3519919],[-71.1956663,42.3518597],[-71.1955731,42.3518042],[-71.1953873,42.351689],[-71.1951797,42.3515882],[-71.1950232,42.3515178],[-71.1947846,42.3514401],[-71.1945729,42.3513876],[-71.1942093,42.3513206],[-71.1939951,42.3512962],[-71.1936877,42.3512793],[-71.1934286,42.3512878],[-71.1930996,42.3513238],[-71.1929376,42.3513575],[-71.1928552,42.3514024],[-71.192799,42.3515007],[-71.1925955,42.351865],[-71.1924556,42.3520946],[-71.1924511,42.3521133],[-71.1924545,42.3521313]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290589953,"name":"Holland Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.195441,42.3505468],[-71.1953511,42.3505298],[-71.1952825,42.3505133]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290589954,"name":"Lewis Street"},"geometry":{"type":"LineString","coordinates":[[-71.1952825,42.3505133],[-71.1944559,42.3503499],[-71.1943973,42.3503518],[-71.1943661,42.350377],[-71.1941783,42.3509368],[-71.194106,42.3511683],[-71.1941082,42.3511872],[-71.1941276,42.3512042],[-71.1943336,42.3512354],[-71.1944589,42.3512522],[-71.1946162,42.3512891],[-71.1947823,42.3513338],[-71.194877,42.3513586],[-71.1949553,42.3513721],[-71.1949985,42.3513622],[-71.195038,42.3513145],[-71.1950718,42.3512079],[-71.1951367,42.3510151],[-71.1951932,42.3508277],[-71.1952498,42.350675],[-71.1952758,42.3505894],[-71.1952865,42.350547],[-71.1952825,42.3505133]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290589954,"name":"Hilltop Street"},"geometry":{"type":"LineString","coordinates":[[-71.1952825,42.3505133],[-71.1944559,42.3503499],[-71.1943973,42.3503518],[-71.1943661,42.350377],[-71.1941783,42.3509368],[-71.194106,42.3511683],[-71.1941082,42.3511872],[-71.1941276,42.3512042],[-71.1943336,42.3512354],[-71.1944589,42.3512522],[-71.1946162,42.3512891],[-71.1947823,42.3513338],[-71.194877,42.3513586],[-71.1949553,42.3513721],[-71.1949985,42.3513622],[-71.195038,42.3513145],[-71.1950718,42.3512079],[-71.1951367,42.3510151],[-71.1951932,42.3508277],[-71.1952498,42.350675],[-71.1952758,42.3505894],[-71.1952865,42.350547],[-71.1952825,42.3505133]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290589955,"name":"Holland Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1951274,42.3514096],[-71.1950538,42.3513936],[-71.1949553,42.3513721]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290589956,"name":"Princeton Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1941276,42.3512042],[-71.1940238,42.3511902],[-71.1939642,42.3511881]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290589957,"name":"Winchester Road"},"geometry":{"type":"LineString","coordinates":[[-71.1939642,42.3511881],[-71.1939835,42.3511539],[-71.1940219,42.351028],[-71.194064,42.3508976],[-71.1941119,42.3507667],[-71.1941789,42.3505715],[-71.1942184,42.3504569],[-71.1942482,42.3503595],[-71.1942807,42.3502874],[-71.1943611,42.35025],[-71.1946459,42.3502944],[-71.1950034,42.3503632],[-71.1952832,42.3504178],[-71.1958099,42.350516],[-71.196028,42.3505594],[-71.1960814,42.3505639],[-71.1961078,42.3505478],[-71.1961272,42.3505052],[-71.1961645,42.3503232],[-71.196203,42.350188],[-71.1962561,42.3500319],[-71.1963495,42.3498212],[-71.1963414,42.3497806],[-71.1963214,42.3497554],[-71.196206,42.3497478],[-71.1960354,42.3497538],[-71.1958826,42.3497423],[-71.1957551,42.3497148],[-71.1954958,42.3496638],[-71.1952573,42.3496239],[-71.1949736,42.3495611],[-71.1948567,42.3495345],[-71.1945954,42.349484],[-71.1943643,42.3494377],[-71.1941815,42.3494057],[-71.194056,42.3493793],[-71.1940067,42.34939],[-71.1939833,42.349427],[-71.1938691,42.3496561],[-71.1937438,42.3498774],[-71.1935595,42.3501936],[-71.1933229,42.3506063],[-71.1931733,42.3508668],[-71.1930014,42.3511629],[-71.1929909,42.3512053],[-71.1930028,42.3512293],[-71.1930243,42.3512388],[-71.1930522,42.3512424],[-71.1931211,42.3512288],[-71.1934277,42.3511958],[-71.1939642,42.3511881]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290589957,"name":"Princeton Street"},"geometry":{"type":"LineString","coordinates":[[-71.1939642,42.3511881],[-71.1939835,42.3511539],[-71.1940219,42.351028],[-71.194064,42.3508976],[-71.1941119,42.3507667],[-71.1941789,42.3505715],[-71.1942184,42.3504569],[-71.1942482,42.3503595],[-71.1942807,42.3502874],[-71.1943611,42.35025],[-71.1946459,42.3502944],[-71.1950034,42.3503632],[-71.1952832,42.3504178],[-71.1958099,42.350516],[-71.196028,42.3505594],[-71.1960814,42.3505639],[-71.1961078,42.3505478],[-71.1961272,42.3505052],[-71.1961645,42.3503232],[-71.196203,42.350188],[-71.1962561,42.3500319],[-71.1963495,42.3498212],[-71.1963414,42.3497806],[-71.1963214,42.3497554],[-71.196206,42.3497478],[-71.1960354,42.3497538],[-71.1958826,42.3497423],[-71.1957551,42.3497148],[-71.1954958,42.3496638],[-71.1952573,42.3496239],[-71.1949736,42.3495611],[-71.1948567,42.3495345],[-71.1945954,42.349484],[-71.1943643,42.3494377],[-71.1941815,42.3494057],[-71.194056,42.3493793],[-71.1940067,42.34939],[-71.1939833,42.349427],[-71.1938691,42.3496561],[-71.1937438,42.3498774],[-71.1935595,42.3501936],[-71.1933229,42.3506063],[-71.1931733,42.3508668],[-71.1930014,42.3511629],[-71.1929909,42.3512053],[-71.1930028,42.3512293],[-71.1930243,42.3512388],[-71.1930522,42.3512424],[-71.1931211,42.3512288],[-71.1934277,42.3511958],[-71.1939642,42.3511881]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290589958,"name":"East Side Parkway"},"geometry":{"type":"LineString","coordinates":[[-71.1963663,42.3497691],[-71.1963414,42.3497806]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290589959,"name":"Winchester Road","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1963663,42.3497691],[-71.1963962,42.3497043],[-71.1964439,42.3496052]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290589960,"name":"East Side Parkway","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1966157,42.3496222],[-71.1965464,42.3496003],[-71.1964761,42.3495744]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290589961,"name":"East Side Parkway"},"geometry":{"type":"LineString","coordinates":[[-71.1964761,42.3495744],[-71.1964615,42.3495873],[-71.1964439,42.3496052]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290589962,"name":"Salisbury Road"},"geometry":{"type":"LineString","coordinates":[[-71.1964615,42.3495873],[-71.1964237,42.3495981],[-71.1964118,42.3495836],[-71.1963646,42.3496016],[-71.1963108,42.3496178],[-71.1962622,42.3496355],[-71.1961728,42.3496544],[-71.1960843,42.3496615],[-71.1960176,42.3496591],[-71.1959236,42.3496511],[-71.1956527,42.3496009],[-71.1953432,42.3495361],[-71.1952592,42.3495055],[-71.195252,42.3494817],[-71.1952443,42.3494354],[-71.1952817,42.3493774],[-71.1953558,42.3492993],[-71.1955073,42.3491523],[-71.19567,42.348967],[-71.195875,42.3486893],[-71.1960204,42.3484595],[-71.1961188,42.3482788],[-71.1962194,42.3480497],[-71.1962847,42.3478714],[-71.1963223,42.3477633],[-71.1963772,42.3477148],[-71.1964391,42.3477025],[-71.1967238,42.347712],[-71.1968273,42.3477298],[-71.1970181,42.3477691],[-71.197163,42.3478046],[-71.1972767,42.3478484],[-71.1973505,42.3478891],[-71.1974019,42.3479289],[-71.1974019,42.3479366],[-71.1974022,42.3480105],[-71.1973764,42.3480982],[-71.1973475,42.3481818],[-71.1972472,42.3484246],[-71.1971684,42.348581],[-71.1970358,42.3488043],[-71.1968274,42.3490886],[-71.1966875,42.3492682],[-71.196532,42.3494935],[-71.1964689,42.3495639],[-71.1964761,42.3495744]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290589962,"name":"East Side Parkway"},"geometry":{"type":"LineString","coordinates":[[-71.1964615,42.3495873],[-71.1964237,42.3495981],[-71.1964118,42.3495836],[-71.1963646,42.3496016],[-71.1963108,42.3496178],[-71.1962622,42.3496355],[-71.1961728,42.3496544],[-71.1960843,42.3496615],[-71.1960176,42.3496591],[-71.1959236,42.3496511],[-71.1956527,42.3496009],[-71.1953432,42.3495361],[-71.1952592,42.3495055],[-71.195252,42.3494817],[-71.1952443,42.3494354],[-71.1952817,42.3493774],[-71.1953558,42.3492993],[-71.1955073,42.3491523],[-71.19567,42.348967],[-71.195875,42.3486893],[-71.1960204,42.3484595],[-71.1961188,42.3482788],[-71.1962194,42.3480497],[-71.1962847,42.3478714],[-71.1963223,42.3477633],[-71.1963772,42.3477148],[-71.1964391,42.3477025],[-71.1967238,42.347712],[-71.1968273,42.3477298],[-71.1970181,42.3477691],[-71.197163,42.3478046],[-71.1972767,42.3478484],[-71.1973505,42.3478891],[-71.1974019,42.3479289],[-71.1974019,42.3479366],[-71.1974022,42.3480105],[-71.1973764,42.3480982],[-71.1973475,42.3481818],[-71.1972472,42.3484246],[-71.1971684,42.348581],[-71.1970358,42.3488043],[-71.1968274,42.3490886],[-71.1966875,42.3492682],[-71.196532,42.3494935],[-71.1964689,42.3495639],[-71.1964761,42.3495744]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290589963,"name":"East Side Parkway"},"geometry":{"type":"LineString","coordinates":[[-71.1964689,42.3495639],[-71.1964461,42.3495794],[-71.1964118,42.3495836]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290589964,"name":"East Side Parkway","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1975959,42.3480273],[-71.1975039,42.3479842],[-71.1974019,42.3479366]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290589965,"name":"Cabot Street","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1974019,42.3479289],[-71.1974097,42.34786],[-71.1974127,42.3478059]]}},
@@ -2341,7 +2341,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290725869,"name":"Walnut Place"},"geometry":{"type":"LineString","coordinates":[[-71.2074353,42.3488303],[-71.2074012,42.3488423],[-71.2073541,42.3488525],[-71.2072741,42.3488661],[-71.2071764,42.3488852],[-71.2070357,42.3489043],[-71.2069289,42.3489138],[-71.2068889,42.3489094]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290725870,"name":"Walnut Place"},"geometry":{"type":"LineString","coordinates":[[-71.2069147,42.349013],[-71.2069423,42.3489996],[-71.2070098,42.3489838],[-71.2070274,42.3489809],[-71.2071121,42.3489666],[-71.2072003,42.348951],[-71.2072784,42.3489364]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290725872,"name":"Highland Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.207845,42.3486235],[-71.2078734,42.3486576],[-71.2079049,42.3487515],[-71.2079516,42.3490004],[-71.2079982,42.3492684],[-71.2079844,42.3493058],[-71.2079458,42.34933],[-71.2078642,42.3493381],[-71.2074993,42.3493823],[-71.2073312,42.3494027],[-71.2070207,42.3494282],[-71.2070042,42.3494286],[-71.2069907,42.3494267],[-71.2069782,42.3494225]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290725884,"name":"Walnut Street"},"geometry":{"type":"LineString","coordinates":[[-71.2069927,42.3495816],[-71.2069322,42.349584]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290725884,"name":"Highland Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.2069927,42.3495816],[-71.2069322,42.349584]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290725885,"name":"Walnut Street","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.2069322,42.349584],[-71.2068759,42.3495869],[-71.2068175,42.3495899]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290725886,"name":"Walnut Street"},"geometry":{"type":"LineString","coordinates":[[-71.2068175,42.3495899],[-71.2067697,42.3495912]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290725888,"name":"Walnut Street","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.2069782,42.3494225],[-71.2068598,42.3494347],[-71.2067999,42.3494434]]}},
@@ -2349,7 +2349,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290732450,"name":"Walnut Street"},"geometry":{"type":"LineString","coordinates":[[-71.2067104,42.347818],[-71.2067266,42.3478171]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290732451,"name":"Walnut Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.206765,42.3480027],[-71.2067544,42.3479898],[-71.2067487,42.3479674],[-71.2067345,42.3478686],[-71.2067266,42.3478171],[-71.2067239,42.3477937],[-71.2067084,42.3476469],[-71.2067077,42.3476403],[-71.2066911,42.3474999],[-71.2066809,42.3474233]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290732452,"name":"Russell Court","surface":"concrete","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.2066809,42.3474233],[-71.2066751,42.3474],[-71.2066651,42.3473547]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290732453,"name":"Elm Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2066651,42.3473547],[-71.2066629,42.3473447],[-71.2066596,42.3473297],[-71.2066568,42.3473171]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290732453,"name":"Russell Court","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2066651,42.3473547],[-71.2066629,42.3473447],[-71.2066596,42.3473297],[-71.2066568,42.3473171]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290732454,"name":"Elm Road","surface":"concrete","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.2066568,42.3473171],[-71.2066529,42.3472996],[-71.2066456,42.3472739],[-71.2066212,42.3471884]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290732458},"geometry":{"type":"LineString","coordinates":[[-71.2063183,42.345978],[-71.2062368,42.3457221],[-71.2062042,42.3457024],[-71.2061652,42.3457024],[-71.2061306,42.3457077]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290732459,"name":"Tiger Drive","surface":"concrete","tactile":"yes","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.2060058,42.3452978],[-71.2059909,42.34525],[-71.2059749,42.3451961],[-71.2059658,42.3451654],[-71.2059537,42.3451245]]}},
@@ -2388,7 +2388,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290737989,"name":"Boylston Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2049263,42.3191545],[-71.2049373,42.3191706],[-71.204956,42.3191828],[-71.2049945,42.3191958],[-71.2061038,42.3192486],[-71.2068768,42.3192893]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290737990,"name":"Boylston Street","level":true},"geometry":{"type":"LineString","coordinates":[[-71.2068768,42.3192893],[-71.2069066,42.3192917],[-71.2069937,42.3192959],[-71.2072387,42.3193076],[-71.2072647,42.3193068]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290737999,"name":"Walnut Place","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2048611,42.3189058],[-71.2049365,42.3189027],[-71.204993,42.3189004]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290738000,"name":"Boylston-Winchester Streets Service Road"},"geometry":{"type":"LineString","coordinates":[[-71.204993,42.3189004],[-71.2050207,42.3189037],[-71.2050405,42.3189061],[-71.2050755,42.3189263],[-71.2051717,42.3189328],[-71.2053984,42.3189418]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290738000,"name":"Walnut Place"},"geometry":{"type":"LineString","coordinates":[[-71.204993,42.3189004],[-71.2050207,42.3189037],[-71.2050405,42.3189061],[-71.2050755,42.3189263],[-71.2051717,42.3189328],[-71.2053984,42.3189418]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290738001,"name":"Shady Hill Road","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2053984,42.3189418],[-71.2055172,42.3189483],[-71.2056133,42.3189536]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290738002,"name":"Boylston Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2056133,42.3189536],[-71.2057248,42.3189751],[-71.2060927,42.3189969],[-71.2064892,42.3190228],[-71.2065193,42.3190238],[-71.2065277,42.3190235],[-71.2065377,42.3190225],[-71.2065482,42.3190197],[-71.2065562,42.319016],[-71.2065632,42.3190122],[-71.20657,42.3190072]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290738005,"name":"Wade Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2067663,42.3190212],[-71.2067621,42.3190165],[-71.2067579,42.3190099],[-71.2067531,42.3190016],[-71.2067246,42.3189476],[-71.2067199,42.318939],[-71.2067149,42.3189319],[-71.2067107,42.3189266],[-71.2067047,42.3189211],[-71.2061198,42.3183995],[-71.2054059,42.3177618]]}},
@@ -2439,9 +2439,9 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1290765730,"name":"Pulsifer Street","crossing":"unmarked","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.2052514,42.3477926],[-71.2051647,42.3477979],[-71.2051182,42.3478008]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290765731,"name":"Cabot Street"},"geometry":{"type":"LineString","coordinates":[[-71.2051182,42.3478008],[-71.2050992,42.3478021],[-71.2050898,42.3478117],[-71.2047753,42.347837],[-71.2044574,42.3478626],[-71.2040372,42.3478964],[-71.2036693,42.347926],[-71.2032163,42.3479656],[-71.2031889,42.3479623],[-71.2031698,42.3479457],[-71.2031329,42.3477065]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290765732,"name":"Gay Street","crossing":"unmarked","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.2031889,42.3479623],[-71.2031061,42.3479691],[-71.2030431,42.3479743]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290765744,"name":"Cabot Court"},"geometry":{"type":"LineString","coordinates":[[-71.2030431,42.3479743],[-71.2030128,42.3479822],[-71.2027836,42.3479989],[-71.2021327,42.3480518],[-71.2011806,42.3481275],[-71.2011607,42.3481312]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290765744,"name":"Cabot Street"},"geometry":{"type":"LineString","coordinates":[[-71.2030431,42.3479743],[-71.2030128,42.3479822],[-71.2027836,42.3479989],[-71.2021327,42.3480518],[-71.2011806,42.3481275],[-71.2011607,42.3481312]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290765745,"name":"Cabot Street"},"geometry":{"type":"LineString","coordinates":[[-71.2011806,42.3481275],[-71.201153,42.3481213],[-71.2011346,42.3481172]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290765746,"name":"Frederick Street"},"geometry":{"type":"LineString","coordinates":[[-71.201153,42.3481213],[-71.2011352,42.348098],[-71.2010722,42.3479519],[-71.2009502,42.3476691],[-71.2008429,42.347414],[-71.2007354,42.3471503],[-71.2007328,42.3471197],[-71.2007506,42.3471024],[-71.2008078,42.3470892],[-71.2015001,42.3469946],[-71.2015268,42.3469942],[-71.2015626,42.3470031],[-71.2015816,42.3470162],[-71.2016863,42.347494]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290765746,"name":"Harvard Street"},"geometry":{"type":"LineString","coordinates":[[-71.201153,42.3481213],[-71.2011352,42.348098],[-71.2010722,42.3479519],[-71.2009502,42.3476691],[-71.2008429,42.347414],[-71.2007354,42.3471503],[-71.2007328,42.3471197],[-71.2007506,42.3471024],[-71.2008078,42.3470892],[-71.2015001,42.3469946],[-71.2015268,42.3469942],[-71.2015626,42.3470031],[-71.2015816,42.3470162],[-71.2016863,42.347494]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290765747,"name":"Frederick Street"},"geometry":{"type":"LineString","coordinates":[[-71.201843,42.3476289],[-71.2017077,42.3470149],[-71.2017112,42.3469951],[-71.2017287,42.3469651],[-71.2018218,42.3469489],[-71.2026852,42.3468268],[-71.2027617,42.3468157],[-71.202799,42.3468133],[-71.202848,42.3468144],[-71.2028779,42.346837],[-71.2029145,42.347104],[-71.2029413,42.3472804]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290765748,"name":"Gay Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2029413,42.3472804],[-71.2029469,42.3473176],[-71.2029544,42.3473687]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290765749,"name":"Gay Street"},"geometry":{"type":"LineString","coordinates":[[-71.2029544,42.3473687],[-71.2030505,42.347955],[-71.2030431,42.3479743]]}},
@@ -2476,7 +2476,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290765778,"name":"Cabot Street"},"geometry":{"type":"LineString","coordinates":[[-71.1929564,42.347163],[-71.1929118,42.3471742],[-71.1928467,42.3471958],[-71.1927656,42.3472275],[-71.1926761,42.3472885],[-71.1925851,42.3473613],[-71.1925351,42.3474077],[-71.1925156,42.3474257],[-71.1924933,42.3474994],[-71.1924683,42.3476377],[-71.1924337,42.3478367],[-71.1924202,42.3479375]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290765779,"name":"Concolor Avenue","crossing":"unmarked","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1925351,42.3474077],[-71.1924334,42.3474654],[-71.192336,42.3475208]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290765780,"name":"Cabot Street"},"geometry":{"type":"LineString","coordinates":[[-71.192336,42.3475208],[-71.1923255,42.3475284],[-71.1922933,42.3475143],[-71.1922532,42.3475154],[-71.1921736,42.3475363],[-71.192081,42.3475626],[-71.1919785,42.3475806],[-71.1918708,42.3475936],[-71.1917621,42.3475931],[-71.1916386,42.3475783],[-71.1914663,42.3475488],[-71.191067,42.3474653],[-71.1901992,42.3472968],[-71.1893182,42.3471226],[-71.1893026,42.3471199],[-71.1893113,42.347106]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290765781,"name":"Centre Street"},"geometry":{"type":"LineString","coordinates":[[-71.1893026,42.3471199],[-71.18927,42.3471122],[-71.1892147,42.3471084],[-71.1891754,42.3471164],[-71.1891283,42.3471335],[-71.1887717,42.3474786],[-71.1887678,42.347501],[-71.1887666,42.3475169]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290765781,"name":"Cabot Street"},"geometry":{"type":"LineString","coordinates":[[-71.1893026,42.3471199],[-71.18927,42.3471122],[-71.1892147,42.3471084],[-71.1891754,42.3471164],[-71.1891283,42.3471335],[-71.1887717,42.3474786],[-71.1887678,42.347501],[-71.1887666,42.3475169]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290765782,"name":"Centre Street"},"geometry":{"type":"LineString","coordinates":[[-71.1893622,42.3470183],[-71.1893469,42.3469953],[-71.1893381,42.3469624],[-71.1893318,42.3469513],[-71.1893111,42.3469484]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1290765783,"name":"Centre Street","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1893111,42.3469484],[-71.1892917,42.3469435],[-71.1892397,42.3469303],[-71.1891539,42.3469086]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1290765784,"name":"Sargent Street"},"geometry":{"type":"LineString","coordinates":[[-71.1891539,42.3469086],[-71.1891434,42.3469077],[-71.189137,42.3469177],[-71.1891193,42.3469326],[-71.1891075,42.3469411],[-71.1890753,42.3469536],[-71.1890269,42.346964],[-71.1889638,42.3469567],[-71.1885229,42.3468715],[-71.1884084,42.3468486],[-71.1883745,42.346842],[-71.1881414,42.3467965],[-71.1877803,42.3467288],[-71.1875286,42.3466835],[-71.1875119,42.3466807],[-71.1869185,42.3465686],[-71.1866063,42.3465135],[-71.1859654,42.3463993],[-71.1858943,42.3463866]]}},
@@ -2490,7 +2490,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291205702,"name":"Converse Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1886882,42.3475921],[-71.1886297,42.3476567]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1291205703,"name":"Converse Avenue","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1886297,42.3476567],[-71.1885902,42.3477183],[-71.1885626,42.3477613]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1291205704,"name":"Hyde Avenue","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1864366,42.3465822],[-71.1863922,42.3465738],[-71.1863382,42.3465636]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291205705,"name":"Sargent Street"},"geometry":{"type":"LineString","coordinates":[[-71.1863382,42.3465636],[-71.1863215,42.3465607],[-71.1848696,42.3463052]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291205705,"name":"Hyde Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1863382,42.3465636],[-71.1863215,42.3465607],[-71.1848696,42.3463052]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1291205706,"name":"Sargent Park","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1848696,42.3463052],[-71.1848192,42.3462957],[-71.1847742,42.3462872]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291205707,"name":"Sargent Street"},"geometry":{"type":"LineString","coordinates":[[-71.1847742,42.3462872],[-71.1846347,42.3462623],[-71.1845218,42.3462463],[-71.1844432,42.3462379],[-71.1843761,42.3462416],[-71.1842708,42.3462552],[-71.1841796,42.3462773],[-71.1840547,42.3463181],[-71.1839422,42.3463751],[-71.1838866,42.3464446],[-71.1838441,42.3465308],[-71.1838154,42.3466253],[-71.183774,42.3467414],[-71.1837268,42.3468877],[-71.1836938,42.3469815],[-71.1836357,42.3470806],[-71.183574,42.3471744],[-71.1835465,42.3472388],[-71.1834835,42.3474525],[-71.1834022,42.3477626],[-71.1833282,42.3480156],[-71.1832962,42.3481111],[-71.1832683,42.3481731],[-71.1831644,42.3483791],[-71.1830863,42.3485385]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1291205708,"name":"Alba Circle","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1830863,42.3485385],[-71.1830756,42.3485616],[-71.1830549,42.3485977]]}},
@@ -2508,11 +2508,11 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291205721,"name":"Kenrick Street"},"geometry":{"type":"LineString","coordinates":[[-71.1809295,42.3466728],[-71.1809138,42.3466694],[-71.1809005,42.3466665],[-71.180878,42.3466727],[-71.1808372,42.3466681],[-71.1806697,42.3466293]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291205722,"name":"Kenrick Street"},"geometry":{"type":"LineString","coordinates":[[-71.180878,42.3466727],[-71.1808777,42.3466826]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1291205723,"name":"Kenrick Street","crossing":"traffic_signals","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1808777,42.3466826],[-71.1808662,42.3467135],[-71.1808478,42.3467633]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291205724,"name":"Waverley Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1810893,42.3468082],[-71.1810511,42.3468105],[-71.1810285,42.3468184],[-71.1810082,42.3468335],[-71.1810045,42.3468413],[-71.180985,42.3468838]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291205724,"name":"Sargent Street"},"geometry":{"type":"LineString","coordinates":[[-71.1810893,42.3468082],[-71.1810511,42.3468105],[-71.1810285,42.3468184],[-71.1810082,42.3468335],[-71.1810045,42.3468413],[-71.180985,42.3468838]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291205725,"name":"Waverley Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1810045,42.3468413],[-71.1809902,42.3468383]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1291205726,"name":"Waverley Avenue","crossing":"traffic_signals","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1809902,42.3468383],[-71.1809138,42.3468168],[-71.1808702,42.3468044]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291205727,"name":"Sargent Street"},"geometry":{"type":"LineString","coordinates":[[-71.1810551,42.3468025],[-71.1810511,42.3468105]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291205728,"name":"Kenrick Street"},"geometry":{"type":"LineString","coordinates":[[-71.1808702,42.3468044],[-71.1808621,42.346804],[-71.1808618,42.3467989],[-71.1808604,42.3467911],[-71.1808555,42.346784],[-71.1808484,42.3467774],[-71.1808428,42.3467736],[-71.1808376,42.3467701],[-71.1808223,42.3467637],[-71.1808013,42.346757],[-71.1807782,42.3467504],[-71.1807555,42.3467444]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291205728,"name":"Waverley Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1808702,42.3468044],[-71.1808621,42.346804],[-71.1808618,42.3467989],[-71.1808604,42.3467911],[-71.1808555,42.346784],[-71.1808484,42.3467774],[-71.1808428,42.3467736],[-71.1808376,42.3467701],[-71.1808223,42.3467637],[-71.1808013,42.346757],[-71.1807782,42.3467504],[-71.1807555,42.3467444]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291205729,"name":"Kenrick Street"},"geometry":{"type":"LineString","coordinates":[[-71.1808478,42.3467633],[-71.1808428,42.3467736]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291205738,"name":"Kenrick Street"},"geometry":{"type":"LineString","coordinates":[[-71.1806697,42.3466293],[-71.1805328,42.3465982],[-71.180413,42.3465711],[-71.1800263,42.346484],[-71.1798242,42.3464303],[-71.1795714,42.3463696],[-71.1793493,42.3463184],[-71.1790351,42.34626],[-71.1790019,42.3462517],[-71.1789788,42.3462395],[-71.1789588,42.3462158],[-71.178954,42.3461862],[-71.1789397,42.3459762]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1291205743,"name":"Magnolia Avenue","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1790019,42.3462517],[-71.178871,42.34623],[-71.1787866,42.346216]]}},
@@ -2534,7 +2534,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291205760},"geometry":{"type":"LineString","coordinates":[[-71.1774151,42.3463271],[-71.1774305,42.3463826]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291205763},"geometry":{"type":"LineString","coordinates":[[-71.176387,42.346623],[-71.1763669,42.3465707]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291205764,"name":"Kenrick Street"},"geometry":{"type":"LineString","coordinates":[[-71.1763669,42.3465707],[-71.1759742,42.3466215],[-71.1758959,42.3466256],[-71.175625,42.3466417],[-71.1752556,42.3466467],[-71.1746932,42.3466327],[-71.174244,42.3466157]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291205767,"name":"Vernon Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1861428,42.3552908],[-71.1861293,42.3552892],[-71.1855263,42.3551481],[-71.1850953,42.3550482],[-71.1844113,42.3548898],[-71.1843418,42.3548736],[-71.1843164,42.3548677],[-71.1836344,42.3547092],[-71.1836073,42.3547027],[-71.183574,42.3546947],[-71.183561,42.3546916]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291205767,"name":"Eldredge Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1861428,42.3552908],[-71.1861293,42.3552892],[-71.1855263,42.3551481],[-71.1850953,42.3550482],[-71.1844113,42.3548898],[-71.1843418,42.3548736],[-71.1843164,42.3548677],[-71.1836344,42.3547092],[-71.1836073,42.3547027],[-71.183574,42.3546947],[-71.183561,42.3546916]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1291205768,"name":"Baldwin Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1843418,42.3548736],[-71.1843209,42.3549202],[-71.1843013,42.3549638]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291205769,"name":"Baldwin Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1843013,42.3549638],[-71.1842871,42.354961],[-71.1842677,42.3550113],[-71.184234,42.3550916],[-71.1841988,42.3551118],[-71.1841299,42.3552635],[-71.1841145,42.3553007],[-71.1841258,42.3553478],[-71.1839596,42.3557425],[-71.1838713,42.3559365],[-71.1838511,42.3559435],[-71.1837993,42.3559433],[-71.1837446,42.3559372],[-71.183208,42.3558018],[-71.183189,42.355797],[-71.1831805,42.3557857],[-71.1831773,42.3557735]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291205773,"surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.1861293,42.3552892],[-71.1861188,42.3552585],[-71.185954,42.3550578],[-71.1859033,42.3549817],[-71.1858441,42.3548826],[-71.1858255,42.3548515],[-71.1857606,42.3547406],[-71.1856943,42.3546464],[-71.1856336,42.3545866],[-71.1855157,42.354567]]}},
@@ -2558,7 +2558,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291210409,"name":"Wesley Street"},"geometry":{"type":"LineString","coordinates":[[-71.1866594,42.3535761],[-71.1866612,42.3535687]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1291210410,"name":"Wesley Street","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1866612,42.3535687],[-71.1866649,42.3535336],[-71.1866664,42.3535195]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291210411,"name":"Wesley Street"},"geometry":{"type":"LineString","coordinates":[[-71.1866664,42.3535195],[-71.1866675,42.3535093]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291210412,"name":"Centre Street"},"geometry":{"type":"LineString","coordinates":[[-71.1872274,42.3535602],[-71.1866675,42.3535093],[-71.1866385,42.3535073],[-71.1866162,42.3535029],[-71.1866065,42.3534941],[-71.1865973,42.3534843],[-71.1865904,42.3534686],[-71.186588,42.3530668],[-71.1865908,42.3530504],[-71.1865954,42.3530425],[-71.1866044,42.3530386],[-71.1866202,42.3530374],[-71.1866406,42.3530397],[-71.1871219,42.353107]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291210412,"name":"Wesley Street"},"geometry":{"type":"LineString","coordinates":[[-71.1872274,42.3535602],[-71.1866675,42.3535093],[-71.1866385,42.3535073],[-71.1866162,42.3535029],[-71.1866065,42.3534941],[-71.1865973,42.3534843],[-71.1865904,42.3534686],[-71.186588,42.3530668],[-71.1865908,42.3530504],[-71.1865954,42.3530425],[-71.1866044,42.3530386],[-71.1866202,42.3530374],[-71.1866406,42.3530397],[-71.1871219,42.353107]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291210413,"name":"Wesley Street"},"geometry":{"type":"LineString","coordinates":[[-71.1866406,42.3530397],[-71.1866431,42.3530321]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291210414,"name":"Wesley Street"},"geometry":{"type":"LineString","coordinates":[[-71.1871184,42.353034],[-71.1866651,42.3529701],[-71.1866337,42.3529657],[-71.1866221,42.3529617],[-71.1866113,42.3529536],[-71.1866109,42.3529435],[-71.1866182,42.3529317],[-71.1866575,42.3528804],[-71.1867216,42.3527969]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291210415,"name":"Wesley Street"},"geometry":{"type":"LineString","coordinates":[[-71.1866651,42.3529701],[-71.1866627,42.352977]]}},
@@ -2579,14 +2579,14 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1291210430,"name":"Bennington Street","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1861665,42.3508394],[-71.1861707,42.350783],[-71.1861743,42.3507342]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291210431,"name":"Centre Street"},"geometry":{"type":"LineString","coordinates":[[-71.1861743,42.3507342],[-71.1861751,42.3507233],[-71.186164,42.3507117],[-71.1861571,42.3506973],[-71.1861571,42.3506726],[-71.1861675,42.3506284],[-71.1861889,42.3505563],[-71.1862401,42.3504591],[-71.1863194,42.3503597],[-71.1864601,42.3502041],[-71.1866826,42.350005],[-71.1868549,42.3498285],[-71.1868784,42.3498162],[-71.1869077,42.3498056],[-71.1869318,42.3498005]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1291210432,"name":"Bellevue Street","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1869318,42.3498005],[-71.1869776,42.3497579],[-71.1870177,42.3497205]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291210433,"name":"Centre Street"},"geometry":{"type":"LineString","coordinates":[[-71.1870177,42.3497205],[-71.1870432,42.3497015],[-71.1870466,42.3496751],[-71.187053,42.3496543],[-71.1874768,42.3492395],[-71.187489,42.3492317],[-71.1874979,42.3492195]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291210433,"name":"Fairmont Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1870177,42.3497205],[-71.1870432,42.3497015],[-71.1870466,42.3496751],[-71.187053,42.3496543],[-71.1874768,42.3492395],[-71.187489,42.3492317],[-71.1874979,42.3492195]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1291210434,"name":"Fairmont Avenue","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1874979,42.3492195],[-71.187526,42.3491828],[-71.1875554,42.3491443]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291210435,"name":"Centre Street"},"geometry":{"type":"LineString","coordinates":[[-71.1875554,42.3491443],[-71.1875655,42.3491337],[-71.1875616,42.349124],[-71.1875605,42.3491119],[-71.1875679,42.3490987],[-71.1876133,42.3490379],[-71.1880987,42.3483594],[-71.1881116,42.3483478],[-71.1881281,42.3483391]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1291210436,"name":"Lombard Street","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1881281,42.3483391],[-71.1881629,42.3482886],[-71.1881951,42.3482421]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291210437,"name":"Centre Street"},"geometry":{"type":"LineString","coordinates":[[-71.1881951,42.3482421],[-71.1882091,42.3482268],[-71.1882116,42.3482129],[-71.1882177,42.3481937],[-71.1885023,42.3478086],[-71.1885163,42.3477978],[-71.1885351,42.3477806],[-71.1885567,42.3477729],[-71.1885626,42.3477613]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291210437,"name":"Converse Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1881951,42.3482421],[-71.1882091,42.3482268],[-71.1882116,42.3482129],[-71.1882177,42.3481937],[-71.1885023,42.3478086],[-71.1885163,42.3477978],[-71.1885351,42.3477806],[-71.1885567,42.3477729],[-71.1885626,42.3477613]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291210438,"name":"Centre Street"},"geometry":{"type":"LineString","coordinates":[[-71.1893381,42.3469624],[-71.1893464,42.3469401],[-71.1894284,42.3467345],[-71.1895102,42.3465253]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1291210439,"name":"Richmond Road","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1895102,42.3465253],[-71.1895366,42.3464628],[-71.1895538,42.3464219]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291210440,"name":"Centre Street"},"geometry":{"type":"LineString","coordinates":[[-71.1895538,42.3464219],[-71.189582,42.3463543]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291210440,"name":"Richmond Road"},"geometry":{"type":"LineString","coordinates":[[-71.1895538,42.3464219],[-71.189582,42.3463543]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291210441,"name":"Centre Street"},"geometry":{"type":"LineString","coordinates":[[-71.189582,42.3463543],[-71.1895934,42.3463262],[-71.190069,42.3451524],[-71.1900849,42.3451131]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1291210442,"name":"Centre Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1900849,42.3451131],[-71.1901098,42.3450457],[-71.1901282,42.345007]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1291210443,"name":"Centre Street"},"geometry":{"type":"LineString","coordinates":[[-71.1901282,42.345007],[-71.190265,42.3446587],[-71.1904293,42.3442014]]}},
@@ -2622,10 +2622,10 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1292225559,"name":"Church Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1841567,42.3530086],[-71.1841308,42.3530463],[-71.1840949,42.3530984]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1292225560,"name":"Church Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1842344,42.3532029],[-71.1842563,42.3531359],[-71.1842705,42.3530923]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1292225561,"name":"Church Street"},"geometry":{"type":"LineString","coordinates":[[-71.1841567,42.3530086],[-71.1841571,42.352995],[-71.1841353,42.352993],[-71.1841136,42.3529803],[-71.1833814,42.3524573],[-71.1833341,42.3524229],[-71.1832294,42.3523467],[-71.1828867,42.3520949],[-71.1828306,42.3520421],[-71.1828161,42.3520148],[-71.1828248,42.35199],[-71.1828589,42.3519413]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1292225562,"name":"Church Street"},"geometry":{"type":"LineString","coordinates":[[-71.1827709,42.3518718],[-71.1827451,42.3518877],[-71.1827225,42.3518924],[-71.1826833,42.3518849],[-71.1826515,42.3518746],[-71.1824382,42.3516783]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1292225562,"name":"Billings Park"},"geometry":{"type":"LineString","coordinates":[[-71.1827709,42.3518718],[-71.1827451,42.3518877],[-71.1827225,42.3518924],[-71.1826833,42.3518849],[-71.1826515,42.3518746],[-71.1824382,42.3516783]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1292225563,"name":"Church Street"},"geometry":{"type":"LineString","coordinates":[[-71.1826833,42.3518849],[-71.1827113,42.3519068]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1292225564,"name":"Billings Park","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1827113,42.3519068],[-71.1827669,42.3519606],[-71.1828055,42.3519979]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1292225565,"name":"Church Street"},"geometry":{"type":"LineString","coordinates":[[-71.1828055,42.3519979],[-71.1828161,42.3520148]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1292225565,"name":"Billings Park"},"geometry":{"type":"LineString","coordinates":[[-71.1828055,42.3519979],[-71.1828161,42.3520148]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1292225566,"name":"Church Street"},"geometry":{"type":"LineString","coordinates":[[-71.1840949,42.3530984],[-71.1840778,42.3530996],[-71.1840692,42.3530876],[-71.1840553,42.353073],[-71.1833351,42.3525583],[-71.1832974,42.3525315],[-71.1828851,42.3522386]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1292225567,"name":"Church Street"},"geometry":{"type":"LineString","coordinates":[[-71.1828851,42.3522386],[-71.1828392,42.3521994],[-71.1825225,42.3519031]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1292225568,"name":"Eldredge Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1842585,42.3532172],[-71.1842328,42.3532206],[-71.1842151,42.3532225],[-71.18419,42.3532373],[-71.1839365,42.3538301],[-71.1837714,42.3542216],[-71.1835797,42.3546555],[-71.1835858,42.3546683],[-71.1835905,42.354678],[-71.1836073,42.3547027]]}},
@@ -2680,7 +2680,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1292265441,"name":"Commonwealth Avenue","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1611844,42.3400361],[-71.1611779,42.3400529],[-71.1611647,42.3400874],[-71.1611596,42.3401008]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1292265442,"name":"Commonwealth Avenue","surface":"asphalt","crossing":"traffic_signals","kerb":"raised"},"geometry":{"type":"LineString","coordinates":[[-71.1660061,42.3398835],[-71.1660143,42.3399343],[-71.1660206,42.3399734]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1292265443,"name":"Saint Thomas More Road","surface":"asphalt","crossing":"traffic_signals","kerb":"unknown","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1661852,42.3398148],[-71.1661126,42.3398241],[-71.1660395,42.3398335]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1292265444,"name":"Lake Street","tactile":"yes"},"geometry":{"type":"LineString","coordinates":[[-71.1660219,42.3401861],[-71.1660529,42.3401821]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1292265444,"name":"Commonwealth Avenue","tactile":"yes"},"geometry":{"type":"LineString","coordinates":[[-71.1660219,42.3401861],[-71.1660529,42.3401821]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1292265445},"geometry":{"type":"LineString","coordinates":[[-71.1669378,42.3400608],[-71.1669488,42.3400971],[-71.1670612,42.3401338],[-71.1670578,42.3401497]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1292265446,"name":"Commonwealth Avenue","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1669418,42.3397659],[-71.1669553,42.339815],[-71.1670008,42.3399801],[-71.1670149,42.3400315]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1292265447,"name":"Commonwealth Avenue Service Road","level":true},"geometry":{"type":"LineString","coordinates":[[-71.1699596,42.3392971],[-71.169943,42.3392956],[-71.1699124,42.339299],[-71.1698854,42.3393067],[-71.1697779,42.3393548],[-71.1696082,42.3394264],[-71.1694745,42.3394793],[-71.1692808,42.3395469],[-71.1690639,42.339616],[-71.1690342,42.3396254],[-71.1687199,42.339704],[-71.1681797,42.3398288],[-71.1679653,42.3398765],[-71.167871,42.3398975],[-71.1675864,42.3399515],[-71.1670218,42.3400471],[-71.1669378,42.3400608],[-71.1668456,42.3400757],[-71.1667824,42.3400568],[-71.1667594,42.3400601]]}},
@@ -2791,7 +2791,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1293511975,"name":"Hammond Street"},"geometry":{"type":"LineString","coordinates":[[-71.1635861,42.3145857],[-71.1635945,42.3145576],[-71.1636101,42.314502],[-71.163665,42.3143926],[-71.1637033,42.3143045],[-71.1637834,42.3141281],[-71.1638558,42.3139716],[-71.1638844,42.31391],[-71.1639819,42.313679],[-71.1640239,42.3135856],[-71.1641007,42.3133991],[-71.1641552,42.3132278],[-71.1642138,42.3129665],[-71.1642161,42.3129418],[-71.1642256,42.3129273],[-71.1642769,42.3129088],[-71.1643515,42.3129042],[-71.1645085,42.3129256]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1293511976,"name":"Laurel Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1642276,42.3129138],[-71.1642351,42.31283],[-71.1642453,42.3127151]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1293511977,"name":"Hammond Street"},"geometry":{"type":"LineString","coordinates":[[-71.1642453,42.3127151],[-71.1642461,42.3126509],[-71.1642457,42.3124504],[-71.1642408,42.3123051],[-71.164234,42.3122181],[-71.1642195,42.3121324],[-71.1642015,42.3120149],[-71.164164,42.311882],[-71.1640912,42.3116788],[-71.1640277,42.3115638],[-71.1639108,42.3113941],[-71.1637939,42.3112689],[-71.1637095,42.311174],[-71.1636451,42.3111118],[-71.163569,42.3110265],[-71.1635386,42.310983],[-71.1635262,42.3109333],[-71.163547,42.3108863],[-71.1635826,42.3108479],[-71.1636223,42.3108303],[-71.1636813,42.3108171],[-71.1637171,42.3108187]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1298182049,"name":"Centre Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1928861,42.3362463],[-71.1929005,42.3362476],[-71.1931157,42.336221],[-71.1931728,42.3362149]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1298182049,"name":"Commonwealth Avenue Service Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1928861,42.3362463],[-71.1929005,42.3362476],[-71.1931157,42.336221],[-71.1931728,42.3362149]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1298190020,"name":"Sudbury Aqueduct Trail","surface":"grass","rough":true},"geometry":{"type":"LineString","coordinates":[[-71.2055218,42.3307958],[-71.2054712,42.330845],[-71.2053505,42.3308897],[-71.2052188,42.3309531],[-71.2050527,42.3310611],[-71.2048056,42.3312166],[-71.2046125,42.3313613],[-71.2045158,42.3314602],[-71.2044876,42.3314892]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1298942542,"name":"Centre Street","surface":"concrete","tactile":"no","crossing":"traffic_signals","kerb":"flush"},"geometry":{"type":"LineString","coordinates":[[-71.2064944,42.3196901],[-71.2065169,42.3196818],[-71.2065253,42.3196791],[-71.2065434,42.3196741],[-71.2065565,42.3196708]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1299831599,"name":"Centre Street","surface":"asphalt","tactile":"yes","crossing":"traffic_signals","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.2067442,42.3196541],[-71.2067925,42.3196132],[-71.2068676,42.3195495]]}},
@@ -2829,11 +2829,11 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1301701599,"name":"Commonwealth Avenue","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1985798,42.3379477],[-71.1985931,42.3378956],[-71.1986046,42.3378502]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1301701600,"name":"Commonwealth Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1987242,42.3378141],[-71.1987002,42.3378166],[-71.1986768,42.3378233],[-71.1986377,42.3378296],[-71.198571,42.3378201],[-71.1984531,42.3377993],[-71.1983257,42.3377758],[-71.1982073,42.3377475],[-71.1980872,42.3377144],[-71.1979682,42.3376759],[-71.1978487,42.337635],[-71.1977572,42.3375997],[-71.1976625,42.3375567],[-71.1975526,42.3375029],[-71.1974243,42.337424],[-71.1972293,42.3373022],[-71.1970908,42.3372171],[-71.1967692,42.3369974],[-71.1967359,42.3369633],[-71.1967244,42.3369329]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1301701601,"name":"Mason Road","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1967244,42.3369329],[-71.1966522,42.3368763],[-71.1966413,42.3368678]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1301703862,"name":"Commonwealth Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1966413,42.3368678],[-71.1966389,42.3368412],[-71.1966031,42.3368379],[-71.1965719,42.3368294],[-71.196549,42.3368158],[-71.1964746,42.3367395],[-71.1963701,42.3366427],[-71.1962492,42.3364984],[-71.1961679,42.3363904]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1301703862,"name":"Mason Road"},"geometry":{"type":"LineString","coordinates":[[-71.1966413,42.3368678],[-71.1966389,42.3368412],[-71.1966031,42.3368379],[-71.1965719,42.3368294],[-71.196549,42.3368158],[-71.1964746,42.3367395],[-71.1963701,42.3366427],[-71.1962492,42.3364984],[-71.1961679,42.3363904]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1301703863,"name":"Water Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1961679,42.3363904],[-71.19612,42.336348],[-71.1960937,42.3363052]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1301703864,"name":"Commonwealth Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1960937,42.3363052],[-71.1960495,42.3362522],[-71.1960129,42.3362079],[-71.1959623,42.3361581],[-71.195907,42.3361],[-71.1958474,42.3360492],[-71.1957868,42.3360031],[-71.1956985,42.3359385],[-71.1956099,42.3358914],[-71.1955151,42.3358437],[-71.1953994,42.3357964],[-71.1952939,42.3357552],[-71.1951781,42.3357187],[-71.195042,42.3356884],[-71.1949352,42.3356676],[-71.1949034,42.3356591],[-71.1948704,42.3356372]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1301703865,"name":"Grafton Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1948704,42.3356372],[-71.1947889,42.3356311],[-71.1947212,42.335626]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1301703866,"name":"Commonwealth Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1947212,42.335626],[-71.1946958,42.3356276],[-71.1946736,42.3356534],[-71.1946411,42.3356598],[-71.1945959,42.3356555],[-71.1945541,42.3356352],[-71.1945337,42.3356359]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1301703866,"name":"Furber Lane"},"geometry":{"type":"LineString","coordinates":[[-71.1947212,42.335626],[-71.1946958,42.3356276],[-71.1946736,42.3356534],[-71.1946411,42.3356598],[-71.1945959,42.3356555],[-71.1945541,42.3356352],[-71.1945337,42.3356359]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1301703867,"name":"Furber Lane","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1945337,42.3356359],[-71.1945025,42.3356382],[-71.1944234,42.335644]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1301703868,"name":"Commonwealth Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1944234,42.335644],[-71.1943888,42.3356521],[-71.1942983,42.3356645],[-71.1941393,42.3356865],[-71.1939519,42.3357245],[-71.1937928,42.3357669],[-71.1935732,42.3358308],[-71.1935206,42.3358478]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1301703869,"name":"Morseland Avenue","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1974866,42.3378236],[-71.1974014,42.3377787],[-71.1973459,42.3377494]]}},
@@ -2845,7 +2845,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1301703875,"name":"Commonwealth Avenue Service Road","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1945644,42.3358767],[-71.1945685,42.3358945],[-71.1945748,42.3359222]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1301703876,"name":"Commonwealth Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1931554,42.3359479],[-71.1931345,42.3359694],[-71.1930551,42.3359877],[-71.1929222,42.3360165],[-71.1927464,42.3360482],[-71.1925458,42.3360761],[-71.19232,42.3361067],[-71.1921531,42.3361231],[-71.1918955,42.3361347],[-71.1916166,42.3361378],[-71.191455,42.3361236]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1301703877,"name":"Sumner Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.191455,42.3361236],[-71.1913861,42.3361243],[-71.1913155,42.3361251]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1301703878,"name":"Rice Street"},"geometry":{"type":"LineString","coordinates":[[-71.1932125,42.3359276],[-71.1932122,42.3357857]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1301703878,"name":"Centre Street"},"geometry":{"type":"LineString","coordinates":[[-71.1932125,42.3359276],[-71.1932122,42.3357857]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1301703879,"name":"Rice Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1932122,42.3357857],[-71.1932126,42.3357355],[-71.1932129,42.3357102]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1301703880,"name":"Commonwealth Avenue Service Road"},"geometry":{"type":"LineString","coordinates":[[-71.1913334,42.3363782],[-71.1913164,42.3363822],[-71.191295,42.3363655],[-71.1912566,42.3363514],[-71.1912135,42.3363489],[-71.191162,42.3363494],[-71.1911404,42.3363638],[-71.1911293,42.3363745],[-71.191112,42.3363772],[-71.1909779,42.3363784],[-71.1907349,42.336382],[-71.1904029,42.336383],[-71.1901273,42.3363834],[-71.1898546,42.3363856],[-71.1896397,42.3363886],[-71.1896165,42.3363669],[-71.1895747,42.3363557],[-71.1895186,42.3363564],[-71.1894401,42.3363661],[-71.1894041,42.3363946],[-71.1893999,42.336409],[-71.1893815,42.3364065]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1301703881,"name":"Irving Street","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1893815,42.3364065],[-71.1893302,42.3364127],[-71.1892801,42.3364189]]}},
@@ -2868,7 +2868,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1308930054,"name":"Westchester Road"},"geometry":{"type":"LineString","coordinates":[[-71.195009,42.3473532],[-71.1950284,42.3473438],[-71.1950475,42.3473301],[-71.1950577,42.3473151],[-71.1950725,42.3472802],[-71.1951116,42.3471785],[-71.1951269,42.3471212],[-71.1951187,42.3470937],[-71.1951135,42.3470838],[-71.1951043,42.3470659],[-71.1950715,42.3470417],[-71.1950358,42.3470271],[-71.1949718,42.3470056],[-71.1949145,42.3469887],[-71.1948601,42.3469718],[-71.1948008,42.3469446],[-71.1947385,42.3469178],[-71.1946796,42.3468836],[-71.194625,42.3468499],[-71.1945623,42.3468046],[-71.1945202,42.346768],[-71.1944717,42.3467245],[-71.1944383,42.3466898],[-71.1944043,42.3466476],[-71.1943697,42.3466016],[-71.1943464,42.3465637],[-71.1943266,42.3465231],[-71.1943028,42.3464727],[-71.1942853,42.346428],[-71.1942591,42.346365],[-71.1942355,42.3462911],[-71.19421,42.3462105]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1308930055,"name":"Langdon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1951135,42.3470838],[-71.1951405,42.347082]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1308930056,"name":"Langdon Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1951405,42.347082],[-71.1951903,42.3470859],[-71.1952826,42.347093]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1308930057,"name":"Westchester Road"},"geometry":{"type":"LineString","coordinates":[[-71.1952826,42.347093],[-71.1953104,42.347093]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1308930057,"name":"Langdon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1952826,42.347093],[-71.1953104,42.347093]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1308930058,"name":"Langdon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1949743,42.3474808],[-71.194974,42.3474966],[-71.1949723,42.3475182],[-71.1949552,42.3475476],[-71.1948849,42.3476539],[-71.1948222,42.3477656],[-71.1947186,42.3479471],[-71.1946143,42.3481288],[-71.1944901,42.3483416],[-71.1943973,42.3485039]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1308930059,"name":"Laudholm Road","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1943973,42.3485039],[-71.1943592,42.3485685],[-71.1943365,42.3486072]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1308930060,"name":"Langdon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1943365,42.3486072],[-71.1943075,42.3486579],[-71.1942337,42.3487862],[-71.1941216,42.3489782],[-71.1939746,42.3492329],[-71.1937502,42.3496358],[-71.1937366,42.349659]]}},
@@ -2876,17 +2876,17 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1308930062,"name":"Langdon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1936406,42.3498191],[-71.19358,42.3499123],[-71.1934593,42.3501308],[-71.1934238,42.3501869]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1308930063,"name":"Worth Circle","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1934238,42.3501869],[-71.1933884,42.3502479],[-71.1933583,42.3503021]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1308930064,"name":"Langdon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1933583,42.3503021],[-71.1932442,42.3505],[-71.1931144,42.3507248],[-71.1930924,42.350755],[-71.1930714,42.3507708],[-71.1930452,42.3507765],[-71.1930074,42.350775],[-71.1929708,42.3507669],[-71.1929498,42.3507551],[-71.1929178,42.3507352],[-71.1928892,42.3507079],[-71.1928557,42.3506744],[-71.1928126,42.3506521],[-71.1927662,42.3506404],[-71.1927179,42.3506429],[-71.1926715,42.3506573],[-71.1926352,42.3506722],[-71.1926095,42.3506904],[-71.1926,42.3507083],[-71.192594,42.3507465],[-71.1926174,42.350784],[-71.1926422,42.3508121],[-71.1926758,42.3508316],[-71.1927219,42.3508407],[-71.1927605,42.3508437],[-71.1928108,42.3508406],[-71.1928512,42.3508374],[-71.1928996,42.3508397],[-71.1929487,42.3508495],[-71.1929711,42.3508654],[-71.1929892,42.3508881],[-71.1929944,42.3509078],[-71.1929973,42.3509188],[-71.1929843,42.3509475],[-71.1929041,42.3510806],[-71.1927595,42.3513416],[-71.1927381,42.3513732],[-71.1927089,42.3513931],[-71.1926741,42.3514051],[-71.1926307,42.3514026],[-71.1925878,42.3513818],[-71.1925516,42.3513582],[-71.1925056,42.3513167],[-71.1924626,42.3512798],[-71.1924129,42.3512696],[-71.1923762,42.3512677],[-71.1923408,42.3512798],[-71.1922994,42.3513006],[-71.1922694,42.3513245],[-71.1922575,42.3513549],[-71.1922526,42.3513901],[-71.1922669,42.3514142],[-71.1922953,42.3514381],[-71.1923248,42.3514579],[-71.1923541,42.35147],[-71.1923951,42.3514678],[-71.192458,42.3514644],[-71.1924847,42.3514646],[-71.1925384,42.3514726],[-71.1925886,42.3514867],[-71.1926165,42.3514986],[-71.1926333,42.3515159],[-71.1926372,42.351536],[-71.1926366,42.351548],[-71.1926362,42.3515566],[-71.1926053,42.3516093],[-71.1925437,42.3517155],[-71.1924835,42.3518179],[-71.1924189,42.3519366],[-71.1923264,42.3520868],[-71.192307,42.3521015],[-71.1922877,42.352105]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1308930065,"name":"Bunny Circle"},"geometry":{"type":"LineString","coordinates":[[-71.1930714,42.3507708],[-71.1930691,42.3507826]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1308930065,"name":"Langdon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1930714,42.3507708],[-71.1930691,42.3507826]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1308930066,"name":"Bunny Circle","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1930691,42.3507826],[-71.1930414,42.3508295],[-71.1930044,42.3508914]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1308930067,"name":"Langdon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1930044,42.3508914],[-71.1929944,42.3509078]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1308930068,"name":"Langdon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1927381,42.3513732],[-71.192728,42.3513957]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1308930069,"name":"Doris Circle","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.192728,42.3513957],[-71.1926821,42.3514699],[-71.1926518,42.3515188]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1308930070,"name":"Langdon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1926518,42.3515188],[-71.1926366,42.351548]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1308930070,"name":"Doris Circle"},"geometry":{"type":"LineString","coordinates":[[-71.1926518,42.3515188],[-71.1926366,42.351548]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1308930071,"name":"Bellevue Street"},"geometry":{"type":"LineString","coordinates":[[-71.192213,42.3520908],[-71.1920537,42.3520421],[-71.1916339,42.3519238],[-71.1914878,42.3518613],[-71.1912412,42.3517509],[-71.1907702,42.3515504],[-71.1905843,42.3514619]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1308930072,"name":"Claremont Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1905843,42.3514619],[-71.1905145,42.3514315],[-71.1904584,42.351407]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1308930073,"name":"Bellevue Street"},"geometry":{"type":"LineString","coordinates":[[-71.1904584,42.351407],[-71.1901834,42.351291],[-71.1898638,42.3511409],[-71.1895668,42.3509933],[-71.1892891,42.3508516],[-71.1886847,42.3505535],[-71.1881074,42.350255],[-71.1876099,42.3500117],[-71.1872686,42.3498471],[-71.1870739,42.3497504],[-71.1870528,42.3497322],[-71.1870475,42.3497183],[-71.1870432,42.3497015]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1308930075,"name":"George Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1880129,42.348146],[-71.1879919,42.3481773],[-71.1879601,42.3482246]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1308930076,"name":"Centre Street"},"geometry":{"type":"LineString","coordinates":[[-71.1879601,42.3482246],[-71.1879575,42.3482404],[-71.1878334,42.348426],[-71.1876695,42.3486581],[-71.1875179,42.3488742]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1308930076,"name":"George Street"},"geometry":{"type":"LineString","coordinates":[[-71.1879601,42.3482246],[-71.1879575,42.3482404],[-71.1878334,42.348426],[-71.1876695,42.3486581],[-71.1875179,42.3488742]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1308930077,"name":"Garden Road","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1875179,42.3488742],[-71.1874886,42.3489155],[-71.1874626,42.348952]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1308930078,"name":"Centre Street"},"geometry":{"type":"LineString","coordinates":[[-71.1874626,42.348952],[-71.1874147,42.3490281],[-71.1873599,42.3491132],[-71.1873173,42.3491646],[-71.1871958,42.3493002],[-71.1870468,42.3494521],[-71.1869496,42.3495495],[-71.1868704,42.3496292],[-71.1868542,42.3496414],[-71.1868257,42.3496443],[-71.186817,42.3496521]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1308930079,"name":"Hyde Avenue","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.186817,42.3496521],[-71.1867965,42.3496721],[-71.1867539,42.3497135]]}},
@@ -2894,7 +2894,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1308930081,"name":"Buswell Park","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.185935,42.3507492],[-71.1859297,42.3507924],[-71.1859246,42.3508335]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1308930082,"name":"Centre Street"},"geometry":{"type":"LineString","coordinates":[[-71.1859246,42.3508335],[-71.185924,42.3508472],[-71.1859424,42.350861],[-71.185957,42.3508792],[-71.1859566,42.3509207],[-71.1859528,42.3510331],[-71.185953,42.3512663],[-71.1859509,42.3514212],[-71.1859552,42.3514379],[-71.1859587,42.3514607],[-71.1859582,42.3514935],[-71.1859563,42.351617],[-71.1859585,42.3518837],[-71.1859543,42.3519868],[-71.1859376,42.3520093],[-71.1859167,42.3520225],[-71.1859055,42.3520263],[-71.1859073,42.3520396]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1308930083,"name":"Franklin Street","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1859073,42.3520396],[-71.185912,42.3520906],[-71.1859161,42.3521352]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1308930084,"name":"Centre Street"},"geometry":{"type":"LineString","coordinates":[[-71.1859161,42.3521352],[-71.1859153,42.3521473],[-71.1859305,42.3521563],[-71.1859502,42.3521665],[-71.1859634,42.3521828],[-71.1859693,42.3522046],[-71.1859963,42.3523207],[-71.185999,42.3523547],[-71.1859908,42.3523766],[-71.1859668,42.352396],[-71.1859738,42.3524087]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1308930084,"name":"Franklin Street"},"geometry":{"type":"LineString","coordinates":[[-71.1859161,42.3521352],[-71.1859153,42.3521473],[-71.1859305,42.3521563],[-71.1859502,42.3521665],[-71.1859634,42.3521828],[-71.1859693,42.3522046],[-71.1859963,42.3523207],[-71.185999,42.3523547],[-71.1859908,42.3523766],[-71.1859668,42.352396],[-71.1859738,42.3524087]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1308930085,"name":"Hollis Street","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1859738,42.3524087],[-71.1859961,42.3524401],[-71.186032,42.3524906]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1308930086,"name":"Centre Street"},"geometry":{"type":"LineString","coordinates":[[-71.186032,42.3524906],[-71.1860455,42.3525071],[-71.1860634,42.3525218],[-71.1860807,42.3525337],[-71.1861153,42.3525707],[-71.1863003,42.352812],[-71.1863281,42.3528549],[-71.1863501,42.3528996],[-71.1863945,42.3530164],[-71.1864083,42.3530707],[-71.1863968,42.3530877],[-71.1863879,42.353098],[-71.1863915,42.3531079]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1308930087,"name":"Hollis Street","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1863915,42.3531079],[-71.1863968,42.3531393],[-71.1864043,42.3531831]]}},
@@ -2924,14 +2924,14 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1309899848,"name":"Chestnut Hill Avenue","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1461911,42.3307595],[-71.1461186,42.3307637],[-71.1460468,42.3307679]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1310598438,"name":"Blue Trail","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1758593,42.326712],[-71.1759336,42.326691]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1312350765,"name":"Marlboro Street","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1757708,42.3523968],[-71.1757126,42.3523685],[-71.1756636,42.3523446]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1312350766,"name":"Tremont Street"},"geometry":{"type":"LineString","coordinates":[[-71.1756636,42.3523446],[-71.1756492,42.3523301],[-71.1756073,42.3523163],[-71.1752884,42.3521621],[-71.1750376,42.3520365],[-71.1750241,42.3520297]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1312350766,"name":"Marlboro Street"},"geometry":{"type":"LineString","coordinates":[[-71.1756636,42.3523446],[-71.1756492,42.3523301],[-71.1756073,42.3523163],[-71.1752884,42.3521621],[-71.1750376,42.3520365],[-71.1750241,42.3520297]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1312350767,"name":"Ricker Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1750241,42.3520297],[-71.1749741,42.3520067],[-71.1749245,42.3519838]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1312350768,"name":"Tremont Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1749245,42.3519838],[-71.1748693,42.352054],[-71.1748225,42.3521136]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1312350769,"name":"Playstead Road"},"geometry":{"type":"LineString","coordinates":[[-71.1748225,42.3521136],[-71.1748168,42.3521279]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1312350769,"name":"Tremont Street"},"geometry":{"type":"LineString","coordinates":[[-71.1748225,42.3521136],[-71.1748168,42.3521279]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1312350770,"name":"Playstead Road"},"geometry":{"type":"LineString","coordinates":[[-71.1747725,42.3521259],[-71.1747544,42.3521205]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1312350771,"name":"Playstead Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1747544,42.3521205],[-71.1747116,42.3520962],[-71.1746661,42.3520704]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1312350772,"name":"Playstead Road"},"geometry":{"type":"LineString","coordinates":[[-71.1746661,42.3520704],[-71.1746371,42.3520506]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1312350773,"name":"Tremont Street"},"geometry":{"type":"LineString","coordinates":[[-71.1749245,42.3519838],[-71.174914,42.3519758],[-71.1749011,42.3519659],[-71.1747152,42.3518807],[-71.1743438,42.3517023],[-71.1739752,42.3515263],[-71.173923,42.3515014],[-71.1739073,42.3514881]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1312350773,"name":"Ricker Road"},"geometry":{"type":"LineString","coordinates":[[-71.1749245,42.3519838],[-71.174914,42.3519758],[-71.1749011,42.3519659],[-71.1747152,42.3518807],[-71.1743438,42.3517023],[-71.1739752,42.3515263],[-71.173923,42.3515014],[-71.1739073,42.3514881]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1312350774,"name":"Cufflin Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1739073,42.3514881],[-71.1738623,42.3514692],[-71.173823,42.3514527]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1312350775,"name":"Tremont Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.173823,42.3514527],[-71.1738115,42.3514507],[-71.1737477,42.3514187],[-71.1735109,42.3513001],[-71.1734506,42.3512703],[-71.1731202,42.3511105],[-71.1729422,42.3510251],[-71.172824,42.3509683],[-71.1724908,42.350808],[-71.1723623,42.3507462],[-71.1721532,42.3506435],[-71.1719847,42.350561],[-71.1719315,42.3505379],[-71.1718454,42.3505006],[-71.1716309,42.3504244],[-71.1714535,42.3503668],[-71.1712264,42.3502966],[-71.1710223,42.3502319],[-71.170737,42.3501438],[-71.1705713,42.3500947],[-71.170448,42.3500689],[-71.1703169,42.3500492],[-71.1701878,42.3500354],[-71.1700575,42.3500326],[-71.1699239,42.3500361],[-71.1698134,42.3500446],[-71.1696944,42.3500628],[-71.169541,42.350095],[-71.1693898,42.3501357],[-71.1692463,42.3501843],[-71.1690886,42.3502515],[-71.168895,42.3503466],[-71.1686494,42.3504767],[-71.1685183,42.3505429],[-71.1684794,42.3505511],[-71.168456,42.3505561],[-71.1683735,42.3505593],[-71.1682568,42.3505539],[-71.1682345,42.350547]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1312350776,"name":"Tremont Street"},"geometry":{"type":"LineString","coordinates":[[-71.1684794,42.3505511],[-71.1685023,42.3505667]]}},
@@ -2939,12 +2939,12 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1312350778,"name":"Tremont Street"},"geometry":{"type":"LineString","coordinates":[[-71.1741462,42.3518107],[-71.1738404,42.3516673],[-71.173632,42.3515696],[-71.1735972,42.3515533],[-71.1733765,42.3514435],[-71.1732898,42.3513994],[-71.1732619,42.351386],[-71.1730752,42.3512962],[-71.1730137,42.3512666],[-71.1729109,42.3512146],[-71.17273,42.3511232],[-71.1724037,42.3509636],[-71.1721227,42.350827],[-71.1719463,42.3507428],[-71.1717916,42.3506704],[-71.1716355,42.3506135],[-71.1714879,42.350562],[-71.1713067,42.3505051],[-71.1711027,42.3504424],[-71.1708014,42.3503472],[-71.1706096,42.3502873],[-71.1705972,42.3502823]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1312350779,"name":"Tip Top Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1705972,42.3502823],[-71.1705469,42.3502692],[-71.1705032,42.3502579]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1312350780,"name":"Tremont Street"},"geometry":{"type":"LineString","coordinates":[[-71.1705032,42.3502579],[-71.1704869,42.3502521],[-71.1704663,42.3502462],[-71.1704033,42.3502349],[-71.170288,42.3502164],[-71.1701656,42.3502044],[-71.1700845,42.3502032],[-71.1700469,42.3502027],[-71.16995,42.350205],[-71.1698134,42.3502173],[-71.1696768,42.3502387],[-71.1695441,42.3502729],[-71.1693949,42.3503191],[-71.1692307,42.3503843],[-71.1691763,42.3504104],[-71.1690487,42.3504716],[-71.1688066,42.3505959],[-71.1686946,42.3506534],[-71.1686498,42.3506892],[-71.1686465,42.3506987],[-71.1686412,42.3507136],[-71.1686489,42.3507368],[-71.1686722,42.3507569],[-71.1686826,42.3507655],[-71.1687192,42.3507839],[-71.1688727,42.350861],[-71.1692998,42.3510756],[-71.1695485,42.3511841],[-71.1697609,42.3512582],[-71.1697793,42.3512605]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1312350781,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1686278,42.3506827],[-71.1686465,42.3506987]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1312350781,"name":"Tremont Street"},"geometry":{"type":"LineString","coordinates":[[-71.1686278,42.3506827],[-71.1686465,42.3506987]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1312350782,"name":"Washington Street","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1686707,42.3507739],[-71.1686259,42.3508038],[-71.1685933,42.3508256]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1312350783},"geometry":{"type":"LineString","coordinates":[[-71.1685831,42.3508371],[-71.1685646,42.3508274],[-71.1685465,42.3508247],[-71.1685352,42.3508329]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1312350784,"name":"Oak Square","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1685219,42.3508316],[-71.1684675,42.3508267],[-71.1684075,42.3508212]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1312350785,"name":"Nonantum Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1682345,42.350547],[-71.1681694,42.3505445],[-71.1681133,42.3505423]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1312350786,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1681133,42.3505423],[-71.1680956,42.3505448],[-71.1678255,42.3505176],[-71.1677729,42.3505114],[-71.1677596,42.350499]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1312350786,"name":"Nonantum Street"},"geometry":{"type":"LineString","coordinates":[[-71.1681133,42.3505423],[-71.1680956,42.3505448],[-71.1678255,42.3505176],[-71.1677729,42.3505114],[-71.1677596,42.350499]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1312350787,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1678255,42.3505176],[-71.1678277,42.3505349]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1312350788,"name":"Washington Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1678277,42.3505349],[-71.1678013,42.3505693],[-71.167774,42.3506047]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1312350789,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1684075,42.3508212],[-71.1683825,42.3508209],[-71.16838,42.3507962],[-71.1683617,42.3507791],[-71.1682877,42.3507756],[-71.1681128,42.3507599],[-71.1680084,42.350751],[-71.1678751,42.3507406],[-71.1678424,42.3507437],[-71.1678138,42.3507578],[-71.1677958,42.3507519]]}},
@@ -2982,7 +2982,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1312940835,"name":"Hardwick Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1645271,42.3545019],[-71.1645382,42.354462],[-71.1645468,42.3544313]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1312940836,"name":"Perthshire Road"},"geometry":{"type":"LineString","coordinates":[[-71.1645468,42.3544313],[-71.164549,42.3544221],[-71.1645503,42.3544167],[-71.1646275,42.3541373],[-71.1646597,42.3540181],[-71.1646846,42.3539452],[-71.1647241,42.3538647],[-71.1647602,42.3538128],[-71.1648036,42.3537638],[-71.1648606,42.3537054],[-71.1649195,42.3536564],[-71.1649877,42.353613],[-71.1650499,42.3535802],[-71.1651226,42.3535485],[-71.1651947,42.3535242],[-71.1652855,42.3535001],[-71.1654011,42.3534848],[-71.1655165,42.3534774],[-71.1656309,42.3534814],[-71.1657791,42.3535014],[-71.16605,42.3535551],[-71.1667692,42.3536906],[-71.1674644,42.3538234],[-71.167547,42.353844]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1312940837,"name":"Bigelow Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.167547,42.353844],[-71.1676096,42.3538563],[-71.1676647,42.3538672]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1312940838,"name":"Dunboy Street"},"geometry":{"type":"LineString","coordinates":[[-71.1675842,42.353751],[-71.1672703,42.3536922],[-71.1669165,42.3536264],[-71.1665282,42.353547],[-71.1661249,42.353476],[-71.1658815,42.3534313],[-71.1657647,42.3534098],[-71.1654606,42.3533529],[-71.1653603,42.3533328],[-71.1652685,42.3533083],[-71.165202,42.3532788],[-71.1651421,42.3532488],[-71.1650768,42.353199],[-71.1650176,42.3531297],[-71.1649692,42.3530599],[-71.1649271,42.3529805],[-71.1648951,42.3529042],[-71.1648589,42.3528066],[-71.1648397,42.3527191],[-71.164828,42.3526444],[-71.1648154,42.3524535],[-71.1647939,42.3522239],[-71.1648022,42.352186],[-71.1648279,42.3521599],[-71.1648635,42.3521435],[-71.1649923,42.352104],[-71.1653065,42.3520132],[-71.1656021,42.3519248],[-71.1659502,42.3518184],[-71.1663621,42.3516991],[-71.1666757,42.3516038],[-71.1666863,42.3515963]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1312940838,"name":"Perthshire Road"},"geometry":{"type":"LineString","coordinates":[[-71.1675842,42.353751],[-71.1672703,42.3536922],[-71.1669165,42.3536264],[-71.1665282,42.353547],[-71.1661249,42.353476],[-71.1658815,42.3534313],[-71.1657647,42.3534098],[-71.1654606,42.3533529],[-71.1653603,42.3533328],[-71.1652685,42.3533083],[-71.165202,42.3532788],[-71.1651421,42.3532488],[-71.1650768,42.353199],[-71.1650176,42.3531297],[-71.1649692,42.3530599],[-71.1649271,42.3529805],[-71.1648951,42.3529042],[-71.1648589,42.3528066],[-71.1648397,42.3527191],[-71.164828,42.3526444],[-71.1648154,42.3524535],[-71.1647939,42.3522239],[-71.1648022,42.352186],[-71.1648279,42.3521599],[-71.1648635,42.3521435],[-71.1649923,42.352104],[-71.1653065,42.3520132],[-71.1656021,42.3519248],[-71.1659502,42.3518184],[-71.1663621,42.3516991],[-71.1666757,42.3516038],[-71.1666863,42.3515963]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1312940839,"name":"Adair Road","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1666863,42.3515963],[-71.1667349,42.3515886],[-71.1667876,42.3515822]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1312940840,"name":"Faneuil Street"},"geometry":{"type":"LineString","coordinates":[[-71.1668067,42.3515541],[-71.1671049,42.3514464],[-71.1673943,42.3513377],[-71.1674624,42.3513121],[-71.1674838,42.3513102],[-71.1675034,42.3513072]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1312940841,"name":"Faneuil Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1674478,42.3511592],[-71.1672639,42.351224],[-71.1667651,42.3514083],[-71.1665905,42.3514726],[-71.1662431,42.3515804],[-71.1659177,42.3516795],[-71.1653982,42.3518293],[-71.1651813,42.3518899]]}},
@@ -2995,7 +2995,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1312942114,"name":"Dunboy Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1648016,42.3521669],[-71.1647347,42.3521841],[-71.1646317,42.3522106]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1312942115,"name":"Faneuil Street"},"geometry":{"type":"LineString","coordinates":[[-71.1646317,42.3522106],[-71.1646001,42.3522138],[-71.1645342,42.3522222],[-71.1642512,42.3522815],[-71.1639719,42.3523374],[-71.1637581,42.35237],[-71.1634553,42.3524121],[-71.1633644,42.3524277],[-71.1632837,42.3524415],[-71.1632678,42.3524449]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1312942116,"name":"Brooks Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1632678,42.3524449],[-71.1631916,42.3524563],[-71.1631243,42.3524664]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1312942117,"name":"Brooks Street"},"geometry":{"type":"LineString","coordinates":[[-71.1632837,42.3524415],[-71.1632216,42.3527876],[-71.1631981,42.352946]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1312942117,"name":"Faneuil Street"},"geometry":{"type":"LineString","coordinates":[[-71.1632837,42.3524415],[-71.1632216,42.3527876],[-71.1631981,42.352946]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1312942118,"name":"Upcrest Road","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1631981,42.352946],[-71.1631966,42.3529777],[-71.1631934,42.3530252]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1312942119,"name":"Faneuil Street"},"geometry":{"type":"LineString","coordinates":[[-71.1631243,42.3524664],[-71.1631114,42.3524656],[-71.1630806,42.3524646],[-71.1628636,42.3524935],[-71.1624373,42.3525506],[-71.1624304,42.3525726],[-71.1624148,42.3525687]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1312942120,"name":"Hobson Street","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1624148,42.3525687],[-71.1623635,42.3525687],[-71.1622845,42.3525688]]}},
@@ -3007,13 +3007,13 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1315194060,"name":"Buckminster Road"},"geometry":{"type":"LineString","coordinates":[[-71.1466233,42.3323852],[-71.1466288,42.332368]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1315839309,"name":"Faneuil Street"},"geometry":{"type":"LineString","coordinates":[[-71.1635919,42.3522687],[-71.1635805,42.352265],[-71.1633201,42.3523004],[-71.1632697,42.3523069],[-71.1630184,42.3523396],[-71.1629627,42.3523421],[-71.1629471,42.3523456]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1315839310,"name":"Fairbanks Street","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1629471,42.3523456],[-71.1629023,42.3523461],[-71.1628522,42.3523466]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1315839311,"name":"Faneuil Street"},"geometry":{"type":"LineString","coordinates":[[-71.1628522,42.3523466],[-71.1628342,42.3523492],[-71.1628276,42.3523655],[-71.1624701,42.3524151],[-71.1620756,42.3524637],[-71.162065,42.3524663]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1315839311,"name":"Fairbanks Street"},"geometry":{"type":"LineString","coordinates":[[-71.1628522,42.3523466],[-71.1628342,42.3523492],[-71.1628276,42.3523655],[-71.1624701,42.3524151],[-71.1620756,42.3524637],[-71.162065,42.3524663]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1315839312,"name":"Turner Street","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.162065,42.3524663],[-71.1620035,42.3524753],[-71.1619527,42.3524828]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1315839313,"name":"Faneuil Street"},"geometry":{"type":"LineString","coordinates":[[-71.1619527,42.3524828],[-71.1619417,42.3524838],[-71.1617225,42.3525161],[-71.1614567,42.3525457],[-71.161189,42.3525613],[-71.1611665,42.352556]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1315839314,"name":"Beechcroft Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1611665,42.352556],[-71.1611082,42.3525653],[-71.1610521,42.3525743]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1315839315,"name":"Faneuil Street"},"geometry":{"type":"LineString","coordinates":[[-71.1610521,42.3525743],[-71.1610415,42.3525658],[-71.1606626,42.3525821],[-71.160651,42.3525826],[-71.1606337,42.3525743],[-71.1606154,42.352561],[-71.1606044,42.352546],[-71.1605881,42.3525471]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1315839315,"name":"Oakland Street"},"geometry":{"type":"LineString","coordinates":[[-71.1610521,42.3525743],[-71.1610415,42.3525658],[-71.1606626,42.3525821],[-71.160651,42.3525826],[-71.1606337,42.3525743],[-71.1606154,42.352561],[-71.1606044,42.352546],[-71.1605881,42.3525471]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1315839316,"name":"Oakland Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1605881,42.3525471],[-71.1605111,42.352551],[-71.1604462,42.3525543]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1315839317,"name":"Faneuil Street"},"geometry":{"type":"LineString","coordinates":[[-71.1604462,42.3525543],[-71.160437,42.3525478],[-71.1604266,42.3525557],[-71.1604132,42.3525698],[-71.1604017,42.3525787],[-71.1603808,42.3525792],[-71.1602638,42.3525821],[-71.1602155,42.3525734],[-71.160001,42.352576],[-71.1599893,42.3525759],[-71.1595388,42.3525726],[-71.1591757,42.3525759],[-71.1587022,42.3525768],[-71.1581388,42.352578],[-71.158118,42.352578]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1315839317,"name":"Oakland Street"},"geometry":{"type":"LineString","coordinates":[[-71.1604462,42.3525543],[-71.160437,42.3525478],[-71.1604266,42.3525557],[-71.1604132,42.3525698],[-71.1604017,42.3525787],[-71.1603808,42.3525792],[-71.1602638,42.3525821],[-71.1602155,42.3525734],[-71.160001,42.352576],[-71.1599893,42.3525759],[-71.1595388,42.3525726],[-71.1591757,42.3525759],[-71.1587022,42.3525768],[-71.1581388,42.352578],[-71.158118,42.352578]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1315839318,"name":"South Hobart Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.158118,42.352578],[-71.158062,42.3525788],[-71.1580239,42.3525793]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1315839319,"name":"Arlington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1580239,42.3525793],[-71.158002,42.3525794],[-71.1578314,42.3525799],[-71.1573902,42.3525788],[-71.1567438,42.3525836],[-71.15622,42.3525845],[-71.1561645,42.3525802],[-71.1560501,42.3525804],[-71.1560475,42.3526016],[-71.1558536,42.3525802],[-71.1554548,42.3525146],[-71.1553377,42.3524947],[-71.1551468,42.3524623],[-71.1545722,42.3523556]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1315839320,"name":"Parsons Street","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1545722,42.3523556],[-71.1544677,42.3523412],[-71.1544031,42.3523334]]}},
@@ -3047,7 +3047,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1315840330,"name":"Hobson Street"},"geometry":{"type":"LineString","coordinates":[[-71.1624304,42.3525726],[-71.1623793,42.3527791],[-71.1621922,42.3535609],[-71.1620158,42.3543056],[-71.1617753,42.3553284],[-71.1617754,42.3553409]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1316556686,"name":"Hammond Pond Parkway","surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.1728006,42.3215414],[-71.1727654,42.3215287],[-71.1727302,42.3215161]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1317498369,"name":"Brackett Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1651813,42.3518899],[-71.1651165,42.3519072],[-71.1650572,42.351923]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1317498370,"name":"Faneuil Street"},"geometry":{"type":"LineString","coordinates":[[-71.1650572,42.351923],[-71.1650449,42.3519271],[-71.1648066,42.352008],[-71.1643923,42.3521353],[-71.1643768,42.3521392]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1317498370,"name":"Brackett Street"},"geometry":{"type":"LineString","coordinates":[[-71.1650572,42.351923],[-71.1650449,42.3519271],[-71.1648066,42.352008],[-71.1643923,42.3521353],[-71.1643768,42.3521392]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1317498371,"name":"Montfern Avenue","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1643768,42.3521392],[-71.1643229,42.3521517],[-71.164269,42.3521641]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1317498372,"name":"Faneuil Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1632678,42.3524449],[-71.1632709,42.3523893],[-71.1632748,42.3523202]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1317498373,"name":"Faneuil Street"},"geometry":{"type":"LineString","coordinates":[[-71.1632748,42.3523202],[-71.1632697,42.3523069]]}},
@@ -3119,9 +3119,9 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1317501300,"name":"Leicester Street","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.154398,42.3504173],[-71.1543389,42.3504021],[-71.1542886,42.3503891]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1317501301,"name":"Surrey Street","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1542886,42.3503891],[-71.1543008,42.3503373],[-71.1543112,42.3502929]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1317501729,"name":"Surrey Street"},"geometry":{"type":"LineString","coordinates":[[-71.1542886,42.3503891],[-71.1542783,42.3503911],[-71.1542601,42.3503762],[-71.154117,42.3503418],[-71.1538668,42.3502728],[-71.1536942,42.35022],[-71.1535327,42.3501511],[-71.1534583,42.3501207],[-71.1533076,42.3500592],[-71.1531401,42.3499877],[-71.1531373,42.3499783]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1317501730,"name":"Bennett Street"},"geometry":{"type":"LineString","coordinates":[[-71.1529087,42.350271],[-71.1527664,42.3504715],[-71.1525215,42.350872],[-71.1525162,42.3508806]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1317501730,"name":"Market Street"},"geometry":{"type":"LineString","coordinates":[[-71.1529087,42.350271],[-71.1527664,42.3504715],[-71.1525215,42.350872],[-71.1525162,42.3508806]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1317501731,"name":"Bennett Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1525162,42.3508806],[-71.1524891,42.350925],[-71.1524617,42.3509697]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1317501732,"name":"Market Street"},"geometry":{"type":"LineString","coordinates":[[-71.1524617,42.3509697],[-71.1524528,42.3509772],[-71.152249,42.3513006],[-71.1520713,42.3515972],[-71.152054,42.3516248],[-71.152052,42.3516402]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1317501732,"name":"Bennett Street"},"geometry":{"type":"LineString","coordinates":[[-71.1524617,42.3509697],[-71.1524528,42.3509772],[-71.152249,42.3513006],[-71.1520713,42.3515972],[-71.152054,42.3516248],[-71.152052,42.3516402]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1317501733,"name":"Surrey Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1531373,42.3499783],[-71.1531614,42.3499467],[-71.1531881,42.3499118]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1317501734,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1531881,42.3499118],[-71.1531953,42.3498979],[-71.1532293,42.3498482],[-71.1532706,42.3497876],[-71.1534264,42.3495866],[-71.1535526,42.3494237],[-71.1536481,42.3493144],[-71.1536764,42.3492921],[-71.1537024,42.3492751],[-71.1537376,42.3492582],[-71.1537769,42.3492467],[-71.1538759,42.3492337],[-71.1544668,42.3492218],[-71.1544764,42.3492217]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1318856972,"name":"Langley Road"},"geometry":{"type":"LineString","coordinates":[[-71.1676105,42.3504972],[-71.1676349,42.3504734],[-71.1676463,42.3504319],[-71.1676643,42.3503215],[-71.1677037,42.3501069],[-71.1677048,42.3500542],[-71.16769,42.3500309],[-71.1676246,42.3500052],[-71.1672136,42.3498916],[-71.1668502,42.3497877],[-71.1662937,42.3496345],[-71.1657311,42.3494742],[-71.1652531,42.3493387],[-71.1647199,42.349188],[-71.164433,42.3491058],[-71.1641054,42.3490032],[-71.1639594,42.3489584],[-71.1638627,42.3489315],[-71.1637699,42.3489203],[-71.1636941,42.348925],[-71.1636201,42.3489434],[-71.1635339,42.3489839],[-71.1634829,42.3490294],[-71.1634476,42.3490678]]}},
@@ -3143,7 +3143,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1318856991,"name":"Cufflin Street"},"geometry":{"type":"LineString","coordinates":[[-71.1744976,42.3503016],[-71.1743091,42.35061],[-71.17409,42.3509815],[-71.1738962,42.351305],[-71.1738115,42.3514507]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1318856992,"name":"Cufflin Street","level":true},"geometry":{"type":"LineString","coordinates":[[-71.173923,42.3515014],[-71.1740326,42.3513022],[-71.1742575,42.3509189],[-71.1742626,42.3509101]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1318856993,"name":"Ricker Terrace","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1742626,42.3509101],[-71.1742958,42.3508589],[-71.1743121,42.3508337]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1318856994,"name":"Cufflin Street"},"geometry":{"type":"LineString","coordinates":[[-71.1743121,42.3508337],[-71.1743198,42.3508206],[-71.1743659,42.3507422],[-71.1746222,42.3503143]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1318856994,"name":"Ricker Terrace"},"geometry":{"type":"LineString","coordinates":[[-71.1743121,42.3508337],[-71.1743198,42.3508206],[-71.1743659,42.3507422],[-71.1746222,42.3503143]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1318856995,"name":"Arlington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1746035,42.3503133],[-71.1746222,42.3503143],[-71.1750407,42.3503651],[-71.1757167,42.3504385],[-71.1757322,42.3504377],[-71.1757388,42.3504373]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1318856996,"name":"Arlington Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1757388,42.3504373],[-71.1758052,42.3504438],[-71.175871,42.3504503]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1318856997,"name":"Nonantum Street"},"geometry":{"type":"LineString","coordinates":[[-71.175871,42.3504503],[-71.1758864,42.3504541],[-71.1759132,42.3504494],[-71.1759596,42.3504536],[-71.1762349,42.3504737],[-71.1764329,42.3504852],[-71.1765378,42.3504914],[-71.1767258,42.3504922],[-71.1769302,42.3504904],[-71.1772657,42.350485],[-71.1773733,42.3504854]]}},
@@ -3151,7 +3151,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1318856999,"name":"Pembroke Street"},"geometry":{"type":"LineString","coordinates":[[-71.1777335,42.3516512],[-71.177964,42.3514008],[-71.1782219,42.351107],[-71.178357,42.3509473],[-71.1783913,42.3508896],[-71.1784091,42.3508525],[-71.1784181,42.3508107],[-71.1784262,42.3507371],[-71.178423,42.3506728],[-71.1784013,42.3504803],[-71.1783998,42.3504687],[-71.178391,42.3504302],[-71.1783745,42.3503957],[-71.1783536,42.3503795],[-71.1783483,42.3503754],[-71.1783064,42.3503567],[-71.1782754,42.3503486],[-71.1782273,42.3503535],[-71.1780815,42.3504008],[-71.1779589,42.3504327],[-71.1778405,42.3504578],[-71.1777321,42.3504728],[-71.1776565,42.3504793],[-71.1775942,42.3504846],[-71.1775501,42.3504868],[-71.1775237,42.3504928],[-71.1775031,42.3504853]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1318857000,"name":"Pembroke Street"},"geometry":{"type":"LineString","coordinates":[[-71.1783536,42.3503795],[-71.1783668,42.3503694]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1318857001,"name":"Pembroke Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1783668,42.3503694],[-71.1783942,42.3503564],[-71.1784587,42.3503258],[-71.1784973,42.3503075]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1318857002,"name":"Nonantum Street"},"geometry":{"type":"LineString","coordinates":[[-71.1784973,42.3503075],[-71.1785137,42.3502973],[-71.1785252,42.350276],[-71.1785366,42.3502498],[-71.1785532,42.3502266],[-71.1785855,42.3501969],[-71.1786574,42.3501617],[-71.1787164,42.3501349],[-71.1789026,42.3500643],[-71.1790362,42.350015],[-71.1790627,42.3500071]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1318857002,"name":"Pembroke Street"},"geometry":{"type":"LineString","coordinates":[[-71.1784973,42.3503075],[-71.1785137,42.3502973],[-71.1785252,42.350276],[-71.1785366,42.3502498],[-71.1785532,42.3502266],[-71.1785855,42.3501969],[-71.1786574,42.3501617],[-71.1787164,42.3501349],[-71.1789026,42.3500643],[-71.1790362,42.350015],[-71.1790627,42.3500071]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1318857003,"name":"Blackstone Terrace","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1790627,42.3500071],[-71.1790917,42.3499984],[-71.1792007,42.3499654]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1318857004,"name":"Nonantum Street"},"geometry":{"type":"LineString","coordinates":[[-71.1792007,42.3499654],[-71.1792216,42.3499668],[-71.1792413,42.3499523],[-71.1792723,42.3499384],[-71.1793208,42.3499258],[-71.1796018,42.3498383],[-71.1799028,42.3497464],[-71.180197,42.3496496]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1318857005,"name":"Blackstone Terrace"},"geometry":{"type":"LineString","coordinates":[[-71.1790627,42.3500071],[-71.1790898,42.350033],[-71.1791036,42.3500588],[-71.179223,42.350376],[-71.1792426,42.3504379],[-71.1792461,42.3504863],[-71.1792646,42.350506],[-71.1792843,42.3505189],[-71.1793123,42.3505238],[-71.1793541,42.3505236],[-71.1793841,42.3505086],[-71.1794037,42.3504907],[-71.1794023,42.3504712],[-71.1793967,42.3504478],[-71.1793859,42.3504249],[-71.1793492,42.3503562],[-71.1792973,42.3502258],[-71.1792403,42.350092],[-71.1792186,42.3500258],[-71.1792076,42.3499986],[-71.179212,42.3499841],[-71.1792216,42.3499668]]}},
@@ -3185,7 +3185,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1319321249,"name":"Faneuil Street"},"geometry":{"type":"LineString","coordinates":[[-71.1596182,42.3529598],[-71.1596067,42.3529469],[-71.1596055,42.3529198],[-71.1595958,42.3528867],[-71.1594896,42.3527274],[-71.1587986,42.3527278],[-71.1581371,42.3527274]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1319321250,"name":"South Hobart Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1581371,42.3527274],[-71.158062,42.3527286],[-71.1580234,42.3527283]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1319321251,"name":"Arlington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1580234,42.3527283],[-71.1580128,42.3527283],[-71.158,42.3527283],[-71.1572331,42.3527288],[-71.1564173,42.3527336],[-71.1562534,42.3527317],[-71.1561075,42.3527256],[-71.1560055,42.3527181],[-71.1559842,42.3527155],[-71.1559811,42.3526954],[-71.1555262,42.3526175],[-71.1549941,42.3525221],[-71.1545162,42.3524419]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1319321252,"name":"Leicester Street"},"geometry":{"type":"LineString","coordinates":[[-71.1543474,42.3524229],[-71.1535866,42.352207]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1319321252,"name":"Parsons Street"},"geometry":{"type":"LineString","coordinates":[[-71.1543474,42.3524229],[-71.1535866,42.352207]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1319321253,"name":"Leicester Street"},"geometry":{"type":"LineString","coordinates":[[-71.1535866,42.352207],[-71.153331,42.3526294],[-71.1530849,42.3530061],[-71.1526208,42.3537341],[-71.1525094,42.3536972],[-71.1529667,42.3529941],[-71.1533861,42.3523413],[-71.1534848,42.3521778],[-71.1534916,42.3521664]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1319321254,"name":"Leicester Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1535866,42.352207],[-71.1535394,42.3521935],[-71.1534848,42.3521778]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1319321255,"name":"Arlington Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1534916,42.3521664],[-71.1535109,42.3521298],[-71.1535397,42.3520751]]}},
@@ -3201,7 +3201,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1319321265,"name":"Market Street","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1500991,42.3547509],[-71.1500047,42.3547194],[-71.1499075,42.3546906]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1319321266,"name":"Cypress Road"},"geometry":{"type":"LineString","coordinates":[[-71.1497362,42.3549797],[-71.1497953,42.3548711],[-71.149809,42.3548489],[-71.1499075,42.3546906],[-71.1499248,42.3546627],[-71.1499352,42.3546482]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1319321267,"name":"Cypress Road","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1499352,42.3546482],[-71.1499506,42.3546229],[-71.1499639,42.354601]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1319321268,"name":"Market Street"},"geometry":{"type":"LineString","coordinates":[[-71.1499639,42.354601],[-71.1500899,42.3544046],[-71.1501999,42.3542163]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1319321268,"name":"Cypress Road"},"geometry":{"type":"LineString","coordinates":[[-71.1499639,42.354601],[-71.1500899,42.3544046],[-71.1501999,42.3542163]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1319321269,"name":"Gardena Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1502062,42.3542094],[-71.1502287,42.3541742],[-71.1502503,42.3541403]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1319321270,"name":"Morrow Road"},"geometry":{"type":"LineString","coordinates":[[-71.1502503,42.3541403],[-71.1502554,42.3541325],[-71.1503893,42.3539132],[-71.1503568,42.353905],[-71.1496187,42.3537178],[-71.1489609,42.3535489],[-71.1488296,42.3537597]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1319321271,"name":"Morrow Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1503544,42.3538955],[-71.1503657,42.353861],[-71.1503766,42.3538275]]}},
@@ -3270,11 +3270,11 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1320229090,"name":"Franklin Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1803736,42.3493017],[-71.1803901,42.3492375],[-71.1804051,42.349179]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1320229091,"name":"Franklin Street"},"geometry":{"type":"LineString","coordinates":[[-71.1804051,42.349179],[-71.1803956,42.3491546],[-71.1803557,42.3491584],[-71.1803045,42.3491591],[-71.1802316,42.3491448],[-71.1799077,42.3490889],[-71.1797202,42.3490667],[-71.1795625,42.3490535],[-71.1794106,42.3490576],[-71.179264,42.3490654],[-71.1791112,42.3490768]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1320229092,"name":"Shornecliffe Road"},"geometry":{"type":"LineString","coordinates":[[-71.1791112,42.3490768],[-71.1793192,42.3488582],[-71.1794523,42.3487024],[-71.1795137,42.3486215],[-71.1795617,42.3485461],[-71.1796129,42.3484569],[-71.1796614,42.3483701],[-71.179692,42.3483016],[-71.1797322,42.3482073],[-71.1797628,42.3481127],[-71.179782,42.3480392],[-71.1797915,42.3479482],[-71.1798032,42.3478706],[-71.1798243,42.3477171]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1320229093,"name":"Brayton Road"},"geometry":{"type":"LineString","coordinates":[[-71.1754502,42.3499872],[-71.175378,42.3498252],[-71.1753495,42.349782],[-71.1752985,42.349758],[-71.1752203,42.3497461],[-71.1745533,42.3496738],[-71.1738741,42.3496006],[-71.1730708,42.3495128],[-71.1722819,42.3494224],[-71.1719718,42.3493876],[-71.1717709,42.3493557],[-71.1717174,42.3493525],[-71.1716763,42.3493665],[-71.1716537,42.3493881],[-71.1716489,42.3494504],[-71.1716332,42.3497909],[-71.1716382,42.3498221]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1320229093,"name":"Rogers Street"},"geometry":{"type":"LineString","coordinates":[[-71.1754502,42.3499872],[-71.175378,42.3498252],[-71.1753495,42.349782],[-71.1752985,42.349758],[-71.1752203,42.3497461],[-71.1745533,42.3496738],[-71.1738741,42.3496006],[-71.1730708,42.3495128],[-71.1722819,42.3494224],[-71.1719718,42.3493876],[-71.1717709,42.3493557],[-71.1717174,42.3493525],[-71.1716763,42.3493665],[-71.1716537,42.3493881],[-71.1716489,42.3494504],[-71.1716332,42.3497909],[-71.1716382,42.3498221]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1320229094,"name":"Letitia Way","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1715417,42.3493067],[-71.1716249,42.3493284],[-71.1717174,42.3493525]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1320229095,"name":"Brayton Road"},"geometry":{"type":"LineString","coordinates":[[-71.1749915,42.3496376],[-71.1741497,42.3495417],[-71.1732607,42.3494406],[-71.1728951,42.3493974]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1320229096,"name":"Ryder Hill Road","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1728951,42.3493974],[-71.1728692,42.3493946],[-71.1728067,42.3493877]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1320229097,"name":"Brayton Terrace"},"geometry":{"type":"LineString","coordinates":[[-71.1728067,42.3493877],[-71.1721896,42.3493202]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1320229097,"name":"Brayton Road"},"geometry":{"type":"LineString","coordinates":[[-71.1728067,42.3493877],[-71.1721896,42.3493202]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1320229098,"name":"Brayton Terrace","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1721896,42.3493202],[-71.1721348,42.3493145],[-71.1720783,42.3493086]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1320229099,"name":"Glenley Terrace"},"geometry":{"type":"LineString","coordinates":[[-71.1720783,42.3493086],[-71.1719624,42.3492955],[-71.1717952,42.3492746],[-71.1716454,42.3492381],[-71.1713381,42.3491473],[-71.1710623,42.3490637],[-71.1708196,42.3489916],[-71.1705688,42.3489019],[-71.1704676,42.3488559],[-71.1703177,42.3487614],[-71.1701575,42.348642],[-71.1698264,42.3483715],[-71.1698201,42.3483662],[-71.1697861,42.3483378],[-71.1698252,42.3483011],[-71.1699066,42.348251],[-71.1700059,42.3482276],[-71.1700927,42.3482141],[-71.1701892,42.3482098],[-71.1702987,42.3482179],[-71.1704007,42.3482316],[-71.1705282,42.34827],[-71.1706716,42.3483185],[-71.1708686,42.3483858],[-71.1710277,42.3484453],[-71.1710696,42.3484751],[-71.1711096,42.348499],[-71.1711681,42.3485225],[-71.1712828,42.3485563],[-71.1715152,42.3486245]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1320229100,"name":"Brayton Road"},"geometry":{"type":"LineString","coordinates":[[-71.1694484,42.3483528],[-71.1694418,42.3483391],[-71.1694709,42.3483221],[-71.1694908,42.3483072],[-71.1694994,42.3482862],[-71.1694952,42.3482719],[-71.1694931,42.3482648],[-71.1694729,42.348231],[-71.1691281,42.3478916],[-71.1688068,42.3475752],[-71.1686975,42.3474597],[-71.1686675,42.3474193],[-71.168634,42.3473711],[-71.1684384,42.3472173],[-71.1683198,42.3471323],[-71.1682002,42.347064],[-71.1680581,42.3469867],[-71.167932,42.3469269],[-71.1678155,42.346879],[-71.167724,42.3468402],[-71.16767,42.346791],[-71.1675875,42.3467114],[-71.1674921,42.3466762],[-71.1673102,42.3466552],[-71.1667795,42.3466143],[-71.1660444,42.3465599],[-71.1655355,42.3465173],[-71.1651852,42.3464945]]}},
@@ -3522,7 +3522,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1322033388},"geometry":{"type":"LineString","coordinates":[[-71.1687717,42.3430663],[-71.1687276,42.3430897],[-71.1684955,42.3431624],[-71.168168,42.3432825]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1322033389},"geometry":{"type":"LineString","coordinates":[[-71.1686185,42.342954],[-71.1684036,42.3430485],[-71.1682878,42.3430994]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1322033390},"geometry":{"type":"LineString","coordinates":[[-71.1685845,42.3429118],[-71.1686562,42.3428802]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1323270068,"name":"Undine Road"},"geometry":{"type":"LineString","coordinates":[[-71.1669379,42.341178],[-71.1668396,42.3419957]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1323270068,"name":"Caltha Road"},"geometry":{"type":"LineString","coordinates":[[-71.1669379,42.341178],[-71.1668396,42.3419957]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1323270069,"name":"Undine Road","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1668396,42.3419957],[-71.1668333,42.3420391],[-71.1668282,42.3420742]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1323270070,"name":"Caltha Road","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1668396,42.3419957],[-71.1669103,42.3420073],[-71.1669628,42.3420159]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1323270071,"name":"Undine Road","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1669628,42.3420159],[-71.1669572,42.3420581],[-71.1669526,42.3420925]]}},
@@ -3540,25 +3540,25 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1323270083,"name":"Francis Street"},"geometry":{"type":"LineString","coordinates":[[-71.1881166,42.3376149],[-71.1881005,42.3376374],[-71.1881016,42.3379119],[-71.1880948,42.3387179]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1323270084,"name":"Garner Street"},"geometry":{"type":"LineString","coordinates":[[-71.1890943,42.3375864],[-71.1890508,42.3375926],[-71.1886208,42.3375523],[-71.1880928,42.3375056]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1323270085,"name":"Garner Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1880928,42.3375056],[-71.1880986,42.3375545],[-71.1881045,42.3376042]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1323270086,"name":"Nottingham Street"},"geometry":{"type":"LineString","coordinates":[[-71.1891538,42.3371835],[-71.1884343,42.3371164],[-71.1880956,42.3370932]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1323270086,"name":"Irving Street"},"geometry":{"type":"LineString","coordinates":[[-71.1891538,42.3371835],[-71.1884343,42.3371164],[-71.1880956,42.3370932]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1324264099},"geometry":{"type":"LineString","coordinates":[[-71.1688066,42.3505959],[-71.1688329,42.3506198],[-71.1692141,42.3504541],[-71.1693554,42.350393],[-71.1693673,42.3504077],[-71.1692408,42.3504836],[-71.16925,42.3504949],[-71.1693435,42.3504458],[-71.1694591,42.3505682],[-71.169481,42.3505914],[-71.1694678,42.3505983]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1324264100},"geometry":{"type":"LineString","coordinates":[[-71.1695157,42.3505405],[-71.1694591,42.3505682]]}},
{"type":"Feature","properties":{"Type":"Stairs","osm":1324264101},"geometry":{"type":"LineString","coordinates":[[-71.1691763,42.3504104],[-71.1692141,42.3504541],[-71.1692408,42.3504836]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1324264102},"geometry":{"type":"LineString","coordinates":[[-71.1685352,42.3508329],[-71.1685279,42.3509058],[-71.1685027,42.350963],[-71.1685077,42.3509763],[-71.1685241,42.3509821],[-71.1686444,42.3509821]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1324264103,"name":"Bigelow Street"},"geometry":{"type":"LineString","coordinates":[[-71.1674264,42.3506971],[-71.1674879,42.351138]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1324264103,"name":"Oak Square"},"geometry":{"type":"LineString","coordinates":[[-71.1674264,42.3506971],[-71.1674879,42.351138]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1324264104,"name":"Oak Square"},"geometry":{"type":"LineString","coordinates":[[-71.1678482,42.3509928],[-71.1678609,42.3509819],[-71.1678282,42.3509604],[-71.1678033,42.3509338],[-71.1677874,42.3509044],[-71.1677764,42.3508712],[-71.1677784,42.3508403],[-71.1677894,42.3508034],[-71.1677973,42.3507799],[-71.1678138,42.3507578]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1324264105,"name":"Oak Square"},"geometry":{"type":"LineString","coordinates":[[-71.1678609,42.3509819],[-71.167894,42.3509941],[-71.167917,42.3509979],[-71.1679738,42.3510016],[-71.1682612,42.3509749],[-71.1682828,42.3509729],[-71.1683177,42.3509574],[-71.1683536,42.3509287],[-71.1683725,42.3509051],[-71.1683825,42.3508209]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1324264106,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1681522,42.3508979],[-71.168165,42.3508911],[-71.168174,42.3508815],[-71.1681783,42.3508703],[-71.1681774,42.3508586],[-71.1681713,42.3508479],[-71.1681611,42.3508394],[-71.1681478,42.3508338],[-71.1681328,42.3508316],[-71.1681177,42.3508331],[-71.1681039,42.3508381],[-71.1680985,42.3508421],[-71.1680931,42.3508461],[-71.1680862,42.3508562],[-71.1680841,42.3508674],[-71.1680869,42.3508785],[-71.1680901,42.3508832],[-71.1680947,42.3508886],[-71.1681066,42.3508963],[-71.1681212,42.3509007],[-71.168137,42.3509012],[-71.1681522,42.3508979]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1324264107,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1682877,42.3507756],[-71.1681713,42.3508479]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1324264108,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1680985,42.3508421],[-71.1680084,42.350751]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1324264109,"name":"Oak Square"},"geometry":{"type":"LineString","coordinates":[[-71.1680901,42.3508832],[-71.167894,42.3509941]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1324264109,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1680901,42.3508832],[-71.167894,42.3509941]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1324264110,"name":"Oak Square"},"geometry":{"type":"LineString","coordinates":[[-71.1682612,42.3509749],[-71.168165,42.3508911]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1324264111},"geometry":{"type":"LineString","coordinates":[[-71.1686444,42.3509821],[-71.1686753,42.3509761],[-71.1686923,42.350963],[-71.1687002,42.3509448],[-71.1687016,42.3509258],[-71.1686972,42.3509092],[-71.1686896,42.3508974],[-71.1686774,42.3508872],[-71.1685831,42.3508371]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1324264112,"name":"Tip Top Street"},"geometry":{"type":"LineString","coordinates":[[-71.1697609,42.3512582],[-71.1704869,42.3502521]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1324264113,"name":"Tip Top Street"},"geometry":{"type":"LineString","coordinates":[[-71.169876,42.351302],[-71.1706096,42.3502873]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1324264119,"name":"Tremont Street"},"geometry":{"type":"LineString","coordinates":[[-71.1811281,42.3548594],[-71.1820499,42.3550234]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1324264119,"name":"Hibbard Road"},"geometry":{"type":"LineString","coordinates":[[-71.1811281,42.3548594],[-71.1820499,42.3550234]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1324264120,"name":"Hibbard Road","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1809764,42.3548369],[-71.181057,42.3548489],[-71.1811281,42.3548594]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1324264121,"surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1811281,42.3548594],[-71.1810978,42.354909],[-71.1806407,42.3559692],[-71.1806425,42.3560042],[-71.1806973,42.3560334],[-71.1818099,42.3564855],[-71.1818786,42.3565123],[-71.1819441,42.3565361],[-71.1820544,42.3565711],[-71.1823792,42.3564666],[-71.1824055,42.3564398],[-71.182403,42.3564128],[-71.1823962,42.3564037],[-71.1823529,42.3563725],[-71.1822862,42.3562635],[-71.1822464,42.3561348],[-71.1822383,42.3561055],[-71.1822344,42.356086],[-71.1822145,42.3559037],[-71.1821964,42.3556826],[-71.1821922,42.355631],[-71.1821863,42.3555596],[-71.1821545,42.3552457],[-71.1821427,42.3551297],[-71.1821161,42.3550675]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1324264121,"name":"Park Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1811281,42.3548594],[-71.1810978,42.354909],[-71.1806407,42.3559692],[-71.1806425,42.3560042],[-71.1806973,42.3560334],[-71.1818099,42.3564855],[-71.1818786,42.3565123],[-71.1819441,42.3565361],[-71.1820544,42.3565711],[-71.1823792,42.3564666],[-71.1824055,42.3564398],[-71.182403,42.3564128],[-71.1823962,42.3564037],[-71.1823529,42.3563725],[-71.1822862,42.3562635],[-71.1822464,42.3561348],[-71.1822383,42.3561055],[-71.1822344,42.356086],[-71.1822145,42.3559037],[-71.1821964,42.3556826],[-71.1821922,42.355631],[-71.1821863,42.3555596],[-71.1821545,42.3552457],[-71.1821427,42.3551297],[-71.1821161,42.3550675]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1324264122,"name":"Tremont Street"},"geometry":{"type":"LineString","coordinates":[[-71.1792153,42.354006],[-71.1792156,42.3540362],[-71.1792439,42.354072],[-71.17982,42.354432],[-71.1799089,42.3544694],[-71.1801252,42.3545112],[-71.1811825,42.3546935],[-71.1820522,42.3548543]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1324264123,"name":"Tremont Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1811825,42.3546935],[-71.1811551,42.354777],[-71.1811281,42.3548594]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1324264145,"name":"Vernon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1823357,42.3547926],[-71.1826611,42.3547178],[-71.1827193,42.3547264]]}},
@@ -3601,7 +3601,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1346973992,"name":"Boylston Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.166592,42.3229061],[-71.1665669,42.3228551],[-71.1665488,42.3228181]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1346973993},"geometry":{"type":"LineString","coordinates":[[-71.1665488,42.3228181],[-71.1665272,42.322776],[-71.1664912,42.3227863],[-71.1664836,42.3227724]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1346973994,"name":"Boylston Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1664836,42.3227724],[-71.1664437,42.3227369],[-71.1664003,42.3226982]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1346973995,"surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1683023,42.3226205],[-71.1683902,42.3226401],[-71.1691237,42.3224501],[-71.169273,42.3224997],[-71.1697348,42.322376],[-71.1697062,42.3223194],[-71.1704986,42.3220964],[-71.1706876,42.3220251],[-71.1706688,42.321997]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1346973995,"name":"Boylston Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1683023,42.3226205],[-71.1683902,42.3226401],[-71.1691237,42.3224501],[-71.169273,42.3224997],[-71.1697348,42.322376],[-71.1697062,42.3223194],[-71.1704986,42.3220964],[-71.1706876,42.3220251],[-71.1706688,42.321997]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1346973996,"name":"Boylston Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1706688,42.321997],[-71.1706535,42.3219626],[-71.1706398,42.3219321]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1346973997,"name":"Boylston Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1672019,42.3229268],[-71.167235,42.3229017],[-71.1678364,42.3227451],[-71.168118,42.3226719],[-71.1681722,42.3226527]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1346973998,"name":"Boylston Street","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1681722,42.3226527],[-71.1682512,42.3226331],[-71.1683023,42.3226205]]}},
@@ -3618,7 +3618,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1356044774,"width":"2","incline":"0%","wheelchair":"yes"},"geometry":{"type":"LineString","coordinates":[[-71.2069582,42.3308923],[-71.2069598,42.3309017],[-71.2069702,42.3309027]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1356044775,"name":"Walnut Street","surface":"asphalt","width":"2","incline":"0%","wheelchair":"yes","tactile":"no","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2069702,42.3309027],[-71.2070576,42.3309075],[-71.207125,42.3309112]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1356044778,"width":"2","incline":"0%","wheelchair":"yes"},"geometry":{"type":"LineString","coordinates":[[-71.2069598,42.3309017],[-71.2069352,42.3309235]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1356044779,"name":"Albion Street"},"geometry":{"type":"LineString","coordinates":[[-71.2059343,42.3307018],[-71.2055768,42.3306781],[-71.2042314,42.330586],[-71.2042048,42.3305714],[-71.2041957,42.3305634],[-71.204183,42.3305634]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1356044779,"name":"Beacon Street"},"geometry":{"type":"LineString","coordinates":[[-71.2059343,42.3307018],[-71.2055768,42.3306781],[-71.2042314,42.330586],[-71.2042048,42.3305714],[-71.2041957,42.3305634],[-71.204183,42.3305634]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1356044780,"name":"Beacon Street"},"geometry":{"type":"LineString","coordinates":[[-71.2058685,42.3308301],[-71.2058535,42.3308284],[-71.2058401,42.3308207],[-71.2057992,42.3308152],[-71.2055218,42.3307958],[-71.2045281,42.3307261],[-71.2044987,42.3307295],[-71.2044773,42.3307416],[-71.2044653,42.3307409]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1356044781,"name":"Hancock Avenue","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2044653,42.3307409],[-71.2044076,42.3307371],[-71.204363,42.3307341]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1356044782,"name":"Albion Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.204183,42.3305634],[-71.2041219,42.3305633],[-71.2040734,42.3305632]]}},
@@ -3664,7 +3664,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1364516397,"name":"Shepard Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.149831,42.3481607],[-71.1497998,42.3481169],[-71.1497563,42.3480655]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1364516398,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1497563,42.3480655],[-71.1496805,42.3479848],[-71.1495585,42.347861],[-71.1494668,42.3477583],[-71.1493582,42.3476565],[-71.1492537,42.347562],[-71.1491288,42.347458]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1364516399,"name":"Shannon Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1491288,42.347458],[-71.1490931,42.3474266],[-71.1490395,42.3473795]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1364516400,"name":"Snow Street"},"geometry":{"type":"LineString","coordinates":[[-71.1490395,42.3473795],[-71.1489531,42.3473199],[-71.1487844,42.3472056],[-71.1485912,42.3470835],[-71.1484558,42.3470076],[-71.1484447,42.3469942],[-71.1484668,42.3469424],[-71.1485918,42.3467491],[-71.1487167,42.346558],[-71.1487577,42.3464921],[-71.1487873,42.3464445],[-71.1489216,42.346231],[-71.1490652,42.3460023],[-71.1491163,42.3459218],[-71.1491843,42.3458146],[-71.1493191,42.3456024],[-71.1493391,42.3455705],[-71.1493915,42.3454872],[-71.149437,42.3454242],[-71.1494785,42.345422],[-71.1496851,42.3454803],[-71.1501165,42.345586],[-71.1501533,42.3456024],[-71.150155,42.3456222],[-71.1501078,42.3457025],[-71.1499846,42.345907],[-71.1499443,42.3459639],[-71.1498533,42.346099],[-71.1497686,42.3462249],[-71.1496495,42.3464031],[-71.149545,42.3465861],[-71.1494131,42.346797],[-71.1492823,42.3470015],[-71.1491662,42.3471896],[-71.1490722,42.347332],[-71.1490395,42.3473795]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1364516400,"name":"Shannon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1490395,42.3473795],[-71.1489531,42.3473199],[-71.1487844,42.3472056],[-71.1485912,42.3470835],[-71.1484558,42.3470076],[-71.1484447,42.3469942],[-71.1484668,42.3469424],[-71.1485918,42.3467491],[-71.1487167,42.346558],[-71.1487577,42.3464921],[-71.1487873,42.3464445],[-71.1489216,42.346231],[-71.1490652,42.3460023],[-71.1491163,42.3459218],[-71.1491843,42.3458146],[-71.1493191,42.3456024],[-71.1493391,42.3455705],[-71.1493915,42.3454872],[-71.149437,42.3454242],[-71.1494785,42.345422],[-71.1496851,42.3454803],[-71.1501165,42.345586],[-71.1501533,42.3456024],[-71.150155,42.3456222],[-71.1501078,42.3457025],[-71.1499846,42.345907],[-71.1499443,42.3459639],[-71.1498533,42.346099],[-71.1497686,42.3462249],[-71.1496495,42.3464031],[-71.149545,42.3465861],[-71.1494131,42.346797],[-71.1492823,42.3470015],[-71.1491662,42.3471896],[-71.1490722,42.347332],[-71.1490395,42.3473795]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1364516401,"name":"Shepard Street","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1512603,42.3458745],[-71.1512164,42.3458639],[-71.1511733,42.3458535]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1364516402,"name":"Shannon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1511733,42.3458535],[-71.1511598,42.3458502],[-71.1510856,42.345827],[-71.1509504,42.3457916],[-71.1507654,42.3457466],[-71.1505103,42.3456865],[-71.1503396,42.3456429],[-71.1502999,42.3456346],[-71.1502623,42.3456594],[-71.1501647,42.3458187],[-71.1500347,42.346026],[-71.1498527,42.3463107],[-71.1496362,42.346642],[-71.1494543,42.3469274],[-71.1493354,42.3471122],[-71.1492144,42.3473],[-71.1491321,42.3474262],[-71.1491288,42.347458]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1364516403,"name":"Shepard Street"},"geometry":{"type":"LineString","coordinates":[[-71.1511598,42.3458502],[-71.1511577,42.3458703],[-71.1510974,42.345967],[-71.1509995,42.3461271],[-71.1509293,42.3462303],[-71.150866,42.3463352],[-71.150746,42.3465191],[-71.1506719,42.3466349],[-71.1505871,42.3467718],[-71.1504979,42.346916],[-71.1503349,42.3471916],[-71.1502243,42.3473532],[-71.1501137,42.3475355],[-71.1499004,42.3478745],[-71.1497985,42.3480286],[-71.1497563,42.3480655]]}},
@@ -3672,7 +3672,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1364516405,"name":"Washington Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1495441,42.3480864],[-71.1495719,42.3481188],[-71.1496232,42.3481785]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1364516407,"name":"Washington Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1497563,42.3480655],[-71.1496858,42.3481195],[-71.1496232,42.3481785]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1364516408,"name":"Henshaw Street"},"geometry":{"type":"LineString","coordinates":[[-71.150848,42.3491317],[-71.1508622,42.3491735],[-71.1508471,42.3493237],[-71.150829,42.3494941],[-71.1508173,42.3496054],[-71.1506899,42.349594],[-71.1505721,42.3495847],[-71.1505049,42.3495793],[-71.1502234,42.3495523],[-71.1501913,42.3495493],[-71.1501873,42.3496019],[-71.1501136,42.349597],[-71.1500699,42.3495508],[-71.1499952,42.3494494],[-71.1498915,42.3493791],[-71.1497745,42.3493128]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1364516409,"name":"Cambridge Street"},"geometry":{"type":"LineString","coordinates":[[-71.1505721,42.3495847],[-71.1505748,42.3495647],[-71.1505144,42.3495439],[-71.15044,42.3495181],[-71.1503535,42.3494894],[-71.150336,42.3494825],[-71.1503092,42.3494438],[-71.1502931,42.3494076],[-71.1502784,42.3493794],[-71.1503394,42.3493714],[-71.150332,42.3493407],[-71.1503434,42.349308],[-71.1503702,42.3492926],[-71.1503937,42.3492738],[-71.1504252,42.3492505],[-71.1505077,42.3492257],[-71.1505599,42.3492149],[-71.1506156,42.3492006],[-71.1506648,42.34918],[-71.1506988,42.3491535],[-71.1507169,42.3491351]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1364516409,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1505721,42.3495847],[-71.1505748,42.3495647],[-71.1505144,42.3495439],[-71.15044,42.3495181],[-71.1503535,42.3494894],[-71.150336,42.3494825],[-71.1503092,42.3494438],[-71.1502931,42.3494076],[-71.1502784,42.3493794],[-71.1503394,42.3493714],[-71.150332,42.3493407],[-71.1503434,42.349308],[-71.1503702,42.3492926],[-71.1503937,42.3492738],[-71.1504252,42.3492505],[-71.1505077,42.3492257],[-71.1505599,42.3492149],[-71.1506156,42.3492006],[-71.1506648,42.34918],[-71.1506988,42.3491535],[-71.1507169,42.3491351]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1364516410,"name":"Cambridge Street"},"geometry":{"type":"LineString","coordinates":[[-71.1504252,42.3492505],[-71.1503798,42.3492561],[-71.1503343,42.3492558],[-71.1502993,42.3492529],[-71.1502626,42.3492401],[-71.1502176,42.3492119]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1364516411,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1532641,42.3491878],[-71.1531924,42.3491857],[-71.1530372,42.349178],[-71.152881,42.3491676],[-71.152711,42.3491612],[-71.1526361,42.34916],[-71.1526017,42.3491517],[-71.1524967,42.3491468],[-71.1524702,42.3491455],[-71.1523147,42.3491366],[-71.152159,42.3491271],[-71.1521405,42.3491347]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1364516412,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1520487,42.3491315],[-71.1519636,42.349123],[-71.1517531,42.3491118],[-71.1514953,42.3491029],[-71.1512873,42.3490938],[-71.151277,42.3490933],[-71.1512271,42.3491012]]}},
@@ -3703,9 +3703,9 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1364523807,"name":"Sparhawk Street"},"geometry":{"type":"LineString","coordinates":[[-71.1491387,42.350702],[-71.149342,42.3507688],[-71.1496184,42.3508563],[-71.1500539,42.3509953],[-71.1502206,42.3510434]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1364523808,"name":"Menlo Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1502206,42.3510434],[-71.1502977,42.3510677],[-71.1503609,42.3510877]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1364523809,"name":"Sparhawk Street"},"geometry":{"type":"LineString","coordinates":[[-71.1503609,42.3510877],[-71.1505321,42.3511448],[-71.150898,42.3512601]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1364523810,"name":"Henshaw Street"},"geometry":{"type":"LineString","coordinates":[[-71.1503609,42.3510877],[-71.1503888,42.3510321],[-71.1504508,42.3509127],[-71.1504823,42.3507579],[-71.1505138,42.3505897],[-71.1505535,42.3503576],[-71.1506043,42.3500451],[-71.1506277,42.3499046],[-71.150647,42.3498904],[-71.1506846,42.3498731],[-71.1508177,42.3498821],[-71.151144,42.3499122],[-71.1514326,42.3499384],[-71.151393,42.3501668],[-71.151334,42.35048],[-71.1512609,42.3506685],[-71.1511602,42.3508293],[-71.1510434,42.3510343],[-71.1509661,42.3511756],[-71.1509133,42.3512411],[-71.150898,42.3512601]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1364523810,"name":"Sparhawk Street"},"geometry":{"type":"LineString","coordinates":[[-71.1503609,42.3510877],[-71.1503888,42.3510321],[-71.1504508,42.3509127],[-71.1504823,42.3507579],[-71.1505138,42.3505897],[-71.1505535,42.3503576],[-71.1506043,42.3500451],[-71.1506277,42.3499046],[-71.150647,42.3498904],[-71.1506846,42.3498731],[-71.1508177,42.3498821],[-71.151144,42.3499122],[-71.1514326,42.3499384],[-71.151393,42.3501668],[-71.151334,42.35048],[-71.1512609,42.3506685],[-71.1511602,42.3508293],[-71.1510434,42.3510343],[-71.1509661,42.3511756],[-71.1509133,42.3512411],[-71.150898,42.3512601]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1364523812,"name":"Menlo Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.150647,42.3498904],[-71.1505735,42.3498839],[-71.1504865,42.3498763]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1364523813,"name":"Henshaw Street"},"geometry":{"type":"LineString","coordinates":[[-71.1518402,42.3515589],[-71.1516253,42.3514968],[-71.1512979,42.3513904],[-71.1510329,42.3513073],[-71.1510437,42.3512657],[-71.1512032,42.3509856],[-71.1512933,42.3508336],[-71.151385,42.3506725],[-71.1514674,42.350471],[-71.1514851,42.3503344],[-71.151519,42.3501249],[-71.1515467,42.3499786],[-71.1515521,42.3499507],[-71.151784,42.3499701],[-71.1518491,42.3499759],[-71.1520882,42.3499974],[-71.1525789,42.3500384],[-71.1527913,42.3500641],[-71.1528163,42.3500765],[-71.1528149,42.3500899],[-71.1528068,42.3501071],[-71.152679,42.3502564],[-71.1525727,42.3504255],[-71.1524649,42.3505991],[-71.1524397,42.3506401],[-71.1524133,42.3506834],[-71.1522623,42.3509259],[-71.1520689,42.3512333],[-71.1519757,42.3513773],[-71.1518748,42.3515315],[-71.1518402,42.3515589]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1364523813,"name":"Sparhawk Street"},"geometry":{"type":"LineString","coordinates":[[-71.1518402,42.3515589],[-71.1516253,42.3514968],[-71.1512979,42.3513904],[-71.1510329,42.3513073],[-71.1510437,42.3512657],[-71.1512032,42.3509856],[-71.1512933,42.3508336],[-71.151385,42.3506725],[-71.1514674,42.350471],[-71.1514851,42.3503344],[-71.151519,42.3501249],[-71.1515467,42.3499786],[-71.1515521,42.3499507],[-71.151784,42.3499701],[-71.1518491,42.3499759],[-71.1520882,42.3499974],[-71.1525789,42.3500384],[-71.1527913,42.3500641],[-71.1528163,42.3500765],[-71.1528149,42.3500899],[-71.1528068,42.3501071],[-71.152679,42.3502564],[-71.1525727,42.3504255],[-71.1524649,42.3505991],[-71.1524397,42.3506401],[-71.1524133,42.3506834],[-71.1522623,42.3509259],[-71.1520689,42.3512333],[-71.1519757,42.3513773],[-71.1518748,42.3515315],[-71.1518402,42.3515589]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1364523814,"name":"Market Street","surface":"asphalt","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1520473,42.3515899],[-71.1519658,42.3515627],[-71.1518961,42.3515394]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1364523815,"name":"Market Street","surface":"asphalt","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1519538,42.35174],[-71.1518693,42.3517162],[-71.1517975,42.3516959]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1364523816,"name":"Sparhawk Street","surface":"asphalt","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1518442,42.3515743],[-71.1518168,42.3516063],[-71.1517888,42.3516391]]}},
@@ -3713,7 +3713,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1364523818,"name":"Bentley Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1510329,42.3513073],[-71.1509818,42.351272],[-71.1509133,42.3512411]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1364523819,"name":"Market Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.151446,42.3525594],[-71.1513787,42.3524974],[-71.1513273,42.3524501]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1364525683,"name":"Bentley Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1515521,42.3499507],[-71.151494,42.3499448],[-71.1514326,42.3499384]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1364525684,"name":"Henshaw Street"},"geometry":{"type":"LineString","coordinates":[[-71.1533044,42.3492152],[-71.1532786,42.3493753],[-71.1532444,42.34952],[-71.1531861,42.3496131],[-71.1531308,42.3496612],[-71.1530915,42.3497108],[-71.1530721,42.349735],[-71.153054,42.3497627],[-71.1529976,42.3498282],[-71.1529333,42.3499214],[-71.152891,42.3499704],[-71.1528642,42.3499784],[-71.1526657,42.3499546],[-71.1523834,42.3499313],[-71.1520421,42.3499025],[-71.1520495,42.3498391],[-71.1520723,42.3496493],[-71.1520857,42.3495304],[-71.1521019,42.3494374],[-71.1521126,42.3493288],[-71.1521138,42.3493158],[-71.1521343,42.349158],[-71.1521405,42.3491347]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1364525684,"name":"Market Street"},"geometry":{"type":"LineString","coordinates":[[-71.1533044,42.3492152],[-71.1532786,42.3493753],[-71.1532444,42.34952],[-71.1531861,42.3496131],[-71.1531308,42.3496612],[-71.1530915,42.3497108],[-71.1530721,42.349735],[-71.153054,42.3497627],[-71.1529976,42.3498282],[-71.1529333,42.3499214],[-71.152891,42.3499704],[-71.1528642,42.3499784],[-71.1526657,42.3499546],[-71.1523834,42.3499313],[-71.1520421,42.3499025],[-71.1520495,42.3498391],[-71.1520723,42.3496493],[-71.1520857,42.3495304],[-71.1521019,42.3494374],[-71.1521126,42.3493288],[-71.1521138,42.3493158],[-71.1521343,42.349158],[-71.1521405,42.3491347]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1364525685,"name":"Henshaw Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1528195,42.3500689],[-71.1528428,42.3500217],[-71.1528588,42.3499895]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1364525686,"name":"Waldo Terrace","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1520421,42.3499025],[-71.1519869,42.349897],[-71.1519582,42.3498941]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1364525687,"name":"Wirt Street"},"geometry":{"type":"LineString","coordinates":[[-71.1519582,42.3498941],[-71.1514713,42.3498486],[-71.1512564,42.3498303],[-71.1512295,42.3498184],[-71.1512249,42.3497387],[-71.1512349,42.3496613],[-71.151258,42.3494524],[-71.1512765,42.3492497],[-71.1512865,42.3491182],[-71.1512873,42.3490938]]}},
@@ -3758,34 +3758,34 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1365434449,"name":"Donnybrook Road"},"geometry":{"type":"LineString","coordinates":[[-71.1619404,42.3541027],[-71.1613015,42.3539995],[-71.1599869,42.3537631],[-71.159137,42.353613],[-71.1590555,42.3536164],[-71.1588838,42.3537412],[-71.1587148,42.3538552],[-71.158688,42.3539087],[-71.1587028,42.3539841],[-71.1587416,42.3540832],[-71.1588194,42.3541406],[-71.1594873,42.3542635],[-71.1604623,42.354431],[-71.1617779,42.3546689],[-71.1618095,42.3546641]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1365434450,"name":"Donnybrook Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1617843,42.3547589],[-71.161456,42.3547026],[-71.1609357,42.3546084],[-71.1597984,42.3544102],[-71.1587779,42.3542288],[-71.1586545,42.3542041],[-71.158633,42.3541624],[-71.1586129,42.3540742],[-71.1585847,42.353992],[-71.1585445,42.3539662],[-71.1584345,42.3540059],[-71.1581638,42.3541389]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1365434451,"name":"Donnybrook Road","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1586735,42.3539067],[-71.1586197,42.3539349],[-71.1585701,42.3539609]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1365434452,"name":"South Hobart Street"},"geometry":{"type":"LineString","coordinates":[[-71.1587743,42.3535927],[-71.1586826,42.353661],[-71.1584895,42.3537977],[-71.15823,42.3539225],[-71.1581819,42.3539319],[-71.1581475,42.3539147],[-71.1581328,42.3538522],[-71.1581368,42.3537323],[-71.1581381,42.3535064],[-71.1581462,42.3534707],[-71.1581744,42.3534499],[-71.1584345,42.3534915],[-71.1587269,42.353543],[-71.1587743,42.3535927]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1365434452,"name":"Harriet Street"},"geometry":{"type":"LineString","coordinates":[[-71.1587743,42.3535927],[-71.1586826,42.353661],[-71.1584895,42.3537977],[-71.15823,42.3539225],[-71.1581819,42.3539319],[-71.1581475,42.3539147],[-71.1581328,42.3538522],[-71.1581368,42.3537323],[-71.1581381,42.3535064],[-71.1581462,42.3534707],[-71.1581744,42.3534499],[-71.1584345,42.3534915],[-71.1587269,42.353543],[-71.1587743,42.3535927]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1365434453,"name":"Newcastle Road","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1591977,42.3535133],[-71.1591271,42.3535656],[-71.1590802,42.3536004]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1365434454,"name":"Harriet Street"},"geometry":{"type":"LineString","coordinates":[[-71.1589288,42.3534804],[-71.1588167,42.3534707],[-71.1584694,42.3534072],[-71.1582401,42.3533617],[-71.158169,42.3533399],[-71.1581355,42.3533091],[-71.1581341,42.3531595],[-71.1581341,42.3528493],[-71.1581371,42.3527274]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1365434455,"name":"Arlington Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1581371,42.3527274],[-71.1581378,42.3526525],[-71.1581388,42.352578]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1365434456,"name":"Arlington Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.158002,42.3525794],[-71.1580044,42.3526535],[-71.158,42.3527283]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1365434457,"name":"Harriet Street"},"geometry":{"type":"LineString","coordinates":[[-71.1580128,42.3527283],[-71.1580128,42.3529452],[-71.1580135,42.3531737],[-71.1580088,42.353305],[-71.1580007,42.3533208],[-71.1577452,42.3533204],[-71.1573402,42.3533233],[-71.1570412,42.3533213],[-71.1568427,42.3533085],[-71.1564839,42.3532559],[-71.1562398,42.3532178],[-71.155798,42.3531494],[-71.1550912,42.3530374],[-71.1547231,42.3529764],[-71.1542435,42.3529018]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1365434458,"name":"Duncklee Street"},"geometry":{"type":"LineString","coordinates":[[-71.1579957,42.3540381],[-71.1580096,42.3540111],[-71.1580117,42.3534238],[-71.1579649,42.3534148],[-71.1574913,42.3534132],[-71.1572616,42.3534072],[-71.1572523,42.3534189],[-71.1572413,42.3534328],[-71.1572474,42.3536491],[-71.1572189,42.3537783],[-71.1571437,42.3538639],[-71.156916,42.353957],[-71.1563895,42.3541613],[-71.1562229,42.3542274],[-71.1562635,42.354292],[-71.1566737,42.354662]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1365434459,"name":"Harriet Street"},"geometry":{"type":"LineString","coordinates":[[-71.1561497,42.3541478],[-71.1567188,42.35393],[-71.1570502,42.3537948],[-71.157101,42.3537497],[-71.1571295,42.3536581],[-71.1571234,42.3534929],[-71.1571295,42.3534163],[-71.1570258,42.3534087],[-71.156727,42.3533862],[-71.1562838,42.3533156],[-71.1556171,42.3532044],[-71.1554565,42.3531849],[-71.1554098,42.3531984],[-71.1554057,42.3532886],[-71.1554403,42.3534418],[-71.1555582,42.353613],[-71.1557553,42.3537888],[-71.1560216,42.3540487],[-71.1561497,42.3541478]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1365434459,"name":"Duncklee Street"},"geometry":{"type":"LineString","coordinates":[[-71.1561497,42.3541478],[-71.1567188,42.35393],[-71.1570502,42.3537948],[-71.157101,42.3537497],[-71.1571295,42.3536581],[-71.1571234,42.3534929],[-71.1571295,42.3534163],[-71.1570258,42.3534087],[-71.156727,42.3533862],[-71.1562838,42.3533156],[-71.1556171,42.3532044],[-71.1554565,42.3531849],[-71.1554098,42.3531984],[-71.1554057,42.3532886],[-71.1554403,42.3534418],[-71.1555582,42.353613],[-71.1557553,42.3537888],[-71.1560216,42.3540487],[-71.1561497,42.3541478]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1365434460,"name":"Madeline Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1554098,42.3531984],[-71.1553367,42.3531829],[-71.1552874,42.3531724]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1365434461,"name":"Duncklee Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1572523,42.3534189],[-71.1571837,42.3534174],[-71.1571295,42.3534163]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1365434462,"name":"South Hobart Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1581462,42.3534707],[-71.1580721,42.3534448],[-71.1580117,42.3534238]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1365434463,"name":"South Hobart Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1581355,42.3533091],[-71.1580701,42.353307],[-71.1580088,42.353305]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1365434464,"name":"Harriet Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1580117,42.3534238],[-71.1580062,42.3533722],[-71.1580007,42.3533208]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1365434465,"name":"Harriet Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.158169,42.3533399],[-71.1581717,42.3533948],[-71.1581744,42.3534499]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1365434466,"name":"Bennett Street"},"geometry":{"type":"LineString","coordinates":[[-71.1581388,42.352578],[-71.1581344,42.3519533]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1365434467,"name":"Bennett Street"},"geometry":{"type":"LineString","coordinates":[[-71.158002,42.3525794],[-71.1580085,42.3519578]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1365434466,"name":"South Hobart Street"},"geometry":{"type":"LineString","coordinates":[[-71.1581388,42.352578],[-71.1581344,42.3519533]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1365434467,"name":"South Hobart Street"},"geometry":{"type":"LineString","coordinates":[[-71.158002,42.3525794],[-71.1580085,42.3519578]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1366114282,"name":"Fidelis Way","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1455202,42.3455113],[-71.1454952,42.3454837],[-71.1454721,42.3454582]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366114283,"name":"Nevins Hill Way"},"geometry":{"type":"LineString","coordinates":[[-71.1455273,42.3455167],[-71.1455052,42.3455643],[-71.1454254,42.3456312],[-71.1452953,42.3457011],[-71.1451934,42.3457729],[-71.1450801,42.3458502],[-71.1449151,42.3459518],[-71.1447756,42.3460485],[-71.1447086,42.3460866],[-71.1446717,42.3461139],[-71.1447267,42.3461605],[-71.1450305,42.3464717],[-71.1451807,42.3466348],[-71.1451973,42.3466636],[-71.1452558,42.3466539],[-71.1454099,42.346622],[-71.1455408,42.346552],[-71.1456371,42.34647],[-71.1456987,42.3463704],[-71.1457511,42.346306],[-71.1458273,42.3462525],[-71.1459429,42.3461984],[-71.146033,42.3461483],[-71.1460615,42.3461176],[-71.1461077,42.3460912]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366116484,"name":"Falkland Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.160956,42.3553205],[-71.1609507,42.3552928],[-71.1608722,42.3552745],[-71.1605597,42.3552214],[-71.1601085,42.3551422],[-71.1596149,42.3550535],[-71.1591167,42.3549682],[-71.1588519,42.3549122],[-71.1585696,42.3548607],[-71.1585099,42.3548865],[-71.1585508,42.3550044],[-71.1586923,42.3553136],[-71.158762,42.3554752],[-71.1588793,42.3557155],[-71.1590966,42.3556758],[-71.1594406,42.3556778],[-71.1601547,42.3557249],[-71.160669,42.3557521],[-71.1609004,42.3557631],[-71.1609091,42.3557333],[-71.1609359,42.3554142],[-71.160956,42.3553205]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366114283,"name":"Fidelis Way"},"geometry":{"type":"LineString","coordinates":[[-71.1455273,42.3455167],[-71.1455052,42.3455643],[-71.1454254,42.3456312],[-71.1452953,42.3457011],[-71.1451934,42.3457729],[-71.1450801,42.3458502],[-71.1449151,42.3459518],[-71.1447756,42.3460485],[-71.1447086,42.3460866],[-71.1446717,42.3461139],[-71.1447267,42.3461605],[-71.1450305,42.3464717],[-71.1451807,42.3466348],[-71.1451973,42.3466636],[-71.1452558,42.3466539],[-71.1454099,42.346622],[-71.1455408,42.346552],[-71.1456371,42.34647],[-71.1456987,42.3463704],[-71.1457511,42.346306],[-71.1458273,42.3462525],[-71.1459429,42.3461984],[-71.146033,42.3461483],[-71.1460615,42.3461176],[-71.1461077,42.3460912]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366116484,"name":"Hobart Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.160956,42.3553205],[-71.1609507,42.3552928],[-71.1608722,42.3552745],[-71.1605597,42.3552214],[-71.1601085,42.3551422],[-71.1596149,42.3550535],[-71.1591167,42.3549682],[-71.1588519,42.3549122],[-71.1585696,42.3548607],[-71.1585099,42.3548865],[-71.1585508,42.3550044],[-71.1586923,42.3553136],[-71.158762,42.3554752],[-71.1588793,42.3557155],[-71.1590966,42.3556758],[-71.1594406,42.3556778],[-71.1601547,42.3557249],[-71.160669,42.3557521],[-71.1609004,42.3557631],[-71.1609091,42.3557333],[-71.1609359,42.3554142],[-71.160956,42.3553205]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1366116491,"name":"Hobart Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1585099,42.3548865],[-71.1584815,42.3548087],[-71.1584606,42.3547515]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366116502,"name":"Niles Street"},"geometry":{"type":"LineString","coordinates":[[-71.1556183,42.3549527],[-71.1555909,42.3549733],[-71.1555027,42.3549861],[-71.1547669,42.3551107]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366116503,"name":"Goodenough Street"},"geometry":{"type":"LineString","coordinates":[[-71.1548386,42.3541832],[-71.1546321,42.3542995],[-71.1543787,42.3544418],[-71.1543331,42.3544973],[-71.1543618,42.3545762],[-71.1544195,42.3546405],[-71.1544581,42.354772],[-71.1544434,42.3549923],[-71.1544095,42.3554283],[-71.154398,42.3556025],[-71.1544041,42.3556201],[-71.1545066,42.3556275],[-71.1549603,42.3556594],[-71.1551806,42.3556634],[-71.1553785,42.3556423],[-71.1555557,42.3555928],[-71.1556882,42.3555473],[-71.1558345,42.3554721],[-71.155977,42.3553697],[-71.1560119,42.3553283]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366116503,"name":"Barker Street"},"geometry":{"type":"LineString","coordinates":[[-71.1548386,42.3541832],[-71.1546321,42.3542995],[-71.1543787,42.3544418],[-71.1543331,42.3544973],[-71.1543618,42.3545762],[-71.1544195,42.3546405],[-71.1544581,42.354772],[-71.1544434,42.3549923],[-71.1544095,42.3554283],[-71.154398,42.3556025],[-71.1544041,42.3556201],[-71.1545066,42.3556275],[-71.1549603,42.3556594],[-71.1551806,42.3556634],[-71.1553785,42.3556423],[-71.1555557,42.3555928],[-71.1556882,42.3555473],[-71.1558345,42.3554721],[-71.155977,42.3553697],[-71.1560119,42.3553283]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366116504,"name":"Goodenough Street"},"geometry":{"type":"LineString","coordinates":[[-71.154277,42.3556076],[-71.1542886,42.3554254],[-71.1543156,42.3550577],[-71.154334,42.3547765],[-71.1543132,42.3546775],[-71.1541577,42.3545158],[-71.1539358,42.3542995],[-71.1538187,42.3541959],[-71.1537409,42.3541441],[-71.1534475,42.3540354],[-71.1533441,42.3539968],[-71.1533542,42.3539626],[-71.1533913,42.3539179],[-71.1536251,42.3539949],[-71.153775,42.3540498],[-71.1539534,42.3541651],[-71.1541323,42.3543446],[-71.1541816,42.3543825],[-71.1542263,42.3543971],[-71.1542837,42.3543855],[-71.1544158,42.3543108],[-71.1546206,42.3541906],[-71.1547607,42.3541087]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1366116505,"name":"Barker Street","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1543184,42.3545005],[-71.1542685,42.3544519],[-71.1542204,42.3544051]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366116506,"name":"Sanderson Place"},"geometry":{"type":"LineString","coordinates":[[-71.154277,42.3556076],[-71.1542602,42.3556159],[-71.1540522,42.3555994],[-71.1537102,42.3555749],[-71.1535674,42.3555649],[-71.1534345,42.3555556],[-71.1529176,42.3555129],[-71.1524231,42.355469],[-71.1519248,42.3554081],[-71.1516459,42.3553694],[-71.1513917,42.3552892],[-71.1513062,42.3552567],[-71.1513987,42.3550843],[-71.1515419,42.3548623],[-71.1516598,42.3546608],[-71.1517869,42.3544422],[-71.1518177,42.3543835],[-71.15181,42.3543488],[-71.1517876,42.3543306],[-71.1517399,42.3543295],[-71.1517152,42.3543426],[-71.1516451,42.3544621],[-71.151515,42.3546807],[-71.1513139,42.3550103],[-71.1512146,42.3551941],[-71.1511899,42.3552089],[-71.1510505,42.355156],[-71.1506869,42.3550165],[-71.1504712,42.3549356],[-71.1503671,42.354895],[-71.1502641,42.3548549],[-71.1501501,42.3548031],[-71.1501285,42.3547712],[-71.1500991,42.3547509]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366116836,"name":"Elmira Street"},"geometry":{"type":"LineString","coordinates":[[-71.1496133,42.3525043],[-71.1493592,42.3529054],[-71.1493694,42.3529249],[-71.149778,42.3530286],[-71.1503959,42.3531818],[-71.1507334,42.3532749],[-71.1507822,42.3532749],[-71.1509326,42.3530511],[-71.1512212,42.3525764],[-71.1512041,42.3525561],[-71.1512078,42.3525448]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1366116837,"name":"Elmira Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1507781,42.3532932],[-71.1507566,42.3533275],[-71.150732,42.3533668]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366116838,"name":"Morrow Road"},"geometry":{"type":"LineString","coordinates":[[-71.1507254,42.3533737],[-71.1502405,42.3532426],[-71.1495919,42.3530752],[-71.1493238,42.3530072],[-71.1493044,42.353004],[-71.1491832,42.3531969],[-71.1490442,42.3534192],[-71.1490204,42.3534623],[-71.1490398,42.3534754],[-71.1491982,42.3535127],[-71.1495981,42.3536153],[-71.1500246,42.3537271],[-71.1503263,42.353801],[-71.150379,42.3538175],[-71.1504422,42.3538265],[-71.1505139,42.3537226],[-71.150628,42.3535395],[-71.1507254,42.3533737]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366116838,"name":"Elmira Street"},"geometry":{"type":"LineString","coordinates":[[-71.1507254,42.3533737],[-71.1502405,42.3532426],[-71.1495919,42.3530752],[-71.1493238,42.3530072],[-71.1493044,42.353004],[-71.1491832,42.3531969],[-71.1490442,42.3534192],[-71.1490204,42.3534623],[-71.1490398,42.3534754],[-71.1491982,42.3535127],[-71.1495981,42.3536153],[-71.1500246,42.3537271],[-71.1503263,42.353801],[-71.150379,42.3538175],[-71.1504422,42.3538265],[-71.1505139,42.3537226],[-71.150628,42.3535395],[-71.1507254,42.3533737]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1366116839,"name":"Elmira Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1493694,42.3529249],[-71.1493476,42.3529642],[-71.1493238,42.3530072]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1366116840,"name":"Glencoe Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1493044,42.353004],[-71.1492443,42.3529924],[-71.1491902,42.352982]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1366116841,"name":"Glencoe Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1493592,42.3529054],[-71.1493059,42.3528939],[-71.1492602,42.352884]]}},
@@ -3794,7 +3794,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366116845,"name":"Gardena Street","level":true},"geometry":{"type":"LineString","coordinates":[[-71.1487826,42.3538586],[-71.149291,42.3539801],[-71.1497215,42.3540921],[-71.1501999,42.3542163]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366116846,"name":"Leicester Street"},"geometry":{"type":"LineString","coordinates":[[-71.1540611,42.351426],[-71.1539826,42.3515432],[-71.1537752,42.351903],[-71.1536797,42.3520758],[-71.1536634,42.3521073]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1366116847,"name":"Leicester Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1536797,42.3520758],[-71.1536098,42.3520754],[-71.1535397,42.3520751]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366116848,"name":"Delaware Place"},"geometry":{"type":"LineString","coordinates":[[-71.1535397,42.3520751],[-71.1531786,42.3519541],[-71.1527822,42.3518392],[-71.1524807,42.3517581],[-71.1524499,42.3517498],[-71.152054,42.3516248]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366116848,"name":"Arlington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1535397,42.3520751],[-71.1531786,42.3519541],[-71.1527822,42.3518392],[-71.1524807,42.3517581],[-71.1524499,42.3517498],[-71.152054,42.3516248]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366116849,"name":"Leicester Street"},"geometry":{"type":"LineString","coordinates":[[-71.1535397,42.3520751],[-71.1536095,42.3519706],[-71.153765,42.3516994],[-71.1539236,42.3514238],[-71.1539319,42.3513924]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366116850,"name":"Leicester Street"},"geometry":{"type":"LineString","coordinates":[[-71.1541152,42.3513042],[-71.1541421,42.351215],[-71.1542712,42.3508071],[-71.1543718,42.3504886],[-71.1544032,42.3504259]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366116851,"name":"Bennett Street"},"geometry":{"type":"LineString","coordinates":[[-71.1542783,42.3503911],[-71.1542783,42.3504036],[-71.1541736,42.3507305],[-71.1541035,42.3509438],[-71.1540008,42.3512691],[-71.1539409,42.3512608],[-71.1536207,42.3511797],[-71.1532802,42.3510865],[-71.1528066,42.3509551],[-71.1525688,42.3508852],[-71.1525215,42.350872]]}},
@@ -3810,7 +3810,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1366615341,"name":"Colwell Avenue","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1562894,42.3427936],[-71.1563269,42.3427514],[-71.1563506,42.3427246]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366615342,"name":"Radnor Road"},"geometry":{"type":"LineString","coordinates":[[-71.1596111,42.3401396],[-71.1596188,42.3401539],[-71.1595699,42.3402262],[-71.1594909,42.3403784],[-71.1594706,42.3404175],[-71.1593613,42.3406252],[-71.1592428,42.3408225],[-71.1591072,42.3407709],[-71.158962,42.3407316],[-71.1586997,42.3406351],[-71.1585515,42.3405915],[-71.1584416,42.3405639]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1366615343,"name":"Radnor Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1591876,42.3409103],[-71.1592101,42.3408705],[-71.15923,42.3408353]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366615344,"name":"Greycliff Road"},"geometry":{"type":"LineString","coordinates":[[-71.160469,42.3402075],[-71.1604906,42.340227],[-71.1603843,42.3404115],[-71.1601778,42.3408066],[-71.1599961,42.341122],[-71.1598328,42.3414135],[-71.1597696,42.3415205],[-71.1595924,42.3414807],[-71.1593151,42.3413919],[-71.1591472,42.3413475],[-71.1591457,42.3413367],[-71.1591411,42.3413031],[-71.1592859,42.3410469],[-71.1594415,42.3407667],[-71.1596294,42.3404297],[-71.1597857,42.3401581]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366615344,"name":"Gerald Road"},"geometry":{"type":"LineString","coordinates":[[-71.160469,42.3402075],[-71.1604906,42.340227],[-71.1603843,42.3404115],[-71.1601778,42.3408066],[-71.1599961,42.341122],[-71.1598328,42.3414135],[-71.1597696,42.3415205],[-71.1595924,42.3414807],[-71.1593151,42.3413919],[-71.1591472,42.3413475],[-71.1591457,42.3413367],[-71.1591411,42.3413031],[-71.1592859,42.3410469],[-71.1594415,42.3407667],[-71.1596294,42.3404297],[-71.1597857,42.3401581]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366615345,"name":"Greycliff Road"},"geometry":{"type":"LineString","coordinates":[[-71.1606388,42.3402162],[-71.1604906,42.3404798],[-71.1601932,42.3410002],[-71.1600145,42.3413224],[-71.1598944,42.3415399],[-71.1598975,42.3415718],[-71.1601624,42.3416515],[-71.1604767,42.3417426],[-71.1605291,42.3417449],[-71.1608695,42.3411277],[-71.161136,42.3406631],[-71.1613563,42.3402589],[-71.1613533,42.3402382]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1366615346,"name":"Gerald Road","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.159875,42.3415666],[-71.1598227,42.3415513],[-71.1597719,42.3415364]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366664135,"name":"Cypress Street"},"geometry":{"type":"LineString","coordinates":[[-71.194658,42.3298864],[-71.1947367,42.3297691],[-71.1948114,42.3296114],[-71.1948546,42.3295066],[-71.19488,42.3294206],[-71.19489,42.3293033],[-71.1948887,42.3292796],[-71.1948838,42.329186],[-71.1948476,42.3290681],[-71.1947919,42.3289691],[-71.1947298,42.3288586],[-71.1946821,42.3287753],[-71.194632,42.328686],[-71.1946007,42.3286366],[-71.1945652,42.3285714],[-71.194542,42.328521]]}},
@@ -3820,7 +3820,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366664139,"name":"Cypress Street"},"geometry":{"type":"LineString","coordinates":[[-71.1943554,42.3282038],[-71.194296,42.3281198],[-71.1942341,42.3280129],[-71.1941677,42.3278961],[-71.194097,42.3277764],[-71.1940288,42.3276639],[-71.1939788,42.3275864],[-71.1938647,42.3273885],[-71.1937882,42.3272521],[-71.1936641,42.3270809]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1366664140,"name":"Parker Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1938299,42.326766],[-71.1938238,42.3267535],[-71.1938056,42.3267161]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366664141,"name":"Parker Street"},"geometry":{"type":"LineString","coordinates":[[-71.1938395,42.3266545],[-71.1938272,42.3266697],[-71.1938207,42.326695],[-71.1938056,42.3267161]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366664142,"name":"Cypress Street"},"geometry":{"type":"LineString","coordinates":[[-71.1939835,42.326652],[-71.1939837,42.3266778],[-71.1939863,42.3267942],[-71.1939889,42.3268756],[-71.1939933,42.3270126],[-71.1940037,42.327145],[-71.1940268,42.3272415],[-71.194048,42.3273361],[-71.1941115,42.3274892],[-71.1942028,42.3276481],[-71.1942798,42.3277948],[-71.1942927,42.327813],[-71.194311,42.3278215],[-71.1943353,42.3278168],[-71.1944412,42.3277649],[-71.1946611,42.3276496]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366664142,"name":"Parker Street"},"geometry":{"type":"LineString","coordinates":[[-71.1939835,42.326652],[-71.1939837,42.3266778],[-71.1939863,42.3267942],[-71.1939889,42.3268756],[-71.1939933,42.3270126],[-71.1940037,42.327145],[-71.1940268,42.3272415],[-71.194048,42.3273361],[-71.1941115,42.3274892],[-71.1942028,42.3276481],[-71.1942798,42.3277948],[-71.1942927,42.327813],[-71.194311,42.3278215],[-71.1943353,42.3278168],[-71.1944412,42.3277649],[-71.1946611,42.3276496]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1366664143,"name":"Paul Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1943602,42.3279016],[-71.1943337,42.327862],[-71.1943107,42.3278276]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366664144,"name":"Parker Street"},"geometry":{"type":"LineString","coordinates":[[-71.1939835,42.326652],[-71.1939745,42.3264169],[-71.1939661,42.3262003],[-71.1939608,42.3259449],[-71.1939515,42.3257136],[-71.1939395,42.3254667],[-71.1939519,42.3253234],[-71.1939679,42.325119],[-71.1939922,42.32484],[-71.1940032,42.3246768],[-71.1940042,42.3246532],[-71.1940046,42.3246424],[-71.1940177,42.3246336],[-71.1940338,42.3246228]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1366664145,"name":"Parker Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1940042,42.3246532],[-71.1939193,42.3246522],[-71.1938511,42.3246513]]}},
@@ -3868,7 +3868,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366672882,"name":"Centre Street"},"geometry":{"type":"LineString","coordinates":[[-71.202955,42.3218494],[-71.2029874,42.3218152],[-71.2030952,42.3217497],[-71.203247,42.3216592],[-71.2033617,42.3215885],[-71.203522,42.3214906],[-71.2036891,42.3213886],[-71.2039379,42.3212377],[-71.2043384,42.320994],[-71.2044457,42.32093],[-71.20462,42.3208262],[-71.2047023,42.3207772]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1366672883,"name":"Boylston Road","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.2037307,42.319413],[-71.2036738,42.3194122],[-71.2036582,42.319412],[-71.203603,42.3194111]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366672884,"name":"Boylston Road"},"geometry":{"type":"LineString","coordinates":[[-71.2037417,42.3194129],[-71.2037272,42.319483],[-71.2037219,42.3196272],[-71.2037471,42.319726],[-71.2038276,42.3198425],[-71.2039519,42.3200341],[-71.2040599,42.3202124],[-71.2041563,42.3203675],[-71.2042997,42.3205192],[-71.2044656,42.3206687],[-71.2045187,42.3207149],[-71.2045802,42.3206988],[-71.2047018,42.3206243],[-71.2049528,42.3204672],[-71.2049615,42.3204617]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366672885,"name":"Boylston Street"},"geometry":{"type":"LineString","coordinates":[[-71.203603,42.3194111],[-71.20359,42.3194138],[-71.2034659,42.3194048],[-71.203001,42.3193909]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366672885,"name":"Boylston Road"},"geometry":{"type":"LineString","coordinates":[[-71.203603,42.3194111],[-71.20359,42.3194138],[-71.2034659,42.3194048],[-71.203001,42.3193909]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1366672886,"name":"Aberdeen Street","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.203001,42.3193909],[-71.2029348,42.3193875],[-71.2029236,42.3193869],[-71.202857,42.3193835]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366672887,"name":"Woodcliff Road"},"geometry":{"type":"LineString","coordinates":[[-71.202857,42.3193835],[-71.2027435,42.3193711],[-71.2025402,42.3193684],[-71.2023136,42.3193587],[-71.2020885,42.3193611],[-71.2020671,42.3193756],[-71.2020585,42.31948],[-71.2020712,42.319695],[-71.2021113,42.3198689],[-71.2022002,42.320132],[-71.2023131,42.3204957],[-71.2023629,42.3206614],[-71.202401,42.3207249],[-71.2024757,42.3208335],[-71.2025605,42.3209349],[-71.2026505,42.3210458],[-71.2026744,42.3210935],[-71.2026957,42.3211882],[-71.2027277,42.321281],[-71.2027821,42.3213783],[-71.2028777,42.3215173],[-71.2029793,42.3216116],[-71.2030296,42.3216349],[-71.203145,42.321588],[-71.2033909,42.3214463],[-71.2036262,42.3212904],[-71.2036821,42.3212453],[-71.2037442,42.3212094],[-71.2038961,42.3211217],[-71.2041903,42.3209436],[-71.2043961,42.3208072],[-71.2044063,42.3207831],[-71.2043763,42.3207358],[-71.2041928,42.3205735],[-71.2040627,42.3204423],[-71.2039743,42.3203033],[-71.2038747,42.3201361],[-71.2037441,42.3199403],[-71.2036537,42.3197889],[-71.2036155,42.3197074],[-71.2035988,42.319636],[-71.2035993,42.3194958],[-71.20359,42.3194138]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1366672888,"name":"Boylston Road","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2045071,42.3207219],[-71.2044666,42.3207457],[-71.2044254,42.3207699]]}},
@@ -3880,7 +3880,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1366698942,"name":"Miller Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2022317,42.3221289],[-71.202285,42.3220952],[-71.2023385,42.3220613]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366698943,"name":"Cloverdale Road"},"geometry":{"type":"LineString","coordinates":[[-71.2017473,42.321894],[-71.2015347,42.321861],[-71.2012604,42.3218189],[-71.2009875,42.3217738],[-71.2008216,42.3217428],[-71.2007421,42.3217163],[-71.2006469,42.3216756],[-71.2005332,42.3216082],[-71.2004326,42.3215157],[-71.2002778,42.3213784],[-71.2001239,42.3212445],[-71.2000427,42.3211734],[-71.1999891,42.3211486],[-71.1998751,42.321124],[-71.1998127,42.3211221],[-71.1997105,42.321135],[-71.1996132,42.3211659],[-71.1995234,42.3212076],[-71.1994302,42.3212884],[-71.1993581,42.3213566],[-71.1993078,42.3214039],[-71.1992848,42.3214277]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1366698944,"name":"Cloverdale Road","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.2004202,42.3193098],[-71.2003494,42.3193063],[-71.200273,42.3193026]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366698945,"name":"Clark Street"},"geometry":{"type":"LineString","coordinates":[[-71.1984989,42.3192603],[-71.1984837,42.3192665],[-71.1982648,42.3192521],[-71.1978762,42.3192422],[-71.1976848,42.3192363],[-71.1973451,42.3192276],[-71.1969676,42.3192197],[-71.19675,42.3192112],[-71.1963517,42.3191981],[-71.196061,42.3191921],[-71.1959303,42.3191986],[-71.1958481,42.3192182],[-71.1958176,42.3192402],[-71.1958018,42.3192702],[-71.1958146,42.3192854],[-71.1958652,42.3193104],[-71.196057,42.3193939],[-71.1961958,42.3194594],[-71.1963423,42.3195303],[-71.1965569,42.3196233],[-71.1970163,42.3198432],[-71.1971946,42.3199327],[-71.1973475,42.3200218],[-71.1975767,42.3201869],[-71.1977092,42.3202883],[-71.1978002,42.3203491],[-71.1979133,42.3204247],[-71.1983043,42.3207148],[-71.1985172,42.3208727],[-71.1987036,42.3209982],[-71.1989041,42.3211462],[-71.199055,42.3212592],[-71.1991681,42.3213429],[-71.1992337,42.321311],[-71.1992967,42.3212562],[-71.1993537,42.3211963],[-71.1994516,42.3211256],[-71.1995736,42.3210726],[-71.1997648,42.321026],[-71.1998459,42.3210277],[-71.2000048,42.3210339],[-71.2000896,42.3210302],[-71.2001124,42.3210111],[-71.2001248,42.3208958],[-71.2001456,42.3207153],[-71.2001634,42.3205165],[-71.2001909,42.3202684],[-71.2002123,42.3200557],[-71.2002325,42.3198251],[-71.2002613,42.3195455],[-71.2002727,42.3194704],[-71.2002834,42.3193427],[-71.2002594,42.3193113]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366698945,"name":"Cloverdale Road"},"geometry":{"type":"LineString","coordinates":[[-71.1984989,42.3192603],[-71.1984837,42.3192665],[-71.1982648,42.3192521],[-71.1978762,42.3192422],[-71.1976848,42.3192363],[-71.1973451,42.3192276],[-71.1969676,42.3192197],[-71.19675,42.3192112],[-71.1963517,42.3191981],[-71.196061,42.3191921],[-71.1959303,42.3191986],[-71.1958481,42.3192182],[-71.1958176,42.3192402],[-71.1958018,42.3192702],[-71.1958146,42.3192854],[-71.1958652,42.3193104],[-71.196057,42.3193939],[-71.1961958,42.3194594],[-71.1963423,42.3195303],[-71.1965569,42.3196233],[-71.1970163,42.3198432],[-71.1971946,42.3199327],[-71.1973475,42.3200218],[-71.1975767,42.3201869],[-71.1977092,42.3202883],[-71.1978002,42.3203491],[-71.1979133,42.3204247],[-71.1983043,42.3207148],[-71.1985172,42.3208727],[-71.1987036,42.3209982],[-71.1989041,42.3211462],[-71.199055,42.3212592],[-71.1991681,42.3213429],[-71.1992337,42.321311],[-71.1992967,42.3212562],[-71.1993537,42.3211963],[-71.1994516,42.3211256],[-71.1995736,42.3210726],[-71.1997648,42.321026],[-71.1998459,42.3210277],[-71.2000048,42.3210339],[-71.2000896,42.3210302],[-71.2001124,42.3210111],[-71.2001248,42.3208958],[-71.2001456,42.3207153],[-71.2001634,42.3205165],[-71.2001909,42.3202684],[-71.2002123,42.3200557],[-71.2002325,42.3198251],[-71.2002613,42.3195455],[-71.2002727,42.3194704],[-71.2002834,42.3193427],[-71.2002594,42.3193113]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1366698946,"name":"Payne Road","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1986453,42.3192669],[-71.1985602,42.3192631],[-71.1984989,42.3192603]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366698947,"name":"Boylston Street"},"geometry":{"type":"LineString","coordinates":[[-71.200273,42.3193026],[-71.2002594,42.3193113],[-71.1997557,42.3192937],[-71.1994031,42.3192799],[-71.1990675,42.3192698],[-71.1988155,42.3192673],[-71.1987134,42.319265],[-71.1986567,42.3192731],[-71.1986453,42.3192669]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366698948,"name":"Payne Road"},"geometry":{"type":"LineString","coordinates":[[-71.1986567,42.3192731],[-71.1986366,42.3193043],[-71.1986424,42.3193851],[-71.1986586,42.3194301],[-71.1986809,42.3194805],[-71.1987776,42.319552],[-71.1988962,42.3196389],[-71.1990911,42.3197793],[-71.199209,42.3198675],[-71.1995627,42.3201192]]}},
@@ -3896,15 +3896,15 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366700471,"name":"Rogers Street"},"geometry":{"type":"LineString","coordinates":[[-71.2020905,42.3245052],[-71.2020594,42.3244723],[-71.2018915,42.3242855],[-71.2017575,42.3241391],[-71.2017538,42.3241091]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366700472,"name":"Rogers Street","level":true},"geometry":{"type":"LineString","coordinates":[[-71.2021909,42.3246144],[-71.2020905,42.3245052]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366700473,"name":"Lake Avenue","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2045095,42.3239883],[-71.2045094,42.3239941],[-71.2044885,42.3240057],[-71.2043189,42.3241279],[-71.2039862,42.3243713],[-71.2035774,42.3246735],[-71.2033394,42.3248455],[-71.2032146,42.3249482],[-71.2031179,42.3250587],[-71.2030509,42.3251353],[-71.2029425,42.3252936],[-71.2029199,42.3253366],[-71.2029164,42.3253796],[-71.2029376,42.3254441],[-71.2029673,42.3255005],[-71.2030022,42.3255327],[-71.2030711,42.325564],[-71.2031218,42.3255838],[-71.2032722,42.3256549],[-71.2033006,42.3256673]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366700474,"name":"Saxon Road","surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.2061536,42.3264727],[-71.2060855,42.3264517],[-71.205894,42.3263939],[-71.2057341,42.3263429],[-71.2056395,42.3263132],[-71.2055782,42.3263024],[-71.2055187,42.3263088],[-71.2054615,42.3263727],[-71.2054077,42.326472],[-71.2053564,42.3266213],[-71.2053383,42.3267413],[-71.2053085,42.3269061],[-71.205263,42.3270304],[-71.2051649,42.3271543],[-71.2050639,42.3272855],[-71.2049046,42.3274672],[-71.2048959,42.3275015],[-71.2048905,42.3275229],[-71.2049232,42.3275557],[-71.2050791,42.3276144],[-71.2052723,42.3276916],[-71.2053931,42.3277336],[-71.2055192,42.3277598],[-71.2057294,42.3277952],[-71.2059547,42.3278051],[-71.2059776,42.3278039]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366700475,"name":"Moreland Avenue","surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.2059907,42.3279005],[-71.2059202,42.327893],[-71.2057076,42.3278806],[-71.2055903,42.3278617],[-71.2055279,42.3278617],[-71.2054897,42.3278949],[-71.2054394,42.3280912],[-71.2053609,42.328411],[-71.2052892,42.328707],[-71.2052241,42.3289667],[-71.2051249,42.3293757],[-71.2050532,42.3296622],[-71.2049854,42.3299537],[-71.2049888,42.3300013],[-71.2050015,42.330037],[-71.2049915,42.3300697],[-71.2049559,42.3300935],[-71.2049224,42.3301024],[-71.2048815,42.3301044],[-71.2048366,42.3300925],[-71.2048071,42.3300707],[-71.2047883,42.3300281],[-71.2048091,42.3299854],[-71.2048473,42.3299438],[-71.2048728,42.3298442],[-71.2049405,42.3295799],[-71.2049988,42.3293509],[-71.2050552,42.3291139],[-71.2050652,42.329045],[-71.2050505,42.3290069],[-71.2050089,42.3289796],[-71.204972,42.3289687],[-71.2048862,42.3289756],[-71.2047299,42.3289979],[-71.2046133,42.3290084],[-71.2044034,42.3290242],[-71.2042264,42.3290297],[-71.2040272,42.3290247],[-71.2038167,42.3290054],[-71.2036356,42.3289732],[-71.203478,42.3289285],[-71.2032467,42.3288621],[-71.203022,42.3287927],[-71.2027699,42.3287223],[-71.2026532,42.3286901],[-71.2026462,42.3286911],[-71.202615,42.3286956],[-71.2025652,42.3287395],[-71.2024863,42.3288091],[-71.2023294,42.3289499],[-71.2022717,42.3289984],[-71.2022482,42.3290619],[-71.2022501,42.3291086],[-71.2022576,42.3292934],[-71.202267,42.3293564],[-71.2023039,42.3293688],[-71.2025889,42.3293653],[-71.2029537,42.3293707],[-71.2031193,42.3293683],[-71.2032594,42.3293891],[-71.2033406,42.3294401],[-71.2034096,42.3294788],[-71.2035015,42.3294803],[-71.2037831,42.3294843],[-71.2042378,42.3294907],[-71.2043155,42.3294925]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366700476,"name":"Lake Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.2050639,42.3288409],[-71.2048983,42.3288791],[-71.2047393,42.3288994],[-71.2045194,42.3289247],[-71.2043598,42.3289306],[-71.2041949,42.3289326],[-71.2039856,42.3289271],[-71.2037382,42.3288969],[-71.2034968,42.3288315],[-71.2030569,42.3287065],[-71.2028497,42.3286475],[-71.2027196,42.3286079],[-71.2027192,42.3285985],[-71.2027183,42.3285757],[-71.2028403,42.3283798],[-71.2029315,42.3282376],[-71.2030133,42.3280859],[-71.2030255,42.3280565],[-71.2030871,42.3279084],[-71.2030953,42.3278884],[-71.2036396,42.3280556],[-71.2039186,42.3281434],[-71.2042009,42.3282519],[-71.2045348,42.3283848],[-71.2049157,42.328539],[-71.205021,42.3285707],[-71.2050941,42.3286148],[-71.2051343,42.328649],[-71.2051531,42.3287115],[-71.2051356,42.3287883],[-71.2050639,42.3288409]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366700474,"name":"Berwick Road","surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.2061536,42.3264727],[-71.2060855,42.3264517],[-71.205894,42.3263939],[-71.2057341,42.3263429],[-71.2056395,42.3263132],[-71.2055782,42.3263024],[-71.2055187,42.3263088],[-71.2054615,42.3263727],[-71.2054077,42.326472],[-71.2053564,42.3266213],[-71.2053383,42.3267413],[-71.2053085,42.3269061],[-71.205263,42.3270304],[-71.2051649,42.3271543],[-71.2050639,42.3272855],[-71.2049046,42.3274672],[-71.2048959,42.3275015],[-71.2048905,42.3275229],[-71.2049232,42.3275557],[-71.2050791,42.3276144],[-71.2052723,42.3276916],[-71.2053931,42.3277336],[-71.2055192,42.3277598],[-71.2057294,42.3277952],[-71.2059547,42.3278051],[-71.2059776,42.3278039]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366700475,"name":"Pine Crest Road","surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.2059907,42.3279005],[-71.2059202,42.327893],[-71.2057076,42.3278806],[-71.2055903,42.3278617],[-71.2055279,42.3278617],[-71.2054897,42.3278949],[-71.2054394,42.3280912],[-71.2053609,42.328411],[-71.2052892,42.328707],[-71.2052241,42.3289667],[-71.2051249,42.3293757],[-71.2050532,42.3296622],[-71.2049854,42.3299537],[-71.2049888,42.3300013],[-71.2050015,42.330037],[-71.2049915,42.3300697],[-71.2049559,42.3300935],[-71.2049224,42.3301024],[-71.2048815,42.3301044],[-71.2048366,42.3300925],[-71.2048071,42.3300707],[-71.2047883,42.3300281],[-71.2048091,42.3299854],[-71.2048473,42.3299438],[-71.2048728,42.3298442],[-71.2049405,42.3295799],[-71.2049988,42.3293509],[-71.2050552,42.3291139],[-71.2050652,42.329045],[-71.2050505,42.3290069],[-71.2050089,42.3289796],[-71.204972,42.3289687],[-71.2048862,42.3289756],[-71.2047299,42.3289979],[-71.2046133,42.3290084],[-71.2044034,42.3290242],[-71.2042264,42.3290297],[-71.2040272,42.3290247],[-71.2038167,42.3290054],[-71.2036356,42.3289732],[-71.203478,42.3289285],[-71.2032467,42.3288621],[-71.203022,42.3287927],[-71.2027699,42.3287223],[-71.2026532,42.3286901],[-71.2026462,42.3286911],[-71.202615,42.3286956],[-71.2025652,42.3287395],[-71.2024863,42.3288091],[-71.2023294,42.3289499],[-71.2022717,42.3289984],[-71.2022482,42.3290619],[-71.2022501,42.3291086],[-71.2022576,42.3292934],[-71.202267,42.3293564],[-71.2023039,42.3293688],[-71.2025889,42.3293653],[-71.2029537,42.3293707],[-71.2031193,42.3293683],[-71.2032594,42.3293891],[-71.2033406,42.3294401],[-71.2034096,42.3294788],[-71.2035015,42.3294803],[-71.2037831,42.3294843],[-71.2042378,42.3294907],[-71.2043155,42.3294925]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366700476,"name":"Moreland Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.2050639,42.3288409],[-71.2048983,42.3288791],[-71.2047393,42.3288994],[-71.2045194,42.3289247],[-71.2043598,42.3289306],[-71.2041949,42.3289326],[-71.2039856,42.3289271],[-71.2037382,42.3288969],[-71.2034968,42.3288315],[-71.2030569,42.3287065],[-71.2028497,42.3286475],[-71.2027196,42.3286079],[-71.2027192,42.3285985],[-71.2027183,42.3285757],[-71.2028403,42.3283798],[-71.2029315,42.3282376],[-71.2030133,42.3280859],[-71.2030255,42.3280565],[-71.2030871,42.3279084],[-71.2030953,42.3278884],[-71.2036396,42.3280556],[-71.2039186,42.3281434],[-71.2042009,42.3282519],[-71.2045348,42.3283848],[-71.2049157,42.328539],[-71.205021,42.3285707],[-71.2050941,42.3286148],[-71.2051343,42.328649],[-71.2051531,42.3287115],[-71.2051356,42.3287883],[-71.2050639,42.3288409]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1366700477,"name":"Kenmore Street","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.2031198,42.3278002],[-71.2031066,42.3278362],[-71.2030908,42.327879]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366700478,"name":"Pine Crest Road"},"geometry":{"type":"LineString","coordinates":[[-71.2031235,42.3277857],[-71.2032801,42.32733],[-71.2033556,42.3271176],[-71.2033725,42.3270812],[-71.2034002,42.3270749],[-71.203485,42.3270994],[-71.203639,42.3271643],[-71.2040919,42.3273363],[-71.2045048,42.3274992],[-71.2048406,42.3276279],[-71.2051564,42.3277537],[-71.2053066,42.327801],[-71.2053606,42.3278283],[-71.205369,42.3278534],[-71.2053336,42.3280105],[-71.2052597,42.3283249],[-71.2052181,42.3284633],[-71.2051788,42.3284917],[-71.2051225,42.3285026],[-71.2050602,42.3284849],[-71.2048514,42.3284097],[-71.2042059,42.3281461],[-71.2039348,42.3280487],[-71.2035597,42.3279303],[-71.2031568,42.3278028],[-71.2031235,42.3277857]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366700478,"name":"Lake Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.2031235,42.3277857],[-71.2032801,42.32733],[-71.2033556,42.3271176],[-71.2033725,42.3270812],[-71.2034002,42.3270749],[-71.203485,42.3270994],[-71.203639,42.3271643],[-71.2040919,42.3273363],[-71.2045048,42.3274992],[-71.2048406,42.3276279],[-71.2051564,42.3277537],[-71.2053066,42.327801],[-71.2053606,42.3278283],[-71.205369,42.3278534],[-71.2053336,42.3280105],[-71.2052597,42.3283249],[-71.2052181,42.3284633],[-71.2051788,42.3284917],[-71.2051225,42.3285026],[-71.2050602,42.3284849],[-71.2048514,42.3284097],[-71.2042059,42.3281461],[-71.2039348,42.3280487],[-71.2035597,42.3279303],[-71.2031568,42.3278028],[-71.2031235,42.3277857]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1366700479,"name":"Pine Crest Road","surface":"asphalt","crossing":"unmarked","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.2055134,42.3278526],[-71.2054502,42.3278388],[-71.2053803,42.3278235]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1366700480,"name":"Berwick Road","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.2033731,42.3270664],[-71.203394,42.3270077],[-71.2034129,42.3269546]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1366700481,"name":"Lake Avenue","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.2034129,42.3269546],[-71.2033504,42.32695],[-71.2032995,42.3269462]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366700482,"name":"Lakewood Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2043791,42.3273389],[-71.2036963,42.3270726],[-71.2034605,42.3269793],[-71.2034248,42.3269499],[-71.2034209,42.326916],[-71.2034607,42.3267969],[-71.2035421,42.3265654],[-71.2036129,42.3263632],[-71.2036545,42.3262003],[-71.203658,42.3261317],[-71.203648,42.3260453],[-71.2036414,42.32599],[-71.2036484,42.3259816],[-71.2036634,42.3259635],[-71.203683,42.3259431],[-71.203805,42.325916],[-71.2040865,42.3259156],[-71.2042425,42.325922],[-71.2042993,42.3259292],[-71.2045591,42.3259622],[-71.2050511,42.3260881],[-71.2052055,42.3261546],[-71.20533,42.3262121],[-71.2053763,42.3262553],[-71.2053783,42.3262906],[-71.2052787,42.3264826],[-71.2052315,42.3266366],[-71.2052055,42.3268012],[-71.2051939,42.3268455]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366700482,"name":"Lake Avenue","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2043791,42.3273389],[-71.2036963,42.3270726],[-71.2034605,42.3269793],[-71.2034248,42.3269499],[-71.2034209,42.326916],[-71.2034607,42.3267969],[-71.2035421,42.3265654],[-71.2036129,42.3263632],[-71.2036545,42.3262003],[-71.203658,42.3261317],[-71.203648,42.3260453],[-71.2036414,42.32599],[-71.2036484,42.3259816],[-71.2036634,42.3259635],[-71.203683,42.3259431],[-71.203805,42.325916],[-71.2040865,42.3259156],[-71.2042425,42.325922],[-71.2042993,42.3259292],[-71.2045591,42.3259622],[-71.2050511,42.3260881],[-71.2052055,42.3261546],[-71.20533,42.3262121],[-71.2053763,42.3262553],[-71.2053783,42.3262906],[-71.2052787,42.3264826],[-71.2052315,42.3266366],[-71.2052055,42.3268012],[-71.2051939,42.3268455]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1366700483,"name":"Saxon Terrace","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2051939,42.3268455],[-71.2051845,42.326875],[-71.2051711,42.3269169]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1366700484,"name":"Saxon Road"},"geometry":{"type":"LineString","coordinates":[[-71.2051711,42.3269169],[-71.2051295,42.3270205],[-71.2049994,42.3271732],[-71.2048311,42.3273834],[-71.2048098,42.327406]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1368757923,"name":"Nevins Street"},"geometry":{"type":"LineString","coordinates":[[-71.146525,42.3500233],[-71.1466416,42.3497352],[-71.1467543,42.349697],[-71.14675,42.3496754]]}},
@@ -3953,7 +3953,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1368789564},"geometry":{"type":"LineString","coordinates":[[-71.1530865,42.347645],[-71.1529647,42.347597],[-71.1529058,42.3475775],[-71.1528801,42.347569]]}},
{"type":"Feature","properties":{"Type":"Stairs","osm":1368789565},"geometry":{"type":"LineString","coordinates":[[-71.1531147,42.3476542],[-71.1530865,42.347645]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1368789566,"name":"Academy Hill Road"},"geometry":{"type":"LineString","coordinates":[[-71.1532313,42.347664],[-71.153153,42.347629]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1368789567},"geometry":{"type":"LineString","coordinates":[[-71.1531601,42.3476746],[-71.1531147,42.3476542]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1368789567,"name":"Academy Hill Road"},"geometry":{"type":"LineString","coordinates":[[-71.1531601,42.3476746],[-71.1531147,42.3476542]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1368789568,"wheelchair":"yes"},"geometry":{"type":"LineString","coordinates":[[-71.1529647,42.347597],[-71.152982,42.3475724],[-71.153153,42.347629]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1369202130,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1525654,42.3489663],[-71.1525573,42.3489913],[-71.1525132,42.3489892],[-71.1516822,42.3489491],[-71.1515597,42.3489435],[-71.1511771,42.348926]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1369202131,"name":"Washington Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1524982,42.349134],[-71.1525037,42.3490689],[-71.1525089,42.3490086]]}},
@@ -4013,14 +4013,14 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1373722800,"name":"Eastburn Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1565513,42.3484015],[-71.1565597,42.3483728],[-71.1565728,42.3483276]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1373722801,"name":"Eastburn Street"},"geometry":{"type":"LineString","coordinates":[[-71.1565728,42.3483276],[-71.156642,42.3481477],[-71.156658,42.3481061],[-71.1567243,42.3479099],[-71.1568216,42.3476452],[-71.156888,42.3474663]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1373722802,"name":"Eastburn Place","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.156888,42.3474663],[-71.1568946,42.3474451],[-71.156906,42.3474087]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1373722803,"name":"Mount Vernon Street"},"geometry":{"type":"LineString","coordinates":[[-71.156906,42.3474087],[-71.1569411,42.3473157]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1373722803,"name":"Eastburn Street"},"geometry":{"type":"LineString","coordinates":[[-71.156906,42.3474087],[-71.1569411,42.3473157]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1373722804,"name":"Eastburn Street","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1570375,42.3473431],[-71.1569818,42.3473272],[-71.1569411,42.3473157]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1373722805,"name":"Mount Vernon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1569411,42.3473157],[-71.1569106,42.3473049],[-71.1568151,42.3472784],[-71.156643,42.3472354],[-71.156497,42.3471973],[-71.1564227,42.3471796]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1373774998,"name":"Glenmont Road"},"geometry":{"type":"LineString","coordinates":[[-71.1592744,42.3459354],[-71.1591427,42.3459479],[-71.1586489,42.3459901],[-71.1582522,42.3460276],[-71.1581363,42.346034],[-71.1581296,42.3460456]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1373774999,"name":"Anselm Terrace","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1592744,42.3459354],[-71.1593472,42.3459282],[-71.1594108,42.3459219]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1373775000,"name":"Commonwealth Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.16365,42.3403039],[-71.1636337,42.3403919]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1373775001,"name":"Commonwealth Avenue","crossing":"unmarked","kerb":"unknown","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1636337,42.3403919],[-71.1636302,42.3404195],[-71.1636259,42.3404527]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1373775002,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1636259,42.3404527],[-71.1636058,42.3405713],[-71.1635794,42.3406982],[-71.1635484,42.3407816],[-71.1635419,42.3408333],[-71.1635392,42.3408549]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1373775002,"name":"Commonwealth Avenue","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1636259,42.3404527],[-71.1636058,42.3405713],[-71.1635794,42.3406982],[-71.1635484,42.3407816],[-71.1635419,42.3408333],[-71.1635392,42.3408549]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1373775003,"crossing":"unmarked","kerb":"unknown","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1635392,42.3408549],[-71.1635358,42.3408988],[-71.1635341,42.3409199]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1373775004,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1641128,42.3405933],[-71.1640849,42.3407957],[-71.1641017,42.3408006],[-71.1641446,42.3408026],[-71.1641557,42.3408026],[-71.1641433,42.3408886],[-71.1640654,42.340882],[-71.1640473,42.3409039],[-71.1640053,42.3409258],[-71.1639508,42.3409389],[-71.1639376,42.3409384],[-71.163731,42.3409298],[-71.1635752,42.3409229],[-71.1635341,42.3409199]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1373775005,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1635341,42.3409199],[-71.163523,42.3409328],[-71.1634983,42.3410467],[-71.1634229,42.3413655],[-71.1633782,42.3415528],[-71.1633859,42.3415864],[-71.1634221,42.3415919],[-71.1634383,42.3415944],[-71.1636077,42.3415887],[-71.1637186,42.3415727],[-71.1638203,42.3415511],[-71.1639435,42.3415124],[-71.1640637,42.3414486],[-71.1641654,42.3413587],[-71.1642705,42.3412425],[-71.1642871,42.3412243],[-71.1643395,42.3411503],[-71.1643087,42.3411286],[-71.1642763,42.3411104],[-71.1642193,42.3410876],[-71.1640591,42.3410797],[-71.1639435,42.3410728],[-71.1639312,42.3410478],[-71.1639376,42.3409384]]}},
@@ -4038,7 +4038,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1373775017,"crossing":"unmarked","kerb":"unknown","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1630505,42.3409115],[-71.1629416,42.340913]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1373775018,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1629416,42.340913],[-71.1627522,42.3409078],[-71.1624435,42.3408999],[-71.1623337,42.340898],[-71.1622107,42.340879],[-71.1620373,42.3408234],[-71.1619373,42.3407776],[-71.1619002,42.3407541]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1373775019,"crossing":"unmarked","kerb":"unknown","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1619002,42.3407541],[-71.161875,42.3407733],[-71.1618319,42.3408062]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1373775020,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1618319,42.3408062],[-71.1618049,42.340788],[-71.1617541,42.3407447],[-71.1616925,42.3406758],[-71.1616378,42.340583],[-71.1616077,42.3405124],[-71.1615738,42.3404088],[-71.1615661,42.3403069]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1373775020,"name":"Greycliff Road","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1618319,42.3408062],[-71.1618049,42.340788],[-71.1617541,42.3407447],[-71.1616925,42.3406758],[-71.1616378,42.340583],[-71.1616077,42.3405124],[-71.1615738,42.3404088],[-71.1615661,42.3403069]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1373775021,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1634264,42.3416727],[-71.1634233,42.3416811],[-71.1633895,42.3416813],[-71.1633641,42.3416926],[-71.1633478,42.3417061],[-71.1633377,42.3417249],[-71.1633336,42.3417482],[-71.1633417,42.341764],[-71.1633519,42.3417843],[-71.1633407,42.3418256],[-71.1633133,42.3419052],[-71.1632787,42.3419277],[-71.1632655,42.341948],[-71.1632554,42.3419758],[-71.1633234,42.3419931]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1373775022,"crossing":"uncontrolled","kerb":"unknown","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1632432,42.3419701],[-71.1631977,42.3419582],[-71.1631576,42.3419477]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1373775023,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1632456,42.341614],[-71.1632299,42.3416821],[-71.1632188,42.3417257],[-71.1632005,42.3417347],[-71.1631812,42.3417805],[-71.1631466,42.3418707],[-71.1631547,42.3418977],[-71.1631618,42.3419135],[-71.1631462,42.3419443],[-71.1631171,42.3420029],[-71.1630185,42.3421734],[-71.1628051,42.3425175],[-71.1626435,42.3428165],[-71.1626073,42.3428759]]}},
@@ -4072,7 +4072,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1374188316,"name":"Hammond Pond Parkway","surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.1720119,42.3209166],[-71.1719837,42.3208972],[-71.1719961,42.3208788],[-71.1720059,42.3208591],[-71.1720123,42.3208426],[-71.1720173,42.3208233],[-71.1720213,42.3207993],[-71.1720195,42.3207766],[-71.1720158,42.3207595],[-71.1720091,42.3207398],[-71.1719692,42.320657],[-71.171912,42.3205221],[-71.1718886,42.3204672],[-71.1718732,42.3204296],[-71.1718578,42.3203912],[-71.1718405,42.3203397],[-71.1718208,42.320264],[-71.1718062,42.3201978],[-71.1717876,42.3200986],[-71.1717114,42.3197756],[-71.1716631,42.3196085]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1374188663,"name":"Heath Street","surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.1713648,42.3184313],[-71.1713707,42.3184227],[-71.1713829,42.318415],[-71.1714051,42.3184027],[-71.1714389,42.3183841],[-71.1715979,42.318307],[-71.1717247,42.3182491],[-71.171859,42.3181901],[-71.1719417,42.3181568],[-71.1719544,42.3181534],[-71.171975,42.318151],[-71.1719927,42.3181503],[-71.1720057,42.3181513],[-71.1720115,42.3181528],[-71.1720243,42.3181559],[-71.1720571,42.3181725],[-71.1721448,42.3182312],[-71.1723626,42.3183851],[-71.1726153,42.3185575],[-71.1727793,42.3186713]]}},
{"type":"Feature","properties":{"Type":"Street","osm":1375566255,"name":"Walnut Street","surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.2068132,42.3491485],[-71.2068407,42.3493064],[-71.2068562,42.349408],[-71.2068598,42.3494347],[-71.2068697,42.3495086]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1379162921,"name":"Presentation Road"},"geometry":{"type":"LineString","coordinates":[[-71.1705762,42.3548989],[-71.1702114,42.3552894]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1379162921,"name":"Bellamy Street"},"geometry":{"type":"LineString","coordinates":[[-71.1705762,42.3548989],[-71.1702114,42.3552894]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1379162922,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1716618,42.3521601],[-71.1725463,42.3525976],[-71.1727294,42.3526891],[-71.1730222,42.352836]]}},
{"type":"Feature","properties":{"Type":"Stairs","osm":1379426881,"name":"Reverend James J. Murphy Footway","width":"3.7"},"geometry":{"type":"LineString","coordinates":[[-71.172184,42.3500878],[-71.1720726,42.3503028]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1379426882,"name":"Reverend James J. Murphy Footway","width":"3.7"},"geometry":{"type":"LineString","coordinates":[[-71.172217,42.3499834],[-71.1721965,42.3500431],[-71.172184,42.3500878]]}},
@@ -4102,7 +4102,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1383037288,"name":"Commonwealth Avenue","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1895146,42.3361601],[-71.1895187,42.3362122],[-71.1895223,42.3362589]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1383050817},"geometry":{"type":"LineString","coordinates":[[-71.1767879,42.3378627],[-71.1767971,42.3378773],[-71.1768302,42.3379323],[-71.1768311,42.3379734],[-71.1768349,42.3379833],[-71.1768528,42.3379916],[-71.1769313,42.3380005]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1383354952,"name":"Lieutenant Pamela Donovan Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1454666,42.3471446],[-71.1454366,42.3471222],[-71.1454061,42.3470994]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1383354953},"geometry":{"type":"LineString","coordinates":[[-71.1454666,42.3471446],[-71.1455099,42.3471849],[-71.1455561,42.3472297],[-71.1456554,42.3472865],[-71.1457685,42.3473083],[-71.1458452,42.3473083],[-71.1458926,42.3472948],[-71.1459608,42.3472632],[-71.1460355,42.3472086],[-71.146072,42.3471443],[-71.1460823,42.3470712],[-71.1460552,42.3470145],[-71.1459934,42.346963],[-71.1458978,42.3469133],[-71.1458223,42.3468856],[-71.1457956,42.3468722]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1383354953,"name":"Lieutenant Pamela Donovan Road"},"geometry":{"type":"LineString","coordinates":[[-71.1454666,42.3471446],[-71.1455099,42.3471849],[-71.1455561,42.3472297],[-71.1456554,42.3472865],[-71.1457685,42.3473083],[-71.1458452,42.3473083],[-71.1458926,42.3472948],[-71.1459608,42.3472632],[-71.1460355,42.3472086],[-71.146072,42.3471443],[-71.1460823,42.3470712],[-71.1460552,42.3470145],[-71.1459934,42.346963],[-71.1458978,42.3469133],[-71.1458223,42.3468856],[-71.1457956,42.3468722]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1383354978,"name":"Lieutenant Pamela Donovan Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1457956,42.3468722],[-71.1457543,42.3468559],[-71.1457153,42.3468406]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1383354987,"name":"Lieutenant Pamela Donovan Road","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1458046,42.3469393],[-71.1457999,42.3469612],[-71.1457887,42.3470029]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1383355212},"geometry":{"type":"LineString","coordinates":[[-71.1457887,42.3470029],[-71.1457524,42.3470591],[-71.1456804,42.3471042]]}},
@@ -4137,7 +4137,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1396676998,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1674995,42.339403],[-71.1674666,42.3394136],[-71.1673468,42.3394569],[-71.1672905,42.3394772],[-71.1670681,42.3395591],[-71.1669232,42.3396139]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1396676999,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1674874,42.3395451],[-71.1674417,42.3395284],[-71.1673813,42.3394905],[-71.1673468,42.3394569]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1396677000,"name":"Commonwealth Avenue","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1682894,42.3394458],[-71.1681911,42.3392942],[-71.1680556,42.3390872]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1396677001,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1692692,42.3387402],[-71.1692141,42.3388185],[-71.1691935,42.3388478],[-71.1690773,42.3389853],[-71.1688974,42.3392635]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1396677001,"name":"Commonwealth Avenue","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1692692,42.3387402],[-71.1692141,42.3388185],[-71.1691935,42.3388478],[-71.1690773,42.3389853],[-71.1688974,42.3392635]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1396677002,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1692312,42.3388432],[-71.1692141,42.3388185],[-71.1691548,42.3387428]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1396677003,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1686126,42.338679],[-71.1684612,42.3387335],[-71.1684386,42.3387417],[-71.1682092,42.3388239],[-71.1681734,42.3388367],[-71.1680615,42.338876],[-71.1680388,42.338884]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1396677004,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1680803,42.338902],[-71.1680615,42.338876]]}},
@@ -4157,8 +4157,8 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1408601005,"name":"Englewood Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1456441,42.3380128],[-71.1456109,42.3379931],[-71.1454995,42.3379058],[-71.1453936,42.3378097],[-71.1452635,42.3376758],[-71.145179,42.3375678],[-71.1450532,42.3373753]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1408826789,"name":"Nevins Hill Way"},"geometry":{"type":"LineString","coordinates":[[-71.1445292,42.346226],[-71.1445673,42.3462563],[-71.1446615,42.3463554],[-71.1449559,42.3466591],[-71.1450067,42.3466397],[-71.1450342,42.3466841]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1408881073,"surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1538169,42.3416907],[-71.1538408,42.3417182],[-71.153864,42.3417449]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1408882892,"name":"Saint Thomas More Road","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1664201,42.3394316],[-71.1661685,42.3396531]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1408882893,"name":"Saint Thomas More Road","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1664865,42.3395337],[-71.1661969,42.3397888]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1408882892,"name":"Father Herlihy Drive","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1664201,42.3394316],[-71.1661685,42.3396531]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1408882893,"name":"Father Herlihy Drive","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1664865,42.3395337],[-71.1661969,42.3397888]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1408882894,"name":"Father Herlihy Drive","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1664578,42.3392361],[-71.1663904,42.3392621],[-71.1663372,42.3392826]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1408882895,"name":"Father Herlihy Drive","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1663372,42.3392826],[-71.1663203,42.3392895]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1408882896,"name":"Father Herlihy Drive","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1664396,42.339174],[-71.1664787,42.3392275],[-71.166486,42.3392396],[-71.1665426,42.3393245],[-71.1666092,42.3394243],[-71.166691,42.339547]]}},
@@ -4178,7 +4178,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1409114052,"surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.1528722,42.3413682],[-71.1528514,42.3414243]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1409114053},"geometry":{"type":"LineString","coordinates":[[-71.1528514,42.3414243],[-71.1528438,42.3414516]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1409114054,"surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1528438,42.3414516],[-71.1528263,42.3414936],[-71.1528135,42.3415241]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1409114055},"geometry":{"type":"LineString","coordinates":[[-71.1521312,42.3418491],[-71.1520755,42.3419317],[-71.1520217,42.3420105],[-71.1519773,42.3420737],[-71.1519487,42.3420929],[-71.1519256,42.3420924],[-71.1518662,42.3420807],[-71.1517903,42.3420704],[-71.1517632,42.3420783]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1409114055,"name":"Wallingford Road"},"geometry":{"type":"LineString","coordinates":[[-71.1521312,42.3418491],[-71.1520755,42.3419317],[-71.1520217,42.3420105],[-71.1519773,42.3420737],[-71.1519487,42.3420929],[-71.1519256,42.3420924],[-71.1518662,42.3420807],[-71.1517903,42.3420704],[-71.1517632,42.3420783]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1409114056,"name":"Wallingford Road"},"geometry":{"type":"LineString","coordinates":[[-71.1517903,42.3420704],[-71.1517193,42.3419898],[-71.1516735,42.3419534],[-71.1516138,42.3419525]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1409114057,"name":"Wallingford Road"},"geometry":{"type":"LineString","coordinates":[[-71.151986,42.3419039],[-71.1518724,42.3418739],[-71.1517357,42.3418574],[-71.1516288,42.3418477]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1409114058,"crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.151986,42.3419039],[-71.1520201,42.3419145],[-71.1520755,42.3419317]]}},
@@ -4195,13 +4195,13 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1413340108,"name":"Boylston Street","surface":"asphalt","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1453173,42.3264296],[-71.1453155,42.3264626],[-71.1453124,42.3265176]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1413340109},"geometry":{"type":"LineString","coordinates":[[-71.1453189,42.3264103],[-71.1453173,42.3264296]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1413340110,"name":"Boylston Street"},"geometry":{"type":"LineString","coordinates":[[-71.1453232,42.3263096],[-71.1453225,42.326322]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1413340111,"name":"Timon Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1453124,42.3265176],[-71.1453113,42.3265379]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1413340111,"name":"Boylston Street"},"geometry":{"type":"LineString","coordinates":[[-71.1453124,42.3265176],[-71.1453113,42.3265379]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1413340112,"name":"Reservoir Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1473642,42.3263605],[-71.1473121,42.3263474],[-71.1472772,42.3263386]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1413340113},"geometry":{"type":"LineString","coordinates":[[-71.1474322,42.3263636],[-71.1474287,42.3263759],[-71.1473642,42.3263605]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1413340114,"name":"Eliot Avenue","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1463513,42.3265598],[-71.1463019,42.3265575],[-71.1462598,42.3265556]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1413340115,"name":"White Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1462598,42.3265556],[-71.1457501,42.3265449]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1413340115,"name":"Eliot Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1462598,42.3265556],[-71.1457501,42.3265449]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1413340116,"name":"White Avenue","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1457501,42.3265449],[-71.1457147,42.3265446],[-71.145688,42.3265443]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1413340117,"name":"Timon Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.145688,42.3265443],[-71.1454192,42.3265406]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1413340117,"name":"White Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.145688,42.3265443],[-71.1454192,42.3265406]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1413340118,"name":"Timon Avenue","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1454192,42.3265406],[-71.1453922,42.32654],[-71.1453526,42.3265391]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1415257690,"name":"Beacon Street"},"geometry":{"type":"LineString","coordinates":[[-71.162671,42.3340585],[-71.1626839,42.3340722]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1415264152,"name":"Edmond Roadway","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1629885,42.3351972],[-71.1629727,42.3351763],[-71.1630825,42.3351662],[-71.1631736,42.3351669],[-71.1632647,42.3351793],[-71.163355,42.3351989],[-71.1636523,42.3352761],[-71.1638662,42.3353364]]}},
@@ -4218,7 +4218,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1415413206,"name":"Boylston Street"},"geometry":{"type":"LineString","coordinates":[[-71.1476096,42.3266401],[-71.1476125,42.326653]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1415413207,"name":"Reservoir Road"},"geometry":{"type":"LineString","coordinates":[[-71.1476535,42.3263997],[-71.1476567,42.3263885]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1415413208,"name":"Reservoir Road"},"geometry":{"type":"LineString","coordinates":[[-71.1472772,42.3263386],[-71.1472662,42.326338]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1415413209,"name":"Duffley Court"},"geometry":{"type":"LineString","coordinates":[[-71.1474608,42.326637],[-71.1473114,42.3266247]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1415413209,"name":"Boylston Street"},"geometry":{"type":"LineString","coordinates":[[-71.1474608,42.326637],[-71.1473114,42.3266247]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1415413210,"name":"Duffley Court","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1473114,42.3266247],[-71.1472891,42.3266229],[-71.1472639,42.3266208]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1415415899,"name":"Eliot Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1457192,42.3269662],[-71.1459486,42.3269797],[-71.1461887,42.3269926],[-71.1462329,42.3269926],[-71.146249,42.3269688],[-71.1462557,42.326948]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1415415900,"name":"White Avenue","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1456733,42.326964],[-71.1456974,42.3269651],[-71.1457192,42.3269662]]}},
@@ -4245,7 +4245,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1415450464},"geometry":{"type":"LineString","coordinates":[[-71.1686444,42.3509821],[-71.1686276,42.3510055]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1415450465,"name":"Faneuil Street"},"geometry":{"type":"LineString","coordinates":[[-71.1685191,42.3511106],[-71.1685116,42.3511233]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1415466512,"name":"North Crescent Circuit"},"geometry":{"type":"LineString","coordinates":[[-71.1684781,42.3493836],[-71.1684699,42.3493911]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1415466513,"name":"Breck Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1683878,42.3494634],[-71.1683743,42.3494761]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1415466513,"name":"North Crescent Circuit"},"geometry":{"type":"LineString","coordinates":[[-71.1683878,42.3494634],[-71.1683743,42.3494761]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1415466514,"name":"North Crescent Circuit"},"geometry":{"type":"LineString","coordinates":[[-71.1684781,42.3493836],[-71.1684856,42.3493914]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1415466515,"name":"Breck Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1685879,42.3494602],[-71.1686002,42.3494644]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1415466516,"name":"Breck Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1689987,42.349015],[-71.169015,42.3490225]]}},
@@ -4295,10 +4295,10 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1430120912,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1715554,42.3337639],[-71.1716463,42.3340317],[-71.1717597,42.3339945],[-71.1718505,42.3339542],[-71.1719521,42.3338926],[-71.1720173,42.3338341],[-71.1720395,42.3338051]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1430120913,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1707781,42.3345272],[-71.170727,42.3345363],[-71.1705457,42.3345624]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1430121149,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1725273,42.333144],[-71.172513,42.3330844],[-71.1724243,42.3330854],[-71.1722397,42.3330046],[-71.1722449,42.3330331]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1434679680,"name":"Linden Lane"},"geometry":{"type":"LineString","coordinates":[[-71.1713987,42.3376458],[-71.171259,42.3377858]]}},
-{"type":"Feature","properties":{"Type":"Crossing","osm":1434679681,"name":"Linden Lane","crossing":"uncontrolled","kerb":"unknown","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1714731,42.3375722],[-71.1714439,42.3376011],[-71.1713987,42.3376458]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1435795737,"name":"Linden Lane","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1710225,42.3376723],[-71.1710237,42.3376962],[-71.1710342,42.3377393],[-71.1710658,42.3377937],[-71.1711183,42.3378377],[-71.171136,42.3378474],[-71.1711601,42.3378674]]}},
-{"type":"Feature","properties":{"Type":"Crossing","osm":1435795738,"name":"Linden Lane","crossing":"uncontrolled","kerb":"unknown","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.171042,42.3376037],[-71.1710321,42.3376388],[-71.1710225,42.3376723]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1434679680,"name":"Commonwealth Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1713987,42.3376458],[-71.171259,42.3377858]]}},
+{"type":"Feature","properties":{"Type":"Crossing","osm":1434679681,"name":"Commonwealth Avenue","crossing":"uncontrolled","kerb":"unknown","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1714731,42.3375722],[-71.1714439,42.3376011],[-71.1713987,42.3376458]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1435795737,"name":"Commonwealth Avenue","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1710225,42.3376723],[-71.1710237,42.3376962],[-71.1710342,42.3377393],[-71.1710658,42.3377937],[-71.1711183,42.3378377],[-71.171136,42.3378474],[-71.1711601,42.3378674]]}},
+{"type":"Feature","properties":{"Type":"Crossing","osm":1435795738,"crossing":"uncontrolled","kerb":"unknown","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.171042,42.3376037],[-71.1710321,42.3376388],[-71.1710225,42.3376723]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1435795739,"name":"Commonwealth Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1720583,42.3371882],[-71.1720444,42.3371794]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1435795740,"name":"College Road","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.172073,42.3371228],[-71.1720642,42.3371242]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1435795741,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.172259,42.3370891],[-71.1721962,42.3370274]]}},
@@ -4380,7 +4380,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340445,"name":"Saint Thomas More Road","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1656986,42.3390364],[-71.1657359,42.3389996]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340446,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.165578,42.339116],[-71.165612,42.3391093]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476340447,"name":"Saint Thomas More Road","level":true,"crossing":"uncontrolled","kerb":"unknown","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1656828,42.3389856],[-71.1656377,42.3389704],[-71.1655978,42.338957]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340448,"name":"Saint Thomas More Road","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1660343,42.339123],[-71.1660346,42.3390862]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340448,"name":"Campanella Way","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1660343,42.339123],[-71.1660346,42.3390862]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340449,"name":"Saint Thomas More Road","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1661101,42.3393062],[-71.1661004,42.3392988]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340450,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1642857,42.3412488],[-71.1642705,42.3412425]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340451,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1634221,42.3415919],[-71.1634249,42.3416021]]}},
@@ -4398,7 +4398,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340467,"name":"Foster Street"},"geometry":{"type":"LineString","coordinates":[[-71.1579885,42.346103],[-71.1580064,42.3460949]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340468,"name":"Glenmont Road"},"geometry":{"type":"LineString","coordinates":[[-71.1582063,42.3461347],[-71.1582179,42.3461425]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340469,"name":"Rogers Park Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1582775,42.3466997],[-71.1582804,42.3466863]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340470,"name":"Foster Street"},"geometry":{"type":"LineString","coordinates":[[-71.1583019,42.3466097],[-71.1583078,42.346588]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340470,"name":"Rogers Park Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1583019,42.3466097],[-71.1583078,42.346588]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340471,"name":"Rogers Park Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1604879,42.3472885],[-71.1604953,42.3472764],[-71.1604781,42.3472751]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340472,"name":"Rogers Park Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1604441,42.3473581],[-71.1604364,42.3473687]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340473,"name":"Willoughby Street"},"geometry":{"type":"LineString","coordinates":[[-71.1603688,42.3472467],[-71.160369,42.3472377]]}},
@@ -4406,7 +4406,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340475,"name":"Willoughby Street"},"geometry":{"type":"LineString","coordinates":[[-71.1606888,42.3466341],[-71.1606775,42.3466225]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340476,"name":"Trapelo Street"},"geometry":{"type":"LineString","coordinates":[[-71.1606369,42.3467158],[-71.1606175,42.3467225]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340477,"name":"Trapelo Street"},"geometry":{"type":"LineString","coordinates":[[-71.1616264,42.3469747],[-71.16162,42.3469846]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340478,"name":"Trapelo Street"},"geometry":{"type":"LineString","coordinates":[[-71.1616841,42.3469043],[-71.1616722,42.3469166]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340478,"name":"Lake Street"},"geometry":{"type":"LineString","coordinates":[[-71.1616841,42.3469043],[-71.1616722,42.3469166]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340479,"name":"Lake Street"},"geometry":{"type":"LineString","coordinates":[[-71.1606065,42.3488317],[-71.1606567,42.3487175],[-71.1608847,42.3483635],[-71.1610988,42.348031],[-71.1613407,42.3476564],[-71.1613534,42.3476263],[-71.1614307,42.3475093],[-71.1615811,42.3472697],[-71.1616929,42.3471119],[-71.1617008,42.3470981]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476340480,"name":"Lake Street","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1617008,42.3470981],[-71.1617279,42.3470507],[-71.16175,42.3470118]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340481,"name":"Rogers Park Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1612794,42.3475085],[-71.1612809,42.3474978]]}},
@@ -4444,14 +4444,14 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340516,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1504591,42.3488817],[-71.1504828,42.348879]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340517,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1501907,42.3489064],[-71.1502125,42.3489096]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340518,"name":"Henshaw Street"},"geometry":{"type":"LineString","coordinates":[[-71.1496962,42.3493653],[-71.14968,42.3493834]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340519,"name":"Cambridge Street"},"geometry":{"type":"LineString","coordinates":[[-71.1474423,42.3501495],[-71.1474071,42.350139]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340519,"name":"Sparhawk Street"},"geometry":{"type":"LineString","coordinates":[[-71.1474423,42.3501495],[-71.1474071,42.350139]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340520,"name":"Cambridge Street"},"geometry":{"type":"LineString","coordinates":[[-71.1471567,42.3500667],[-71.1471258,42.350055]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340521,"name":"Sparhawk Street"},"geometry":{"type":"LineString","coordinates":[[-71.1473756,42.3501868],[-71.1474002,42.350174]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340522,"name":"Sparhawk Street"},"geometry":{"type":"LineString","coordinates":[[-71.1472547,42.3502495],[-71.1472706,42.350236]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340523,"name":"Cambridge Street"},"geometry":{"type":"LineString","coordinates":[[-71.1464803,42.3502984],[-71.1464563,42.3502928]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340524,"name":"Warren Street"},"geometry":{"type":"LineString","coordinates":[[-71.1456772,42.350017],[-71.1456816,42.3500042]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340525,"name":"Warren Street"},"geometry":{"type":"LineString","coordinates":[[-71.1457129,42.3499149],[-71.1457166,42.3499047]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340526,"name":"Dustin Street"},"geometry":{"type":"LineString","coordinates":[[-71.1455909,42.3509026],[-71.1456011,42.3509176]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340526,"name":"Cambridge Street"},"geometry":{"type":"LineString","coordinates":[[-71.1455909,42.3509026],[-71.1456011,42.3509176]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340527,"name":"Cambridge Street"},"geometry":{"type":"LineString","coordinates":[[-71.145481,42.3507415],[-71.1454906,42.3507555]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340538,"name":"Commonwealth Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1532985,42.3383073],[-71.1533096,42.3383192]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340539,"name":"Beacon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1494145,42.3363888],[-71.1494188,42.336405]]}},
@@ -4465,7 +4465,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340548,"name":"Chestnut Hill Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1512034,42.3361402],[-71.1512426,42.3361404]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340549,"name":"Beacon Street","wheelchair":"limited"},"geometry":{"type":"LineString","coordinates":[[-71.1512604,42.3361115],[-71.1512416,42.3360869]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340550,"name":"Chestnut Hill Avenue","wheelchair":"limited"},"geometry":{"type":"LineString","coordinates":[[-71.150859,42.3358099],[-71.1508757,42.3358064]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340551,"name":"Lanark Road"},"geometry":{"type":"LineString","coordinates":[[-71.1473932,42.3407021],[-71.1474011,42.3406958]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340551,"name":"Sutherland Road"},"geometry":{"type":"LineString","coordinates":[[-71.1473932,42.3407021],[-71.1474011,42.3406958]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476340552},"geometry":{"type":"LineString","coordinates":[[-71.1528135,42.3415241],[-71.1528129,42.3415373]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476352160},"geometry":{"type":"LineString","coordinates":[[-71.1578788,42.3472031],[-71.157904,42.3472098]]}},
{"type":"Feature","properties":{"Type":"Stairs","osm":1476352161},"geometry":{"type":"LineString","coordinates":[[-71.157904,42.3472098],[-71.1579367,42.3472184]]}},
@@ -4473,12 +4473,12 @@
{"type":"Feature","properties":{"Type":"Stairs","osm":1476352163},"geometry":{"type":"LineString","coordinates":[[-71.1579675,42.3472266],[-71.1580016,42.3472357]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476352164},"geometry":{"type":"LineString","coordinates":[[-71.1583215,42.347319],[-71.1584116,42.34734]]}},
{"type":"Feature","properties":{"Type":"Stairs","osm":1476352165},"geometry":{"type":"LineString","coordinates":[[-71.1582876,42.3473095],[-71.1583215,42.347319]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476358049,"name":"Kirkwood Road"},"geometry":{"type":"LineString","coordinates":[[-71.1588928,42.3414609],[-71.1588775,42.3414738]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476358049,"name":"Foster Street"},"geometry":{"type":"LineString","coordinates":[[-71.1588928,42.3414609],[-71.1588775,42.3414738]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476358050,"name":"Greycliff Road"},"geometry":{"type":"LineString","coordinates":[[-71.1590788,42.3414347],[-71.1590778,42.3414244]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476358051,"name":"Greycliff Road"},"geometry":{"type":"LineString","coordinates":[[-71.1591457,42.3413367],[-71.1591253,42.3413402]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476358052,"name":"Greycliff Road","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1590778,42.3414244],[-71.1591035,42.3413789],[-71.1591253,42.3413402]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476358053,"name":"Gerald Road"},"geometry":{"type":"LineString","coordinates":[[-71.1597719,42.3415364],[-71.1597696,42.3415205]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476358054,"name":"Gerald Road"},"geometry":{"type":"LineString","coordinates":[[-71.1598975,42.3415718],[-71.159875,42.3415666]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476358054,"name":"Greycliff Road"},"geometry":{"type":"LineString","coordinates":[[-71.1598975,42.3415718],[-71.159875,42.3415666]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476358055,"name":"Foster Street"},"geometry":{"type":"LineString","coordinates":[[-71.1597857,42.3401581],[-71.1597751,42.3401491]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476358056,"name":"Foster Street"},"geometry":{"type":"LineString","coordinates":[[-71.1596312,42.3401373],[-71.1596111,42.3401396]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476358057,"name":"South Street"},"geometry":{"type":"LineString","coordinates":[[-71.1575688,42.3397485],[-71.1575848,42.3397541]]}},
@@ -4543,7 +4543,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476358124},"geometry":{"type":"LineString","coordinates":[[-71.1628532,42.336341],[-71.1628337,42.3362968],[-71.1628082,42.3362681],[-71.162595,42.3362373],[-71.1625155,42.3362311]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476358125,"name":"Chestnut Hill Driveway","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1628834,42.3364176],[-71.1628672,42.3363765],[-71.1628532,42.336341]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476358126,"name":"Beacon Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1654165,42.3337992],[-71.1654095,42.3337517]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476358127,"name":"Acacia Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.166666,42.3334633],[-71.1666869,42.3334621]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476358127,"name":"Beacon Street"},"geometry":{"type":"LineString","coordinates":[[-71.166666,42.3334633],[-71.1666869,42.3334621]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476358128,"name":"Beacon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1668598,42.3334519],[-71.1668842,42.3334504]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476358129,"name":"Beacon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1677752,42.3335044],[-71.1677852,42.3335212]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476358130,"name":"Beacon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1677304,42.333349],[-71.167733,42.3333664]]}},
@@ -4570,10 +4570,10 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476358152,"name":"Beacon Street","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.172666,42.3329649],[-71.1726558,42.3329455]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476358153,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1734177,42.3333884],[-71.1734287,42.3333823],[-71.1734878,42.3333555],[-71.1735512,42.3333267]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476358154,"name":"Hammond Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1733557,42.3334216],[-71.1733849,42.3334059],[-71.1734177,42.3333884]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476358761,"name":"Beacon Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.204363,42.3307341],[-71.2043202,42.3307223],[-71.2042205,42.3307059],[-71.2034452,42.3306613],[-71.2028673,42.3306594],[-71.201416,42.3306341],[-71.2013703,42.3306421],[-71.2013541,42.3306449]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476358762,"name":"Newbury Street"},"geometry":{"type":"LineString","coordinates":[[-71.2040734,42.3305632],[-71.2034967,42.3305472]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476358761,"name":"Hancock Avenue","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.204363,42.3307341],[-71.2043202,42.3307223],[-71.2042205,42.3307059],[-71.2034452,42.3306613],[-71.2028673,42.3306594],[-71.201416,42.3306341],[-71.2013703,42.3306421],[-71.2013541,42.3306449]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476358762,"name":"Albion Street"},"geometry":{"type":"LineString","coordinates":[[-71.2040734,42.3305632],[-71.2034967,42.3305472]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476358763,"name":"Newbury Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2034967,42.3305472],[-71.2034204,42.3305472],[-71.2033462,42.3305472]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476358764,"name":"Beacon Street"},"geometry":{"type":"LineString","coordinates":[[-71.2033462,42.3305472],[-71.2023704,42.3305291]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476358764,"name":"Newbury Street"},"geometry":{"type":"LineString","coordinates":[[-71.2033462,42.3305472],[-71.2023704,42.3305291]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476358765,"name":"Crystal Street","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2023704,42.3305291],[-71.2022835,42.3305237],[-71.2022299,42.3305204]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476358766,"name":"Beacon Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2000016,42.3306128],[-71.1991992,42.3305438],[-71.1990032,42.3305276],[-71.1989162,42.3305302],[-71.1989038,42.3305306]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476358767,"name":"Hancock Avenue","surface":"asphalt","crossing":"uncontrolled","kerb":"flush"},"geometry":{"type":"LineString","coordinates":[[-71.2013541,42.3306449],[-71.2013,42.3306454],[-71.201256,42.3306458]]}},
@@ -4590,7 +4590,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1476362823,"name":"Boylston Street","surface":"asphalt","crossing":"traffic_signals","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1945032,42.3191783],[-71.1944987,42.3192246],[-71.1944947,42.3192651]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476362824,"name":"Boylston Street"},"geometry":{"type":"LineString","coordinates":[[-71.1944337,42.3190837],[-71.1944411,42.3191404],[-71.194459,42.3191501],[-71.1945067,42.3191632],[-71.1945032,42.3191783]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476362825,"name":"Boylston Street","level":true},"geometry":{"type":"LineString","coordinates":[[-71.1944721,42.3189078],[-71.1944337,42.3190837]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476362826,"name":"Parker Street"},"geometry":{"type":"LineString","coordinates":[[-71.1945736,42.3188302],[-71.1945668,42.3188499],[-71.1945397,42.3188527],[-71.1945188,42.318859],[-71.1945059,42.3188688],[-71.1944846,42.3188929],[-71.1944721,42.3189078]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476362826,"name":"Boylston Street"},"geometry":{"type":"LineString","coordinates":[[-71.1945736,42.3188302],[-71.1945668,42.3188499],[-71.1945397,42.3188527],[-71.1945188,42.318859],[-71.1945059,42.3188688],[-71.1944846,42.3188929],[-71.1944721,42.3189078]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476362827,"name":"Parker Street","surface":"asphalt","crossing":"traffic_signals","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1945962,42.3187683],[-71.194585,42.3187992],[-71.1945736,42.3188302]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476362828,"name":"Parker Street"},"geometry":{"type":"LineString","coordinates":[[-71.1944984,42.3186561],[-71.1945194,42.3186569],[-71.1945159,42.3186817],[-71.1945223,42.318698],[-71.1945397,42.3187281],[-71.1945687,42.3187452],[-71.1945965,42.3187582],[-71.1945962,42.3187683]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476362829,"name":"Parker Street","surface":"asphalt","crossing":"traffic_signals","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1943884,42.3186431],[-71.1944381,42.318649],[-71.1944984,42.3186561]]}},
@@ -4616,7 +4616,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1476364258,"name":"Newtonville Avenue","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1942488,42.3534921],[-71.1942367,42.3534582],[-71.1942232,42.3534202]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476365588,"name":"Dedham Street"},"geometry":{"type":"LineString","coordinates":[[-71.2049051,42.315598],[-71.2046394,42.3155179],[-71.204469,42.3154721],[-71.2044222,42.3154571],[-71.2043614,42.3154383],[-71.2042191,42.3153892],[-71.2041173,42.3153445],[-71.2035654,42.3151186],[-71.2033978,42.3150258],[-71.2033289,42.3149673],[-71.2031212,42.3147695],[-71.2029638,42.3146106],[-71.2029083,42.3145733],[-71.2027808,42.3145239],[-71.2022624,42.3143505],[-71.2019376,42.3142754]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476365589,"name":"Dedham Street"},"geometry":{"type":"LineString","coordinates":[[-71.2051243,42.3155052],[-71.2054266,42.3155759],[-71.2062632,42.3158191]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476365596,"name":"Dedham Street"},"geometry":{"type":"LineString","coordinates":[[-71.2063814,42.315851],[-71.2071634,42.3160833]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476365596,"name":"Verndale Road"},"geometry":{"type":"LineString","coordinates":[[-71.2063814,42.315851],[-71.2071634,42.3160833]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476365597,"name":"Verndale Road","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2062632,42.3158191],[-71.2063373,42.3158391],[-71.2063814,42.315851]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476365598,"name":"Dedham Street"},"geometry":{"type":"LineString","coordinates":[[-71.2079225,42.3163962],[-71.2072189,42.31624],[-71.206816,42.3161381],[-71.2051198,42.3156443],[-71.2050468,42.3156351]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476365599,"name":"Stony Brae Road","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2050468,42.3156351],[-71.2049659,42.3156139],[-71.2049051,42.315598]]}},
@@ -4625,36 +4625,36 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1476365615,"name":"Washington Street","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1958651,42.3548342],[-71.1958814,42.3548758],[-71.1959097,42.3549267]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476365616},"geometry":{"type":"LineString","coordinates":[[-71.1958576,42.3548165],[-71.1958651,42.3548342]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476365617,"name":"Washington Street","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1958456,42.3547501],[-71.1958482,42.3547747],[-71.1958576,42.3548165]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476366205,"name":"Beacon Street"},"geometry":{"type":"LineString","coordinates":[[-71.185983,42.3313904],[-71.1851268,42.3315278],[-71.1842818,42.3316269]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476366205,"name":"Glen Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.185983,42.3313904],[-71.1851268,42.3315278],[-71.1842818,42.3316269]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476366206,"name":"Beacon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1824774,42.3320081],[-71.1840014,42.3318357],[-71.184016,42.3318317],[-71.1840424,42.331822]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476366207,"name":"Bishopsgate Road","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1840424,42.331822],[-71.1841488,42.3318121],[-71.1842597,42.3318018]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476366208,"name":"Beacon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1842597,42.3318018],[-71.1842912,42.3317974],[-71.1845568,42.3317852],[-71.1867089,42.331453]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476366208,"name":"Bishopsgate Road"},"geometry":{"type":"LineString","coordinates":[[-71.1842597,42.3318018],[-71.1842912,42.3317974],[-71.1845568,42.3317852],[-71.1867089,42.331453]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476366209},"geometry":{"type":"LineString","coordinates":[[-71.1868028,42.3314413],[-71.1869204,42.3314203]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476366210,"name":"Gray Cliff Road","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1869204,42.3314203],[-71.1869609,42.3314156],[-71.1869952,42.3314116]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476366211,"name":"Gray Cliff Road","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1867089,42.331453],[-71.1867568,42.331447],[-71.1868028,42.3314413]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476366212,"name":"Beacon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1869952,42.3314116],[-71.1880846,42.3312416],[-71.188183,42.3312262]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476366212,"name":"Gray Cliff Road"},"geometry":{"type":"LineString","coordinates":[[-71.1869952,42.3314116],[-71.1880846,42.3312416],[-71.188183,42.3312262]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476366213,"name":"Grant Avenue","surface":"asphalt","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.188183,42.3312262],[-71.1882885,42.3312116],[-71.1883703,42.3312003]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476366214,"name":"Beacon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1883703,42.3312003],[-71.1884734,42.3311806],[-71.1884643,42.3311564]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476366215,"name":"Beacon Street","surface":"asphalt","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1884643,42.3311564],[-71.1884451,42.3310937],[-71.1884263,42.3310324]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476366216,"name":"Beacon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1884263,42.3310324],[-71.1884233,42.3310084],[-71.1875748,42.3311419],[-71.1871869,42.3312054],[-71.1871349,42.3312128]]}},
-{"type":"Feature","properties":{"Type":"Crossing","osm":1476366217,"name":"Cousens Circle","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1871349,42.3312128],[-71.1870377,42.3312266],[-71.1869703,42.3312362]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476366218,"name":"Beacon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1869703,42.3312362],[-71.186861,42.3312518],[-71.1861212,42.3313682]]}},
-{"type":"Feature","properties":{"Type":"Crossing","osm":1476366219,"name":"Glen Avenue","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1861212,42.3313682],[-71.1860448,42.3313805],[-71.185983,42.3313904]]}},
+{"type":"Feature","properties":{"Type":"Crossing","osm":1476366217,"name":"Cousens Circle","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1871349,42.3312128],[-71.1870396,42.3312261],[-71.1869703,42.3312362]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476366218,"name":"Cousens Circle"},"geometry":{"type":"LineString","coordinates":[[-71.1869703,42.3312362],[-71.186861,42.3312518],[-71.1861212,42.3313682]]}},
+{"type":"Feature","properties":{"Type":"Crossing","osm":1476366219,"name":"Glen Avenue","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1861212,42.3313682],[-71.1860388,42.3313809],[-71.185983,42.3313904]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476366220,"name":"Tudor Road","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1762031,42.3323111],[-71.1762775,42.332288],[-71.1763468,42.3322664]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476366221,"name":"Tudor Road"},"geometry":{"type":"LineString","coordinates":[[-71.176186,42.3323163],[-71.1762031,42.3323111]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476369504,"name":"Willow Street"},"geometry":{"type":"LineString","coordinates":[[-71.1933236,42.3333134],[-71.193306,42.3333238],[-71.1932185,42.3331679],[-71.1931392,42.3330673],[-71.1930877,42.3330205],[-71.1921805,42.3320545],[-71.1921591,42.3320417],[-71.1921329,42.3320301],[-71.1920816,42.3320122]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476369505,"name":"Sumner Street"},"geometry":{"type":"LineString","coordinates":[[-71.1924614,42.3306421],[-71.1924279,42.3306832],[-71.1924199,42.3307092],[-71.1923533,42.3309818],[-71.192278,42.3312799],[-71.1922254,42.3314935],[-71.1922081,42.331562],[-71.1921673,42.3317291]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476369506,"name":"Lyman Street"},"geometry":{"type":"LineString","coordinates":[[-71.1921673,42.3317291],[-71.192485,42.3317849],[-71.1927345,42.3318261],[-71.1929544,42.3318668],[-71.1930839,42.3318866],[-71.1932219,42.3319095],[-71.1934388,42.3319483],[-71.1938367,42.3320262],[-71.193847,42.3320242],[-71.1938557,42.3320218],[-71.1938844,42.3320166]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476369507,"name":"Chesley Road"},"geometry":{"type":"LineString","coordinates":[[-71.192044,42.3305727],[-71.1914187,42.3306699],[-71.1909687,42.330737],[-71.1909444,42.3307406]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476369507,"name":"Beacon Street"},"geometry":{"type":"LineString","coordinates":[[-71.192044,42.3305727],[-71.1914187,42.3306699],[-71.1909687,42.330737],[-71.1909444,42.3307406]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476369508,"name":"Chesley Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1909444,42.3307406],[-71.1908741,42.330755],[-71.1907995,42.3307704]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476369509,"name":"Beacon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1907995,42.3307704],[-71.1907749,42.3307731],[-71.1907341,42.3307731],[-71.1897489,42.3309586],[-71.1897324,42.330962],[-71.1897103,42.3309665]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476369509,"name":"Chesley Road"},"geometry":{"type":"LineString","coordinates":[[-71.1907995,42.3307704],[-71.1907749,42.3307731],[-71.1907341,42.3307731],[-71.1897489,42.3309586],[-71.1897324,42.330962],[-71.1897103,42.3309665]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476369510,"name":"Dalton Road","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1897103,42.3309665],[-71.1896368,42.3309773],[-71.1895826,42.3309852]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476369511,"name":"Beacon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1895826,42.3309852],[-71.1895644,42.3309887],[-71.1891026,42.3310784],[-71.1884734,42.3311806]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476369511,"name":"Dalton Road"},"geometry":{"type":"LineString","coordinates":[[-71.1895826,42.3309852],[-71.1895644,42.3309887],[-71.1891026,42.3310784],[-71.1884734,42.3311806]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476369512,"name":"Beacon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1884233,42.3310084],[-71.1893539,42.3308576],[-71.1896614,42.3308078]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476369513,"name":"Union Street"},"geometry":{"type":"LineString","coordinates":[[-71.1913453,42.3301006],[-71.1913366,42.3301346],[-71.1913363,42.3301614],[-71.1913314,42.3301804],[-71.1913133,42.3302043],[-71.191223,42.3302839],[-71.1910153,42.3304142],[-71.1909239,42.3304594],[-71.1906173,42.3306111],[-71.1905346,42.3306377],[-71.1904096,42.3306642],[-71.1897486,42.3307911],[-71.1897077,42.3307989],[-71.1896614,42.3308078]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476369514,"name":"Union Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1914819,42.330185],[-71.1914385,42.3301716],[-71.1913949,42.3301585]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476369515,"name":"Langley Road"},"geometry":{"type":"LineString","coordinates":[[-71.1913949,42.3301585],[-71.1913366,42.3301346],[-71.1910115,42.329984]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476369516,"name":"Langley Road"},"geometry":{"type":"LineString","coordinates":[[-71.1914924,42.3300259],[-71.1914336,42.3299999]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476369516,"name":"Union Street"},"geometry":{"type":"LineString","coordinates":[[-71.1914924,42.3300259],[-71.1914336,42.3299999]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476369517,"name":"Beacon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1897489,42.3309586],[-71.1897412,42.3309227]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476369518,"name":"Beacon Street","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1897412,42.3309227],[-71.1897258,42.3308749],[-71.1897105,42.3308277]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476369519,"name":"Beacon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1897105,42.3308277],[-71.1897077,42.3307989]]}},
@@ -4674,9 +4674,9 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1476644750,"name":"College Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1720928,42.3341244],[-71.172116,42.334135],[-71.172145,42.3341483]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476644751,"name":"College Road","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1721596,42.3341554],[-71.172145,42.3341483]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476644752,"name":"Hammond Street","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1734679,42.3335487],[-71.1734748,42.333545]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476644756,"name":"Quincy Road","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1721497,42.3342028],[-71.1721358,42.3342098]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476644756,"name":"College Road","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1721497,42.3342028],[-71.1721358,42.3342098]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476644757,"name":"Quincy Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1721358,42.3342098],[-71.1720989,42.3342507],[-71.1720625,42.3342912]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476644758,"name":"Old Colony Road","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1720625,42.3342912],[-71.1720599,42.3343025],[-71.1720283,42.3343103],[-71.1719971,42.3343299],[-71.1717981,42.3345539],[-71.171784,42.3345799],[-71.1717718,42.3346378],[-71.1716223,42.3355672],[-71.1716021,42.3356928],[-71.1715935,42.3357488],[-71.1715957,42.3357908],[-71.1716207,42.3359525],[-71.1716405,42.3360374],[-71.1716713,42.3361577],[-71.1716993,42.3362548],[-71.1717192,42.3363241],[-71.1717527,42.3363914],[-71.1718105,42.3365074],[-71.1718463,42.3365793],[-71.1718514,42.3365896],[-71.171889,42.3366541],[-71.1720384,42.3368739],[-71.1720905,42.3369172],[-71.172125,42.33692],[-71.1722093,42.3368922],[-71.1722335,42.3368728],[-71.1723155,42.3367818],[-71.1724242,42.3366632],[-71.1726354,42.3364417],[-71.1726412,42.3364316],[-71.1726463,42.3364226],[-71.1726442,42.336404],[-71.1726428,42.3363922],[-71.1726349,42.3363665],[-71.1725247,42.3362363],[-71.1724618,42.3361682],[-71.1724239,42.3361272],[-71.1723784,42.3360578],[-71.1723283,42.3359632],[-71.1722975,42.3358671],[-71.1722938,42.3358558],[-71.1722781,42.3357844],[-71.1722737,42.3357644],[-71.1722725,42.3356617],[-71.1722806,42.3355367],[-71.1722955,42.3354811],[-71.1723724,42.3353264],[-71.1723938,42.3352843],[-71.172472,42.3351301],[-71.1724746,42.3351251],[-71.1726437,42.3347885],[-71.1726629,42.3347503],[-71.1726819,42.3347055],[-71.1726736,42.3346767],[-71.1724983,42.3345563],[-71.1721538,42.334344],[-71.1720971,42.3343104],[-71.1720599,42.3343025]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476644758,"name":"College Road","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1720625,42.3342912],[-71.1720599,42.3343025],[-71.1720283,42.3343103],[-71.1719971,42.3343299],[-71.1717981,42.3345539],[-71.171784,42.3345799],[-71.1717718,42.3346378],[-71.1716223,42.3355672],[-71.1716021,42.3356928],[-71.1715935,42.3357488],[-71.1715957,42.3357908],[-71.1716207,42.3359525],[-71.1716405,42.3360374],[-71.1716713,42.3361577],[-71.1716993,42.3362548],[-71.1717192,42.3363241],[-71.1717527,42.3363914],[-71.1718105,42.3365074],[-71.1718463,42.3365793],[-71.1718514,42.3365896],[-71.171889,42.3366541],[-71.1720384,42.3368739],[-71.1720905,42.3369172],[-71.172125,42.33692],[-71.1722093,42.3368922],[-71.1722335,42.3368728],[-71.1723155,42.3367818],[-71.1724242,42.3366632],[-71.1726354,42.3364417],[-71.1726412,42.3364316],[-71.1726463,42.3364226],[-71.1726442,42.336404],[-71.1726428,42.3363922],[-71.1726349,42.3363665],[-71.1725247,42.3362363],[-71.1724618,42.3361682],[-71.1724239,42.3361272],[-71.1723784,42.3360578],[-71.1723283,42.3359632],[-71.1722975,42.3358671],[-71.1722938,42.3358558],[-71.1722781,42.3357844],[-71.1722737,42.3357644],[-71.1722725,42.3356617],[-71.1722806,42.3355367],[-71.1722955,42.3354811],[-71.1723724,42.3353264],[-71.1723938,42.3352843],[-71.172472,42.3351301],[-71.1724746,42.3351251],[-71.1726437,42.3347885],[-71.1726629,42.3347503],[-71.1726819,42.3347055],[-71.1726736,42.3346767],[-71.1724983,42.3345563],[-71.1721538,42.334344],[-71.1720971,42.3343104],[-71.1720599,42.3343025]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476644759,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.172125,42.3340657],[-71.1718189,42.3341204],[-71.1716817,42.3341541]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476644760,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1718405,42.3341804],[-71.1718434,42.3341885],[-71.1717191,42.3342161],[-71.1717277,42.3342396]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476644761,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1718189,42.3341204],[-71.1718377,42.3341728]]}},
@@ -4724,7 +4724,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476644804,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1702936,42.3360059],[-71.1703384,42.3360972],[-71.1703649,42.3361798],[-71.1704047,42.3363035],[-71.1704834,42.3365109],[-71.1705121,42.3365866],[-71.1704486,42.3366001],[-71.1701249,42.3366689],[-71.1699727,42.3362574],[-71.1703649,42.3361798]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476644805,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1704834,42.3365109],[-71.1706499,42.3364781]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476644806,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1704486,42.3366001],[-71.1704645,42.3366383]]}},
-{"type":"Feature","properties":{"Type":"Crossing","osm":1476644807,"name":"Linden Lane","crossing":"uncontrolled","kerb":"unknown","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1711064,42.3371333],[-71.1710605,42.3371424],[-71.1709994,42.3371544]]}},
+{"type":"Feature","properties":{"Type":"Crossing","osm":1476644807,"crossing":"uncontrolled","kerb":"unknown","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1711064,42.3371333],[-71.1710605,42.3371424],[-71.1709994,42.3371544]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476644808,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1711064,42.3371333],[-71.1712012,42.3371156],[-71.1714948,42.3370563]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476644809,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1709994,42.3371544],[-71.1709065,42.3371751]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476644810,"name":"Priscilla Road"},"geometry":{"type":"LineString","coordinates":[[-71.1724958,42.3370055],[-71.1724754,42.3369847],[-71.1724603,42.3369491],[-71.1724628,42.3369239],[-71.1724867,42.3368684],[-71.1727227,42.3366525],[-71.1727705,42.3366009],[-71.1728616,42.3364986],[-71.172914,42.3364465],[-71.1729193,42.3364413],[-71.1729663,42.3364137],[-71.1730253,42.3363868],[-71.1730597,42.3363794],[-71.1731006,42.3363706],[-71.1731289,42.3363699],[-71.1731623,42.336369],[-71.1732573,42.3363746],[-71.1735007,42.3364013],[-71.1735171,42.3364027],[-71.173551,42.3364056],[-71.1735894,42.3364021],[-71.1736383,42.3363976],[-71.1737877,42.336355],[-71.1738453,42.336322],[-71.1738876,42.3362978],[-71.1738929,42.3362918],[-71.1739514,42.3362251],[-71.1739963,42.3361377],[-71.1740785,42.3359804],[-71.1741686,42.3358079],[-71.1741955,42.3357564],[-71.174247,42.3356534],[-71.1743148,42.3355177],[-71.1744114,42.3353243],[-71.1745015,42.3351461],[-71.1746001,42.3349511],[-71.1746256,42.3349006],[-71.1746813,42.3347871],[-71.1746864,42.3347768],[-71.1747169,42.3347636]]}},
@@ -4733,9 +4733,9 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476644813,"name":"Priscilla Road"},"geometry":{"type":"LineString","coordinates":[[-71.1745647,42.3347623],[-71.1745508,42.3347734],[-71.1743601,42.3351452],[-71.1742967,42.3352494],[-71.1742651,42.3352591],[-71.1742203,42.3352583]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476644815},"geometry":{"type":"LineString","coordinates":[[-71.1746813,42.3347871],[-71.1747637,42.3348173],[-71.1748004,42.3348326],[-71.1748144,42.3348478],[-71.1748171,42.3348677],[-71.1748109,42.3348903]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476644816},"geometry":{"type":"LineString","coordinates":[[-71.1746962,42.3349712],[-71.1746001,42.3349511]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476644817,"name":"Quincy Road"},"geometry":{"type":"LineString","coordinates":[[-71.1742651,42.3352591],[-71.1742637,42.3352718]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476644817,"name":"Priscilla Road"},"geometry":{"type":"LineString","coordinates":[[-71.1742651,42.3352591],[-71.1742637,42.3352718]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476644818,"name":"Quincy Road","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1742637,42.3352718],[-71.1742489,42.3353272],[-71.1742328,42.3353875]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476644822,"name":"Old Colony Road"},"geometry":{"type":"LineString","coordinates":[[-71.1742328,42.3353875],[-71.1742193,42.335392],[-71.1741991,42.3353722],[-71.1741561,42.3353567],[-71.1740508,42.3353493],[-71.1739242,42.3353317],[-71.1738387,42.3353104],[-71.173759,42.3352905],[-71.1736143,42.3352368],[-71.1735719,42.3352265],[-71.1735324,42.3352314],[-71.1734983,42.3352479],[-71.1734817,42.3352733],[-71.1734466,42.3353468],[-71.1733912,42.3354624],[-71.1731655,42.335909],[-71.1731112,42.3360165],[-71.1730353,42.3361677],[-71.1730276,42.3361926],[-71.1730373,42.3362203],[-71.1730523,42.3362424],[-71.1730775,42.3362609],[-71.1731069,42.336268],[-71.1735244,42.3363112],[-71.1735692,42.336312],[-71.1736148,42.336307],[-71.173662,42.3362988],[-71.1737162,42.3362816],[-71.1737601,42.3362589],[-71.1737992,42.3362292],[-71.1738322,42.3361925],[-71.1738711,42.3361214],[-71.1739097,42.3360509],[-71.173997,42.3358691],[-71.1741327,42.3356052],[-71.1741408,42.3355883],[-71.1742178,42.3354287],[-71.1742193,42.335392]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476644822,"name":"Priscilla Road"},"geometry":{"type":"LineString","coordinates":[[-71.1742328,42.3353875],[-71.1742193,42.335392],[-71.1741991,42.3353722],[-71.1741561,42.3353567],[-71.1740508,42.3353493],[-71.1739242,42.3353317],[-71.1738387,42.3353104],[-71.173759,42.3352905],[-71.1736143,42.3352368],[-71.1735719,42.3352265],[-71.1735324,42.3352314],[-71.1734983,42.3352479],[-71.1734817,42.3352733],[-71.1734466,42.3353468],[-71.1733912,42.3354624],[-71.1731655,42.335909],[-71.1731112,42.3360165],[-71.1730353,42.3361677],[-71.1730276,42.3361926],[-71.1730373,42.3362203],[-71.1730523,42.3362424],[-71.1730775,42.3362609],[-71.1731069,42.336268],[-71.1735244,42.3363112],[-71.1735692,42.336312],[-71.1736148,42.336307],[-71.173662,42.3362988],[-71.1737162,42.3362816],[-71.1737601,42.3362589],[-71.1737992,42.3362292],[-71.1738322,42.3361925],[-71.1738711,42.3361214],[-71.1739097,42.3360509],[-71.173997,42.3358691],[-71.1741327,42.3356052],[-71.1741408,42.3355883],[-71.1742178,42.3354287],[-71.1742193,42.335392]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476644829},"geometry":{"type":"LineString","coordinates":[[-71.1735171,42.3364027],[-71.1735073,42.3364286],[-71.1734995,42.3364641],[-71.1734995,42.3365002],[-71.173503,42.3365157]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476644831},"geometry":{"type":"LineString","coordinates":[[-71.1730016,42.3365176],[-71.172914,42.3364465]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476644832,"name":"Priscilla Road"},"geometry":{"type":"LineString","coordinates":[[-71.1730597,42.3363794],[-71.1730493,42.3363637]]}},
@@ -4747,7 +4747,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476644843,"name":"Old Colony Road"},"geometry":{"type":"LineString","coordinates":[[-71.1726412,42.3364316],[-71.1726654,42.3364443]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476644844,"name":"Old Colony Road"},"geometry":{"type":"LineString","coordinates":[[-71.1728616,42.3364986],[-71.1728201,42.3364904]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476644845,"name":"Old Colony Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1728201,42.3364904],[-71.1727359,42.3364653],[-71.1726654,42.3364443]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476644846,"name":"Mayflower Road","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1726349,42.3363665],[-71.1726489,42.3363469]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476644846,"name":"Old Colony Road","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1726349,42.3363665],[-71.1726489,42.3363469]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476644847,"name":"Mayflower Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1726489,42.3363469],[-71.1726941,42.3362532],[-71.1727144,42.3362112]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476644848,"name":"Old Colony Road","campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1727144,42.3362112],[-71.1727161,42.3361959],[-71.1727502,42.3361981],[-71.1727711,42.3361962],[-71.1727965,42.3361939],[-71.1728358,42.3361831],[-71.1728735,42.3361632],[-71.1728833,42.3361549],[-71.172903,42.3361384],[-71.1729387,42.3360895],[-71.173128,42.3357045]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476644849,"name":"Old Colony Road"},"geometry":{"type":"LineString","coordinates":[[-71.1728996,42.3361658],[-71.1728833,42.3361549]]}},
@@ -4814,8 +4814,8 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476653580,"name":"Chestnut Hill Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1462089,42.3307589],[-71.1461911,42.3307595]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476653581,"name":"Chestnut Hill Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1460606,42.3299872],[-71.1460377,42.3299917]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476653582,"name":"Chestnut Hill Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1458904,42.3300222],[-71.1458758,42.3300254]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476653583,"name":"Chestnut Hill Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1460471,42.3299478],[-71.1460555,42.3299687]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476653584,"name":"Ackers Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1459822,42.3298203],[-71.1459929,42.3298383]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476653583,"name":"Ackers Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1460471,42.3299478],[-71.1460555,42.3299687]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476653584,"name":"Chestnut Hill Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1459822,42.3298203],[-71.1459929,42.3298383]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476661514,"name":"Radnor Road"},"geometry":{"type":"LineString","coordinates":[[-71.15923,42.3408353],[-71.1592428,42.3408225]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476661515,"name":"Radnor Road"},"geometry":{"type":"LineString","coordinates":[[-71.1591812,42.3409174],[-71.1591876,42.3409103]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476661516,"name":"Chestnut Hill Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1539654,42.3426057],[-71.1541709,42.34231],[-71.1542819,42.3421373],[-71.154287,42.3421293]]}},
@@ -4875,7 +4875,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476683628,"name":"Boylston Street"},"geometry":{"type":"LineString","coordinates":[[-71.1639859,42.3233053],[-71.1639898,42.3233147]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476683629,"name":"Boylston Street"},"geometry":{"type":"LineString","coordinates":[[-71.1642357,42.3235236],[-71.1642185,42.3235283]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476683630,"name":"Boylston Street"},"geometry":{"type":"LineString","coordinates":[[-71.1638726,42.3236377],[-71.1638615,42.3236451]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476683631},"geometry":{"type":"LineString","coordinates":[[-71.1654646,42.3233713],[-71.1655482,42.3233928],[-71.1655727,42.323406]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476683631,"name":"Boylston Street"},"geometry":{"type":"LineString","coordinates":[[-71.1654646,42.3233713],[-71.1655482,42.3233928],[-71.1655727,42.323406]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476683632,"surface":"paving_stones","crossing":"uncontrolled","kerb":"raised"},"geometry":{"type":"LineString","coordinates":[[-71.1655727,42.323406],[-71.1655907,42.3234425],[-71.1656467,42.3235564]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476683633,"surface":"paving_stones","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1656467,42.3235564],[-71.1656963,42.3235451],[-71.165739,42.3235354],[-71.1657493,42.323533]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476683634,"surface":"paving_stones","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1657493,42.323533],[-71.165694,42.3234152],[-71.1656711,42.3233665]]}},
@@ -4884,7 +4884,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476683638,"name":"Holly Lane"},"geometry":{"type":"LineString","coordinates":[[-71.1655603,42.3228913],[-71.1655885,42.3228913]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476683639,"name":"Holly Lane"},"geometry":{"type":"LineString","coordinates":[[-71.1657184,42.3228464],[-71.1656949,42.3228583]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476683640,"name":"Holly Lane","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1656949,42.3228583],[-71.1656478,42.3228729],[-71.1655885,42.3228913]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476683641,"name":"Tully Street"},"geometry":{"type":"LineString","coordinates":[[-71.1676031,42.322364],[-71.1675818,42.322372]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476683641,"name":"Boylston Street"},"geometry":{"type":"LineString","coordinates":[[-71.1676031,42.322364],[-71.1675818,42.322372]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476683642,"name":"Boylston Street"},"geometry":{"type":"LineString","coordinates":[[-71.1676568,42.3223561],[-71.1676615,42.322367]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476683644,"name":"Boylston Street","surface":"paved"},"geometry":{"type":"LineString","coordinates":[[-71.1699978,42.3216902],[-71.170131,42.3216552],[-71.1703989,42.3215872],[-71.1704479,42.3215746],[-71.1704868,42.3215614],[-71.1706189,42.3215005],[-71.1708335,42.3213748],[-71.1709272,42.3213256],[-71.1710243,42.3212839]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476683645,"name":"Boylston Street","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1698056,42.3217408],[-71.1699341,42.321707],[-71.1699978,42.3216902]]}},
@@ -4984,7 +4984,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476716132,"name":"Snow Street"},"geometry":{"type":"LineString","coordinates":[[-71.149437,42.3454242],[-71.1494287,42.3454216]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476716133,"name":"Union Street"},"geometry":{"type":"LineString","coordinates":[[-71.1474119,42.3449271],[-71.1474176,42.3449183]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476716134,"name":"Union Street"},"geometry":{"type":"LineString","coordinates":[[-71.1474925,42.3448039],[-71.147499,42.3447939]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476726608,"name":"Langley Road"},"geometry":{"type":"LineString","coordinates":[[-71.1834661,42.3192433],[-71.1834457,42.3192601],[-71.1834445,42.3192753],[-71.1834675,42.3194635]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476726608,"name":"Boylston Street"},"geometry":{"type":"LineString","coordinates":[[-71.1834661,42.3192433],[-71.1834457,42.3192601],[-71.1834445,42.3192753],[-71.1834675,42.3194635]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476726609,"name":"Jackson Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1834675,42.3194635],[-71.1834667,42.3195052],[-71.1834656,42.3195642]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476726610,"name":"Langley Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1834656,42.3195642],[-71.1833783,42.3195695],[-71.1833101,42.3195735]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476726611,"name":"Langley Road"},"geometry":{"type":"LineString","coordinates":[[-71.1834656,42.3195642],[-71.1834579,42.3195917],[-71.1834525,42.319611],[-71.183451,42.3196343],[-71.1835149,42.3199571],[-71.1835921,42.3203467],[-71.1836256,42.320461],[-71.1837178,42.3206569],[-71.1838455,42.3209808],[-71.1838747,42.321063],[-71.1840378,42.3213369],[-71.1840803,42.3214011],[-71.1841107,42.321447],[-71.184167,42.3215018],[-71.1846527,42.3219024],[-71.1848451,42.3220612],[-71.1850973,42.3224458],[-71.1855801,42.3232207]]}},
@@ -5015,7 +5015,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476726637},"geometry":{"type":"LineString","coordinates":[[-71.1816334,42.3191362],[-71.1815358,42.3191434]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476726638,"name":"Florence Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1815358,42.3191434],[-71.1814819,42.3191413],[-71.1814333,42.3191394]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476726639,"name":"Florence Street"},"geometry":{"type":"LineString","coordinates":[[-71.1814333,42.3191394],[-71.1814173,42.3191335]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476726640,"name":"Langley Road"},"geometry":{"type":"LineString","coordinates":[[-71.1834457,42.3192601],[-71.1833981,42.3192624]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476726640,"name":"Boylston Street"},"geometry":{"type":"LineString","coordinates":[[-71.1834457,42.3192601],[-71.1833981,42.3192624]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476726641,"name":"Boylston Street"},"geometry":{"type":"LineString","coordinates":[[-71.1827401,42.3193364],[-71.1827168,42.3193195],[-71.1827102,42.3193019],[-71.1827147,42.3192898],[-71.1827386,42.3192838],[-71.1831781,42.3192561],[-71.1831956,42.3192557],[-71.1832071,42.3192604],[-71.1832361,42.3192749]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1476726642,"name":"Langley Road","surface":"asphalt","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1833981,42.3192624],[-71.1833169,42.3192686],[-71.1832361,42.3192749]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1476727406,"name":"Tanglewood Road"},"geometry":{"type":"LineString","coordinates":[[-71.1803447,42.3183026],[-71.1803526,42.318258],[-71.1803861,42.3182176],[-71.1807862,42.3178831],[-71.1816809,42.3171082],[-71.1817182,42.3170986],[-71.1817573,42.3171119],[-71.1821101,42.3173363],[-71.1821905,42.317389]]}},
@@ -5031,7 +5031,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1477016615,"name":"Snow Street"},"geometry":{"type":"LineString","coordinates":[[-71.1483474,42.3469403],[-71.1483397,42.3469361]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1477026865,"name":"Nevins Street"},"geometry":{"type":"LineString","coordinates":[[-71.1467271,42.3496478],[-71.1467098,42.3496158]]}},
{"type":"Feature","properties":{"Type":"Stairs","osm":1477026866},"geometry":{"type":"LineString","coordinates":[[-71.14675,42.3496754],[-71.1467271,42.3496478]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1477026867,"name":"Hospital Drive"},"geometry":{"type":"LineString","coordinates":[[-71.1469152,42.3490226],[-71.1469187,42.3490132]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1477026867,"name":"Nevins Street"},"geometry":{"type":"LineString","coordinates":[[-71.1469152,42.3490226],[-71.1469187,42.3490132]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1477026868,"name":"Nevins Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1469901,42.3488408],[-71.1469299,42.348794],[-71.1468486,42.3487308]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1477026869,"name":"Hospital Drive"},"geometry":{"type":"LineString","coordinates":[[-71.1471621,42.3490651],[-71.1471426,42.3490697]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1477026870,"name":"Lieutenant Pamela Donovan Road"},"geometry":{"type":"LineString","coordinates":[[-71.1457153,42.3468406],[-71.1456931,42.3468231]]}},
@@ -5042,9 +5042,9 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1477859216,"name":"Commonwealth Avenue","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1511982,42.3404157],[-71.1512052,42.3404208],[-71.1512374,42.3404444],[-71.1512475,42.3404518]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1477859217,"surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.1512475,42.3404518],[-71.1512575,42.3404591],[-71.1512636,42.3404636]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1477859218,"surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.1511849,42.3404059],[-71.1511913,42.3404107],[-71.1511982,42.3404157]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1477859219,"name":"Selkirk Road"},"geometry":{"type":"LineString","coordinates":[[-71.1489661,42.3392859],[-71.1489509,42.3393159]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1477859220,"name":"Sutherland Road"},"geometry":{"type":"LineString","coordinates":[[-71.1488762,42.3393987],[-71.148864,42.339414]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1477859221,"name":"Chiswick Road"},"geometry":{"type":"LineString","coordinates":[[-71.1498117,42.3395253],[-71.1498231,42.339533]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1477859219,"name":"Sutherland Road"},"geometry":{"type":"LineString","coordinates":[[-71.1489661,42.3392859],[-71.1489509,42.3393159]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1477859220,"name":"Selkirk Road"},"geometry":{"type":"LineString","coordinates":[[-71.1488762,42.3393987],[-71.148864,42.339414]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1477859221,"name":"Selkirk Road"},"geometry":{"type":"LineString","coordinates":[[-71.1498117,42.3395253],[-71.1498231,42.339533]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1477859222,"name":"Chiswick Road"},"geometry":{"type":"LineString","coordinates":[[-71.1499439,42.3396141],[-71.1499634,42.3396272]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1477859223,"name":"Braemore Road"},"geometry":{"type":"LineString","coordinates":[[-71.1507332,42.3383471],[-71.1507286,42.3383584]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1477859224,"name":"Braemore Road"},"geometry":{"type":"LineString","coordinates":[[-71.1507789,42.3382352],[-71.1507685,42.3382468]]}},
@@ -5083,7 +5083,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1478466342,"name":"Surrey Street"},"geometry":{"type":"LineString","coordinates":[[-71.1531401,42.3499877],[-71.1531147,42.3499912],[-71.1530995,42.3500098],[-71.1529522,42.3502121]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1478466343,"name":"Market Street","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1529522,42.3502121],[-71.1529251,42.3502488],[-71.1529087,42.350271]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1478466344,"name":"Barker Street"},"geometry":{"type":"LineString","coordinates":[[-71.1542204,42.3544051],[-71.1542263,42.3543971]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1478466345,"name":"Goodenough Street"},"geometry":{"type":"LineString","coordinates":[[-71.1543331,42.3544973],[-71.1543184,42.3545005]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1478466345,"name":"Barker Street"},"geometry":{"type":"LineString","coordinates":[[-71.1543331,42.3544973],[-71.1543184,42.3545005]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1478466346,"name":"Parsons Street"},"geometry":{"type":"LineString","coordinates":[[-71.1547696,42.3541166],[-71.1547607,42.3541087]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1478466347,"name":"Parsons Street"},"geometry":{"type":"LineString","coordinates":[[-71.1548386,42.3541832],[-71.1548304,42.3541756]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1478466350,"name":"Madeline Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1565983,42.3547329],[-71.1565907,42.3547432]]}},
@@ -5118,7 +5118,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1478467870,"surface":"asphalt","wheelchair":"designated"},"geometry":{"type":"LineString","coordinates":[[-71.176236,42.3188317],[-71.1762087,42.318785]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1478467871},"geometry":{"type":"LineString","coordinates":[[-71.1762688,42.3188907],[-71.1762863,42.3189209],[-71.1762855,42.3189475],[-71.1762906,42.3189701],[-71.1763433,42.3190599],[-71.1763751,42.319093],[-71.1764243,42.3191261],[-71.176441,42.3191433],[-71.1764732,42.3192043],[-71.1765053,42.3193011],[-71.1765191,42.3193187]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1478467872,"crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1765191,42.3193187],[-71.1765504,42.3193442],[-71.1765833,42.319371]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1478467873},"geometry":{"type":"LineString","coordinates":[[-71.1769412,42.3196851],[-71.1769543,42.3196512],[-71.1769589,42.3196196],[-71.1769469,42.3195768],[-71.1768222,42.3193747],[-71.1767883,42.3193531],[-71.1767484,42.3193517],[-71.1766052,42.3193954],[-71.1765789,42.3194034],[-71.1765919,42.319438],[-71.1762674,42.3195566],[-71.175664,42.3197454],[-71.1753116,42.3198557],[-71.1752293,42.3198767]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1478467873,"name":"Boylston Street"},"geometry":{"type":"LineString","coordinates":[[-71.1769412,42.3196851],[-71.1769543,42.3196512],[-71.1769589,42.3196196],[-71.1769469,42.3195768],[-71.1768222,42.3193747],[-71.1767883,42.3193531],[-71.1767484,42.3193517],[-71.1766052,42.3193954],[-71.1765789,42.3194034],[-71.1765919,42.319438],[-71.1762674,42.3195566],[-71.175664,42.3197454],[-71.1753116,42.3198557],[-71.1752293,42.3198767]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1478467874,"surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1752293,42.3198767],[-71.1751764,42.3198947],[-71.1751278,42.3199111]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1478467875},"geometry":{"type":"LineString","coordinates":[[-71.1756572,42.3197328],[-71.175664,42.3197454]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1478467876,"crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1755892,42.3196262],[-71.175611,42.3196586],[-71.175631,42.3196882]]}},
@@ -5140,7 +5140,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1478471939,"name":"Boylston Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1615854,42.3239568],[-71.1616095,42.3240037],[-71.1616265,42.3240368]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1478471940},"geometry":{"type":"LineString","coordinates":[[-71.1616265,42.3240368],[-71.1616503,42.3240833]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1478471941,"name":"Boylston Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1616503,42.3240833],[-71.1616939,42.3241071],[-71.1617886,42.3241588]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1478471942,"name":"Dunster Road"},"geometry":{"type":"LineString","coordinates":[[-71.1617886,42.3241588],[-71.1618137,42.3241746]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1478471942,"name":"Boylston Street"},"geometry":{"type":"LineString","coordinates":[[-71.1617886,42.3241588],[-71.1618137,42.3241746]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1478471943,"name":"Dunster Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1617886,42.3241588],[-71.1616703,42.324198],[-71.161601,42.324221]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1478471944,"name":"Dunster Road"},"geometry":{"type":"LineString","coordinates":[[-71.161601,42.324221],[-71.1615644,42.3242319]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1478471945,"name":"Boylston Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1593272,42.3247096],[-71.1593067,42.3246599],[-71.1592931,42.3246268]]}},
@@ -5184,7 +5184,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1480439093,"name":"Langley Road"},"geometry":{"type":"LineString","coordinates":[[-71.1928762,42.3306032],[-71.1928586,42.3305996]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1480439094,"name":"Beacon Street"},"geometry":{"type":"LineString","coordinates":[[-71.1929012,42.3304312],[-71.1928753,42.3304363]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1480439099,"name":"Langley Road"},"geometry":{"type":"LineString","coordinates":[[-71.1942059,42.3310621],[-71.1941948,42.3310745]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1480439100,"name":"Centre Green"},"geometry":{"type":"LineString","coordinates":[[-71.1941476,42.3311694],[-71.1941458,42.331182]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1480439100,"name":"Langley Road"},"geometry":{"type":"LineString","coordinates":[[-71.1941476,42.3311694],[-71.1941458,42.331182]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1480439101,"name":"Centre Green"},"geometry":{"type":"LineString","coordinates":[[-71.1942495,42.3312266],[-71.1942694,42.3312294]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1480439102,"name":"Langley Road"},"geometry":{"type":"LineString","coordinates":[[-71.1945276,42.3312583],[-71.1945292,42.3312437]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1480439103,"name":"Centre Street"},"geometry":{"type":"LineString","coordinates":[[-71.1945667,42.3310722],[-71.1946127,42.3310757]]}},
@@ -5225,13 +5225,13 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481237715},"geometry":{"type":"LineString","coordinates":[[-71.1763623,42.3335176],[-71.1764159,42.3335311]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252264,"name":"Middlesex Road","width":"2","incline":"0%","wheelchair":"no"},"geometry":{"type":"LineString","coordinates":[[-71.1639871,42.3262821],[-71.163983,42.326271]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252265,"name":"Middlesex Road","width":"2","incline":"0%","wheelchair":"no"},"geometry":{"type":"LineString","coordinates":[[-71.1639574,42.3262035],[-71.1639526,42.3261916]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252266,"name":"Middlesex Road"},"geometry":{"type":"LineString","coordinates":[[-71.1638239,42.3262161],[-71.1638602,42.3262082]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252266,"name":"Dunster Road"},"geometry":{"type":"LineString","coordinates":[[-71.1638239,42.3262161],[-71.1638602,42.3262082]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1481252267,"name":"Dunster Road","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1636947,42.326244],[-71.1637636,42.3262291],[-71.1638239,42.3262161]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252268,"name":"Middlesex Road"},"geometry":{"type":"LineString","coordinates":[[-71.1629345,42.3264915],[-71.1629384,42.3265008]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252269,"name":"Middlesex Road"},"geometry":{"type":"LineString","coordinates":[[-71.1628897,42.3264284],[-71.1628827,42.3264202]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1481252270,"name":"Middlesex Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1629345,42.3264915],[-71.1629103,42.3264575],[-71.1628897,42.3264284]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252271,"name":"Devon Road"},"geometry":{"type":"LineString","coordinates":[[-71.1628244,42.3264288],[-71.1628318,42.3264202]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252272,"name":"Devon Road"},"geometry":{"type":"LineString","coordinates":[[-71.1626951,42.3264475],[-71.1627091,42.3264495]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252272,"name":"Middlesex Road"},"geometry":{"type":"LineString","coordinates":[[-71.1626951,42.3264475],[-71.1627091,42.3264495]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1481252273,"name":"Devon Road","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1628244,42.3264288],[-71.1627724,42.3264381],[-71.1627091,42.3264495]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252274,"name":"Middlesex Road"},"geometry":{"type":"LineString","coordinates":[[-71.1624087,42.3266295],[-71.1623969,42.3266172]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252275,"name":"Middlesex Road"},"geometry":{"type":"LineString","coordinates":[[-71.1623689,42.3265578],[-71.1623614,42.3265429]]}},
@@ -5246,11 +5246,11 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252284,"name":"Valley Road"},"geometry":{"type":"LineString","coordinates":[[-71.154335,42.3295434],[-71.1543001,42.3295389]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1481252285,"name":"Crafts Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1539287,42.3294734],[-71.1538516,42.3294583],[-71.1537165,42.3294317]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252286,"name":"Reservoir Road"},"geometry":{"type":"LineString","coordinates":[[-71.1537165,42.3294317],[-71.153697,42.3294235],[-71.1536831,42.3294387]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252287,"name":"Crafts Road"},"geometry":{"type":"LineString","coordinates":[[-71.1535334,42.3295209],[-71.1535188,42.3295246]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252287,"name":"Reservoir Road"},"geometry":{"type":"LineString","coordinates":[[-71.1535334,42.3295209],[-71.1535188,42.3295246]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252288,"name":"Cleveland Road"},"geometry":{"type":"LineString","coordinates":[[-71.1529152,42.3297381],[-71.1528982,42.32974]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252289,"name":"Cleveland Road"},"geometry":{"type":"LineString","coordinates":[[-71.1530715,42.3297212],[-71.1530501,42.3297235]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1481252290,"crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1751689,42.3283473],[-71.1751721,42.3283386],[-71.1751839,42.3283059],[-71.1751927,42.3282815]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252292,"name":"Braeland Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1933138,42.328921],[-71.1932831,42.3289284]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252292,"name":"Herrick Road"},"geometry":{"type":"LineString","coordinates":[[-71.1933138,42.328921],[-71.1932831,42.3289284]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252293,"name":"Braeland Avenue","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1934468,42.3289042],[-71.1934388,42.3288599],[-71.1934395,42.3288412],[-71.1934463,42.3288252],[-71.1934856,42.3288019],[-71.1934825,42.3287962]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252294,"name":"Herrick Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1934835,42.3290834],[-71.1934719,42.3290273]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252296,"name":"Herrick Road"},"geometry":{"type":"LineString","coordinates":[[-71.1934388,42.3288599],[-71.1934228,42.3288626]]}},
@@ -5276,7 +5276,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1481252318,"name":"Centre Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1979957,42.3264836],[-71.1979401,42.326452],[-71.1978851,42.3264208]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252319,"name":"Paul Street"},"geometry":{"type":"LineString","coordinates":[[-71.1977257,42.3265279],[-71.1977075,42.3265335]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1481252320,"name":"Paul Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1977257,42.3265279],[-71.1977684,42.3264746],[-71.1977987,42.3264391]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252321,"name":"Locksley Road"},"geometry":{"type":"LineString","coordinates":[[-71.1977987,42.3264391],[-71.1978415,42.3264184],[-71.1978964,42.3263919],[-71.1980265,42.3262744],[-71.1980552,42.3262484],[-71.1984215,42.3259237],[-71.1986795,42.325695],[-71.1988815,42.325522],[-71.1991012,42.3253237],[-71.1991165,42.3253034],[-71.1991156,42.3252879],[-71.1991066,42.3252741],[-71.1985378,42.324918],[-71.1977602,42.3244323],[-71.1977327,42.3244226],[-71.1977036,42.3244248],[-71.1976756,42.3244367],[-71.1976626,42.3244486],[-71.1972946,42.3248079],[-71.1970911,42.3250061]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252321,"name":"Centre Street"},"geometry":{"type":"LineString","coordinates":[[-71.1977987,42.3264391],[-71.1978415,42.3264184],[-71.1978964,42.3263919],[-71.1980265,42.3262744],[-71.1980552,42.3262484],[-71.1984215,42.3259237],[-71.1986795,42.325695],[-71.1988815,42.325522],[-71.1991012,42.3253237],[-71.1991165,42.3253034],[-71.1991156,42.3252879],[-71.1991066,42.3252741],[-71.1985378,42.324918],[-71.1977602,42.3244323],[-71.1977327,42.3244226],[-71.1977036,42.3244248],[-71.1976756,42.3244367],[-71.1976626,42.3244486],[-71.1972946,42.3248079],[-71.1970911,42.3250061]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252322,"name":"Paul Street"},"geometry":{"type":"LineString","coordinates":[[-71.1978851,42.3264208],[-71.1978415,42.3264184],[-71.1977382,42.3264098],[-71.1971582,42.3264203],[-71.1970891,42.3264228],[-71.1969774,42.3264582],[-71.1966613,42.3266229]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252323,"name":"Locksley Road"},"geometry":{"type":"LineString","coordinates":[[-71.1991379,42.3252938],[-71.1991165,42.3253034]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1481252324,"name":"Locksley Road","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1991379,42.3252938],[-71.1991804,42.3252538],[-71.1992263,42.3252106]]}},
@@ -5287,11 +5287,11 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252329,"name":"Allerton Road"},"geometry":{"type":"LineString","coordinates":[[-71.1999678,42.3244218],[-71.1999346,42.3244158],[-71.1999205,42.3243954],[-71.1999371,42.324373]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252330,"name":"Centre Street"},"geometry":{"type":"LineString","coordinates":[[-71.2012691,42.3228326],[-71.2012593,42.3228278]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252331,"name":"Clark Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.20138,42.3225943],[-71.2013942,42.322579]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252332,"name":"Miller Road"},"geometry":{"type":"LineString","coordinates":[[-71.2023698,42.3220469],[-71.2023385,42.3220613]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481252332,"name":"Centre Street"},"geometry":{"type":"LineString","coordinates":[[-71.2023698,42.3220469],[-71.2023385,42.3220613]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481571762,"name":"Floral Street"},"geometry":{"type":"LineString","coordinates":[[-71.2059673,42.3213131],[-71.2059521,42.3213043]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1481571763,"name":"Floral Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2056968,42.3213428],[-71.2057409,42.3213943],[-71.2057778,42.3214374]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481571764,"name":"Floral Street"},"geometry":{"type":"LineString","coordinates":[[-71.2057778,42.3214374],[-71.2057885,42.3214549]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481571765,"name":"Floral Street"},"geometry":{"type":"LineString","coordinates":[[-71.2036875,42.3227172],[-71.2036685,42.3227017]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481571765,"name":"Hyde Street"},"geometry":{"type":"LineString","coordinates":[[-71.2036875,42.3227172],[-71.2036685,42.3227017]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481571766,"name":"Floral Street"},"geometry":{"type":"LineString","coordinates":[[-71.2036151,42.3226193],[-71.2036111,42.322608]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481571767,"name":"Hyde Street"},"geometry":{"type":"LineString","coordinates":[[-71.2038484,42.3231136],[-71.2038415,42.3231051]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1481571769,"name":"Hyde Street","surface":"asphalt","wheelchair":"yes","tactile":"yes","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.2046221,42.3239201],[-71.2045807,42.3239452],[-71.2045095,42.3239883]]}},
@@ -5305,7 +5305,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481571777,"name":"Walnut Street"},"geometry":{"type":"LineString","coordinates":[[-71.2064534,42.3218688],[-71.2064664,42.3218745]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481585999,"name":"Langley Road","level":true},"geometry":{"type":"LineString","coordinates":[[-71.1910115,42.329984],[-71.1908283,42.3299139]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481586000,"name":"Langley Road"},"geometry":{"type":"LineString","coordinates":[[-71.1908283,42.3299139],[-71.1906234,42.3297899]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481586001,"name":"Braeland Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1910582,42.3298487],[-71.1910386,42.32983]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481586001,"name":"Langley Road"},"geometry":{"type":"LineString","coordinates":[[-71.1910582,42.3298487],[-71.1910386,42.32983]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1481586002,"name":"Braeland Avenue","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1910386,42.32983],[-71.1909557,42.3297899],[-71.1909088,42.3297672]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481586003,"name":"Herrick Road"},"geometry":{"type":"LineString","coordinates":[[-71.1935737,42.3295277],[-71.1936642,42.329513]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481586004,"name":"Crescent Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1967187,42.3288988],[-71.1967108,42.3289083]]}},
@@ -5316,7 +5316,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481586009,"name":"Crescent Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1981561,42.3303241],[-71.1981379,42.3303249]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481586010,"name":"Tyler Terrace","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1994594,42.3319527],[-71.199452,42.3319416]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481586011,"surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1993977,42.3318504],[-71.1993513,42.331785]]}},
-{"type":"Feature","properties":{"Type":"Crossing","osm":1481586012,"name":"Tyler Terrace","surface":"asphalt","crossing":"uncontrolled","kerb":"flush"},"geometry":{"type":"LineString","coordinates":[[-71.1993513,42.331785],[-71.1993086,42.3317267],[-71.1992811,42.3316886]]}},
+{"type":"Feature","properties":{"Type":"Crossing","osm":1481586012,"name":"Tyler Terrace","surface":"asphalt","crossing":"uncontrolled","kerb":"flush"},"geometry":{"type":"LineString","coordinates":[[-71.1993513,42.331785],[-71.1993205,42.3317459],[-71.1992811,42.3316886]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481586013,"name":"Pleasant Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1997706,42.332221],[-71.1997842,42.3322314]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481586014,"name":"Pleasant Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2003653,42.3325767],[-71.2003779,42.3325656]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1481586015,"name":"Pleasant Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2002485,42.3326596],[-71.2002589,42.3326468]]}},
@@ -5394,14 +5394,14 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1482277517,"name":"Langley Road"},"geometry":{"type":"LineString","coordinates":[[-71.1632815,42.3490405],[-71.1633154,42.3490224],[-71.1633415,42.3490393]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1482277518,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1632221,42.3491794],[-71.1632304,42.3491656]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1482277519,"name":"Washington Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1632304,42.3491656],[-71.1632582,42.3490976],[-71.1632815,42.3490405]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1482277520,"name":"Oak Square Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1643247,42.3497935],[-71.1643065,42.3498077]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1482277520,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1643247,42.3497935],[-71.1643065,42.3498077]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1482277521,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1644541,42.3497071],[-71.1644685,42.349696]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1482277522,"name":"Washington Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1644541,42.3497071],[-71.1643877,42.3497514],[-71.1643247,42.3497935]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1482277523,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1669243,42.3505931],[-71.1669267,42.3505796]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1482277524,"name":"Washington Street"},"geometry":{"type":"LineString","coordinates":[[-71.1669501,42.3504529],[-71.1669524,42.3504354]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1482287332,"name":"Langley Road"},"geometry":{"type":"LineString","coordinates":[[-71.1676992,42.350025],[-71.16769,42.3500309]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1482287333,"name":"Breck Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1677753,42.3499333],[-71.1677695,42.3499393],[-71.1677632,42.3499459]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1482287334,"name":"North Crescent Circuit"},"geometry":{"type":"LineString","coordinates":[[-71.1666938,42.3488848],[-71.1667069,42.3488887]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1482287334,"name":"Regal Street"},"geometry":{"type":"LineString","coordinates":[[-71.1666938,42.3488848],[-71.1667069,42.3488887]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1482287335,"name":"Bostonia Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1668292,42.34829],[-71.1668231,42.3482987]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1482287336,"name":"Bostonia Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1667853,42.3483688],[-71.1667813,42.3483759]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1482287337,"name":"Regal Street"},"geometry":{"type":"LineString","coordinates":[[-71.1668194,42.3484155],[-71.166805,42.3484126]]}},
@@ -5438,7 +5438,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500068059,"surface":"paving_stones"},"geometry":{"type":"LineString","coordinates":[[-71.1485009,42.3350823],[-71.148119,42.3351415],[-71.1480156,42.335155],[-71.1479593,42.3351624],[-71.1479102,42.335168],[-71.1478648,42.3351708],[-71.1478414,42.3351713],[-71.1478004,42.335169],[-71.1477226,42.3351607]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1500068060,"surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1477226,42.3351607],[-71.1477169,42.3351896],[-71.1477155,42.3351969],[-71.1477134,42.3352096],[-71.1477124,42.335218],[-71.147711,42.3352326],[-71.1477121,42.3352485],[-71.1477135,42.3352582],[-71.1477168,42.335275]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500114581},"geometry":{"type":"LineString","coordinates":[[-71.1487181,42.3350403],[-71.1487977,42.335136]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500114582},"geometry":{"type":"LineString","coordinates":[[-71.1491148,42.3350664],[-71.1487977,42.335136]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500114582,"name":"Chestnut Hill Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1491148,42.3350664],[-71.1487977,42.335136]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500114583,"surface":"concrete","width":"2","incline":"0%","wheelchair":"yes","tactile":"yes"},"geometry":{"type":"LineString","coordinates":[[-71.1487977,42.335136],[-71.1487879,42.3351433]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500119961,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1667332,42.3395307],[-71.166691,42.339547]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500119962,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1667967,42.339506],[-71.1667799,42.3395126]]}},
@@ -5467,16 +5467,16 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1500124112,"name":"Langley Road","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1906234,42.3297899],[-71.1905894,42.3297715],[-71.1905592,42.3297552]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500124113,"name":"Langley Road"},"geometry":{"type":"LineString","coordinates":[[-71.1905592,42.3297552],[-71.1904857,42.3297153],[-71.1904341,42.3296874],[-71.1903197,42.3295983],[-71.1903046,42.3295865]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500124114,"name":"Langley Road"},"geometry":{"type":"LineString","coordinates":[[-71.1905141,42.3296859],[-71.1904857,42.3297153]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500124115,"name":"Herrick Road","surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.1905793,42.3296249],[-71.190611,42.3295954],[-71.1906118,42.3295758],[-71.1906226,42.3295525],[-71.1909731,42.3292631],[-71.1913647,42.3289417],[-71.1916265,42.3287712],[-71.1919141,42.3286102],[-71.1921719,42.3284652],[-71.192553,42.3282448],[-71.1927679,42.3281211],[-71.1929613,42.3280139],[-71.193029,42.3279799],[-71.1930443,42.3279794],[-71.1930572,42.3279934],[-71.1931107,42.3281312],[-71.1931487,42.328231],[-71.1932501,42.328526],[-71.1933004,42.3287065],[-71.1933088,42.3287414],[-71.1933096,42.328767],[-71.1932963,42.3287898],[-71.1932731,42.3288081],[-71.1932447,42.3288224],[-71.1926134,42.3290939],[-71.1922211,42.3292598],[-71.1921994,42.329269],[-71.1916909,42.3294774],[-71.1913175,42.3296241],[-71.1909312,42.3297491],[-71.1908984,42.3297547],[-71.1908627,42.3297407],[-71.190611,42.3295954],[-71.1905699,42.3295785]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500124115,"name":"Chase Street","surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.1905793,42.3296249],[-71.190611,42.3295954],[-71.1906118,42.3295758],[-71.1906226,42.3295525],[-71.1909731,42.3292631],[-71.1913647,42.3289417],[-71.1916265,42.3287712],[-71.1919141,42.3286102],[-71.1921719,42.3284652],[-71.192553,42.3282448],[-71.1927679,42.3281211],[-71.1929613,42.3280139],[-71.193029,42.3279799],[-71.1930443,42.3279794],[-71.1930572,42.3279934],[-71.1931107,42.3281312],[-71.1931487,42.328231],[-71.1932501,42.328526],[-71.1933004,42.3287065],[-71.1933088,42.3287414],[-71.1933096,42.328767],[-71.1932963,42.3287898],[-71.1932731,42.3288081],[-71.1932447,42.3288224],[-71.1926134,42.3290939],[-71.1922211,42.3292598],[-71.1921994,42.329269],[-71.1916909,42.3294774],[-71.1913175,42.3296241],[-71.1909312,42.3297491],[-71.1908984,42.3297547],[-71.1908627,42.3297407],[-71.190611,42.3295954],[-71.1905699,42.3295785]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500124116,"name":"Braeland Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1909088,42.3297672],[-71.1908984,42.3297547]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500124117,"name":"Braeland Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1932791,42.3288214],[-71.1932731,42.3288081]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500124118,"name":"Warren Street"},"geometry":{"type":"LineString","coordinates":[[-71.1903197,42.3295983],[-71.190207,42.3296362],[-71.1899688,42.3296261],[-71.1894321,42.3296033],[-71.1893903,42.3296015],[-71.1887602,42.3295716],[-71.1883224,42.3295545],[-71.1881094,42.3295434],[-71.1878589,42.3295304],[-71.1873647,42.3295057],[-71.187036,42.3294934],[-71.1867581,42.3294791],[-71.1867352,42.3294814],[-71.1867156,42.3294833],[-71.1866903,42.3294975]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500124119,"name":"Elgin Street"},"geometry":{"type":"LineString","coordinates":[[-71.1902566,42.3295311],[-71.1902404,42.3295215],[-71.1902505,42.3295033],[-71.1902445,42.3294805],[-71.1898768,42.3291169],[-71.1896298,42.328852],[-71.1895501,42.3287744],[-71.1893855,42.3286268],[-71.1893574,42.3286119],[-71.1893271,42.3286095],[-71.1893042,42.3286177],[-71.1890945,42.3287435],[-71.1890061,42.328792],[-71.1888899,42.3288356],[-71.1887921,42.3288634],[-71.1886935,42.3288727],[-71.1882702,42.3288847],[-71.1880858,42.3288817],[-71.1879462,42.3288616],[-71.1878546,42.328842],[-71.1877616,42.3288125],[-71.1874631,42.3286885],[-71.187427,42.3286831],[-71.1873915,42.3286938],[-71.1869755,42.3291692],[-71.1868745,42.3292878],[-71.1868523,42.3293323],[-71.1868584,42.3293538],[-71.1868775,42.3293799],[-71.186917,42.3293948],[-71.186964,42.3294015],[-71.1873454,42.3294162],[-71.1879067,42.3294402],[-71.1883254,42.3294597],[-71.1889072,42.3294836],[-71.1893367,42.3295039],[-71.1896952,42.3295182],[-71.1901672,42.3295348],[-71.1902132,42.3295317],[-71.1902404,42.3295215]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500124119,"name":"Warren Street"},"geometry":{"type":"LineString","coordinates":[[-71.1902566,42.3295311],[-71.1902404,42.3295215],[-71.1902505,42.3295033],[-71.1902445,42.3294805],[-71.1898768,42.3291169],[-71.1896298,42.328852],[-71.1895501,42.3287744],[-71.1893855,42.3286268],[-71.1893574,42.3286119],[-71.1893271,42.3286095],[-71.1893042,42.3286177],[-71.1890945,42.3287435],[-71.1890061,42.328792],[-71.1888899,42.3288356],[-71.1887921,42.3288634],[-71.1886935,42.3288727],[-71.1882702,42.3288847],[-71.1880858,42.3288817],[-71.1879462,42.3288616],[-71.1878546,42.328842],[-71.1877616,42.3288125],[-71.1874631,42.3286885],[-71.187427,42.3286831],[-71.1873915,42.3286938],[-71.1869755,42.3291692],[-71.1868745,42.3292878],[-71.1868523,42.3293323],[-71.1868584,42.3293538],[-71.1868775,42.3293799],[-71.186917,42.3293948],[-71.186964,42.3294015],[-71.1873454,42.3294162],[-71.1879067,42.3294402],[-71.1883254,42.3294597],[-71.1889072,42.3294836],[-71.1893367,42.3295039],[-71.1896952,42.3295182],[-71.1901672,42.3295348],[-71.1902132,42.3295317],[-71.1902404,42.3295215]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500124120,"name":"Glazer Road"},"geometry":{"type":"LineString","coordinates":[[-71.1905016,42.3295202],[-71.19049,42.3295053],[-71.19046,42.3294988],[-71.1901249,42.3291804],[-71.1898911,42.3289462],[-71.1898432,42.3288955],[-71.1898285,42.328871],[-71.189829,42.3288492],[-71.1898404,42.328825],[-71.1900643,42.3286333],[-71.1901329,42.3285761],[-71.1901611,42.3285603],[-71.1901938,42.3285609],[-71.1902448,42.3285697],[-71.1903082,42.3285719],[-71.1903504,42.328565],[-71.190383,42.3285497],[-71.1904127,42.3285205],[-71.1904347,42.3284852],[-71.190439,42.3284521],[-71.1904237,42.3284065],[-71.1903872,42.3283743],[-71.1903418,42.3283472],[-71.1902835,42.3283409],[-71.1902367,42.3283442],[-71.1901531,42.328388],[-71.1900032,42.3285146],[-71.1897721,42.3287149],[-71.1897334,42.3287307],[-71.1897223,42.3287299],[-71.1897031,42.3287285],[-71.1896676,42.3287106],[-71.1894499,42.3285143],[-71.1894346,42.3284907],[-71.1894407,42.3284685],[-71.189854,42.3281094],[-71.1902512,42.3277698]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500124121,"name":"Glazer Road"},"geometry":{"type":"LineString","coordinates":[[-71.1898111,42.3288451],[-71.189829,42.3288492]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500124122,"name":"Glazer Road"},"geometry":{"type":"LineString","coordinates":[[-71.1897223,42.3287299],[-71.1897199,42.3287451]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1500124123,"name":"Glazer Road","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1898111,42.3288451],[-71.1897685,42.3287984],[-71.1897199,42.3287451]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500124124,"name":"Ripley Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.19049,42.3295053],[-71.1906449,42.3293856],[-71.1910525,42.3290495],[-71.1912474,42.3288803],[-71.1914562,42.328749],[-71.191812,42.3285489],[-71.1920477,42.3284133],[-71.1920689,42.3283948],[-71.1920707,42.328379],[-71.1920582,42.3283579],[-71.19204,42.3283479],[-71.191415,42.3280205],[-71.1912789,42.3279451],[-71.1911202,42.3278406],[-71.1909222,42.3277053],[-71.1907879,42.3276123],[-71.1906412,42.3274978],[-71.1905064,42.3273774],[-71.1903726,42.3272651],[-71.1902248,42.3271374],[-71.1900421,42.3269764],[-71.1900064,42.3269499],[-71.1899839,42.326947],[-71.1899527,42.3269532],[-71.1899163,42.3269816],[-71.1897281,42.3271383],[-71.1894756,42.3273513],[-71.1890356,42.3277264],[-71.1887574,42.3279628],[-71.1887552,42.3279701],[-71.1887529,42.3279776],[-71.188971,42.3281455],[-71.1891447,42.3282733],[-71.1892964,42.3283899],[-71.1893275,42.3284061],[-71.1893599,42.3284051],[-71.1893829,42.3283947],[-71.1896804,42.3281359],[-71.1901709,42.3277174]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500124124,"name":"Chase Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.19049,42.3295053],[-71.1906449,42.3293856],[-71.1910525,42.3290495],[-71.1912474,42.3288803],[-71.1914562,42.328749],[-71.191812,42.3285489],[-71.1920477,42.3284133],[-71.1920689,42.3283948],[-71.1920707,42.328379],[-71.1920582,42.3283579],[-71.19204,42.3283479],[-71.191415,42.3280205],[-71.1912789,42.3279451],[-71.1911202,42.3278406],[-71.1909222,42.3277053],[-71.1907879,42.3276123],[-71.1906412,42.3274978],[-71.1905064,42.3273774],[-71.1903726,42.3272651],[-71.1902248,42.3271374],[-71.1900421,42.3269764],[-71.1900064,42.3269499],[-71.1899839,42.326947],[-71.1899527,42.3269532],[-71.1899163,42.3269816],[-71.1897281,42.3271383],[-71.1894756,42.3273513],[-71.1890356,42.3277264],[-71.1887574,42.3279628],[-71.1887552,42.3279701],[-71.1887529,42.3279776],[-71.188971,42.3281455],[-71.1891447,42.3282733],[-71.1892964,42.3283899],[-71.1893275,42.3284061],[-71.1893599,42.3284051],[-71.1893829,42.3283947],[-71.1896804,42.3281359],[-71.1901709,42.3277174]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500124125,"name":"Maple Park"},"geometry":{"type":"LineString","coordinates":[[-71.1894346,42.3284907],[-71.1894193,42.3284884]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500124126,"name":"Maple Park"},"geometry":{"type":"LineString","coordinates":[[-71.1893275,42.3284061],[-71.1893282,42.3284158]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1500124127,"name":"Maple Park","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1894193,42.3284884],[-71.1893726,42.3284512],[-71.1893282,42.3284158]]}},
@@ -5486,7 +5486,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500124131},"geometry":{"type":"LineString","coordinates":[[-71.1882481,42.3277125],[-71.1882401,42.3276816]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500124132,"name":"Knowles Street"},"geometry":{"type":"LineString","coordinates":[[-71.1887552,42.3279701],[-71.1887309,42.3279589]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1500124133,"name":"Knowles Street","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1887309,42.3279589],[-71.1886909,42.3279274],[-71.1886478,42.3278935]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500124134,"name":"Ripley Street"},"geometry":{"type":"LineString","coordinates":[[-71.1886478,42.3278935],[-71.1886424,42.3278814],[-71.1886154,42.3278697],[-71.1884942,42.3277738],[-71.1884677,42.3277501],[-71.1884385,42.3277241],[-71.1883843,42.3276073],[-71.1882506,42.3272929],[-71.1882353,42.3272576],[-71.1881601,42.3270837],[-71.1880557,42.3268384],[-71.1879676,42.3266436],[-71.187968,42.3266245],[-71.1880078,42.3266058],[-71.1883337,42.3265426],[-71.1885869,42.3265142],[-71.1887587,42.3265093],[-71.1890033,42.3265241],[-71.1891242,42.3265401],[-71.189248,42.3265623],[-71.1893548,42.3265873],[-71.1895372,42.3266487],[-71.1896574,42.3267033],[-71.1898579,42.3268208],[-71.1898751,42.3268489],[-71.1898628,42.3268726],[-71.1893709,42.3272817],[-71.1890691,42.3275322],[-71.1890245,42.3275743],[-71.1886689,42.3278708],[-71.1886424,42.3278814]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500124134,"name":"Knowles Street"},"geometry":{"type":"LineString","coordinates":[[-71.1886478,42.3278935],[-71.1886424,42.3278814],[-71.1886154,42.3278697],[-71.1884942,42.3277738],[-71.1884677,42.3277501],[-71.1884385,42.3277241],[-71.1883843,42.3276073],[-71.1882506,42.3272929],[-71.1882353,42.3272576],[-71.1881601,42.3270837],[-71.1880557,42.3268384],[-71.1879676,42.3266436],[-71.187968,42.3266245],[-71.1880078,42.3266058],[-71.1883337,42.3265426],[-71.1885869,42.3265142],[-71.1887587,42.3265093],[-71.1890033,42.3265241],[-71.1891242,42.3265401],[-71.189248,42.3265623],[-71.1893548,42.3265873],[-71.1895372,42.3266487],[-71.1896574,42.3267033],[-71.1898579,42.3268208],[-71.1898751,42.3268489],[-71.1898628,42.3268726],[-71.1893709,42.3272817],[-71.1890691,42.3275322],[-71.1890245,42.3275743],[-71.1886689,42.3278708],[-71.1886424,42.3278814]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500124135,"name":"Langley Road"},"geometry":{"type":"LineString","coordinates":[[-71.1884557,42.3277581],[-71.1884677,42.3277501]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500124136,"name":"Ripley Street"},"geometry":{"type":"LineString","coordinates":[[-71.1898751,42.3268489],[-71.1898943,42.3268515]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500124137,"name":"Ripley Street"},"geometry":{"type":"LineString","coordinates":[[-71.1899882,42.3269308],[-71.1899839,42.326947]]}},
@@ -5494,7 +5494,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500124139,"name":"Elgin Street"},"geometry":{"type":"LineString","coordinates":[[-71.18825,42.3277704],[-71.1882054,42.3277776],[-71.1881723,42.3277986],[-71.1877683,42.3282642],[-71.1875135,42.3285626],[-71.1875121,42.3285864],[-71.1875374,42.3286079],[-71.1877886,42.3287157],[-71.1878921,42.3287506],[-71.1880047,42.3287732],[-71.1881115,42.3287841],[-71.1882139,42.3287884],[-71.1886861,42.3287753],[-71.1887592,42.3287662],[-71.188854,42.3287436],[-71.1889503,42.3287041],[-71.1890293,42.3286601],[-71.1892235,42.3285413],[-71.1892369,42.3285153],[-71.1892275,42.3284942],[-71.1889745,42.3283102],[-71.188715,42.3281225],[-71.1883823,42.3278593],[-71.1883408,42.3278256],[-71.1883055,42.327797],[-71.1882658,42.3277749],[-71.18825,42.3277704],[-71.1882476,42.3277565]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500124140,"name":"Langley Road"},"geometry":{"type":"LineString","coordinates":[[-71.1883618,42.327813],[-71.1883408,42.3278256]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500124141,"name":"Elgin Street"},"geometry":{"type":"LineString","coordinates":[[-71.1874942,42.3285881],[-71.1875121,42.3285864]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500124142,"name":"Glen Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1874264,42.3286692],[-71.187427,42.3286831]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500124142,"name":"Elgin Street"},"geometry":{"type":"LineString","coordinates":[[-71.1874264,42.3286692],[-71.187427,42.3286831]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1500124143,"name":"Elgin Street","surface":"asphalt","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1874264,42.3286692],[-71.1874618,42.328627],[-71.1874942,42.3285881]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500124144,"name":"Glen Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1867332,42.3294634],[-71.1867352,42.3294814]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1500124145,"name":"Glen Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.186834,42.3293555],[-71.1868584,42.3293538]]}},
@@ -5518,7 +5518,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1504780150,"name":"Gray Cliff Road","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1882233,42.3330254],[-71.1882266,42.3329737],[-71.1882329,42.3328745]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1504780151,"name":"Grant Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1856394,42.3363896],[-71.1856976,42.3363468],[-71.1857473,42.3363026],[-71.1858177,42.3362385],[-71.1858659,42.3361965],[-71.1859205,42.3361421],[-71.1863893,42.3356934],[-71.1867052,42.3353974],[-71.1869354,42.3351812],[-71.1869564,42.3351517],[-71.1869768,42.3351215]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1504780152,"name":"Grant Avenue","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1872159,42.3349147],[-71.1872436,42.3348911],[-71.187272,42.334867]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1504780153,"name":"Grant Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1870711,42.3350376],[-71.1872159,42.3349147]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1504780153,"name":"Montvale Road"},"geometry":{"type":"LineString","coordinates":[[-71.1870711,42.3350376],[-71.1872159,42.3349147]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1504780154,"name":"Montvale Road","crossing":"unmarked","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1869768,42.3351215],[-71.187017,42.3350858],[-71.1870711,42.3350376]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1504780155,"name":"Grant Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1884839,42.3326121],[-71.1884785,42.3326319],[-71.1884693,42.3326659],[-71.1884608,42.3327225],[-71.1883105,42.3333935],[-71.188147,42.3340983],[-71.1881375,42.3341658]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1504780156,"name":"Grant Avenue"},"geometry":{"type":"LineString","coordinates":[[-71.1872531,42.3350871],[-71.1872276,42.3351074],[-71.1871856,42.335137],[-71.1871333,42.3351907],[-71.1864195,42.3358636],[-71.1860204,42.3362379],[-71.1859835,42.3362707],[-71.1859651,42.3362936],[-71.1859583,42.3363164],[-71.1859627,42.3363353],[-71.1859841,42.3363698]]}},
@@ -5548,7 +5548,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1515048760,"name":"Nobscot Road"},"geometry":{"type":"LineString","coordinates":[[-71.1798159,42.3385088],[-71.1798022,42.3385025]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1515048761,"name":"Ward Street"},"geometry":{"type":"LineString","coordinates":[[-71.1782557,42.3379567],[-71.1782323,42.3379614],[-71.1782083,42.3379618]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1515048804,"name":"Hobart Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1812408,42.3390477],[-71.1812962,42.3390719],[-71.1813592,42.3390994]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1515048805,"name":"Ward Street"},"geometry":{"type":"LineString","coordinates":[[-71.1812626,42.3390177],[-71.1812487,42.3390329],[-71.1812295,42.3390385],[-71.1811926,42.3390383],[-71.1799584,42.3385709],[-71.1799426,42.3385551],[-71.179941,42.3385353]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1515048805,"name":"Hobart Road"},"geometry":{"type":"LineString","coordinates":[[-71.1812626,42.3390177],[-71.1812487,42.3390329],[-71.1812295,42.3390385],[-71.1811926,42.3390383],[-71.1799584,42.3385709],[-71.1799426,42.3385551],[-71.179941,42.3385353]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1515048806,"name":"Hobart Road"},"geometry":{"type":"LineString","coordinates":[[-71.1812408,42.3390477],[-71.1812295,42.3390385]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1515048807,"name":"Nobscot Road"},"geometry":{"type":"LineString","coordinates":[[-71.1799251,42.3385571],[-71.1799426,42.3385551]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1515049005,"name":"Prentice Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1822059,42.3394077],[-71.1822544,42.3394279],[-71.1823217,42.3394559]]}},
@@ -5561,9 +5561,9 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1515049356,"name":"Ward Street","surface":"asphalt","crossing":"traffic_signals","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1828429,42.3396368],[-71.1828491,42.339589],[-71.1828552,42.3395416]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1515049359,"name":"Ward Street","surface":"asphalt","crossing":"traffic_signals","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1831886,42.3396165],[-71.1831582,42.3395994],[-71.1830935,42.339563],[-71.1830346,42.3395299]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1515049360,"name":"Ward Street"},"geometry":{"type":"LineString","coordinates":[[-71.1831886,42.3396165],[-71.1832038,42.3396267]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1515050252,"name":"Ward Street"},"geometry":{"type":"LineString","coordinates":[[-71.1836372,42.3368471],[-71.1836509,42.3368654],[-71.1836528,42.336886],[-71.1836449,42.3369146],[-71.1834172,42.3372965],[-71.1829671,42.3380786],[-71.1826108,42.3386982],[-71.1822276,42.3393611],[-71.1822054,42.3393852],[-71.182183,42.3393933],[-71.1821445,42.3393921],[-71.1819463,42.3393204],[-71.1813955,42.3391148],[-71.1813768,42.3390981],[-71.1813728,42.3390718],[-71.1814047,42.3390078],[-71.1814648,42.3388984],[-71.1819004,42.338149],[-71.1822045,42.3376276],[-71.1823175,42.3374286],[-71.1823679,42.3373272],[-71.1823952,42.3372539],[-71.1824144,42.337165],[-71.1824398,42.3371278],[-71.1825108,42.3368176],[-71.1825332,42.3367758]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1515050252,"name":"Hobart Road"},"geometry":{"type":"LineString","coordinates":[[-71.1836372,42.3368471],[-71.1836509,42.3368654],[-71.1836528,42.336886],[-71.1836449,42.3369146],[-71.1834172,42.3372965],[-71.1829671,42.3380786],[-71.1826108,42.3386982],[-71.1822276,42.3393611],[-71.1822054,42.3393852],[-71.182183,42.3393933],[-71.1821445,42.3393921],[-71.1819463,42.3393204],[-71.1813955,42.3391148],[-71.1813768,42.3390981],[-71.1813728,42.3390718],[-71.1814047,42.3390078],[-71.1814648,42.3388984],[-71.1819004,42.338149],[-71.1822045,42.3376276],[-71.1823175,42.3374286],[-71.1823679,42.3373272],[-71.1823952,42.3372539],[-71.1824144,42.337165],[-71.1824398,42.3371278],[-71.1825108,42.3368176],[-71.1825332,42.3367758]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1515050253,"name":"Hobart Road"},"geometry":{"type":"LineString","coordinates":[[-71.1823659,42.3367694],[-71.1823732,42.3368011],[-71.1823588,42.3369318],[-71.1823089,42.3371252],[-71.1822748,42.3372168],[-71.1821853,42.3374177],[-71.1819578,42.3378099],[-71.1817633,42.3381448],[-71.181428,42.3387272]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1515050254,"name":"Ward Street"},"geometry":{"type":"LineString","coordinates":[[-71.1813592,42.3390994],[-71.1813768,42.3390981]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1515050254,"name":"Hobart Road"},"geometry":{"type":"LineString","coordinates":[[-71.1813592,42.3390994],[-71.1813768,42.3390981]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1515050255,"name":"Prentice Road"},"geometry":{"type":"LineString","coordinates":[[-71.1822059,42.3394077],[-71.182183,42.3393933]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1515050256,"name":"Ward Street"},"geometry":{"type":"LineString","coordinates":[[-71.1823217,42.3394559],[-71.1823381,42.3394519]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1515050257,"name":"Hobart Road"},"geometry":{"type":"LineString","coordinates":[[-71.1823347,42.3363987],[-71.1823507,42.3363551],[-71.1823448,42.3361794],[-71.1822981,42.3360054]]}},
@@ -5651,15 +5651,15 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1515705774,"name":"Boylston Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1665117,42.3231439],[-71.1664582,42.3231025],[-71.1665868,42.3230697]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1515706744,"surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1629429,42.3242441],[-71.1629168,42.3242273],[-71.1628896,42.3242098]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1515707556,"name":"Everett Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.189529,42.3325004],[-71.1895145,42.3324694],[-71.1894983,42.332435]]}},
-{"type":"Feature","properties":{"Type":"Crossing","osm":1515707557,"name":"Dalton Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1894582,42.332425],[-71.1893849,42.3324443],[-71.1893272,42.3324594]]}},
-{"type":"Feature","properties":{"Type":"Crossing","osm":1515707558,"name":"Everett Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1891992,42.3325007],[-71.1891991,42.332523],[-71.189199,42.3325613]]}},
+{"type":"Feature","properties":{"Type":"Crossing","osm":1515707557,"name":"Dalton Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1894582,42.332425],[-71.1893786,42.3324443],[-71.1893272,42.3324594]]}},
+{"type":"Feature","properties":{"Type":"Crossing","osm":1515707558,"name":"Everett Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1891992,42.3325007],[-71.1891994,42.3325273],[-71.189199,42.3325613]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1515707559,"name":"Dalton Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1895432,42.3324125],[-71.1894958,42.33242],[-71.1894671,42.3324185],[-71.1894595,42.3323943],[-71.189466,42.3323718]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1515707560,"name":"Dalton Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1894582,42.332425],[-71.1894671,42.3324185]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1515707561,"name":"Everett Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1894983,42.332435],[-71.1894958,42.33242]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1515707562,"name":"Gibbs Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.189199,42.3325613],[-71.1892003,42.3325766],[-71.1892192,42.3325775],[-71.1892424,42.3325906],[-71.189253,42.3326079],[-71.1892561,42.3326461],[-71.1892593,42.3326535]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1515707563,"name":"Everett Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1893272,42.3324594],[-71.1892946,42.3324657],[-71.1892221,42.3324797],[-71.1891983,42.3324834],[-71.1891247,42.3324947],[-71.1890915,42.3324958]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1515707564,"name":"Everett Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1891992,42.3325007],[-71.1891983,42.3324834]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1515707565,"name":"Everett Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1893112,42.3324263],[-71.1892946,42.3324657]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1515707565,"name":"Dalton Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1893112,42.3324263],[-71.1892946,42.3324657]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1515707566,"name":"Everett Street","surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.1890915,42.3324958],[-71.1885304,42.3325183],[-71.1884817,42.3325051],[-71.1884622,42.3324923]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1515707567,"name":"Everett Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1895677,42.3325077],[-71.1895355,42.332515],[-71.1894746,42.332529]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1515707568,"name":"Everett Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.189529,42.3325004],[-71.1895355,42.332515]]}},
@@ -5681,7 +5681,7 @@
{"type":"Feature","properties":{"Type":"Crossing","osm":1516632098,"name":"Crafts Road","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1501398,42.329229],[-71.1502176,42.3292808],[-71.1502948,42.3293322]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1516632099,"name":"Eliot Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1501547,42.3294245],[-71.1502293,42.329391],[-71.1502874,42.3293649]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1516632100,"name":"Eliot Street"},"geometry":{"type":"LineString","coordinates":[[-71.1502874,42.3293649],[-71.1503126,42.3293473],[-71.1502948,42.3293322]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1516632845,"name":"Heath Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1586103,42.3224578],[-71.1586102,42.3224812]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1516632845,"name":"Woodland Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1586103,42.3224578],[-71.1586102,42.3224812]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1516632846,"name":"Woodland Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1585574,42.3224557],[-71.1585893,42.3224568],[-71.1586103,42.3224578],[-71.1586286,42.3224587],[-71.1586447,42.3224511],[-71.1586689,42.3224038]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1516632847,"name":"Heath Street"},"geometry":{"type":"LineString","coordinates":[[-71.1585765,42.3225825],[-71.1585679,42.3225993]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1516632848,"name":"Heath Street","surface":"asphalt","crossing":"uncontrolled","kerb":"unknown"},"geometry":{"type":"LineString","coordinates":[[-71.1586102,42.3224812],[-71.1585886,42.3225461],[-71.1585765,42.3225825]]}},
@@ -5821,9 +5821,9 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1518565690,"name":"Crystal Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2022265,42.3291086],[-71.2022501,42.3291086]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1518565691,"surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2021267,42.329112],[-71.2020289,42.3291807]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1518566791,"name":"Lake Avenue","surface":"asphalt","crossing":"uncontrolled","kerb":"flush"},"geometry":{"type":"LineString","coordinates":[[-71.2029999,42.3280562],[-71.2029445,42.3280599],[-71.2028781,42.3280643]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1518566792,"name":"Lake Terrace","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2029999,42.3280562],[-71.2030255,42.3280565]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1518566792,"name":"Lake Avenue","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2029999,42.3280562],[-71.2030255,42.3280565]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1518566793,"name":"Lake Terrace","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.2028781,42.3280643],[-71.2028978,42.328021],[-71.202918,42.3279768]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1518566794,"name":"Kenmore Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2031235,42.3277857],[-71.2031198,42.3278002]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1518566794,"name":"Lake Avenue","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2031235,42.3277857],[-71.2031198,42.3278002]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1518566795,"name":"Kenmore Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2030908,42.327879],[-71.2030953,42.3278884]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1518566796,"name":"Moreland Avenue","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2026984,42.3286055],[-71.2027192,42.3285985]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1518566797,"name":"Moreland Avenue","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.202645,42.3286764],[-71.2026462,42.3286911]]}},
@@ -5851,8 +5851,8 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1518586554,"name":"Lakewood Road","surface":"asphalt","width":"1.5","incline":"0%","wheelchair":"yes","tactile":"no"},"geometry":{"type":"LineString","coordinates":[[-71.2062162,42.3263865],[-71.2061774,42.3263723],[-71.2060868,42.3263481],[-71.205666,42.326222],[-71.2053946,42.3261234],[-71.2051268,42.3260176],[-71.2050087,42.3259741],[-71.204919,42.3259485],[-71.2048305,42.3259253],[-71.2047091,42.3259004],[-71.204572,42.325874],[-71.2044481,42.325854],[-71.2042513,42.3258317],[-71.2042243,42.3258139],[-71.2042156,42.3257879],[-71.2042291,42.3256883],[-71.2042448,42.3256432],[-71.2043059,42.3255142],[-71.2043423,42.3254716],[-71.2044198,42.3254053],[-71.2046671,42.3252212]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1518586555,"name":"Lakewood Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2064711,42.3264432],[-71.2068602,42.3265106]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1518586556,"name":"Lakewood Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.206425,42.3265446],[-71.206462,42.3265414],[-71.2070407,42.3266383]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1518586557,"name":"Hyde Street","surface":"concrete","wheelchair":"yes"},"geometry":{"type":"LineString","coordinates":[[-71.206445,42.3258484],[-71.2064545,42.3258278]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1518586558,"name":"Walnut Street","surface":"concrete","wheelchair":"yes"},"geometry":{"type":"LineString","coordinates":[[-71.2064836,42.3257439],[-71.2064849,42.3257274]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1518586557,"name":"Walnut Street","surface":"concrete","wheelchair":"yes"},"geometry":{"type":"LineString","coordinates":[[-71.206445,42.3258484],[-71.2064545,42.3258278]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1518586558,"name":"Hyde Street","surface":"concrete","wheelchair":"yes"},"geometry":{"type":"LineString","coordinates":[[-71.2064836,42.3257439],[-71.2064849,42.3257274]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1518587333,"name":"Walnut Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.206859,42.3249727],[-71.2068786,42.3249752]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1518587334,"name":"Walnut Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2067445,42.3249545],[-71.2067232,42.3249509]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1518587335,"name":"Walnut Street","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.206859,42.3249727],[-71.2067989,42.3249631],[-71.2067445,42.3249545]]}},
@@ -5976,12 +5976,12 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1520031660,"name":"Elmore Street","surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.1941639,42.3382621],[-71.1941579,42.3384771]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1520031661,"name":"Centre Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1929152,42.3382292],[-71.1928874,42.3382357]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1520031662,"name":"Ward Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1928492,42.3382052],[-71.1928579,42.3381851]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1520031663,"name":"Ballard Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1927201,42.3395043],[-71.1927201,42.3395249]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1520031663,"name":"Centre Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1927201,42.3395043],[-71.1927201,42.3395249]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1520031664,"name":"Loring Street"},"geometry":{"type":"LineString","coordinates":[[-71.1926603,42.339531],[-71.1921661,42.3394964],[-71.1918724,42.3394761],[-71.1918502,42.339457],[-71.191851,42.3394242],[-71.1918912,42.3391446],[-71.1919486,42.3387627],[-71.1920289,42.3382425],[-71.1920439,42.3382296],[-71.1920799,42.3382182],[-71.1927486,42.3381849]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1520031665,"name":"Centre Street"},"geometry":{"type":"LineString","coordinates":[[-71.1929179,42.3380367],[-71.1929372,42.338005],[-71.1930354,42.3374514]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1520031666,"name":"Alden Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1930354,42.3374514],[-71.1930736,42.3372279],[-71.1930416,42.3372165],[-71.1929752,42.3372067]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1520031667,"name":"Alden Street","surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.1929752,42.3372067],[-71.1924535,42.3371543],[-71.1923651,42.3371472],[-71.1921694,42.3371252]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1520031668,"name":"Sumner Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1921694,42.3371252],[-71.1919067,42.3371001],[-71.1915166,42.3370631],[-71.1914789,42.3370675],[-71.191457,42.3370852],[-71.1914522,42.337103],[-71.191457,42.3374563],[-71.1914535,42.3378645],[-71.1914629,42.3381223],[-71.1914768,42.3381351],[-71.191506,42.3381403],[-71.1925621,42.3380866],[-71.1927405,42.3380774],[-71.1928422,42.3380663],[-71.1928875,42.3380515],[-71.1929179,42.3380367]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1520031668,"name":"Alden Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1921694,42.3371252],[-71.1919067,42.3371001],[-71.1915166,42.3370631],[-71.1914789,42.3370675],[-71.191457,42.3370852],[-71.1914522,42.337103],[-71.191457,42.3374563],[-71.1914535,42.3378645],[-71.1914629,42.3381223],[-71.1914768,42.3381351],[-71.191506,42.3381403],[-71.1925621,42.3380866],[-71.1927405,42.3380774],[-71.1928422,42.3380663],[-71.1928875,42.3380515],[-71.1929179,42.3380367]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1520031669,"name":"Alden Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1914683,42.3370555],[-71.1914789,42.3370675]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1520031670,"name":"Alden Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1914782,42.3369579],[-71.1914667,42.3369666]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1522004356,"name":"Lake Avenue","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1990872,42.3297058],[-71.1990859,42.3297192]]}},
@@ -5991,7 +5991,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1522004360,"name":"Lake Avenue","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1999471,42.3296771],[-71.1999471,42.3296629]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1522004361,"name":"Lake Avenue","surface":"asphalt","crossing":"uncontrolled","kerb":"flush"},"geometry":{"type":"LineString","coordinates":[[-71.199951,42.3297458],[-71.1999491,42.3297121],[-71.1999471,42.3296771]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1522024435,"name":"Lake Avenue","surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.2009717,42.3295641],[-71.2011033,42.3295323]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1522024436,"name":"Laurel Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2011033,42.3295323],[-71.201128,42.3295335],[-71.2011511,42.3295425],[-71.2011584,42.3295568]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1522024436,"name":"Lake Avenue","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2011033,42.3295323],[-71.201128,42.3295335],[-71.2011511,42.3295425],[-71.2011584,42.3295568]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1522024437,"name":"Lake Avenue","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2011382,42.3295244],[-71.201128,42.3295335]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1522024438,"name":"Lake Avenue","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2012505,42.3294139],[-71.2012461,42.329403]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1522024439,"name":"Lake Avenue","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.2012845,42.3295069],[-71.2012629,42.3294478],[-71.2012505,42.3294139]]}},
@@ -6001,12 +6001,12 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1522024443,"name":"Lake Avenue","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2028781,42.3280643],[-71.2028657,42.3280697]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1522024444,"name":"Lake Terrace","surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.2028473,42.3280585],[-71.2024157,42.3279272],[-71.2023682,42.3279231],[-71.2023309,42.3279127],[-71.2022984,42.3278932],[-71.2022902,42.3278664]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1522024446,"name":"Berwick Road","surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.204642,42.3274419],[-71.2044844,42.3273849],[-71.2043791,42.3273389]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1522024447,"name":"Berwick Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2048098,42.327406],[-71.2047768,42.3274409],[-71.2047648,42.327444],[-71.2047171,42.3274563],[-71.2046722,42.3274528],[-71.204642,42.3274419]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1522024447,"name":"Saxon Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2048098,42.327406],[-71.2047768,42.3274409],[-71.2047648,42.327444],[-71.2047171,42.3274563],[-71.2046722,42.3274528],[-71.204642,42.3274419]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1522024448,"name":"Saxon Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2047648,42.327444],[-71.2047712,42.3274553]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1522024449,"name":"Saxon Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2048959,42.3275015],[-71.2048739,42.3275017]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1522024450,"name":"Saxon Road","surface":"asphalt","crossing":"unmarked","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.2048739,42.3275017],[-71.2048167,42.3274758],[-71.2047712,42.3274553]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1522024451,"name":"Berwick Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2053803,42.3278235],[-71.2053606,42.3278283]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1522024452,"name":"Pine Crest Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2055279,42.3278617],[-71.2055134,42.3278526]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1522024452,"name":"Berwick Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2055279,42.3278617],[-71.2055134,42.3278526]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1523108881,"name":"Olde Field Road","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1910763,42.3143905],[-71.1911467,42.314361],[-71.1912186,42.314331]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1523108882,"name":"Brandeis Road","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1903679,42.3145534],[-71.1903939,42.314593],[-71.1904257,42.3146415]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1523108883,"name":"Adeline Road","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1904257,42.3146415],[-71.1903584,42.3146692],[-71.1902732,42.3147042]]}},
@@ -6051,9 +6051,9 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1523870487,"name":"Farquhar Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2018286,42.3520045],[-71.2018271,42.3519911]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1523870488,"name":"Farquhar Road","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2019317,42.3521205],[-71.2018939,42.3520954],[-71.2018564,42.3520864],[-71.2018166,42.3520923],[-71.2017846,42.3520994]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1523870489,"name":"Bowers Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2019415,42.3517634],[-71.2019459,42.3517523]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1523870490,"name":"Harvard Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2019803,42.351756],[-71.2019617,42.351758],[-71.2019459,42.3517523],[-71.201924,42.3517246],[-71.2018373,42.3514648],[-71.2017485,42.351209],[-71.2017505,42.3511864]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1523870490,"name":"Bowers Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2019803,42.351756],[-71.2019617,42.351758],[-71.2019459,42.3517523],[-71.201924,42.3517246],[-71.2018373,42.3514648],[-71.2017485,42.351209],[-71.2017505,42.3511864]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1523870491,"name":"Bowers Street","surface":"asphalt"},"geometry":{"type":"LineString","coordinates":[[-71.2022976,42.3517031],[-71.2021503,42.351728],[-71.2019803,42.351756]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1523870492,"name":"Bowers Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2020552,42.3520942],[-71.2020207,42.3520038],[-71.2019752,42.351871],[-71.2019719,42.3518425],[-71.2019829,42.3518267],[-71.2020246,42.35182]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1523870492,"name":"Harvard Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2020552,42.3520942],[-71.2020207,42.3520038],[-71.2019752,42.351871],[-71.2019719,42.3518425],[-71.2019829,42.3518267],[-71.2020246,42.35182]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1523870493,"name":"Bowers Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.2019623,42.3518342],[-71.2019719,42.3518425]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1524080658,"name":"Roosevelt Road","surface":"asphalt","crossing":"uncontrolled","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1956543,42.3139987],[-71.1956744,42.3139508],[-71.1956954,42.3139007]]}},
{"type":"Feature","properties":{"Type":"Crossing","osm":1524080659,"name":"Parker Street","surface":"asphalt","crossing":"traffic_signals","kerb":"lowered"},"geometry":{"type":"LineString","coordinates":[[-71.1956453,42.3143897],[-71.1955873,42.3143781],[-71.1955319,42.3143669]]}},
@@ -6093,7 +6093,7 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1528539144,"name":"Church Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1866119,42.3542748],[-71.186611,42.3542642]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1530048544,"campus":true},"geometry":{"type":"LineString","coordinates":[[-71.1649823,42.340978],[-71.1650141,42.3409578],[-71.1650215,42.340925],[-71.1650018,42.3408966],[-71.1649673,42.3408847],[-71.1649261,42.3408894],[-71.164898,42.3409133],[-71.1648925,42.3409357],[-71.1648994,42.3409568],[-71.1649191,42.3409726],[-71.1649529,42.3409828],[-71.1649823,42.340978]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1530453225,"name":"Beacon Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1452563,42.3373328],[-71.1452474,42.3372823]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1530453226,"name":"Englewood Avenue","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1449881,42.3373378],[-71.1450188,42.3373819]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1530453226,"name":"Beacon Street","surface":"concrete"},"geometry":{"type":"LineString","coordinates":[[-71.1449881,42.3373378],[-71.1450188,42.3373819]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1535897159,"name":"Devon Road"},"geometry":{"type":"LineString","coordinates":[[-71.162293,42.3258563],[-71.1623771,42.3258927],[-71.1624482,42.3259502],[-71.162526,42.3260444],[-71.1625917,42.3261099],[-71.1627674,42.3263111],[-71.1628318,42.3264202],[-71.1628827,42.3264202],[-71.1636947,42.326244]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1537602159,"surface":"paved"},"geometry":{"type":"LineString","coordinates":[[-71.1537626,42.3344152],[-71.1536802,42.3344244],[-71.1534599,42.3345383],[-71.1533213,42.3346105]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1540819431},"geometry":{"type":"LineString","coordinates":[[-71.1669911,42.3204483],[-71.1668788,42.3204993],[-71.1668621,42.32051]]}},
@@ -6119,6 +6119,6 @@
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1558196198},"geometry":{"type":"LineString","coordinates":[[-71.1639515,42.3362593],[-71.1639869,42.336381],[-71.1640484,42.3364243],[-71.164109,42.3364388],[-71.1641312,42.3364683],[-71.1640777,42.3365198],[-71.1640676,42.3365847],[-71.1640494,42.3366257],[-71.1639889,42.3366676]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1558196199},"geometry":{"type":"LineString","coordinates":[[-71.1639119,42.335822],[-71.1639343,42.3359087],[-71.1640101,42.3360504]]}},
{"type":"Feature","properties":{"Type":"Street","osm":1558936045,"name":"Harvard Street","surface":"asphalt","width":"12.2"},"geometry":{"type":"LineString","coordinates":[[-71.2016636,42.3511566],[-71.2016811,42.3512068],[-71.2018901,42.351808],[-71.2019594,42.3520149]]}},
-{"type":"Feature","properties":{"Type":"Sidewalk","osm":1558936047,"name":"Bellevue Street"},"geometry":{"type":"LineString","coordinates":[[-71.1925596,42.3527116],[-71.1923169,42.3526621],[-71.1922659,42.3526521],[-71.1922406,42.3526465],[-71.1922232,42.3526394],[-71.1921814,42.3526056],[-71.192144,42.3525645],[-71.1921264,42.3525144],[-71.1921191,42.3524729],[-71.1921318,42.3524232],[-71.1921695,42.3522935],[-71.1921954,42.3522306],[-71.1922126,42.3522101],[-71.19225,42.3521986],[-71.1923018,42.3522098],[-71.192569,42.3522676],[-71.1928023,42.3523033],[-71.1929955,42.3522835],[-71.1933468,42.352207],[-71.193383,42.3522121],[-71.1933986,42.3522263],[-71.1935292,42.3524401],[-71.1938122,42.3528821],[-71.1940958,42.3534275],[-71.1936197,42.353449],[-71.1932845,42.3534693]]}},
+{"type":"Feature","properties":{"Type":"Sidewalk","osm":1558936047,"name":"Summit Street"},"geometry":{"type":"LineString","coordinates":[[-71.1925596,42.3527116],[-71.1923169,42.3526621],[-71.1922659,42.3526521],[-71.1922406,42.3526465],[-71.1922232,42.3526394],[-71.1921814,42.3526056],[-71.192144,42.3525645],[-71.1921264,42.3525144],[-71.1921191,42.3524729],[-71.1921318,42.3524232],[-71.1921695,42.3522935],[-71.1921954,42.3522306],[-71.1922126,42.3522101],[-71.19225,42.3521986],[-71.1923018,42.3522098],[-71.192569,42.3522676],[-71.1928023,42.3523033],[-71.1929955,42.3522835],[-71.1933468,42.352207],[-71.193383,42.3522121],[-71.1933986,42.3522263],[-71.1935292,42.3524401],[-71.1938122,42.3528821],[-71.1940958,42.3534275],[-71.1936197,42.353449],[-71.1932845,42.3534693]]}},
{"type":"Feature","properties":{"Type":"Sidewalk","osm":1567423451},"geometry":{"type":"LineString","coordinates":[[-71.2034389,42.3156524],[-71.2034366,42.3155951],[-71.2034139,42.3155749],[-71.2033864,42.3155749],[-71.2033518,42.3155818],[-71.2033097,42.315604]]}}
]}
diff --git a/src/icons/app/apple-touch-icon.png b/src/icons/app/apple-touch-icon.png
new file mode 100644
index 0000000..2ab7dbe
Binary files /dev/null and b/src/icons/app/apple-touch-icon.png differ
diff --git a/src/icons/app/icon-192.png b/src/icons/app/icon-192.png
new file mode 100644
index 0000000..191fd96
Binary files /dev/null and b/src/icons/app/icon-192.png differ
diff --git a/src/icons/app/icon-512.png b/src/icons/app/icon-512.png
new file mode 100644
index 0000000..09bd34b
Binary files /dev/null and b/src/icons/app/icon-512.png differ
diff --git a/src/icons/app/icon-maskable-512.png b/src/icons/app/icon-maskable-512.png
new file mode 100644
index 0000000..765fed2
Binary files /dev/null and b/src/icons/app/icon-maskable-512.png differ
diff --git a/src/icons/app/icon.svg b/src/icons/app/icon.svg
new file mode 100644
index 0000000..a562cc1
--- /dev/null
+++ b/src/icons/app/icon.svg
@@ -0,0 +1,6 @@
+
+
+
+
+
+
diff --git a/src/input.css b/src/input.css
index 0746b39..c9775e4 100644
--- a/src/input.css
+++ b/src/input.css
@@ -2181,3 +2181,189 @@ html.dark .report-link {
html.dark .nearby-broken {
color: #ff9c94;
}
+
+/* Your places: saved and recent destinations, under Where to? */
+.my-places {
+ display: flex;
+ flex-wrap: wrap;
+ gap: 0.4rem;
+ padding-top: 0.6rem;
+}
+
+.my-places[hidden],
+.places-edit[hidden],
+.panel:not([data-view="home"]) .my-places,
+.panel:not([data-view="home"]) .places-edit {
+ display: none;
+}
+
+.place-chip {
+ font-weight: bold;
+}
+
+.places-edit {
+ padding: 0.5rem 0.75rem 0.75rem;
+ margin-top: 0.4rem;
+ background: #f4f6fa;
+ border-radius: 0.6rem;
+}
+
+.places-heading {
+ margin: 0.4rem 0 0.2rem;
+ font-size: 1rem;
+}
+
+.places-list {
+ margin: 0;
+ padding: 0;
+ list-style: none;
+}
+
+.places-list li {
+ display: flex;
+ flex-wrap: wrap;
+ align-items: center;
+ gap: 0.4rem;
+ padding: 0.25rem 0;
+}
+
+.places-list input {
+ flex: 1 1 8rem;
+ min-height: 40px;
+ padding: 0 0.5rem;
+ font: inherit;
+ border: 1px solid #767676;
+ border-radius: 0.3rem;
+}
+
+.places-list span {
+ flex: 1 1 auto;
+}
+
+.places-where {
+ font-size: 0.85rem;
+ color: #555;
+}
+
+.places-edit button {
+ min-height: 40px;
+ padding: 0 0.75rem;
+ font: inherit;
+ color: var(--accent);
+ background: #fff;
+ border: 2px solid var(--accent);
+ border-radius: 0.4rem;
+ cursor: pointer;
+}
+
+#places-edit-done {
+ margin-top: 0.5rem;
+}
+
+.save-place[aria-pressed="true"] {
+ font-weight: bold;
+}
+
+html.dark .places-edit {
+ background: #262a31;
+}
+
+html.dark .places-list input {
+ color: #f0f0f0;
+ background: #2a2a2a;
+ border-color: #8a8a8a;
+}
+
+html.dark .places-where {
+ color: #c8c8c8;
+}
+
+html.dark .places-edit button {
+ color: #9cc3ff;
+ background: #1c1c1c;
+ border-color: #6ea8ff;
+}
+
+@media screen and (max-width: 870px) {
+ .my-places,
+ .places-edit {
+ grid-column: 1 / -1;
+ order: 2;
+ padding-top: 0.2rem;
+ }
+
+ .my-places .chip {
+ border-color: transparent;
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
+ }
+
+ .places-edit {
+ max-height: 50vh;
+ overflow-y: auto;
+ }
+}
+
+/* Offline: what still works */
+.offline-note {
+ margin: 0.5rem 0 0;
+ padding: 0.4rem 0.75rem;
+ font-size: 0.9rem;
+ color: #000;
+ background: #fff4cc;
+ border-left: 4px solid #b38600;
+ border-radius: 0.3rem;
+}
+
+.offline-note[hidden] {
+ display: none;
+}
+
+html.dark .offline-note {
+ color: #f0f0f0;
+ background: #3a3220;
+}
+
+@media screen and (max-width: 870px) {
+ .offline-note {
+ grid-column: 1 / -1;
+ order: 2;
+ margin: 0;
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
+ }
+}
+
+/* Live MBTA alerts at a T station */
+.mbta-alerts {
+ margin: 0.25rem 0 0.5rem;
+ padding-left: 1.25rem;
+}
+
+.station-note p {
+ margin: 0.25rem 0;
+}
+
+/* A button that reads as part of a sentence ("Leaving Wed 10 AM. Change") */
+.link-button {
+ min-height: 32px;
+ padding: 0 0.25rem;
+ font: inherit;
+ color: var(--accent);
+ text-decoration: underline;
+ background: none;
+ border: none;
+ cursor: pointer;
+}
+
+html.dark .link-button {
+ color: #9cc3ff;
+}
+
+.mbta-heading {
+ margin: 0.5rem 0 0.2rem;
+ font-size: 1rem;
+}
+
+.mbta-trains {
+ margin: 0 0 0.5rem;
+ padding-left: 1.25rem;
+}
diff --git a/src/js/datasources.js b/src/js/datasources.js
index 7b69c9a..c551f03 100644
--- a/src/js/datasources.js
+++ b/src/js/datasources.js
@@ -2,7 +2,7 @@ function addMapData(map) {
return new Promise((resolve) => {
// Load data sources from the GeoJSON files in src/geojson
['bikeracks', 'bluelights', 'elevators', 'entrances', 'curbcuts', 'shuttlestops',
- 'paths', 'buildings', 'accessiblepaths'].forEach(name => {
+ 'paths', 'buildings', 'accessiblepaths', 'entrance-links', 'mbta-stations'].forEach(name => {
map.addSource(name, {
'type': 'geojson',
'data': `src/geojson/${name}.geojson`
@@ -71,6 +71,14 @@ function addMapData(map) {
}
});
+ // Links drawn automatically to entrances that weren't connected to a path (not checked): thin and dashed
+ map.addLayer({
+ id: 'entrance-links',
+ type: 'line',
+ source: 'entrance-links',
+ paint: { 'line-color': '#0F8554', 'line-width': 2, 'line-dasharray': [1, 1.5] },
+ });
+
map.addLayer({
id: 'accessiblepaths-ext',
type: 'line',
@@ -181,6 +189,19 @@ function addMapData(map) {
applyMapSettings(map); // icon size follows the bigger-symbols setting
});
+ // MBTA Green Line stations: Green Line green, with a white ring; grey ring for stations that aren't accessible
+ map.addLayer({
+ id: 'mbta',
+ type: 'circle',
+ source: 'mbta-stations',
+ paint: {
+ 'circle-radius': 7,
+ 'circle-color': '#00843D',
+ 'circle-stroke-width': 2.5,
+ 'circle-stroke-color': ['case', ['==', ['get', 'Wheelchair'], 'yes'], '#ffffff', '#8a8a8a'],
+ },
+ });
+
map.addLayer({
id: 'buildings-highlighted',
type: 'fill',
diff --git a/src/js/directions.js b/src/js/directions.js
index 96b9098..433b1a1 100644
--- a/src/js/directions.js
+++ b/src/js/directions.js
@@ -26,8 +26,9 @@ async function setupDirections(map) {
const base = new URL('src/', document.baseURI).href;
const [module, elevation, guidance, transit] = await Promise.all(['network', 'elevation', 'guidance', 'transit'].map((m) => import(`${base}js/routing/${m}.mjs${ASSET_VERSION}`)));
const load = async (name) => (await (await fetch(`${base}geojson/${name}.geojson`)).json()).features;
- const names = ['accessiblepaths', 'entrances', 'buildings', 'elevators', 'paths'];
- const [paths, entrances, buildings, elevators, footpaths] = await Promise.all(names.map(load));
+ const names = ['accessiblepaths', 'entrances', 'buildings', 'elevators', 'paths', 'entrance-links'];
+ const [bcPaths, entrances, buildings, elevators, footpaths, entranceLinks] = await Promise.all(names.map(load));
+ const paths = [...bcPaths, ...entranceLinks]; // links drawn to entrances that weren't connected (not checked)
const data = { paths, entrances, buildings, elevators, footpaths };
const accessible = module.buildGraph({ paths, entrances, buildings, elevators });
const terrain = elevation.createTerrain(terrainTileLoader(base + 'basemap/terrain.pmtiles'), accessible.buildings);
@@ -41,11 +42,38 @@ async function setupDirections(map) {
// The route options, in Edit trip, also in Accessibility settings (to set once), and Avoid steep slopes on the route
document.getElementById('set-slope').innerHTML = document.getElementById('opt-slope').innerHTML;
syncOptionMirrors();
- for (const id of ['opt-stairs', 'opt-indoor', 'opt-slope', 'opt-shuttle']) {
+ for (const id of ['opt-stairs', 'opt-indoor', 'opt-slope', 'opt-slope-dir', 'opt-shuttle', 'opt-curbs']) {
document.getElementById(id).addEventListener('change', (e) => setRouteOption(id, e.target.type === 'checkbox' ? e.target.checked : e.target.value));
}
document.getElementById('set-avoidStairs').addEventListener('change', (e) => setRouteOption('opt-stairs', e.target.checked));
document.getElementById('set-slope').addEventListener('change', (e) => setRouteOption('opt-slope', e.target.value));
+ document.getElementById('set-slopeDir').addEventListener('change', (e) => setRouteOption('opt-slope-dir', e.target.value));
+ document.getElementById('set-curbs').addEventListener('change', (e) => setRouteOption('opt-curbs', e.target.checked));
+ // A new pace changes the times, and whether a shuttle is quicker
+ document.getElementById('set-pace').addEventListener('change', () => { if (routing.current) routeAgain('New times, at your pace.'); });
+ // When: leave now, leave at a time, or arrive by a time (starting an hour from now, to the quarter hour)
+ document.getElementById('trip-when').addEventListener('change', (e) => {
+ if (e.target.value === 'now') setTripTime(null);
+ else {
+ const soon = routing.chosenTime || new Date(Math.ceil((Date.now() + 3600e3) / 900e3) * 900e3);
+ setTripTime(soon, e.target.value);
+ document.getElementById('trip-time').focus();
+ }
+ updateRoute(map);
+ });
+ document.getElementById('trip-time').addEventListener('change', (e) => {
+ const date = e.target.value ? new Date(e.target.value) : null;
+ if (date && !Number.isNaN(date.getTime())) { setTripTime(date, routing.timeMode); updateRoute(map); }
+ });
+ // "Plan for later" on the route: straight to the time
+ document.addEventListener('click', (e) => {
+ if (!e.target.closest('[data-edit-when]')) return;
+ document.getElementById('edit-trip').open = true;
+ if (!routing.departAt) {
+ document.getElementById('trip-when').value = 'later';
+ document.getElementById('trip-when').dispatchEvent(new Event('change'));
+ } else document.getElementById('trip-time').focus();
+ });
document.addEventListener('click', async (e) => {
if (e.target.id !== 'slope-toggle') return;
await setRouteOption('opt-slope', document.getElementById('opt-slope').value ? '' : SLOPE_LIMIT_DEFAULT);
@@ -66,6 +94,7 @@ async function setupDirections(map) {
from.value = '';
routing.fromChosen = false;
routing.fromPlace = null;
+ setTripTime(null);
startFromMyLocation();
updateRoute(map);
document.getElementById('where-to').focus();
@@ -87,6 +116,7 @@ async function setupDirections(map) {
document.getElementById('route-clear').addEventListener('click', () => {
from.value = '';
to.value = '';
+ setTripTime(null); // back to Leave now, as with Back
routing.fromChosen = false;
startFromMyLocation(); // back to the default start
routing.stops = [];
@@ -147,6 +177,7 @@ async function setupDirections(map) {
// A trip in the page address (after a reload, or from a shared link) comes back; otherwise start from your location
if (!(await restoreTripFromUrl(map))) await startFromMyLocation();
+ prepareCitySidewalksSoon();
}
// ---- The trip in the page address -------------------------------------------------------------------
@@ -158,12 +189,15 @@ async function setupDirections(map) {
const placeParam = (place) => `place:${place.lonlat[0].toFixed(6)},${place.lonlat[1].toFixed(6)}:${place.label}`;
+// How a place reads mid-sentence: "the blue-light phone near Gasson Hall", "the Conte Forum shuttle stop"
+const placePhrase = (label) => `the ${/^(Blue-light|Outdoor seating|Elevator|Shuttle stop)/.test(label) ? label[0].toLowerCase() + label.slice(1) : label}`;
+
// A place from the address. Destinations and stops are "Find nearby" places, which read as "the outdoor seating near…".
function parsePlace(value, withPhrase = false) {
const m = /^place:(-?[\d.]+),(-?[\d.]+):(.+)$/.exec(value);
if (!m) return null;
const label = m[3];
- return { label, lonlat: [Number(m[1]), Number(m[2])], ...(withPhrase ? { phrase: `the ${label[0].toLowerCase()}${label.slice(1)}` } : {}) };
+ return { label, lonlat: [Number(m[1]), Number(m[2])], ...(withPhrase ? { phrase: placePhrase(label) } : {}) };
}
function saveTripToUrl() {
@@ -178,6 +212,7 @@ function saveTripToUrl() {
if (to === MY_LOCATION) params.set('to', 'me');
else if (to === PLACE && routing.place) params.set('to', placeParam(routing.place));
else if (to) params.set('to', to);
+ if (routing.chosenTime) params.set(routing.timeMode === 'arrive' ? 'by' : 'at', localInputValue(routing.chosenTime));
if (guide.active) {
params.set('step', String(guide.index + 1));
if (guide.watch !== null) params.set('follow', '1');
@@ -187,6 +222,19 @@ function saveTripToUrl() {
if (url !== location.search) history.replaceState(null, '', url);
}
+// "Directions here" on a place on the map (a blue-light phone, a shuttle stop): walking directions to it, from your location
+document.addEventListener('click', (e) => {
+ const button = e.target.closest('[data-place-directions]');
+ if (!button || !routing) return;
+ const lonlat = button.dataset.placeDirections.split(',').map(Number);
+ const label = button.dataset.label;
+ document.querySelectorAll('.maplibregl-popup').forEach((p) => p.remove());
+ document.getElementById('route-from').value = MY_LOCATION;
+ setPlaceDestination({ label, phrase: placePhrase(label), lonlat });
+ updateRoute(window.map);
+ document.getElementById('route-title').focus();
+});
+
// "Share this trip": a link to the destination and stops, and the start if it's a building. Never your location:
// a link without a start begins from the location of whoever opens it.
function shareTripUrl() {
@@ -196,6 +244,7 @@ function shareTripUrl() {
for (const stop of routing.stops) if (stop.building || stop.lonlat) params.append('stop', stop.building || placeParam(stop));
if (to === PLACE && routing.place) params.set('to', placeParam(routing.place));
else if (to && to !== MY_LOCATION) params.set('to', to);
+ if (routing.chosenTime) params.set(routing.timeMode === 'arrive' ? 'by' : 'at', localInputValue(routing.chosenTime));
return `${location.origin}${location.pathname}?${params}`;
}
@@ -226,6 +275,42 @@ document.addEventListener('click', (e) => {
if (button) shareTrip(button);
});
+// The directions as plain text: to read ahead, print, or send to someone helping you
+function directionsText() {
+ const current = routing.current, result = document.getElementById('route-result');
+ const steps = routing.guidance.buildSteps(current.graph, current.route, current);
+ const notes = [...result.querySelectorAll('.route-warning, .live-warning')].map((p) => p.textContent.replace(/\s+/g, ' ').replace(/ Live shuttle tracker$/, '').trim());
+ return [
+ `Directions from ${current.from} to ${current.to}`,
+ result.querySelector('.route-summary')?.textContent.replace(/\s+/g, ' ').trim(),
+ '',
+ ...steps.map((st, i) => `${i + 1}. ${st.text}`),
+ '',
+ ...notes,
+ '',
+ `Open this trip in Access BC: ${shareTripUrl()}`,
+ ].filter((line, i, all) => line !== undefined && !(line === '' && all[i - 1] === '')).join('\n');
+}
+
+document.addEventListener('click', async (e) => {
+ const copy = e.target.closest('.copy-directions'), email = e.target.closest('.email-directions');
+ if ((!copy && !email) || !routing?.current) return;
+ const text = directionsText();
+ if (email) {
+ window.location.href = `mailto:?subject=${encodeURIComponent(`Directions to ${routing.current.to}`)}&body=${encodeURIComponent(text)}`;
+ return;
+ }
+ const label = copy.textContent;
+ try {
+ await navigator.clipboard.writeText(text);
+ copy.textContent = 'Directions copied';
+ announce('Directions copied. Paste them into a message, a note, or a document.');
+ setTimeout(() => { copy.textContent = label; }, 4000);
+ } catch {
+ window.prompt('Copy these directions:', text);
+ }
+});
+
// Restores a trip from the address. Returns whether there was one. Unknown buildings are ignored.
async function restoreTripFromUrl(map) {
const params = new URLSearchParams(location.search);
@@ -242,6 +327,10 @@ async function restoreTripFromUrl(map) {
.map((v) => (v.startsWith('place:') ? parsePlace(v, true) : listed(to, v) ? { label: v, building: v } : null))
.filter(Boolean).slice(0, MAX_STOPS);
renderStops();
+ for (const [param, mode] of [['at', 'later'], ['by', 'arrive']]) {
+ const when = params.get(param) && new Date(params.get(param));
+ if (when && !Number.isNaN(when.getTime())) setTripTime(when, mode);
+ }
const t = params.get('to');
if (t === 'me' && listed(to, MY_LOCATION)) to.value = MY_LOCATION;
else if (t?.startsWith('place:')) { const place = parsePlace(t, true); if (place) setPlaceDestination(place); }
@@ -278,7 +367,9 @@ function routeOptions() {
stairs: !document.getElementById('opt-stairs').checked, // the checkbox is "Avoid stairs"
indoor: document.getElementById('opt-indoor').value,
maxGrade: slope ? Number(slope) : Infinity,
+ slopeDir: document.getElementById('opt-slope-dir').value, // both, up, or down
shuttle: document.getElementById('opt-shuttle').checked,
+ curbs: document.getElementById('opt-curbs').checked, // avoid crossings whose curb ramps aren't confirmed
};
}
@@ -287,8 +378,8 @@ function routeOptions() {
const OPTIONS_VERSION = 2;
function saveOptions() {
try {
- const { stairs, indoor, shuttle } = routeOptions();
- localStorage.setItem(OPTIONS_KEY, JSON.stringify({ version: OPTIONS_VERSION, stairs, indoor, shuttle, slope: document.getElementById('opt-slope').value }));
+ const { stairs, indoor, shuttle, slopeDir, curbs } = routeOptions();
+ localStorage.setItem(OPTIONS_KEY, JSON.stringify({ version: OPTIONS_VERSION, stairs, indoor, shuttle, slopeDir, curbs, slope: document.getElementById('opt-slope').value }));
} catch { /* storage unavailable */ }
}
function restoreOptions() {
@@ -298,6 +389,8 @@ function restoreOptions() {
document.getElementById('opt-stairs').checked = !saved.stairs;
document.getElementById('opt-indoor').value = saved.indoor || 'auto';
document.getElementById('opt-shuttle').checked = saved.shuttle !== false;
+ document.getElementById('opt-slope-dir').value = saved.slopeDir || 'both';
+ document.getElementById('opt-curbs').checked = !!saved.curbs;
// Options saved before version 2 had no slope limit by default: those get the new default (1:12) once
if ((saved.version || 1) >= 2) document.getElementById('opt-slope').value = saved.slope || '';
} catch { /* storage unavailable */ }
@@ -313,9 +406,14 @@ async function setRouteOption(id, value) {
saveOptions();
syncOptionMirrors();
if (id === 'opt-stairs') populateBuildingSelects();
+ await routeAgain('New route, with your new route options.');
+}
+
+// Find the current route again after a setting changes; partway through a walk, from where you are
+async function routeAgain(intro = 'New route.') {
if (guide.active && routing.current) {
prepareRerouteFromHere();
- Object.assign(routing.autoStart, { intro: 'New route, with your new route options.', keepFocus: true });
+ Object.assign(routing.autoStart, { intro, keepFocus: true });
}
await updateRoute(window.map);
}
@@ -323,6 +421,29 @@ async function setRouteOption(id, value) {
function syncOptionMirrors() {
document.getElementById('set-avoidStairs').checked = document.getElementById('opt-stairs').checked;
document.getElementById('set-slope').value = document.getElementById('opt-slope').value;
+ document.getElementById('set-slopeDir').value = document.getElementById('opt-slope-dir').value;
+ document.getElementById('set-curbs').checked = document.getElementById('opt-curbs').checked;
+}
+
+// The slope limit in words: "1:12 (8.3%)", "1:12 (8.3%) uphill"
+function slopeLimitLabel() {
+ const label = document.getElementById('opt-slope').selectedOptions[0]?.dataset.label || '';
+ return label && { both: label, up: `${label} uphill`, down: `${label} downhill` }[document.getElementById('opt-slope-dir').value];
+}
+
+// Whether each edge goes the way its path was drawn (for uphill and downhill limits), worked out when first needed
+function edgeForward(graph) {
+ if (graph.edgeForward) return graph.edgeForward;
+ const { proj, dist } = routing.module;
+ graph.edgeForward = new Map();
+ graph.adjacency.forEach((edges, n) => {
+ for (const e of edges) {
+ if (e.seg < 0) continue;
+ const start = proj(graph.nodes[graph.segments[e.seg].a]);
+ graph.edgeForward.set(e, dist(proj(graph.nodes[e.to]), start) > dist(proj(graph.nodes[n]), start));
+ }
+ });
+ return graph.edgeForward;
}
// The graph for the current options: accessible paths only, or with footpaths and stairs (built when first needed).
@@ -341,15 +462,76 @@ async function cityGraph() {
const stairs = routeOptions().stairs;
const key = stairs ? 'cityWithStairs' : 'city';
if (graphs[key]) return graphs[key];
- try {
- data.sidewalks ||= (await (await fetch(new URL('src/geojson/sidewalks.geojson', document.baseURI))).json()).features;
- } catch {
- return null;
- }
- const sidewalks = stairs ? data.sidewalks
- : data.sidewalks.filter(({ properties: p }) => p.Type !== 'Stairs' && !p.rough && p.kerb !== 'raised' && p.wheelchair !== 'no');
- graphs[key] = module.buildGraph({ ...data, footpaths: stairs ? data.footpaths : [], sidewalks });
- return graphs[key];
+ // Once at a time: a route asked for while the background preparation is under way waits for it
+ graphs.pending ||= {};
+ graphs.pending[key] ||= (async () => {
+ // In a background thread (routing/city-worker.mjs), so the page stays responsive; on the page if that fails
+ graphs[key] = await cityGraphInWorker(stairs).catch(async () => {
+ try {
+ data.sidewalks ||= (await (await fetch(new URL('src/geojson/sidewalks.geojson', document.baseURI))).json()).features;
+ } catch {
+ return null;
+ }
+ const sidewalks = stairs ? data.sidewalks
+ : data.sidewalks.filter(({ properties: p }) => p.Type !== 'Stairs' && !p.rough && p.kerb !== 'raised' && p.wheelchair !== 'no');
+ return module.buildGraph({ ...data, footpaths: stairs ? data.footpaths : [], sidewalks });
+ });
+ return graphs[key];
+ })();
+ const graph = await graphs.pending[key];
+ if (!graph) delete graphs.pending[key]; // try again next time
+ return graph;
+}
+
+// The city graph, built by a module worker from the same files (it fetches them itself, so only the graph comes back)
+function cityGraphInWorker(stairs) {
+ return new Promise((resolve, reject) => {
+ if (!window.Worker) return reject(new Error('no workers'));
+ const base = new URL('src/', document.baseURI).href;
+ let worker;
+ try {
+ worker = new Worker(`${base}js/routing/city-worker.mjs${ASSET_VERSION}`, { type: 'module' });
+ } catch (err) {
+ return reject(err);
+ }
+ worker.onmessage = ({ data }) => { worker.terminate(); data.graph ? resolve(data.graph) : reject(new Error(data.error)); };
+ worker.onerror = (err) => { worker.terminate(); reject(err); };
+ worker.postMessage({ base, stairs });
+ });
+}
+
+// The first trip off campus would otherwise wait a few seconds on a phone while the city sidewalks are prepared
+// (most of it measuring their slopes): do it in the background once the page has settled, when the browser is idle.
+// Not with Data Saver on (it downloads the sidewalks); the same work is done when a route first needs it instead.
+function prepareCitySidewalksSoon() {
+ if (navigator.connection?.saveData) return;
+ const idle = window.requestIdleCallback || ((fn) => setTimeout(fn, 1000));
+ setTimeout(() => idle(async () => {
+ const city = await cityGraph();
+ if (city && Number.isFinite(routeOptions().maxGrade)) await ensureGrades(city);
+ }, { timeout: 10000 }), 4000);
+}
+
+// When the trip starts: now, a time chosen under When in Edit trip, or, to arrive by a time, that time less the trip
+// (worked out on each route). It decides which shuttles are running.
+const tripTime = () => routing.departAt || new Date();
+
+// "Wed, Oct 21, 10:00 AM", for the route card
+const tripTimeWords = (date) => date.toLocaleString('en-US', { weekday: 'short', month: 'short', day: 'numeric', hour: 'numeric', minute: '2-digit' });
+
+// A datetime-local value ("2026-10-21T10:00") for a Date, in this device's time zone
+const localInputValue = (date) => new Date(date.getTime() - date.getTimezoneOffset() * 60000).toISOString().slice(0, 16);
+
+// Leave now (no date), leave at a time (mode 'later'), or arrive by a time ('arrive'): shows or hides the time field.
+// To arrive by a time, the departure starts as an estimate and is set on each route (updateRoute).
+function setTripTime(date, mode = 'later') {
+ routing.timeMode = date ? mode : 'now';
+ routing.chosenTime = date;
+ routing.departAt = !date ? null : mode === 'arrive' ? new Date(date.getTime() - 20 * 60000) : date;
+ document.getElementById('trip-when').value = routing.timeMode;
+ document.getElementById('trip-time-field').hidden = !date;
+ document.getElementById('trip-time-label').textContent = mode === 'arrive' ? 'Arriving by' : 'Leaving at';
+ if (date) document.getElementById('trip-time').value = localInputValue(date);
}
// BC shuttle rides (shuttles.json), added to a walking graph: the routes running now, or with anytime, every
@@ -357,22 +539,54 @@ async function cityGraph() {
const SHUTTLE_MIN_WALK_M = 500; // shorter walks aren't worth waiting for a shuttle
const SHUTTLE_MUST_SAVE = 0.85; // a shuttle route must save at least 15% of the trip's time
let shuttleData = null;
-async function shuttleGraph(base, { anytime = false } = {}) {
- const { transit } = routing;
+let trainData = null;
+async function loadShuttles() {
try {
shuttleData ||= await (await fetch(new URL('src/geojson/shuttles.json', document.baseURI))).json();
- } catch {
- return null;
- }
- const routes = shuttleData.routes
- .map((route) => ({ route, service: anytime ? [...route.service].sort((a, b) => a.every - b.every)[0] : transit.runningService(route) }))
+ } catch { /* unavailable: no shuttle rides */ }
+ try {
+ trainData ||= await (await fetch(new URL('src/geojson/mbta-trains.json', document.baseURI))).json();
+ } catch { /* unavailable: no train rides */ }
+ return shuttleData;
+}
+async function shuttleGraph(base, { anytime = false } = {}) {
+ const { transit } = routing;
+ await loadShuttles();
+ if (!shuttleData && !trainData) return null;
+ // BC shuttles and Green Line trains, the same way: by when they run
+ const routes = [...(shuttleData?.routes || []), ...(trainData?.routes || [])]
+ // Running when you leave, and still 10 minutes later (about when you'd reach the stop)
+ .map((route) => ({ route, service: anytime ? [...route.service].sort((a, b) => a.every - b.every)[0]
+ : transit.runningService(route, new Date(tripTime().getTime() + 10 * 60000)) && transit.runningService(route, tripTime()) }))
.filter((r) => r.service)
.map(({ route, service }) => ({ route, every: service.every }));
if (!routes.length) return null;
// Per-segment slopes and city costs are the same in the copy: work them out once, on the walking graph
if (Number.isFinite(routeOptions().maxGrade)) await ensureGrades(base);
if (base.lines.some((l) => l.city)) cityCosts(base);
- return transit.addShuttles(base, routes);
+ // Built once for each walking graph and set of routes (and how often they run), and kept until that changes
+ // Avoiding stairs: on and off the train only at stations with step-free access
+ const stepFree = !routeOptions().stairs;
+ const key = `${stepFree}|${routes.map((r) => `${r.route.id}:${r.every}`).join(',')}`;
+ base.shuttleGraphs ||= new Map();
+ let graph = base.shuttleGraphs.get(key);
+ if (!graph) {
+ graph = transit.addShuttles(base, routes, { stepFree });
+ base.shuttleGraphs.set(key, graph);
+ }
+ graph.grades ||= base.grades; // slopes measured on the walking graph after the copy was made
+ return graph;
+}
+
+// Avoiding unconfirmed curb ramps: a crossing without them is used only if the way round is this much longer
+const UNCONFIRMED_CURB_PENALTY_M = 1500;
+
+// Whether the stations a train ride uses are wheelchair accessible, from the MBTA's station data, for the route card
+function trainAccess(ride) {
+ const access = [ride.from, ride.to].map((name) => stationFeatures().find((f) => f.properties.Name === name)?.properties.Wheelchair);
+ if (access.every((a) => a === 'yes')) return ' Both stations are wheelchair accessible (MBTA).';
+ const not = [ride.from, ride.to].filter((_, i) => access[i] === 'no');
+ return not.length ? ` ${not.map(escapeHtml).join(' and ')} ${not.length === 1 ? 'isn’t' : 'aren’t'} wheelchair accessible (MBTA).` : ' Whether both stations are wheelchair accessible isn’t known.';
}
// How much more a metre of city sidewalk costs than one of BC's checked paths, per segment: a little more on
@@ -385,11 +599,12 @@ function cityCosts(graph) {
if (!c) return null;
const factor = (c.campus ? 3 : 1.15) * (c.Type === 'Street' ? 1.5 : 1);
let extra = 0;
+ const unconfirmed = c.Type === 'Crossing' && !['lowered', 'flush'].includes(c.kerb);
if (c.Type === 'Crossing') {
extra = ['traffic_signals', 'marked', 'zebra', 'uncontrolled'].includes(c.crossing) ? 10 : 30;
- if (!['lowered', 'flush'].includes(c.kerb)) extra += 20;
+ if (unconfirmed) extra += 20;
}
- return { factor, extra, line: seg.line };
+ return { factor, extra, unconfirmed, line: seg.line };
});
return graph.cityCosts;
}
@@ -401,18 +616,33 @@ function edgeCost(graph, options) {
const broken = brokenOnGraph(graph).edges;
const city = graph.lines.some((l) => l.city) ? cityCosts(graph) : null;
const { shuttleCost } = routing.transit;
+ const speed = walkSpeed();
+ const dir = options.slopeDir || 'both';
+ const forward = dir !== 'both' && Number.isFinite(options.maxGrade) ? edgeForward(graph) : null;
return (e) => {
- const ride = e.seg < 0 && shuttleCost(e);
+ const ride = e.seg < 0 && shuttleCost(e, speed);
if (ride !== null && ride !== false) return ride;
let cost = e.length;
const c = city && e.seg >= 0 && city[e.seg];
- if (c) cost = cost * c.factor + (c.extra && e.length ? c.extra * (e.length / graph.lines[c.line].length || 0) : 0);
- else if (e.type === 'Link') cost *= 1.15;
+ if (c) {
+ // A crossing's fixed cost, spread along it; much more for unconfirmed curb ramps when they're to be avoided
+ const extra = c.extra + (options.curbs && c.unconfirmed ? UNCONFIRMED_CURB_PENALTY_M : 0);
+ cost = cost * c.factor + (extra && e.length ? extra * (e.length / graph.lines[c.line].length || 0) : 0);
+ }
+ else if (e.type === 'Link' || e.type === 'Connector') cost *= 1.15; // joins and entrance links: not checked
if (e.type === 'Interior') {
if (options.indoor === 'avoid') return Infinity;
if (options.indoor === 'prefer') cost = e.length * preferIndoor;
}
- if (Number.isFinite(options.maxGrade) && e.seg >= 0 && graph.grades[e.seg] > options.maxGrade) return Infinity;
+ if (Number.isFinite(options.maxGrade) && e.seg >= 0) {
+ const g = graph.grades;
+ let grade = g[e.seg];
+ if (dir !== 'both' && g.up) {
+ const fwd = forward.get(e);
+ grade = dir === 'up' ? (fwd ? g.up : g.down)[e.seg] : (fwd ? g.down : g.up)[e.seg];
+ }
+ if (grade > options.maxGrade) return Infinity;
+ }
return broken.has(e) ? cost + BROKEN_PENALTY_M : cost;
};
}
@@ -460,6 +690,8 @@ async function startFromMyLocation() {
} catch { /* the Permissions API isn't available: assume we can ask */ }
if (state === 'denied' || routing.fromChosen || from.value) return;
from.value = MY_LOCATION;
+ // A destination chosen while this was finding out (just after Back): route it now there's a start
+ if (document.getElementById('route-to').value && !routing.current) updateRoute(window.map);
}
function populateBuildingSelects() {
@@ -572,7 +804,7 @@ function clearRoute(map) {
// the feature: curb cuts and entrances on the route itself, blue-light phones and shuttle stops a little
// further. Each source's data is swapped for the nearby subset (the seating layer is clustered, so a
// filter wouldn't work) and put back when the route is cleared or the option is turned off.
-const ROUTE_POINT_RADIUS_M = { entrances: 15, elevators: 15, curbcuts: 12, bluelights: 40, reststop: 30, shuttlestops: 60, bikeracks: 20 };
+const ROUTE_POINT_RADIUS_M = { entrances: 15, elevators: 15, curbcuts: 12, bluelights: 40, reststop: 30, shuttlestops: 60, bikeracks: 20, 'mbta-stations': 80 };
const DIMMED_PATH_LAYERS = ['accessiblepaths-ext', 'accessiblepaths-int', 'paths'];
const DIMMED_OPACITY = 0.25;
let pathOpacity = null; // each path layer's own line-opacity, kept while dimmed
@@ -714,17 +946,17 @@ async function updateRoute(map) {
if (route) {
const limits = [
options.indoor === 'avoid' && 'avoids indoor routes',
- Number.isFinite(options.maxGrade) && `stays within ${document.getElementById('opt-slope').selectedOptions[0].dataset.label}`,
+ Number.isFinite(options.maxGrade) && `stays within ${slopeLimitLabel()}`,
].filter(Boolean).join(' and ');
unmet = `No mapped route ${limits}. This is the best route without ${limits.includes(' and ') ? 'those settings' : 'that setting'}.
`;
}
}
// Avoiding steep slopes can mean a long way round (off campus especially): say so when it's much longer
let detour = '';
- if (route && !unmet && Number.isFinite(options.maxGrade)) {
+ if (route && !unmet && Number.isFinite(options.maxGrade) && !routing.autoStart) { // not shown mid-walk
const shortest = findRoute(edgeCost(graph, { ...options, maxGrade: Infinity }));
if (shortest && shortest.length < route.length * 0.8 && route.length - shortest.length > 100) {
- detour = `This route avoids steep slopes. A shorter route, ${feet(shortest.length)}, has parts steeper than ${document.getElementById('opt-slope').selectedOptions[0].dataset.label}: turn off Avoid steep slopes to see it.
`;
+ detour = `This route avoids steep slopes. A shorter route, ${feet(shortest.length)}, has parts steeper than ${slopeLimitLabel()}: turn off Avoid steep slopes to see it.
`;
}
}
return { graph, route, unmet, failedStop, sources, targets, start, startNote, detour };
@@ -751,37 +983,56 @@ async function updateRoute(map) {
}
return askForStart(`You're ${feet(d)} from the nearest mapped path. Choose a building instead.
`);
}
- // A BC shuttle ride: when one is running now and the trip is clearly quicker with it. When the shuttle that would
- // help isn't running, say when it does.
- let walkOnly = null, shuttleNote = '';
- if (options.shuttle && (!p.route || p.route.length > SHUTTLE_MIN_WALK_M)) {
- const usesShuttle = (q) => q?.route && q.route.nodes.some((n) => n >= q.graph.base.nodes.length);
- const walkCost = p.route ? p.route.cost : Infinity;
- const running = await shuttleGraph(p.graph);
- if (request !== routeRequest) return;
+ // A BC shuttle or train ride: when one is running and the trip is clearly quicker with it. When the shuttle that
+ // would help isn't running, say when it does. Returns {p, walkOnly, shuttleNote}, or null if superseded.
+ const walking = p;
+ const withRides = async () => {
+ let q = walking, walkOnly = null, shuttleNote = '';
+ if (!options.shuttle || (walking.route && walking.route.length <= SHUTTLE_MIN_WALK_M)) return { p: q, walkOnly, shuttleNote };
+ // A ride counts only if it meets the slope and indoor settings at least as well as the walking route
+ const usesShuttle = (r) => r?.route && (!r.unmet || walking.unmet || !walking.route) && r.route.nodes.some((n) => n >= r.graph.base.nodes.length);
+ const walkCost = walking.route ? walking.route.cost : Infinity;
+ const running = await shuttleGraph(walking.graph);
+ if (request !== routeRequest) return null;
const t = running && await plan(running);
- if (request !== routeRequest) return;
+ if (request !== routeRequest) return null;
if (usesShuttle(t) && t.route.cost < walkCost * SHUTTLE_MUST_SAVE) {
- if (p.route) walkOnly = p.route.length;
- p = t;
- } else {
- const anytime = await shuttleGraph(p.graph, { anytime: true });
+ if (walking.route) walkOnly = walking.route.length;
+ q = t;
+ } else if (!routing.autoStart) { // the note isn't shown mid-walk
+ const anytime = await shuttleGraph(walking.graph, { anytime: true });
const a = anytime && await plan(anytime);
- if (request !== routeRequest) return;
+ if (request !== routeRequest) return null;
if (usesShuttle(a) && a.route.cost < walkCost * SHUTTLE_MUST_SAVE) {
// The next shuttle between the same two stops, on any route
const ride = module.describeRoute(a.graph, a.route).steps.find((st) => st.shuttle)?.shuttle;
- const next = ride && shuttleData.routes.filter((r) => routing.transit.serves(r, ride.from, ride.to))
- .map((r) => ({ r, next: routing.transit.nextService(r) })).filter((x) => x.next)
+ const next = ride && (shuttleData?.routes || []).filter((r) => routing.transit.serves(r, ride.from, ride.to))
+ .map((r) => ({ r, next: routing.transit.nextService(r, tripTime()) })).filter((x) => x.next)
.sort((x, y) => x.next.minutes - y.next.minutes)[0];
if (next) {
- const { dayOffset, from } = next.next;
- const when = dayOffset === 0 ? 'today' : dayOffset === 1 ? 'tomorrow' : `on ${new Date(Date.now() + dayOffset * 864e5).toLocaleDateString('en-US', { weekday: 'long', timeZone: 'America/New_York' })}`;
- shuttleNote = `A shuttle from ${escapeHtml(ride.from)} to ${escapeHtml(ride.to)} would be quicker, but none is running now. The next is the ${escapeHtml(next.r.name)}, starting ${when} at ${routing.transit.clockTime(from)}
`; // the time ends "a.m." or "p.m."
+ shuttleNote = `A shuttle from ${escapeHtml(ride.from)} to ${escapeHtml(ride.to)} would be quicker, but none is running ${routing.departAt ? 'at that time' : 'now'}. The next is the ${escapeHtml(next.r.name)}, starting ${routing.transit.nextServiceWords(next.next, tripTime())}
`; // the time ends "a.m." or "p.m."
}
}
}
+ return { p: q, walkOnly, shuttleNote };
+ };
+ // How long a planned trip takes (walking at your pace, plus rides and their waits), in ms
+ const tripMs = (q) => { const d = module.describeRoute(q.graph, q.route); return (d.walkLength / walkSpeed() + d.shuttleSeconds) * 1000; };
+ // Arriving by a time: choose rides for leaving the walking time before it; then, as a ride makes the trip shorter
+ // (so you leave later), choose again for that later time, so a shuttle that has stopped by then isn't offered
+ if (routing.timeMode === 'arrive' && walking.route) routing.departAt = new Date(routing.chosenTime.getTime() - tripMs(walking));
+ let choice = await withRides();
+ if (!choice) return;
+ if (routing.timeMode === 'arrive' && choice.p.route && choice.p !== walking) {
+ const later = new Date(routing.chosenTime.getTime() - tripMs(choice.p));
+ if (Math.abs(later - routing.departAt) > 60000) {
+ routing.departAt = later;
+ choice = await withRides();
+ if (!choice) return;
+ }
}
+ p = choice.p;
+ const { walkOnly, shuttleNote } = choice;
const { graph, route, unmet, failedStop, sources, targets, startNote, detour } = p;
if (!route) {
const startNode = graph.nodes[sources[0]];
@@ -811,7 +1062,7 @@ async function updateRoute(map) {
}
const unverified = step.unverifiedLength >= 10 && step.length - step.unverifiedLength >= 10
? ` (${feet(step.unverifiedLength)} of it on paths or sidewalks not checked for accessibility)`
- : step.unverifiedLength >= 10 ? ` (${step.cityLength >= 10 ? 'city sidewalks' : 'a footpath'} not checked for accessibility)` : '';
+ : step.unverifiedLength >= 10 ? ` (${step.cityLength >= 10 ? 'city sidewalks' : 'a path'} not checked for accessibility)` : '';
const text = i === 0 ? 'Follow the outdoor path' : 'Continue on the outdoor path';
return `${text}${unverified}: ${feet(step.length)}${stepSlope(step)} `;
});
@@ -821,12 +1072,20 @@ async function updateRoute(map) {
const stairs = description.steps.filter((st) => st.type === 'stairs').reduce((sum, st) => sum + st.length, 0);
const stairsNote = stairs ? `This route uses stairs (${feet(stairs)}).
` : '';
const stopsSaid = stops.length ? `, with ${stops.length === 1 ? 'a stop' : `${stops.length} stops`}` : '';
- // A gentle walking pace (about 1.2 m/s); wheelchair and cane users vary, so it's only a guide
- const ride = description.steps.find((st) => st.type === 'shuttle')?.shuttle;
- const minutes = Math.max(1, Math.round((description.walkLength / 1.2 + description.shuttleSeconds) / 60));
- const walkMinutes = (m) => Math.max(1, Math.round(m / 1.2 / 60));
- const shuttleInfo = ride ? `This route includes a ride on the ${escapeHtml(ride.route)} shuttle. Times are estimates from BC’s published schedule, including an average wait. Whether the shuttle has a wheelchair lift or ramp isn’t confirmed: check with BC Transportation before relying on it. Live shuttle tracker
` : '';
- const walkOnlyNote = walkOnly ? `Walking all the way instead: about ${walkMinutes(walkOnly)} min (${feet(walkOnly)}). To walk, turn off Use BC shuttles in Edit trip.
` : '';
+ // At your pace (Accessibility settings); only a guide
+ const rides = description.steps.filter((st) => st.type === 'shuttle').map((st) => st.shuttle);
+ const ride = rides[0];
+ const shuttleRide = rides.find((r) => r.mode !== 'train'), trainRide = rides.find((r) => r.mode === 'train');
+ const ridesSaid = shuttleRide && trainRide ? 'shuttle and train rides' : trainRide ? 'a train ride' : 'a shuttle ride';
+ const minutes = Math.max(1, Math.round((description.walkLength / walkSpeed() + description.shuttleSeconds) / 60));
+ const walkMinutes = (m) => Math.max(1, Math.round(m / walkSpeed() / 60));
+ if (routing.timeMode === 'arrive') routing.departAt = new Date(routing.chosenTime.getTime() - minutes * 60000);
+ const whenNote = routing.timeMode === 'arrive'
+ ? `To arrive by ${escapeHtml(tripTimeWords(routing.chosenTime))}, leave by ${escapeHtml(tripTimeWords(routing.departAt).replace(/^.*?, .*?, /, ''))} .`
+ : routing.timeMode === 'later' ? `Leaving ${escapeHtml(tripTimeWords(routing.departAt))}.` : '';
+ const shuttleInfo = (shuttleRide ? `This route includes a ride on the ${escapeHtml(shuttleRide.route)} shuttle. Times are estimates from BC’s published schedule, including an average wait. Whether the shuttle has a wheelchair lift or ramp isn’t confirmed: check with BC Transportation before relying on it. Live shuttle tracker
` : '')
+ + (trainRide ? `This route includes a ride on the ${escapeHtml(trainRide.route)} ${trainRide.toward ? ` toward ${escapeHtml(trainRide.toward)}` : ''}, from ${escapeHtml(trainRide.from)} to ${escapeHtml(trainRide.to)}. Times are estimates from the MBTA’s schedule (trains about every ${trainRide.every} minutes), including an average wait; live times for the station are below.${trainAccess(trainRide)}
` : '');
+ const walkOnlyNote = walkOnly ? `Walking all the way instead: about ${walkMinutes(walkOnly)} min (${feet(walkOnly)}). To walk, turn off Use BC shuttles and the Green Line in Edit trip.
` : '';
const broken = brokenRouteNotes(graph, route, [fromIsBuilding && fromValue, !toIsPlace && toValue].filter(Boolean));
// City sidewalks: how much of the route, and its street crossings, with curb ramps confirmed or not
const cityLength = description.steps.reduce((sum, st) => sum + (st.cityLength || 0), 0);
@@ -835,25 +1094,32 @@ async function updateRoute(map) {
const crossingsSaid = crossings.length
? ` It crosses ${crossings.length} ${crossings.length === 1 ? 'street' : 'streets'}; curb ramps are confirmed at ${rampsConfirmed === crossings.length ? (crossings.length === 1 ? 'it' : 'all of them') : `${rampsConfirmed || 'none'}${rampsConfirmed ? ` of ${crossings.length}` : ''}`}.`
: '';
+ // Avoiding unconfirmed curb ramps, but there was no way round some: say how many
+ const curbsWarning = options.curbs && rampsConfirmed < crossings.length
+ ? `This route crosses ${crossings.length - rampsConfirmed === 1 ? 'a street' : `${crossings.length - rampsConfirmed} streets`} where curb ramps aren’t confirmed: no way round ${crossings.length - rampsConfirmed === 1 ? 'it' : 'them'} was found. Each is a step of its own in the directions.
`
+ : '';
const cityNote = cityLength >= 20
? `About ${feet(cityLength)} of this route is on city sidewalks from OpenStreetMap, which haven’t been checked for accessibility.${crossingsSaid}
`
: '';
const stepFree = !stairs && !ride && rampsConfirmed === crossings.length;
- const slopeLimit = Number.isFinite(options.maxGrade) ? document.getElementById('opt-slope').selectedOptions[0].dataset.label : '';
+ const slopeLimit = Number.isFinite(options.maxGrade) ? slopeLimitLabel() : '';
const slopeSaid = slopeLimit && !unmet ? `, nothing steeper than ${slopeLimit}` : '';
- const message = `Route found: about ${minutes} ${minutes === 1 ? 'minute' : 'minutes'}, ${ride ? `, including the ${ride.route} shuttle` : feet(description.length)}${stairs ? ', using stairs' : ''}${slopeSaid}${stopsSaid}.${cityNote ? ` ${feet(cityLength)} of it is on city sidewalks not checked for accessibility.${crossingsSaid}` : ''}${broken.text ? ` ${broken.text}` : ''}${routing.autoStart ? '' : ' Press Start to begin.'}`;
+ const message = `Route found: about ${minutes} ${minutes === 1 ? 'minute' : 'minutes'}, ${ride ? `including ${rides.map((r) => (r.mode === 'train' ? `the ${r.route}` : `the ${r.route} shuttle`)).join(' and ')}` : feet(description.length)}${stairs ? ', using stairs' : ''}${slopeSaid}${stopsSaid}.${cityNote ? ` ${feet(cityLength)} of it is on city sidewalks not checked for accessibility.${crossingsSaid}` : ''}${broken.text ? ` ${broken.text}` : ''}${routing.autoStart ? '' : ' Press Start to begin.'}`;
const speaks = 'speechSynthesis' in window && !settings.screenReader;
showResult(`
${toIsPlace && isBluelightTrip() ? emergencyCallLinks() : ''}
${unmet}
${broken.html}
+
${shuttleInfo}
+ ${curbsWarning}
${cityNote}
- About ${minutes} min · ${ride ? `${feet(description.walkLength)} walking${indoor} · plus a shuttle ride` : `${feet(description.length)}${indoor}`}${stepFree ? ' · Step-free ' : ''}
+ About ${minutes} min · ${ride ? `${feet(description.walkLength)} walking${indoor} · plus ${ridesSaid}` : `${feet(description.length)}${indoor}`}${stepFree ? ' · Step-free ' : ''}
Avoid steep slopes
${slopeLimit ? `On: nothing steeper than ${slopeLimit}` : 'Off: the route may have steep parts'}
+ ${whenNote ? `${whenNote} Change
` : ''}
${detour}
${walkOnlyNote}
${shuttleNote}
@@ -865,7 +1131,10 @@ async function updateRoute(map) {
Still in development: don’t rely on live directions as an assistive device yet. Use your usual mobility skills, and take care.
Preview the steps one by one
- ${toMe ? '' : 'Share this trip '}
+ ${toMe ? '' : 'Share this trip Save '}
+ ${routing.departAt ? '' : 'Plan for later '}
+ Copy directions
+ Email directions
${!toIsPlace ? `About ${escapeHtml(toValue)} ` : ''}
@@ -875,6 +1144,9 @@ async function updateRoute(map) {
`, message);
routing.current = { graph, route, from: fromLabel, to: toLabel, toIsPlace, fromBuilding: fromIsBuilding };
+ rememberDestination();
+ syncSaveButton();
+ showStationNotes(description); // to or from a T station, or by train: its accessibility and live MBTA alerts
// Screen readers hear the summary (showResult announces it); nothing is read aloud until you Start
if (routing.autoStart) {
const { follow, step, intro, keepFocus, restored } = routing.autoStart;
@@ -901,12 +1173,16 @@ function routeCrossings(graph, route) {
// Slope figures for every segment of a graph, measured the first time a slope limit is used.
async function ensureGrades(graph) {
if (graph.grades) return;
- try {
- graph.grades = await routing.elevation.segmentGrades(routing.terrain, graph);
- } catch (err) {
- console.warn('Slope estimates unavailable:', err);
- graph.grades = new Float32Array(graph.segments.length).fill(NaN);
- }
+ // Once per graph: callers arriving while it's being measured (the background preparation, a route) wait for it
+ graph.gradesPending ||= (async () => {
+ try {
+ graph.grades = await routing.elevation.segmentGrades(routing.terrain, graph);
+ } catch (err) {
+ console.warn('Slope estimates unavailable:', err);
+ graph.grades = new Float32Array(graph.segments.length).fill(NaN);
+ }
+ })();
+ await graph.gradesPending;
}
function stopNote(stops) {
diff --git a/src/js/emergency.js b/src/js/emergency.js
index 2bb91e7..2ce5c61 100644
--- a/src/js/emergency.js
+++ b/src/js/emergency.js
@@ -107,18 +107,6 @@ document.addEventListener('DOMContentLoaded', () => {
if (settings.clockFace) startCompass();
goToNearestBluelight();
});
- // "Directions here" on a blue-light phone on the map: walking directions to it, from your location
- document.addEventListener('click', (e) => {
- const button = e.target.closest('[data-bluelight-directions]');
- if (!button || !routing) return;
- const lonlat = button.dataset.bluelightDirections.split(',').map(Number);
- const label = button.dataset.label;
- document.querySelectorAll('.maplibregl-popup').forEach((p) => p.remove());
- document.getElementById('route-from').value = MY_LOCATION;
- setPlaceDestination({ label, phrase: `the ${label[0].toLowerCase()}${label.slice(1)}`, lonlat });
- updateRoute(window.map);
- document.getElementById('route-title').focus();
- });
const box = document.getElementById('emergency-message');
document.getElementById('emergency-message-close').addEventListener('click', () => hideEmergencyMessage({ returnFocus: true }));
box.addEventListener('keydown', (e) => { if (e.key === 'Escape') hideEmergencyMessage({ returnFocus: true }); });
diff --git a/src/js/guidance.js b/src/js/guidance.js
index 836730d..f507239 100644
--- a/src/js/guidance.js
+++ b/src/js/guidance.js
@@ -178,6 +178,8 @@ async function showStep(map, index, intro = '') {
const total = guide.steps.length;
document.getElementById('guidance-progress').textContent = `Step ${guide.index + 1} of ${total}`;
document.getElementById('guidance-instruction').textContent = step.text;
+ // What's said before the step ("New route.", or a step passed too quickly to show): on screen and to screen readers too
+ if (intro) guidanceStatus(escapeHtml(intro));
// Setting off (at the start, after a stop, out of a building): which way that is from where you face
const hint = ['depart', 'stop', 'exit'].includes(step.kind) && facing() !== null && settings.clockFace
? `The way to go is ${directionWords(step.heading)}.` : '';
@@ -322,7 +324,10 @@ function onPosition(map, position) {
while (next + 1 < guide.steps.length && along >= guide.starts[next + 1] - 4) next++;
if (next !== guide.index) {
guidanceStatus('');
- showStep(map, next);
+ // Past more than one step at once (fixes far apart, as on a bus): say any skipped step that mustn't be missed
+ // (getting on or off, a stop, a street crossing) before the current one
+ const skipped = guide.steps.slice(guide.index + 1, next).filter((st) => ['board', 'alight', 'stop', 'cross'].includes(st.kind));
+ showStep(map, next, skipped.map((st) => st.text).join(' '));
return;
}
// A heads-up shortly before the next step.
@@ -385,10 +390,7 @@ function confirmLiveDirections(start) {
cancel.onclick = () => close(false);
dialog.onkeydown = (e) => {
if (e.key === 'Escape') close(false);
- if (e.key === 'Tab') { // two buttons: keep focus on them
- e.preventDefault();
- (document.activeElement === ok ? cancel : ok).focus();
- }
+ trapFocus(dialog, e);
};
dialog.hidden = false;
ok.focus();
diff --git a/src/js/mapcontrols.js b/src/js/mapcontrols.js
index ec5d7cd..f2d81d8 100644
--- a/src/js/mapcontrols.js
+++ b/src/js/mapcontrols.js
@@ -76,12 +76,14 @@ class ThreeDControl {
const legendData = [
{ id: 'shuttlestop', name: 'Shuttle Stops', icon: 'src/icons/shuttle.png', category: 'Transportation' },
{ id: 'bikerack', name: 'Bike Racks', icon: 'src/icons/bike.png', category: 'Transportation' },
+ { id: 'mbta', name: 'T Stations (Green Line)', color: '#00843D', category: 'Transportation' },
{ id: 'bluelight', name: 'Bluelights', color: '#0000ff', category: 'Campus Resources' },
{ id: 'reststop', name: 'Outdoor Seating', color: '#73AF48', category: 'Campus Resources' },
{ id: 'elevators', name: 'Elevators', color: '#94346E', category: 'Navigating Campus' },
{ id: 'entrances', name: 'Accessible Entrances', color: '#f97b72', category: 'Navigating Campus' },
{ id: 'paths', name: 'Stairs', color: '#F2B701', category: 'Navigating Campus' },
{ id: 'curbcuts', name: 'Curb Cuts', color: '#3969AC', category: 'Navigating Campus' },
+ { id: 'entrance-links', name: 'Links to Entrances (not checked)', color: '#0F8554', category: 'Navigating Campus' },
{ id: 'accessiblepaths-int', name: 'Exterior Accessible Paths', color: '#0F8554', category: 'Navigating Campus' },
{ id: 'accessiblepaths-ext', name: 'Interior Accessible Paths', color: '#5F4690', category: 'Navigating Campus' }
];
diff --git a/src/js/mbta.js b/src/js/mbta.js
new file mode 100644
index 0000000..5bb0ecb
--- /dev/null
+++ b/src/js/mbta.js
@@ -0,0 +1,175 @@
+// MBTA Green Line stations near campus (mbta-stations.geojson, see scripts/mbta.mjs): on the map, in Where to?, in
+// Find nearby, and as the start or end of a trip. Whether each is wheelchair accessible comes with the data; elevator
+// outages and other access problems, and the next trains, are fetched live from the MBTA when a station's
+// information or a route to or from it is shown.
+
+const MBTA_API = 'https://api-v3.mbta.com';
+// The kinds of alert that matter for getting into and through a station, or for the trains not running there
+const MBTA_EFFECTS = new Set(['ELEVATOR_CLOSURE', 'ESCALATOR_CLOSURE', 'ACCESS_ISSUE', 'STATION_CLOSURE', 'STOP_CLOSURE', 'SUSPENSION', 'SHUTTLE']);
+const MBTA_ALERTS_FRESH_MS = 2 * 60 * 1000;
+const mbtaAlertCache = new Map(); // station id -> {at, alerts}
+const MBTA_TRAINS_FRESH_MS = 30 * 1000;
+const TRAINS_SHOWN = 2; // per direction
+const mbtaTrainCache = new Map(); // station id -> {at, trains}
+
+// The next trains leaving a station, live: [{line, toward, minutes: [n, …], accessible}] by direction, or null if
+// the MBTA can't be reached. At the end of a line (Boston College, Cleveland Circle) the MBTA predicts trains
+// arriving, not leaving, since each turns round there: those come back as {line, arriving: true, minutes}.
+async function mbtaTrains(stationId) {
+ const cached = mbtaTrainCache.get(stationId);
+ if (cached && Date.now() - cached.at < MBTA_TRAINS_FRESH_MS) return cached.trains;
+ try {
+ const query = new URLSearchParams({ 'filter[stop]': stationId, 'filter[route]': 'Green-B,Green-C,Green-D', include: 'trip', sort: 'departure_time' });
+ const res = await fetch(`${MBTA_API}/predictions?${query}`);
+ if (!res.ok) return null;
+ const body = await res.json();
+ const trips = new Map((body.included || []).filter((i) => i.type === 'trip').map((i) => [i.id, i.attributes]));
+ const groups = new Map(), arrivals = new Map();
+ for (const p of body.data) {
+ const leaves = p.attributes.departure_time && Date.parse(p.attributes.departure_time);
+ const arrives = p.attributes.arrival_time && Date.parse(p.attributes.arrival_time);
+ if (!leaves && arrives && arrives > Date.now() - 30000) {
+ const line = `Green Line ${p.relationships.route.data.id.replace('Green-', '')}`;
+ arrivals.set(line, [...(arrivals.get(line) || []), Math.max(0, Math.round((arrives - Date.now()) / 60000))]);
+ continue;
+ }
+ if (!leaves || leaves < Date.now() - 30000) continue;
+ const trip = trips.get(p.relationships.trip.data?.id) || {};
+ const line = `Green Line ${p.relationships.route.data.id.replace('Green-', '')}`;
+ const key = `${line}|${trip.headsign}`;
+ if (!groups.has(key)) groups.set(key, { line, toward: trip.headsign || 'its destination', minutes: [], accessible: [] });
+ const g = groups.get(key);
+ if (g.minutes.length < TRAINS_SHOWN) {
+ g.minutes.push(Math.max(0, Math.round((leaves - Date.now()) / 60000)));
+ g.accessible.push(trip.wheelchair_accessible);
+ }
+ }
+ const trains = [...groups.values()].map((g) => ({ ...g, accessible: g.accessible.every((a) => a === 1) ? 'yes' : g.accessible.some((a) => a === 2) ? 'no' : 'unknown' }));
+ // The end of a line: arriving trains, for lines with no departures predicted
+ for (const [line, minutes] of arrivals) {
+ if (!trains.some((t) => t.line === line)) trains.push({ line, arriving: true, minutes: minutes.sort((a, b) => a - b).slice(0, TRAINS_SHOWN) });
+ }
+ mbtaTrainCache.set(stationId, { at: Date.now(), trains });
+ return trains;
+ } catch {
+ return null;
+ }
+}
+
+function trainsHtml(trains) {
+ if (trains === null) return `Live train times aren’t available${navigator.onLine ? ' right now' : ' offline'}.
`;
+ if (!trains.length) return 'No trains are expected to leave there soon (MBTA, live).
';
+ const when = (m) => (m === 0 ? 'now' : `${m} min`);
+ return `Next trains (MBTA, live)
+ ${trains.map((t) => (t.arriving
+ ? `${escapeHtml(t.line)} : trains arrive at the end of the line in ${t.minutes.map(when).join(' and ')}, and leave again from here toward downtown a few minutes later `
+ : `${escapeHtml(t.line)} toward ${escapeHtml(t.toward)}: ${t.minutes.map(when).join(', ')}${t.accessible === 'no' ? ' (not all wheelchair accessible) ' : ''} `)).join('')} `;
+}
+
+const stationLabel = (f) => `${f.properties.Name} T station`;
+const stationFeatures = () => routePoints?.['mbta-stations']?.features || [];
+const stationByLabel = (label) => stationFeatures().find((f) => stationLabel(f) === label);
+
+// Current alerts for a station that affect access ([{effect, header}]), or null if the MBTA can't be reached
+async function mbtaAlerts(stationId) {
+ const cached = mbtaAlertCache.get(stationId);
+ if (cached && Date.now() - cached.at < MBTA_ALERTS_FRESH_MS) return cached.alerts;
+ try {
+ const query = new URLSearchParams({ 'filter[stop]': stationId, 'filter[datetime]': 'NOW' });
+ const res = await fetch(`${MBTA_API}/alerts?${query}`);
+ if (!res.ok) return null;
+ const alerts = (await res.json()).data.map((a) => a.attributes).filter((a) => MBTA_EFFECTS.has(a.effect))
+ .map((a) => ({ effect: a.effect, header: a.header }));
+ mbtaAlertCache.set(stationId, { at: Date.now(), alerts });
+ return alerts;
+ } catch {
+ return null;
+ }
+}
+
+// The nearest wheelchair-accessible station to a station that isn't (straight-line), for the notes
+function nearestAccessibleStation(feature) {
+ const { proj, dist } = routing.module;
+ const p = proj(feature.geometry.coordinates);
+ return stationFeatures().filter((f) => f.properties.Wheelchair === 'yes')
+ .map((f) => ({ f, d: dist(p, proj(f.geometry.coordinates)) })).sort((a, b) => a.d - b.d)[0];
+}
+
+function accessibilityLine(feature) {
+ const p = feature.properties;
+ if (p.Wheelchair === 'yes') return `${escapeHtml(p.Name)} station is wheelchair accessible (MBTA).`;
+ const other = p.Wheelchair === 'no' && nearestAccessibleStation(feature);
+ const instead = other ? ` The nearest accessible station is ${escapeHtml(other.f.properties.Name)} (${escapeHtml(other.f.properties.Lines)}), about ${feet(other.d)} away.` : '';
+ return p.Wheelchair === 'no' ? `${escapeHtml(p.Name)} station isn’t wheelchair accessible (MBTA).${instead}` : `Whether ${escapeHtml(p.Name)} station is wheelchair accessible isn’t known.`;
+}
+
+function alertsHtml(alerts) {
+ if (alerts === null) return `Live MBTA alerts aren’t available${navigator.onLine ? ' right now' : ' offline'}. Check mbta.com/alerts .
`;
+ if (!alerts.length) return 'No elevator, access, or service alerts there right now (MBTA, live).
';
+ return `${alerts.map((a) => `${escapeHtml(a.header)} `).join('')} `;
+}
+
+// A station's map popup: its line, accessibility, live alerts (filled in when they arrive), and directions
+function stationPopupHtml(feature) {
+ const p = feature.properties, coords = feature.geometry.coordinates.join(',');
+ return `${escapeHtml(p.Name)} station
+ ${escapeHtml(p.Lines)}
+ ${accessibilityLine(feature)}
+
+
+ Directions here
+ Directions from here
+ Station page (MBTA) `;
+}
+
+async function fillStationAlerts(element) {
+ const alerts = element.querySelector('[data-mbta-alerts]'), trains = element.querySelector('[data-mbta-trains]');
+ await Promise.all([
+ alerts && mbtaAlerts(alerts.dataset.mbtaAlerts).then((a) => { alerts.innerHTML = alertsHtml(a); }),
+ trains && mbtaTrains(trains.dataset.mbtaTrains).then((t) => { trains.innerHTML = trainsHtml(t); }),
+ ]);
+}
+
+// On a route to or from a station: its accessibility and live alerts, under the route summary
+async function showStationNotes(description) {
+ const box = document.getElementById('station-notes');
+ if (!box) return;
+ // The trip's start and end, if they're stations, and any station a train is boarded or left at on the way
+ const byName = (name) => stationFeatures().find((f) => f.properties.Name === name);
+ const trainStations = (description?.steps || []).filter((st) => st.shuttle?.mode === 'train').flatMap((st) => [byName(st.shuttle.from), byName(st.shuttle.to)]);
+ const ends = [...new Set([
+ document.getElementById('route-from').value === HERE && routing.fromPlace && stationByLabel(routing.fromPlace.label),
+ ...trainStations,
+ document.getElementById('route-to').value === PLACE && routing.place && stationByLabel(routing.place.label),
+ ].filter(Boolean))];
+ if (!ends.length) return;
+ const parts = await Promise.all(ends.map(async (f) => {
+ const [alerts, trains] = await Promise.all([mbtaAlerts(f.properties.Id), mbtaTrains(f.properties.Id)]);
+ const warn = f.properties.Wheelchair === 'no' || (alerts && alerts.length);
+ // Live train times are for now: for a trip planned for later, they'd mislead
+ const times = routing.departAt ? 'Train times: see mbta.com for the time you’re leaving.
' : trainsHtml(trains);
+ return `${accessibilityLine(f)}
${alertsHtml(alerts)}${times}
`;
+ }));
+ box.innerHTML = parts.join('');
+ if (ends.some((f) => f.properties.Wheelchair === 'no')) announce(box.textContent.trim());
+}
+
+document.addEventListener('DOMContentLoaded', () => {
+ // "Directions from here": the trip starts at the station; choose where to, if there's no destination yet
+ document.addEventListener('click', (e) => {
+ const button = e.target.closest('[data-place-from]');
+ if (!button || !routing) return;
+ document.querySelectorAll('.maplibregl-popup').forEach((p) => p.remove());
+ setPlaceStart({ label: button.dataset.label, lonlat: button.dataset.placeFrom.split(',').map(Number) });
+ routing.fromChosen = true;
+ if (document.getElementById('route-to').value) {
+ updateRoute(window.map);
+ document.getElementById('route-title').focus();
+ return;
+ }
+ setView('route');
+ document.getElementById('route-title').textContent = `From ${button.dataset.label}`;
+ askForStart('Choose where you’re going, under To.
');
+ document.getElementById('route-to').focus();
+ });
+});
diff --git a/src/js/menu.js b/src/js/menu.js
index 656e8a7..4183e4a 100644
--- a/src/js/menu.js
+++ b/src/js/menu.js
@@ -62,13 +62,7 @@ function handleAboutClick() {
popup.addEventListener('keydown', (e) => {
if (e.key === 'Escape') close();
- if (e.key === 'Tab') {
- // keep keyboard focus inside the dialog while it's open
- const focusable = popup.querySelectorAll('a[href], button');
- const first = focusable[0], last = focusable[focusable.length - 1];
- if (e.shiftKey && document.activeElement === first) { e.preventDefault(); last.focus(); }
- else if (!e.shiftKey && document.activeElement === last) { e.preventDefault(); first.focus(); }
- }
+ trapFocus(popup, e);
});
document.body.appendChild(popup);
@@ -184,4 +178,21 @@ document.addEventListener('DOMContentLoaded', () => {
item('brighton', handleBrightonClick);
item('newton', handleNewtonClick);
item('brookline', handleBrooklineClick);
+
+ // "Add Access BC to your home screen": offered in the menu when the browser can install it (Android and desktop
+ // Chrome and Edge). On an iPhone it's Share, then Add to Home Screen (the help page says so).
+ let installPrompt = null;
+ window.addEventListener('beforeinstallprompt', (e) => {
+ e.preventDefault();
+ installPrompt = e;
+ document.getElementById('menu-install-item').hidden = false;
+ });
+ window.addEventListener('appinstalled', () => { document.getElementById('menu-install-item').hidden = true; });
+ item('menu-install', async () => {
+ if (!installPrompt) return;
+ installPrompt.prompt();
+ await installPrompt.userChoice;
+ installPrompt = null;
+ document.getElementById('menu-install-item').hidden = true;
+ });
});
diff --git a/src/js/nearby.js b/src/js/nearby.js
index 26f4602..921ef2c 100644
--- a/src/js/nearby.js
+++ b/src/js/nearby.js
@@ -14,6 +14,7 @@ const NEARBY_KINDS = {
benches: { label: 'Outdoor seating', source: 'reststop', name: 'Outdoor seating' },
bluelights: { label: 'Blue-light emergency phones', source: 'bluelights', name: 'Blue-light phone' },
shuttle: { label: 'Shuttle stops', source: 'shuttlestops', name: 'Shuttle stop' },
+ tstation: { label: 'T stations (Green Line)', source: 'mbta-stations', name: 'T station', city: true }, // off campus: on city sidewalks
elevators: { label: 'Elevators', source: 'elevators', name: 'Elevator' },
};
const SNAP_TO_PATH_M = 40; // a point feature counts if it's this close to a mapped path
@@ -45,9 +46,10 @@ function nearbyCandidates(graph, kind) {
if (near.d > SNAP_TO_PATH_M) continue;
const building = module.nearestBuilding(graph.buildings, module.proj(lonlat));
const where = kind === 'elevators' && (f.properties.Building || '').trim() ? `in ${f.properties.Building.trim()}` : `near ${building.name}`;
- const label = `${config.name} ${where}`;
+ const label = kind === 'shuttle' && f.properties.Name ? `${f.properties.Name} shuttle stop`
+ : kind === 'tstation' ? `${f.properties.Name} T station` : `${config.name} ${where}`;
// How it reads mid-sentence ("Arrive at the outdoor seating near Gasson Hall")
- const phrase = `the ${label[0].toLowerCase()}${label.slice(1)}`;
+ const phrase = placePhrase(label);
candidates.push({ label, phrase, lonlat, nodes: [near.node], offset: near.d, feature: f });
}
}
@@ -64,32 +66,31 @@ async function findNearby(map) {
const { module } = routing;
const kind = document.getElementById('nearby-kind').value;
const near = document.getElementById('nearby-from').value;
- const graph = currentGraph();
const options = routeOptions();
const out = document.getElementById('nearby-results');
+ // Things off campus (T stations) are measured on city sidewalks too
+ let graph = (NEARBY_KINDS[kind].city && await cityGraph()) || currentGraph();
out.innerHTML = 'Searching…
';
// Where to measure from: your location, your route, or a building chosen under Near
- let sources, startOffset = 0, fromWhat;
+ let sources, startOffset = 0, fromWhat, here = null, start = null;
if (near === 'route') {
if (!routing.current) return nearbyMessage(out, 'There’s no route yet. Choose My location or a building under Near.
');
- sources = routing.current.route.nodes;
+ // On the route's own walking graph (campus or city), leaving out shuttle and train ride nodes
+ graph = routing.current.graph.base || routing.current.graph;
+ sources = routing.current.route.nodes.filter((n) => n < graph.nodes.length);
fromWhat = 'route';
} else if (near === 'me') {
out.innerHTML = 'Finding your location…
';
- let problem = null, start;
try {
- start = module.nearestNode(graph, await getPosition());
- if (start.d > MAX_START_DISTANCE_M) problem = `You’re ${feet(start.d)} from the nearest mapped campus path, so walking distances from you can’t be measured.`;
+ here = await getPosition();
} catch {
- problem = 'Your location isn’t available (check that location access is allowed for this site).';
- }
- if (problem) {
// Straight to the Near list, to pick a building to search from instead
- nearbyMessage(out, `${problem} Choose a building under Near to search from there.
`);
+ nearbyMessage(out, 'Your location isn’t available (check that location access is allowed for this site). Choose a building under Near to search from there.
');
document.getElementById('nearby-from').focus();
return;
}
+ start = module.nearestNode(graph, here);
sources = [start.node];
startOffset = start.d;
fromWhat = 'you';
@@ -99,12 +100,44 @@ async function findNearby(map) {
fromWhat = near;
}
if (Number.isFinite(options.maxGrade)) await ensureGrades(graph);
- const distances = module.walkingDistances(graph, sources, edgeCost(graph, options));
- nearbyResults = nearbyCandidates(graph, kind)
- .map((c) => ({ ...c, distance: Math.min(...c.nodes.map((n) => distances[n])) + c.offset + startOffset }))
- .filter((c) => Number.isFinite(c.distance))
- .sort((a, b) => a.distance - b.distance)
- .slice(0, NEARBY_RESULTS);
+ // Within the route options; if nothing is, without the slope and indoor limits (and say so)
+ let relaxed = false;
+ const search = (opts) => {
+ const distances = module.walkingDistances(graph, sources, edgeCost(graph, opts));
+ return nearbyCandidates(graph, kind)
+ .map((c) => ({ ...c, distance: Math.min(...c.nodes.map((n) => distances[n])) + c.offset + startOffset }))
+ .filter((c) => Number.isFinite(c.distance))
+ .sort((a, b) => a.distance - b.distance)
+ .slice(0, NEARBY_RESULTS);
+ };
+ const searchRelaxing = () => {
+ relaxed = false;
+ if (start && start.d > MAX_START_DISTANCE_M) return []; // too far from these paths to measure from
+ let results = search(options);
+ if (!results.length && (Number.isFinite(options.maxGrade) || options.indoor === 'avoid')) {
+ results = search({ ...options, maxGrade: Infinity, indoor: 'auto' });
+ relaxed = results.length > 0;
+ }
+ return results;
+ };
+ nearbyResults = searchRelaxing();
+ // From your location, off campus or on a stretch of path cut off from the rest: city sidewalks too (as directions do)
+ if (fromWhat === 'you' && !nearbyResults.length) {
+ const city = await cityGraph();
+ if (city) {
+ graph = city;
+ start = module.nearestNode(graph, here);
+ sources = [start.node];
+ startOffset = start.d;
+ if (Number.isFinite(options.maxGrade)) await ensureGrades(graph);
+ nearbyResults = searchRelaxing();
+ }
+ }
+ if (fromWhat === 'you' && start.d > MAX_START_DISTANCE_M) {
+ nearbyMessage(out, `You’re ${feet(start.d)} from the nearest mapped path, so walking distances from you can’t be measured. Choose a building under Near to search from there.
`);
+ document.getElementById('nearby-from').focus();
+ return;
+ }
nearbyFromYou = fromWhat === 'you';
nearbyFromBuilding = fromWhat !== 'you' && fromWhat !== 'route' ? fromWhat : null;
@@ -120,7 +153,8 @@ async function findNearby(map) {
const items = nearbyResults.map((r, i) => {
const end = r.building && ends[r.building];
const how = end || (along ? (r.distance < 15 ? 'on your route' : `${feet(r.distance)} off your route`) : `${feet(r.distance)} walk`);
- const broken = r.feature && isReportedBroken(r.feature) ? ' (reported not working) ' : '';
+ const broken = r.feature && isReportedBroken(r.feature) ? ' (reported not working) '
+ : r.feature?.properties.Wheelchair === 'no' ? ' (not wheelchair accessible) ' : '';
return `
${escapeHtml(r.label)} ${broken} ${how}
@@ -131,7 +165,8 @@ async function findNearby(map) {
`;
});
// Looking for a blue-light phone: the numbers to call come first
- out.innerHTML = `${kind === 'bluelights' ? emergencyCallLinks() : ''}${items.join('')} `;
+ const relaxedNote = relaxed ? 'None can be reached within your slope and indoor settings, so these may involve steeper slopes.
' : '';
+ out.innerHTML = `${kind === 'bluelights' ? emergencyCallLinks() : ''}${relaxedNote}${items.join('')} `;
const first = nearbyResults[0];
const said = `The nearest is ${first.label}${first.feature && isReportedBroken(first.feature) ? ' (reported not working)' : ''}, ${along ? (first.distance < 15 ? 'on your route' : `${feet(first.distance)} off your route`) : `${feet(first.distance)} away`}.`;
announce(`${nearbyResults.length} ${nearbyResults.length === 1 ? 'result' : 'results'} found. ${said}`);
diff --git a/src/js/offline.js b/src/js/offline.js
new file mode 100644
index 0000000..68607b0
--- /dev/null
+++ b/src/js/offline.js
@@ -0,0 +1,46 @@
+// Working offline: registers the service worker (sw.js), then asks it to save everything the app needs, so the
+// map, directions, and Where am I? keep working with no signal. That's the files this page has loaded, the data it
+// loads only when needed (city sidewalks, shuttles), and the basemap and terrain (about 9 MB, once). Not with
+// Data Saver on: then only what's been used is saved.
+//
+// While offline, a note says what still works.
+
+const OFFLINE_DATA = ['src/geojson/sidewalks.geojson', 'src/geojson/shuttles.json', 'src/geojson/mbta-trains.json', 'src/js/routing/city-worker.mjs', 'help.html'];
+const OFFLINE_MAPS = ['src/basemap/basemap.pmtiles', 'src/basemap/terrain.pmtiles'];
+
+// The browser records loaded files in a buffer of 250 by default, which the map's tile requests soon fill; make room,
+// so the list of files to save is complete. (Map tiles aren't on the list: the whole map files are saved instead.)
+try { performance.setResourceTimingBufferSize(5000); } catch { /* not supported: some files are saved on a later visit */ }
+
+function showOfflineNote() {
+ const note = document.getElementById('offline-note');
+ if (!note) return;
+ note.hidden = navigator.onLine;
+}
+
+async function saveForOffline() {
+ if (!('serviceWorker' in navigator)) return;
+ let registration;
+ try {
+ registration = await navigator.serviceWorker.register('sw.js');
+ } catch {
+ return; // not allowed here (a private window, or an http:// address other than localhost)
+ }
+ await navigator.serviceWorker.ready;
+ const worker = navigator.serviceWorker.controller || registration.active;
+ if (!worker) return;
+ const sameSite = (u) => { try { const url = new URL(u, location.href); return url.origin === location.origin && !url.pathname.endsWith('.pmtiles'); } catch { return false; } };
+ const loaded = performance.getEntriesByType('resource').map((e) => e.name).filter(sameSite);
+ const saveData = navigator.connection?.saveData;
+ // The page itself under its address without the query (?from=…&to=…), as the service worker saves pages
+ worker.postMessage({ type: 'save-files', urls: [location.origin + location.pathname, ...loaded, ...(saveData ? [] : OFFLINE_DATA.map((u) => new URL(u, location.href).href))] });
+ if (!saveData) worker.postMessage({ type: 'save-maps', urls: OFFLINE_MAPS.map((u) => new URL(u, location.href).href) });
+}
+
+window.addEventListener('online', showOfflineNote);
+window.addEventListener('offline', showOfflineNote);
+// After the page and map have loaded, so saving never slows down the first route
+window.addEventListener('load', () => {
+ showOfflineNote();
+ setTimeout(saveForOffline, 3000);
+});
diff --git a/src/js/orientation.js b/src/js/orientation.js
index 7c42fde..353d913 100644
--- a/src/js/orientation.js
+++ b/src/js/orientation.js
@@ -191,10 +191,11 @@ function buildingOf(feature) {
const working = (feature) => !isReportedBroken(feature);
+// "Conte Forum: Comm Ave Direct, Newton All Stops and 3 more routes; sheltered"
function shuttleDetails(p) {
- const routes = [['Express', 'Express'], ['All_Stop', 'All Stop'], ['Commonwealth', 'Commonwealth'], ['Newton', 'Newton']]
- .filter(([k]) => p[k] === 'Yes').map(([, name]) => name);
- return [routes.length ? `${routes.join(', ')} routes` : '', p.Sheltered === 'Yes' ? 'sheltered' : ''].filter(Boolean).join('; ');
+ const routes = (p.Routes || '').split('; ').filter(Boolean);
+ const said = routes.length > 2 ? `${routes.slice(0, 2).join(', ')} and ${routes.length - 2} more ${routes.length === 3 ? 'route' : 'routes'}` : routes.join(' and ');
+ return [p.Name, [said, p.Sheltered === 'Yes' ? 'sheltered' : ''].filter(Boolean).join('; ')].filter(Boolean).join(': ');
}
// The nearest of each kind of thing around a point: [{label, lonlat, metres, bearing}], nearest first.
diff --git a/src/js/places.js b/src/js/places.js
new file mode 100644
index 0000000..59a7b46
--- /dev/null
+++ b/src/js/places.js
@@ -0,0 +1,165 @@
+// Your places: destinations you've saved ("Home", "My dorm"), and the last few you've had directions to. Shown as
+// buttons under Where to? and in its suggestions, so a regular trip is one press. Kept on this device only.
+
+const PLACES_KEY = 'accessbc.places';
+const MAX_SAVED = 8, MAX_RECENT = 5, CHIPS_SHOWN = 4;
+
+// {saved: [{key, name, dest}], recent: [{key, dest}]}; dest is {building} or {label, lonlat, phrase}
+let myPlaces = (() => {
+ try {
+ const saved = JSON.parse(localStorage.getItem(PLACES_KEY) || '{}');
+ return { saved: saved.saved || [], recent: saved.recent || [] };
+ } catch {
+ return { saved: [], recent: [] };
+ }
+})();
+
+function savePlaces() {
+ try { localStorage.setItem(PLACES_KEY, JSON.stringify(myPlaces)); } catch { /* storage unavailable */ }
+ renderPlaces();
+}
+
+const placeKey = (dest) => (dest.building ? `b:${dest.building}` : `p:${dest.lonlat.map((n) => n.toFixed(5)).join(',')}`);
+const destLabel = (dest) => dest.building || dest.label;
+
+// The current route's destination, or null for your location (which isn't a place to save)
+function currentDestination() {
+ const to = document.getElementById('route-to').value;
+ if (to === PLACE && routing.place) return { label: routing.place.label, lonlat: routing.place.lonlat, phrase: routing.place.phrase };
+ if (to && to !== MY_LOCATION) return { building: to };
+ return null;
+}
+
+// Called when a route is found: it becomes the most recent place (not emergency trips)
+function rememberDestination() {
+ const dest = currentDestination();
+ if (!dest || routing.place?.emergency) return;
+ const key = placeKey(dest);
+ myPlaces.recent = [{ key, dest }, ...myPlaces.recent.filter((p) => p.key !== key)].slice(0, MAX_RECENT);
+ savePlaces();
+}
+
+const savedPlace = (key) => myPlaces.saved.find((p) => p.key === key);
+
+function toggleSavedDestination() {
+ const dest = currentDestination();
+ if (!dest) return;
+ const key = placeKey(dest);
+ if (savedPlace(key)) {
+ myPlaces.saved = myPlaces.saved.filter((p) => p.key !== key);
+ announce(`${destLabel(dest)} removed from your places.`);
+ } else {
+ if (myPlaces.saved.length >= MAX_SAVED) return announce(`You can save up to ${MAX_SAVED} places. Remove one first, under Edit in your places.`);
+ myPlaces.saved.push({ key, name: destLabel(dest), dest });
+ announce(`${destLabel(dest)} saved to your places. To rename it, choose Edit under Where to.`);
+ }
+ savePlaces();
+ syncSaveButton();
+}
+
+function syncSaveButton() {
+ const button = document.querySelector('#route-result .save-place');
+ const dest = currentDestination();
+ if (!button || !dest) return;
+ const saved = !!savedPlace(placeKey(dest));
+ button.setAttribute('aria-pressed', String(saved));
+ button.innerHTML = `${saved ? '★' : '☆'} ${saved ? 'Saved' : 'Save'}`;
+}
+
+// Directions to one of your places, from your location (as with Where to?)
+function goToPlace(dest) {
+ if (!routing) return;
+ clearWhereTo();
+ document.getElementById('where-to').value = destLabel(dest);
+ document.getElementById('where-to-clear').hidden = false;
+ if (dest.building) {
+ routing.place = null;
+ document.getElementById('route-to').value = dest.building;
+ } else {
+ setPlaceDestination({ label: dest.label, phrase: dest.phrase || placePhrase(dest.label), lonlat: dest.lonlat });
+ }
+ updateRoute(window.map);
+ document.getElementById('route-title').focus();
+}
+
+// Saved places first, then recent ones not saved; for the buttons and the search suggestions
+function placeList() {
+ const saved = myPlaces.saved.map((p) => ({ ...p, kind: 'Saved' }));
+ const recent = myPlaces.recent.filter((p) => !savedPlace(p.key)).map((p) => ({ ...p, name: destLabel(p.dest), kind: 'Recent' }));
+ return [...saved, ...recent];
+}
+
+function renderPlaces({ editor = true } = {}) {
+ const box = document.getElementById('my-places');
+ if (!box) return;
+ const editing = !document.getElementById('places-edit').hidden;
+ const list = placeList();
+ box.hidden = !list.length;
+ box.innerHTML = list.slice(0, CHIPS_SHOWN).map((p, i) => {
+ const icon = p.kind === 'Saved' ? '★' : '↺';
+ const where = p.name !== destLabel(p.dest) ? ` (${destLabel(p.dest)})` : '';
+ return `${icon} ${escapeHtml(p.name)} `;
+ }).join('') + `Edit `;
+ if (editor) renderPlacesEditor();
+}
+
+// Edit your places: rename or remove saved places, remove recent ones
+function renderPlacesEditor() {
+ const editor = document.getElementById('places-edit');
+ const saved = myPlaces.saved, recent = myPlaces.recent.filter((p) => !savedPlace(p.key));
+ editor.innerHTML = `
+ ${saved.length ? `Saved ` : 'To save a place, get directions to it and choose Save .
'}
+ ${recent.length ? `Recent ${recent.map((p) => `
+ ${escapeHtml(destLabel(p.dest))}
+ Remove `).join('')} ` : ''}
+ Done `;
+}
+
+function setPlacesEditorOpen(open) {
+ const editor = document.getElementById('places-edit'), toggle = document.getElementById('places-edit-toggle');
+ editor.hidden = !open;
+ toggle?.setAttribute('aria-expanded', String(open));
+ if (open) (editor.querySelector('input, button'))?.focus();
+ else toggle?.focus();
+}
+
+document.addEventListener('DOMContentLoaded', () => {
+ renderPlaces();
+ document.addEventListener('click', (e) => {
+ const chip = e.target.closest('[data-place-index]');
+ if (chip) return goToPlace(placeList()[Number(chip.dataset.placeIndex)].dest);
+ if (e.target.closest('.save-place')) return toggleSavedDestination();
+ if (e.target.id === 'places-edit-toggle') return setPlacesEditorOpen(document.getElementById('places-edit').hidden);
+ if (e.target.id === 'places-edit-done') return setPlacesEditorOpen(false);
+ const remove = e.target.dataset?.placeRemove, recent = e.target.dataset?.recentRemove;
+ if (remove !== undefined) {
+ const [gone] = myPlaces.saved.splice(Number(remove), 1);
+ savePlaces();
+ announce(`${gone.name} removed.`);
+ document.getElementById('places-edit').hidden = false;
+ document.getElementById('places-edit').querySelector('input, button')?.focus();
+ } else if (recent !== undefined) {
+ myPlaces.recent = myPlaces.recent.filter((p) => p.key !== recent);
+ savePlaces();
+ document.getElementById('places-edit').hidden = false;
+ document.getElementById('places-edit').querySelector('input, button')?.focus();
+ }
+ });
+ // Renaming: saved as you leave the field
+ document.addEventListener('change', (e) => {
+ const i = e.target.dataset?.placeRename;
+ if (i === undefined) return;
+ const place = myPlaces.saved[Number(i)];
+ place.name = e.target.value.trim() || destLabel(place.dest);
+ try { localStorage.setItem(PLACES_KEY, JSON.stringify(myPlaces)); } catch { /* storage unavailable */ }
+ renderPlaces({ editor: false }); // the buttons only, so focus stays where it is in the editor
+ announce(`Renamed to ${place.name}.`);
+ });
+ document.getElementById('places-edit').addEventListener('keydown', (e) => { if (e.key === 'Escape') setPlacesEditorOpen(false); });
+});
diff --git a/src/js/popups.js b/src/js/popups.js
index 2ccb22a..7bc8df8 100644
--- a/src/js/popups.js
+++ b/src/js/popups.js
@@ -1,6 +1,6 @@
// Handles popups for bluelight, elevators, entrances, and shuttle stops features to display information and provide issue reporting options.
function addPopupHandlers(map) {
- const layers = ['bluelight', 'elevators', 'entrances', 'shuttlestop'];
+ const layers = ['bluelight', 'elevators', 'entrances', 'shuttlestop', 'mbta'];
layers.forEach(layer => {
// Add click event for each layer to display attributes
@@ -25,23 +25,24 @@ function addPopupHandlers(map) {
const id = feature.properties[REPORTABLE[source]];
popupContent = `${escapeText(name)}
${isReportedBroken(feature) ? 'Reported not working.
' : ''}
- ${source === 'bluelights' ? `${emergencyCallLinks()}Directions here ` : ''}
+ ${source === 'bluelights' ? `${emergencyCallLinks()}Directions here ` : ''}
Report a problem `;
}
switch (layer) {
- case 'shuttlestop':
- let listItems = '';
- if (feature.properties.Express === 'Yes') {
- listItems += `Express `;
- }
- if (feature.properties.All_Stop === 'Yes') {
- listItems += `All Stop `;
- }
- if (feature.properties.Commonwealth === 'Yes') {
- listItems += `Commonwealth `;
- }
- popupContent = `Shuttle Routes: ${listItems}
Live Shuttle Tracker `;
+ case 'mbta':
+ popupContent = stationPopupHtml(feature);
break;
+ case 'shuttlestop': {
+ // The stop, its routes (filled in below: running now, or when next), and Directions here
+ const p = feature.properties, name = p.Name || 'Shuttle stop';
+ popupContent = `${escapeText(name)} shuttle stop
+
+ ${p.Sheltered === 'Yes' ? `Sheltered${p.Heater === 'Yes' ? ', heated' : ''}.
` : ''}
+ Shuttle lift or ramp access isn’t confirmed.
+ Directions here
+ Live shuttle tracker `;
+ break;
+ }
default:
if (!popupContent) popupContent = `${escapeText(JSON.stringify(feature.properties))}
`;
}
@@ -50,6 +51,8 @@ function addPopupHandlers(map) {
.setLngLat(feature.geometry.coordinates)
.setHTML(popupContent)
.addTo(map);
+ if (layer === 'shuttlestop') fillShuttleTimes(popup.getElement());
+ if (layer === 'mbta') fillStationAlerts(popup.getElement());
});
// Mouse cursor styling
map.on('mouseenter', layer, () => {
@@ -61,6 +64,30 @@ function addPopupHandlers(map) {
});
}
+// Each route at a shuttle stop popup: running now (and how often), or when it next runs
+async function fillShuttleTimes(element) {
+ const data = await loadShuttles();
+ if (!data || !routing?.transit) return;
+ const { runningService, nextService, nextServiceWords } = routing.transit;
+ element.querySelectorAll('[data-shuttle-route]').forEach((li) => {
+ const route = data.routes.find((r) => r.name === li.dataset.shuttleRoute);
+ if (!route) return;
+ const now = runningService(route), next = !now && nextService(route);
+ li.append(now ? `: running now, about every ${now.every} min` : next ? `: next runs ${nextServiceWords(next)}` : ': not running this week');
+ });
+}
+
+// A building directions can't go to: either no accessible entrance is mapped, or its entrance isn't connected to the
+// mapped paths. Either way, students can say where it is or how to reach it.
+function missingEntranceHtml(buildingName) {
+ const onMap = typeof buildingOf === 'function' && (routePoints?.entrances?.features || []).some((f) => buildingOf(f) === buildingName);
+ const [note, ask, details] = onMap
+ ? ["Its accessible entrance isn't connected to the mapped paths yet, so directions can't go here.", 'Tell us how to reach its accessible entrance', 'How to reach its accessible entrance from the nearest path: ']
+ : ["No accessible entrance is mapped for this building yet, so directions can't go here.", 'Tell us where its accessible entrance is', 'Where its accessible entrance is: '];
+ return `${note}
+ ${ask}
`;
+}
+
// Building information dialog. Opened by clicking a building on the map, or by picking a building in the
// search box (so it's reachable without the map). Focus moves into it, Escape closes it, and focus returns
// to wherever it was before.
@@ -82,7 +109,7 @@ function openBuildingInfo(properties) {
` : '';
+ ` : missingEntranceHtml(buildingName);
document.getElementById('building-info').innerHTML = `
diff --git a/src/js/reports.js b/src/js/reports.js
index 7e0bc29..5f22994 100644
--- a/src/js/reports.js
+++ b/src/js/reports.js
@@ -169,6 +169,9 @@ async function openReport(target) {
reportTarget = { about: 'Where I am' };
avoidRow.hidden = true;
}
+ // Started from a specific question ("Tell us where its accessible entrance is"): the answer is half filled in
+ if (target.problem) document.getElementById(`report-problem-${target.problem}`).checked = true;
+ if (target.details) document.getElementById('report-details').value = target.details;
document.getElementById('report-about').textContent = reportTarget.about;
document.getElementById('report-where').textContent = reportTarget.lonlat ? `Location: ${formatLonlat(reportTarget.lonlat)}` : target.here ? 'Finding your location…' : '';
dialog.hidden = false;
@@ -226,7 +229,7 @@ function reportStatus(text) {
document.getElementById('report-status').textContent = text;
}
-// Copies the report, then opens where it goes. (A pre-filled Google Form, once REPORT_FORM is set.)
+// Opens where the report goes, and copies it to paste there. (A pre-filled Google Form, once REPORT_FORM is set.)
async function sendReport(where) {
const text = reportText();
if (where === 'form' && REPORT_FORM) {
@@ -240,15 +243,21 @@ async function sendReport(where) {
window.open(`${REPORT_FORM.url}?${params}`, '_blank', 'noopener');
return reportStatus('The report form has opened in a new tab, filled in. Check it, then press Submit there.');
}
+ // Open the form during the tap itself, with the copy started at the same moment: waiting for the copy before
+ // opening a tab can get the tab blocked (on iPhones especially). If it is blocked anyway, offer a link.
+ const url = where === 'facilities' ? UPKEEP_URL : FEEDBACK_FORM, name = where === 'facilities' ? 'BC Facilities' : 'The Access BC feedback form';
+ const copying = navigator.clipboard ? navigator.clipboard.writeText(text) : Promise.reject(new Error('no clipboard'));
+ const tab = window.open(url, '_blank');
+ if (tab) tab.opener = null;
let copied = false;
- try { await navigator.clipboard.writeText(text); copied = true; } catch { /* not allowed: show the text instead */ }
+ try { await copying; copied = true; } catch { /* not allowed: show the text instead */ }
const textBox = document.getElementById('report-text');
textBox.value = text;
textBox.hidden = copied;
- window.open(where === 'facilities' ? UPKEEP_URL : FEEDBACK_FORM, '_blank', 'noopener');
- reportStatus(copied
- ? `Your report is copied. ${where === 'facilities' ? 'BC Facilities' : 'The Access BC feedback form'} has opened in a new tab: paste the report there.`
- : `${where === 'facilities' ? 'BC Facilities' : 'The Access BC feedback form'} has opened in a new tab. Copy the report below and paste it there.`);
+ const pasteHint = copied ? 'Your report is copied: paste it there.' : 'Copy the report below and paste it there.';
+ if (tab) return reportStatus(`${name} has opened in a new tab. ${pasteHint}`);
+ const status = document.getElementById('report-status');
+ status.innerHTML = `Open ${escapeHtml(name.replace(/^The /, 'the '))} . ${pasteHint}`;
}
function closeReport() {
@@ -298,12 +307,7 @@ document.addEventListener('DOMContentLoaded', () => {
document.getElementById('report-done').addEventListener('click', closeReport);
dialog.addEventListener('keydown', (e) => {
if (e.key === 'Escape') { e.stopPropagation(); closeReport(); }
- if (e.key === 'Tab') { // keep keyboard focus inside the dialog while it's open
- const focusable = [...dialog.querySelectorAll('button, input, textarea, a[href]')].filter((el) => !el.hidden && el.offsetParent !== null);
- const first = focusable[0], last = focusable.at(-1);
- if (e.shiftKey && document.activeElement === first) { e.preventDefault(); last.focus(); }
- else if (!e.shiftKey && document.activeElement === last) { e.preventDefault(); first.focus(); }
- }
+ trapFocus(dialog, e);
});
// "Report a problem" buttons: on map features, in building information, in the menu, and while walking
@@ -311,12 +315,13 @@ document.addEventListener('DOMContentLoaded', () => {
const button = e.target.closest('[data-report-layer], [data-report-building], [data-report-here]');
if (!button || !routing) return;
if (button.closest('#app-menu')) setMenuOpen(false); // like the menu's other items
- const { reportLayer, reportId, reportBuilding } = button.dataset;
+ const { reportLayer, reportId, reportBuilding, reportProblem, reportDetails } = button.dataset;
+ const preset = { problem: reportProblem, details: reportDetails };
if (reportLayer) {
const features = routePoints?.[reportLayer]?.features || [];
const feature = features.find((f) => String(f.properties[REPORTABLE[reportLayer]]) === reportId);
- if (feature) openReport({ layer: reportLayer, feature });
- } else if (reportBuilding) openReport({ building: reportBuilding });
- else openReport({ here: true });
+ if (feature) openReport({ layer: reportLayer, feature, ...preset });
+ } else if (reportBuilding) openReport({ building: reportBuilding, ...preset });
+ else openReport({ here: true, ...preset });
});
});
diff --git a/src/js/review.js b/src/js/review.js
new file mode 100644
index 0000000..53d048c
--- /dev/null
+++ b/src/js/review.js
@@ -0,0 +1,173 @@
+// The data review page (review.html): the automatic entrance links, entrance points drawn inside their building,
+// and buildings directions can't reach yet, each with "looks right / wrong / not sure" and a note, alongside a map.
+// Answers are kept in this browser (localStorage) and downloaded as a spreadsheet (CSV) to send back.
+//
+// The list is worked out from the same data and graph code as the app, so it's always current.
+import { buildGraph, projectBuildings, nearestBuilding, proj } from './routing/network.mjs';
+
+const ANSWERS_KEY = 'accessbc.review';
+const BOUNDS = [[-71.215, 42.305], [-71.135, 42.360]];
+const VERDICTS = { right: 'Looks right', wrong: 'Wrong', unsure: 'Not sure' };
+
+const load = async (name) => (await (await fetch(`src/geojson/${name}.geojson`)).json()).features;
+const escapeHtml = (s) => String(s).replace(/[&<>"']/g, (c) => ({ '&': '&', '<': '<', '>': '>', '"': '"', "'": ''' })[c]);
+const feet = (m) => `${Math.round(m * 3.28084).toLocaleString()} ft`;
+
+let answers = {};
+try { answers = JSON.parse(localStorage.getItem(ANSWERS_KEY) || '{}'); } catch { /* storage unavailable */ }
+const saveAnswers = () => { try { localStorage.setItem(ANSWERS_KEY, JSON.stringify(answers)); } catch { /* storage unavailable */ } };
+
+// The things to review: [{id, group, title, detail, question, lonlat, line?}]
+async function reviewItems() {
+ const [paths, links, entrances, buildingFeatures, elevators] = await Promise.all(['accessiblepaths', 'entrance-links', 'entrances', 'buildings', 'elevators'].map(load));
+ const items = [];
+ for (const f of links) {
+ const p = f.properties;
+ items.push({
+ id: `link-${p.Entrance}`, group: 'links', title: `${p.Building}: link to its entrance`, building: p.Building,
+ detail: `${feet(p.Length_m)} to a ${p.To}${p.Campus ? `, ${p.Campus} campus` : ''}. Drawn automatically from the entrance to the nearest path.`,
+ question: 'Can a wheelchair user get from this entrance to the path along this line? (Paved, level enough, no steps or high curbs.)',
+ lonlat: f.geometry.coordinates[0], line: f.geometry.coordinates,
+ });
+ if (p.Check) {
+ items.push({
+ id: `door-${p.Entrance}`, group: 'doors', title: `${p.Building}: where is the accessible door?`, building: p.Building,
+ detail: `The entrance point is drawn ${p.Check.match(/\d+ m/)?.[0] || 'well'} inside the building outline, so the door may be somewhere else.`,
+ question: 'Is the accessible entrance where the marker is? If not, say which side of the building it’s on.',
+ lonlat: f.geometry.coordinates[0],
+ });
+ }
+ }
+ // Buildings with an accessible entrance on the map that still can't be reached: no path or link to it
+ const graph = buildGraph({ paths: [...paths, ...links], entrances, buildings: buildingFeatures, elevators });
+ const projected = projectBuildings(buildingFeatures);
+ const reached = new Set(graph.entrances.map((e) => e.building));
+ const seen = new Set();
+ for (const f of entrances) {
+ const name = (f.properties.Building || '').trim() || nearestBuilding(projected, proj(f.geometry.coordinates)).name;
+ if (!name || reached.has(name) || seen.has(name)) continue;
+ seen.add(name);
+ items.push({
+ id: `unreached-${name}`, group: 'unreached', title: `${name}: no way to its entrance`, building: name,
+ detail: 'Its accessible entrance is on the map, but no mapped path reaches it, so directions can’t go there.',
+ question: 'Is there an accessible way to this entrance? If so, describe it (from which path, which side).',
+ lonlat: f.geometry.coordinates,
+ });
+ }
+ return items;
+}
+
+const GROUPS = {
+ doors: { heading: 'Entrance points to check', intro: 'Entrance points drawn well inside their building outline.' },
+ links: { heading: 'Links to entrances', intro: 'Short links drawn automatically from entrances to the nearest path, longest first. Directions use them, but nobody has checked them.' },
+ unreached: { heading: 'Buildings directions can’t reach', intro: 'Accessible entrances on the map with no way to them.' },
+};
+
+function renderList(items) {
+ const list = document.getElementById('items');
+ list.innerHTML = Object.entries(GROUPS).map(([group, g]) => {
+ const inGroup = items.filter((it) => it.group === group);
+ if (!inGroup.length) return '';
+ return `
+ ${g.heading} (${inGroup.length})
+ ${g.intro}
+ ${inGroup.map((it) => {
+ const a = answers[it.id] || {};
+ return `
+
+ ${escapeHtml(it.title)}
+ ${escapeHtml(it.detail)}
+ ${escapeHtml(it.question)}
+ Show on the map
+ ${Object.entries(VERDICTS).map(([v, label]) => `
+ ${label} `).join('')}
+
+ Note
+
+
+ `;
+ }).join('')}
+ `;
+ }).join('');
+}
+
+function showProgress(items) {
+ const done = items.filter((it) => answers[it.id]?.verdict).length;
+ document.getElementById('progress').textContent = `${done} of ${items.length} reviewed.`;
+}
+
+const cell = (v) => { const s = String(v ?? ''); return /[",\n]/.test(s) ? `"${s.replace(/"/g, '""')}"` : s; };
+function download(items) {
+ const reviewer = document.getElementById('reviewer').value.trim();
+ const rows = [['what', 'building', 'item', 'answer', 'note', 'latitude', 'longitude', 'reviewer', 'reviewed']];
+ for (const it of items) {
+ const a = answers[it.id];
+ if (!a?.verdict && !a?.note) continue;
+ rows.push([GROUPS[it.group].heading, it.building, it.id, a.verdict ? VERDICTS[a.verdict] : '', a.note || '', it.lonlat[1].toFixed(6), it.lonlat[0].toFixed(6), reviewer, a.at || '']);
+ }
+ const blob = new Blob([rows.map((r) => r.map(cell).join(',')).join('\n') + '\n'], { type: 'text/csv' });
+ const link = Object.assign(document.createElement('a'), { href: URL.createObjectURL(blob), download: `access-bc-review-${new Date().toISOString().slice(0, 10)}.csv` });
+ link.click();
+ URL.revokeObjectURL(link.href);
+}
+
+function setupMap(items) {
+ maplibregl.addProtocol('pmtiles', new pmtiles.Protocol().tile);
+ const base = new URL('src/basemap/', document.baseURI).href;
+ const map = new maplibregl.Map({
+ container: 'map', center: [-71.1708, 42.3362], zoom: 16, maxBounds: BOUNDS,
+ style: { version: 8, glyphs: `${base}fonts/{fontstack}/{range}.pbf`, sprite: `${base}sprites/white`, layers: BASEMAP_STYLES.white,
+ sources: { protomaps: { type: 'vector', url: `pmtiles://${base}basemap.pmtiles`, attribution: 'Protomaps © OpenStreetMap ' } } },
+ });
+ map.on('load', () => {
+ for (const name of ['buildings', 'accessiblepaths', 'entrance-links', 'entrances']) map.addSource(name, { type: 'geojson', data: `src/geojson/${name}.geojson` });
+ map.addSource('selected', { type: 'geojson', data: { type: 'FeatureCollection', features: [] } });
+ map.addLayer({ id: 'buildings', type: 'fill', source: 'buildings', paint: { 'fill-color': '#8fb3d9', 'fill-opacity': 0.45 } });
+ map.addLayer({ id: 'paths', type: 'line', source: 'accessiblepaths', paint: { 'line-color': ['match', ['get', 'Type'], 'Interior', '#5F4690', '#0F8554'], 'line-width': 2 } });
+ map.addLayer({ id: 'links', type: 'line', source: 'entrance-links', paint: { 'line-color': '#0F8554', 'line-width': 2, 'line-dasharray': [1, 1.5] } });
+ map.addLayer({ id: 'entrances', type: 'circle', source: 'entrances', paint: { 'circle-radius': 4, 'circle-color': '#f97b72' } });
+ map.addLayer({ id: 'selected-line', type: 'line', source: 'selected', filter: ['==', ['geometry-type'], 'LineString'], paint: { 'line-color': '#c00000', 'line-width': 5 } });
+ map.addLayer({ id: 'selected-point', type: 'circle', source: 'selected', filter: ['==', ['geometry-type'], 'Point'], paint: { 'circle-radius': 9, 'circle-color': 'rgba(0,0,0,0)', 'circle-stroke-color': '#c00000', 'circle-stroke-width': 3 } });
+ });
+ // Highlights an item and flies to it; if the map is still loading, as soon as it has
+ const show = (item) => {
+ const features = [{ type: 'Feature', properties: {}, geometry: { type: 'Point', coordinates: item.lonlat } }];
+ if (item.line) features.push({ type: 'Feature', properties: {}, geometry: { type: 'LineString', coordinates: item.line } });
+ map.getSource('selected').setData({ type: 'FeatureCollection', features });
+ map.flyTo({ center: item.lonlat, zoom: 19 });
+ };
+ return (item) => (map.getSource('selected') ? show(item) : map.once('load', () => show(item)));
+}
+
+async function main() {
+ const items = await reviewItems();
+ const order = { doors: 0, links: 1, unreached: 2 };
+ // Entrance points first, then links (longest first: the likeliest to be wrong), then unreachable buildings
+ const length = (it) => Number((it.detail.match(/^([\d,]+) ft/) || [0, '0'])[1].replace(/,/g, ''));
+ items.sort((a, b) => order[a.group] - order[b.group] || (a.group === 'links' ? length(b) - length(a) : a.title.localeCompare(b.title)));
+ renderList(items);
+ showProgress(items);
+ const show = setupMap(items);
+ const byId = new Map(items.map((it) => [it.id, it]));
+ const reviewer = document.getElementById('reviewer');
+ try { reviewer.value = localStorage.getItem(`${ANSWERS_KEY}.reviewer`) || ''; } catch { /* storage unavailable */ }
+ reviewer.addEventListener('change', () => { try { localStorage.setItem(`${ANSWERS_KEY}.reviewer`, reviewer.value); } catch { /* storage unavailable */ } });
+
+ document.addEventListener('click', (e) => {
+ const id = e.target.dataset?.show;
+ if (id) show(byId.get(id));
+ });
+ document.addEventListener('change', (e) => {
+ const { verdict, note } = e.target.dataset || {};
+ const id = verdict || note;
+ if (!id) return;
+ answers[id] = { ...answers[id], at: new Date().toISOString().slice(0, 16).replace('T', ' ') };
+ if (verdict) answers[id].verdict = e.target.value;
+ if (note) answers[id].note = e.target.value.trim();
+ saveAnswers();
+ showProgress(items);
+ });
+ document.getElementById('download').addEventListener('click', () => download(items));
+}
+
+main();
diff --git a/src/js/routing/city-worker.mjs b/src/js/routing/city-worker.mjs
new file mode 100644
index 0000000..c6a2b66
--- /dev/null
+++ b/src/js/routing/city-worker.mjs
@@ -0,0 +1,19 @@
+// Builds the routing graph with city sidewalks (campus paths plus sidewalks.geojson) in a background thread, so the
+// page doesn't freeze for the second or so it takes on a phone. Loads the data itself; only the finished graph is
+// sent back. Used by cityGraph() in src/js/directions.js, which builds it on the page instead if this fails.
+import { buildGraph } from './network.mjs';
+
+self.onmessage = async ({ data: { base, stairs } }) => {
+ try {
+ const load = async (name) => (await (await fetch(`${base}geojson/${name}.geojson`)).json()).features;
+ const names = ['accessiblepaths', 'entrance-links', 'entrances', 'buildings', 'elevators', 'paths', 'sidewalks'];
+ const [paths, links, entrances, buildings, elevators, footpaths, sidewalks] = await Promise.all(names.map(load));
+ // Avoiding stairs: no steps, rough surfaces, raised curbs, or ways tagged as not wheelchair accessible
+ const usable = stairs ? sidewalks
+ : sidewalks.filter(({ properties: p }) => p.Type !== 'Stairs' && !p.rough && p.kerb !== 'raised' && p.wheelchair !== 'no');
+ const graph = buildGraph({ paths: [...paths, ...links], entrances, buildings, elevators, footpaths: stairs ? footpaths : [], sidewalks: usable });
+ self.postMessage({ graph });
+ } catch (err) {
+ self.postMessage({ error: String(err) });
+ }
+};
diff --git a/src/js/routing/elevation.mjs b/src/js/routing/elevation.mjs
index cbf5956..973b5a5 100644
--- a/src/js/routing/elevation.mjs
+++ b/src/js/routing/elevation.mjs
@@ -167,16 +167,21 @@ export async function profile(terrain, coordinates) {
// Steepest reliable grade (absolute) of every outdoor segment in a routing graph, for slope-limited
// routing. Each path line is profiled as a whole so grades near segment ends have context. Returns a
// Float32Array indexed like graph.segments, NaN where unknown (indoors, stairs, no data, unreliable).
+// grades.up and grades.down hold the steepest climb and descent going the way the path was drawn (from a to b).
export async function segmentGrades(terrain, graph) {
const grades = new Float32Array(graph.segments.length).fill(NaN);
+ grades.up = new Float32Array(graph.segments.length).fill(NaN);
+ grades.down = new Float32Array(graph.segments.length).fill(NaN);
const byLine = new Map();
graph.segments.forEach((seg, i) => {
if (!byLine.has(seg.line)) byLine.set(seg.line, []);
byLine.get(seg.line).push(i);
});
- const outdoorLines = [...byLine.keys()].filter((l) => ['Exterior', 'Footpath', 'Sidewalk', 'Crossing', 'Street'].includes(graph.lines[l].type));
+ const outdoorLines = [...byLine.keys()].filter((l) => ['Exterior', 'Connector', 'Footpath', 'Sidewalk', 'Crossing', 'Street'].includes(graph.lines[l].type));
await terrain.ensureTiles(outdoorLines.flatMap((l) => graph.lines[l].coordinates));
- for (const line of outdoorLines) {
+ for (const [n, line] of outdoorLines.entries()) {
+ // Every hundred lines, let the page respond (the city sidewalks have thousands)
+ if (n && n % 100 === 0) await new Promise((r) => setTimeout(r, 0));
const p = await profile(terrain, graph.lines[line].coordinates);
if (!p) continue;
for (const i of byLine.get(line)) {
@@ -186,7 +191,11 @@ export async function segmentGrades(terrain, graph) {
let inside = p.points.filter((pt) => pt.at >= from - SAMPLE_M / 2 && pt.at <= to + SAMPLE_M / 2);
if (!inside.length) inside = [p.points.reduce((b, pt) => (Math.abs(pt.at - mid) < Math.abs(b.at - mid) ? pt : b))];
const reliable = inside.filter((pt) => pt.reliable);
- if (reliable.length) grades[i] = Math.max(...reliable.map((pt) => Math.abs(pt.grade)));
+ if (reliable.length) {
+ grades[i] = Math.max(...reliable.map((pt) => Math.abs(pt.grade)));
+ grades.up[i] = Math.max(0, ...reliable.map((pt) => pt.grade));
+ grades.down[i] = Math.max(0, ...reliable.map((pt) => -pt.grade));
+ }
}
}
return grades;
diff --git a/src/js/routing/guidance.mjs b/src/js/routing/guidance.mjs
index cb2fccc..b7160b9 100644
--- a/src/js/routing/guidance.mjs
+++ b/src/js/routing/guidance.mjs
@@ -8,6 +8,10 @@ const TURN_MIN_DEG = 35; // smaller changes of direction are just bends in t
const HEADING_WINDOW_M = 8; // direction is measured over this distance, smoothing digitizing zigzags
const MERGE_UNDER_M = 6; // turns closer together than this are one manoeuvre
const LANDMARK_MAX_M = 30; // only name buildings this close to where a step starts
+const JOG_M = 25; // on city sidewalks, two turns this close that cancel out are a jog, not a turn
+const JOG_NET_DEG = 30; // ... cancelling out to within this
+const CROSSINGS_JOIN_M = 10; // crossings this close together are one step ("Cross A, then B")
+const CROSS_APPROACH_M = 12; // on city sidewalks, a slight turn this close before a crossing is part of it
const bearing = (a, b) => (Math.atan2(b[0] - a[0], b[1] - a[1]) * 180) / Math.PI; // clockwise from north
const normalise = (deg) => ((((deg + 180) % 360) + 360) % 360) - 180;
@@ -139,6 +143,32 @@ export function buildSteps(graph, route, { from, to, fromBuilding = true, toIsPl
kept = kept.filter((b) => b !== turn);
}
+ // City sidewalks jink round driveways, trees and corners: a turn and a turn back within JOG_M is no turn at all.
+ // (Not on campus paths, where a zigzag can be a ramp's switchbacks.)
+ const onCity = (s) => !!line.info[Math.max(0, line.at.findIndex((a) => a > s) - 1)]?.Type;
+ for (let k = 0; k + 1 < kept.length; k++) {
+ const a = kept[k], b = kept[k + 1];
+ if (a.kind === 'turn' && b.kind === 'turn' && b.s - a.s < JOG_M && Math.abs(normalise(a.turn + b.turn)) < JOG_NET_DEG && onCity(a.s) && onCity(b.s)) {
+ kept.splice(k, 2);
+ k = Math.max(-1, k - 2);
+ }
+ }
+
+ // On city sidewalks, a slight turn shortly before a crossing is the sidewalk curving into the crosswalk
+ kept = kept.filter((b) => !(b.kind === 'turn' && Math.abs(b.turn) < 60 && onCity(b.s)
+ && kept.some((c) => c.kind === 'cross' && c.s - b.s > 0 && c.s - b.s < CROSS_APPROACH_M)));
+
+ // Crossings right after one another (a crossing, a few steps, the next crossing) are one step
+ for (let k = 0; k + 2 < kept.length; k++) {
+ const cross = kept[k], gap = kept[k + 1], next = kept[k + 2];
+ // Only across a plain bit of sidewalk: a turn between the crossings (at a corner) stays a step of its own
+ if (cross.kind === 'cross' && gap.afterCrossing && gap.kind === 'outdoor' && next.kind === 'cross' && next.s - gap.s < CROSSINGS_JOIN_M) {
+ cross.also = [...(cross.also || []), next.crossing, ...(next.also || [])];
+ kept.splice(k + 1, 2);
+ k--;
+ }
+ }
+
// Stops: a step of their own, which also stands in for any turn right at the stop (e.g. back out of a door).
for (const stop of route.stops || []) {
const s = line.nodeAt.get(stop.index);
@@ -156,13 +186,13 @@ export function buildSteps(graph, route, { from, to, fromBuilding = true, toIsPl
const segIndex = Math.max(0, line.at.findIndex((a) => a > b.s) - 1);
const type = kindOf(line.types[Math.min(segIndex, line.types.length - 1)]);
const step = { kind: b.kind, turn: b.turn, label: b.label, length: end - b.s, heading, start: unproj(startPt), coordinates, type };
- if (b.kind === 'cross') step.crossing = b.crossing;
+ if (b.kind === 'cross') step.crossing = b.also ? { ...b.crossing, also: b.also } : b.crossing;
// Boarding a shuttle: the route, the stop to get off at, how many stops, and the ride time
if (b.kind === 'board') {
const rides = [];
for (let i = segIndex; i < line.types.length && kindOf(line.types[i]) === 'shuttle'; i++) if (line.info[i] && !rides.includes(line.info[i])) rides.push(line.info[i]);
const first = rides[0] || {};
- step.shuttle = { route: first.route, every: first.every, from: first.from, to: rides.at(-1)?.to, stops: rides.length };
+ step.shuttle = { route: first.route, every: first.every, mode: first.mode || 'shuttle', toward: first.toward, from: first.from, to: rides.at(-1)?.to, stops: rides.length };
}
if (b.kind === 'alight') step.stop = line.info[Math.max(0, segIndex - 1)]?.to;
// Off campus there are no BC buildings to steer by: the street you're walking along instead
@@ -212,6 +242,15 @@ export function stepText(step, index, { from, to, fromBuilding, toIsPlace }) {
const where = c.crossing === 'traffic_signals' ? ' at the traffic lights'
: ['marked', 'zebra', 'uncontrolled'].includes(c.crossing) ? ' at the crosswalk'
: c.crossing === 'unmarked' ? ', where there’s no marked crosswalk' : '';
+ if (c.also?.length) {
+ // Two or more crossings in a row: name them all; curb ramps confirmed only if they are at every one
+ const all = [c, ...c.also];
+ const names = all.map((x) => x.name || 'the next street').filter((n, i, ns) => i === 0 || n !== ns[i - 1]);
+ const ramps = all.every((x) => ['lowered', 'flush'].includes(x.kerb)) ? ' There are curb ramps or level curbs at each.'
+ : all.some((x) => x.kerb === 'raised') ? ' Careful: there’s a raised curb on the way, so this isn’t step-free.'
+ : ' Curb ramps aren’t confirmed at all of them.';
+ return `Cross ${names.join(', then ')}${where}.${ramps}`;
+ }
const curbs = { lowered: ' There are curb ramps on both sides.', flush: ' The curbs are level with the street.', raised: ' Careful: there’s a raised curb, so this crossing isn’t step-free.' }[c.kerb]
|| ' Curb ramps aren’t confirmed here.';
return `Cross ${c.name || 'the street'}${where}.${curbs}`;
@@ -221,7 +260,11 @@ export function stepText(step, index, { from, to, fromBuilding, toIsPlace }) {
case 'board': {
const ride = step.shuttle || {};
const stops = ride.stops ? ` (${ride.stops} ${ride.stops === 1 ? 'stop' : 'stops'})` : '';
- return `At the ${ride.from || 'shuttle'} stop, take the ${ride.route || 'BC'} shuttle to ${ride.to || 'your stop'}${stops}. Shuttles come about every ${ride.every || 15} minutes.`;
+ if (ride.mode === 'train') {
+ return `At ${ride.from || 'the'} station, take a ${ride.route} train${ride.toward ? ` toward ${ride.toward}` : ''} to ${ride.to || 'your station'}${stops}. Trains come about every ${ride.every || 10} minutes.`;
+ }
+ const stopName = !ride.from ? 'the shuttle stop' : /\bstop$/i.test(ride.from) ? `the ${ride.from}` : `the ${ride.from} stop`; // "Reservoir MBTA stop"
+ return `At ${stopName}, take the ${ride.route || 'BC'} shuttle to ${ride.to || 'your stop'}${stops}. Shuttles come about every ${ride.every || 15} minutes.`;
}
case 'alight':
return `Get off at ${step.stop || 'your stop'} and continue${distance}${landmark}.`;
diff --git a/src/js/routing/network.mjs b/src/js/routing/network.mjs
index ce4d8a8..da12666 100644
--- a/src/js/routing/network.mjs
+++ b/src/js/routing/network.mjs
@@ -14,6 +14,9 @@
// stairs. Footpaths are treated like outdoor paths but aren't checked for accessibility; steps never
// get junctions where they cross something, since they're often above or below it.
//
+// Entrance links (entrance-links.geojson, see scripts/link-entrances.mjs) are passed in with the paths, as Type
+// 'Connector': drawn automatically from entrances that weren't connected to any path, and not checked either.
+//
// For routes between campuses or from off campus, city sidewalks and crossings from OpenStreetMap
// (sidewalks.geojson, see scripts/osm-sidewalks.mjs) can be added too. They're joined to BC's outdoor
// paths where one ends within CITY_LINK_M of the other, and aren't checked for accessibility either.
@@ -275,7 +278,7 @@ export function buildGraph({ paths, entrances, buildings, elevators = [], footpa
const p = proj(e.geometry.coordinates);
const building = (e.properties.Building || '').trim() || nearestBuilding(projectedBuildings, p).name;
const links = [];
- const outdoor = nearestSegment(net, p, footpaths.length ? ['Exterior', 'Footpath'] : 'Exterior', ENTRANCE_LINK_M);
+ const outdoor = nearestSegment(net, p, footpaths.length ? ['Exterior', 'Connector', 'Footpath'] : ['Exterior', 'Connector'], ENTRANCE_LINK_M);
if (outdoor.d <= ENTRANCE_LINK_M) links.push(outdoor);
const indoor = nearestSegment(net, p, 'Interior', ENTRANCE_LINK_M);
if (indoor.d <= ENTRANCE_LINK_M && nearestBuilding(projectedBuildings, indoor.point).name === building) links.push(indoor);
@@ -308,7 +311,7 @@ export function buildGraph({ paths, entrances, buildings, elevators = [], footpa
return {
nodes: xy.map(unproj), adjacency, entrances: linkedEntrances, buildings: projectedBuildings, elevatorBuildings,
- segments: segments.map(({ line, type, from, to }) => ({ line, type, from, to })),
+ segments: segments.map(({ a, b, line, type, from, to }) => ({ a, b, line, type, from, to })),
lines: net.lines.map(({ type, coordinates, city, length }) => ({ type, coordinates, city, length })),
};
}
@@ -354,12 +357,12 @@ export function describeRoute(graph, route) {
}
// A shuttle ride: which route, from and to which stop, how many stops, the ride time and the average wait
if (type === 'shuttle') {
- const ride = (step.shuttle ||= { route: edge.shuttle.route, every: edge.shuttle.every, stops: 0, seconds: 0, wait: 0 });
+ const ride = (step.shuttle ||= { route: edge.shuttle.route, every: edge.shuttle.every, mode: edge.shuttle.mode || 'shuttle', toward: edge.shuttle.toward, stops: 0, seconds: 0, wait: 0 });
if (edge.type === 'Board') { ride.from = edge.shuttle.stop; ride.wait = edge.wait; }
if (edge.type === 'Ride') { ride.stops++; ride.seconds += edge.seconds; ride.to = edge.shuttle.to; }
}
step.length += edge.length;
- if (edge.type === 'Footpath' || CITY_TYPES.has(edge.type)) step.unverifiedLength += edge.length;
+ if (edge.type === 'Footpath' || edge.type === 'Connector' || CITY_TYPES.has(edge.type)) step.unverifiedLength += edge.length;
if (CITY_TYPES.has(edge.type)) step.cityLength = (step.cityLength || 0) + edge.length;
if (edge.coords) step.coordinates.push(...edge.coords.slice(1)); // a shuttle ride follows the route line
else step.coordinates.push(graph.nodes[b]);
diff --git a/src/js/routing/transit.mjs b/src/js/routing/transit.mjs
index fa82992..8f7903c 100644
--- a/src/js/routing/transit.mjs
+++ b/src/js/routing/transit.mjs
@@ -53,6 +53,16 @@ export function serves(route, from, to) {
return i >= 0 && j >= 0 && i !== j;
}
+// When a route next runs (from nextService(route, date)), in words: "today at 5 p.m.", "tomorrow at 7 a.m.",
+// "on Sunday at 11 a.m.". Today and tomorrow are the real ones, also for a trip planned for another day.
+export function nextServiceWords(next, date = new Date()) {
+ const dayOf = (d) => d.toLocaleDateString('en-US', { timeZone: TIME_ZONE });
+ const when = new Date(date.getTime() + next.dayOffset * 864e5), now = new Date();
+ const day = dayOf(when) === dayOf(now) ? 'today' : dayOf(when) === dayOf(new Date(now.getTime() + 864e5)) ? 'tomorrow'
+ : `on ${when.toLocaleDateString('en-US', { weekday: 'long', timeZone: TIME_ZONE })}`;
+ return `${day} at ${clockTime(next.from)}`;
+}
+
// "8:15 a.m." from "08:15" (or "26:00")
export function clockTime(hhmm) {
const m = minutesOf(hhmm) % 1440, h = Math.floor(m / 60), min = m % 60;
@@ -69,9 +79,11 @@ export function serviceHours(route) {
return route.service.map((s) => `${dayWords(s.days)} ${clockTime(s.from)} – ${clockTime(s.to)}`).join('; ');
}
-// A copy of a walking graph with shuttle rides added, for the given routes ([{route, every}]: every in minutes).
-// The walking graph's nodes keep their indexes, and graph.base is the walking graph (for snapping locations).
-export function addShuttles(base, routes) {
+// A copy of a walking graph with shuttle and train rides added, for the given routes ([{route, every}]: every in
+// minutes). The walking graph's nodes keep their indexes, and graph.base is the walking graph (for snapping
+// locations). With stepFree, a station whose access isn't known to be step-free (wheelchair 'no' or 'unknown') can't
+// be got on or off at, though rides still pass through it. (Shuttle stops have no wheelchair field.)
+export function addShuttles(base, routes, { stepFree = false } = {}) {
const nodes = base.nodes.slice();
const adjacency = base.adjacency.map((edges) => edges.slice());
const addNode = (lonlat) => { nodes.push(lonlat); adjacency.push([]); return nodes.length - 1; };
@@ -91,18 +103,20 @@ export function addShuttles(base, routes) {
};
for (const { route, every } of routes) {
- const stops = route.stops.map((stop) => ({ stop, place: placeFor(stop) }));
- const rideNodes = stops.map(({ stop, place }) => (place ? addNode(stop.lonlat) : -1));
+ const boardable = (stop) => !(stepFree && stop.wheelchair && stop.wheelchair !== 'yes');
+ const stops = route.stops.map((stop) => ({ stop, place: boardable(stop) ? placeFor(stop) : null }));
+ // A ride node at every stop, so a ride can carry on through stops it can't be got on or off at
+ const rideNodes = stops.map(({ stop }) => addNode(stop.lonlat));
+ const mode = route.mode || 'shuttle';
stops.forEach(({ stop, place }, k) => {
if (!place) return;
- const shuttle = { route: route.name, stop: stop.name, every };
+ const shuttle = { route: route.name, stop: stop.name, every, mode, toward: route.toward };
adjacency[place.node].push({ to: rideNodes[k], length: 0, type: 'Board', seg: -1, wait: (every * 60) / 2 + BOARDING_PENALTY_S, shuttle });
adjacency[rideNodes[k]].push({ to: place.node, length: 0, type: 'Alight', seg: -1, shuttle });
});
const last = route.loop ? stops.length : stops.length - 1;
for (let k = 0; k < last; k++) {
const n = (k + 1) % stops.length;
- if (rideNodes[k] < 0 || rideNodes[n] < 0) continue;
const a = route.stops[k], b = route.stops[n];
const coords = n > k ? route.line.slice(a.at, b.at + 1) : [...route.line.slice(a.at), ...route.line.slice(0, b.at + 1)];
const line = coords.length >= 2 ? coords : [a.lonlat, b.lonlat];
@@ -110,17 +124,17 @@ export function addShuttles(base, routes) {
for (let i = 1; i < line.length; i++) length += dist(proj(line[i - 1]), proj(line[i]));
adjacency[rideNodes[k]].push({
to: rideNodes[n], length, type: 'Ride', seg: -1, seconds: (a.rideToNext || length / 6) + (b.dwell || 0),
- coords: [a.lonlat, ...line, b.lonlat], shuttle: { route: route.name, from: a.name, to: b.name, every },
+ coords: [a.lonlat, ...line, b.lonlat], shuttle: { route: route.name, from: a.name, to: b.name, every, mode, toward: route.toward },
});
}
}
return { ...base, nodes, adjacency, base: base.base || base };
}
-// The cost of a shuttle edge in metres of walking, or null for other edges
-export function shuttleCost(e) {
- if (e.type === 'Board') return e.wait * WALK_SPEED;
- if (e.type === 'Ride') return e.seconds * WALK_SPEED;
+// The cost of a shuttle edge in metres of walking at a speed (metres a second), or null for other edges
+export function shuttleCost(e, speed = WALK_SPEED) {
+ if (e.type === 'Board') return e.wait * speed;
+ if (e.type === 'Ride') return e.seconds * speed;
if (e.type === 'Alight') return 0;
return null;
}
diff --git a/src/js/searchbar.js b/src/js/searchbar.js
index 42e663c..c75493d 100644
--- a/src/js/searchbar.js
+++ b/src/js/searchbar.js
@@ -26,7 +26,9 @@ document.addEventListener('DOMContentLoaded', function () {
fetch('src/geojson/buildings.geojson').then((r) => r.json()).then((data) => { whereToBuildings = data.features; });
- const kindOptions = () => Object.entries(NEARBY_KINDS).map(([key, kind]) => ({ label: kind.label, kind: 'Find the nearest', value: key }));
+ // Your saved and recent places first, then the kinds of thing
+ const placeOptions = () => placeList().map((p) => ({ label: p.name, kind: p.kind === 'Saved' ? 'Saved place' : 'Recent', dest: p.dest }));
+ const kindOptions = () => [...placeOptions(), ...Object.entries(NEARBY_KINDS).map(([key, kind]) => ({ label: kind.label, kind: 'Find the nearest', value: key }))];
function allOptions() {
const names = new Set(), resources = new Map();
whereToBuildings.forEach((feature) => {
@@ -38,8 +40,12 @@ document.addEventListener('DOMContentLoaded', function () {
if (resource && !excludedStrings.includes(resource) && !resources.has(resource)) resources.set(resource, name);
});
});
+ // T stations, by name ("Reservoir T station")
+ const stations = (typeof routePoints !== 'undefined' && routePoints?.['mbta-stations']?.features || [])
+ .map((f) => ({ label: stationLabel(f), kind: `T station, ${f.properties.Lines}`, station: f }));
return [
...kindOptions(),
+ ...stations,
...[...names].sort((a, b) => a.localeCompare(b)).map((label) => ({ label, kind: 'Building', value: label })),
...[...resources].map(([label, building]) => ({ label, kind: `In ${building}`, value: building })),
];
@@ -112,6 +118,8 @@ document.addEventListener('DOMContentLoaded', function () {
function choose(option) {
setOpen(false);
if (!routing) return;
+ if (option.dest) return goToPlace(option.dest);
+ if (option.station) return goToPlace({ label: option.label, lonlat: option.station.geometry.coordinates });
if (option.kind === 'Find the nearest') {
input.value = option.label;
clearButton.hidden = false;
diff --git a/src/js/settings.js b/src/js/settings.js
index fb37f3f..157f12f 100644
--- a/src/js/settings.js
+++ b/src/js/settings.js
@@ -18,8 +18,13 @@ const SETTINGS_DEFAULTS = {
largeSymbols: false, // bigger map symbols and thicker paths and routes
bigSteps: false, // step-by-step directions fill the screen, with big text and buttons
reduceMotion: 'auto',
+ pace: 'gentle', // walking or wheeling pace, for time estimates and whether a shuttle is worth it
};
+// Metres a second for each pace (a gentle walk is about 2.7 mph; wheelchair and cane users vary widely)
+const PACES = { slower: 0.8, gentle: 1.2, brisk: 1.4 };
+const walkSpeed = () => PACES[settings.pace] || PACES.gentle;
+
// Saved settings carry a version, so a changed default can be applied once to settings saved before it.
// Version 2: reading aloud became on by default (with Mute while walking), after being off by default.
const SETTINGS_VERSION = 2;
@@ -93,6 +98,18 @@ for (const query of ['(prefers-color-scheme: dark)', '(prefers-contrast: more)',
window.matchMedia?.(query).addEventListener?.('change', applySettings);
}
+// Keeps keyboard focus inside an open dialog: Tab from the last control goes to the first, Shift+Tab from the
+// first to the last. Call from the dialog's keydown handler. Only visible, enabled controls count.
+function trapFocus(container, e) {
+ if (e.key !== 'Tab') return;
+ const focusable = [...container.querySelectorAll('a[href], button, input, select, textarea, [tabindex]:not([tabindex="-1"])')]
+ .filter((el) => !el.disabled && !el.hidden && el.offsetParent !== null);
+ if (!focusable.length) return;
+ const first = focusable[0], last = focusable.at(-1);
+ if (e.shiftKey && (document.activeElement === first || !container.contains(document.activeElement))) { e.preventDefault(); last.focus(); }
+ else if (!e.shiftKey && (document.activeElement === last || !container.contains(document.activeElement))) { e.preventDefault(); first.focus(); }
+}
+
// ---- Settings dialog --------------------------------------------------------------------------------
// Opens the settings dialog (from the menu, or More in walk mode). Closing it returns focus to whatever opened it.
@@ -102,7 +119,7 @@ document.addEventListener('DOMContentLoaded', () => {
const dialog = document.getElementById('settings-dialog');
let returnFocus = null;
const checkboxes = ['screenReader', 'readAloud', 'autoReroute', 'soundCues', 'clockFace', 'headingUp', 'guidance3D', 'vibrate', 'largerText', 'largeSymbols', 'bigSteps'];
- const selects = ['speechRate', 'highContrast', 'darkMode', 'reduceMotion'];
+ const selects = ['speechRate', 'highContrast', 'darkMode', 'reduceMotion', 'pace'];
const toSetting = (v) => (v === 'true' ? true : v === 'false' ? false : v);
const speech = 'speechSynthesis' in window;
@@ -147,13 +164,7 @@ document.addEventListener('DOMContentLoaded', () => {
document.getElementById('settings-close').addEventListener('click', close);
dialog.addEventListener('keydown', (e) => {
if (e.key === 'Escape') close();
- if (e.key === 'Tab') {
- // keep keyboard focus inside the dialog while it's open
- const focusable = [...dialog.querySelectorAll('button, input, select, a[href]')];
- const first = focusable[0], last = focusable[focusable.length - 1];
- if (e.shiftKey && document.activeElement === first) { e.preventDefault(); last.focus(); }
- else if (!e.shiftKey && document.activeElement === last) { e.preventDefault(); first.focus(); }
- }
+ trapFocus(dialog, e);
});
if (!speech) document.getElementById('set-testVoice').disabled = true;
});
diff --git a/src/manifest.webmanifest b/src/manifest.webmanifest
new file mode 100644
index 0000000..fd645de
--- /dev/null
+++ b/src/manifest.webmanifest
@@ -0,0 +1,16 @@
+{
+ "name": "Access BC",
+ "short_name": "Access BC",
+ "description": "Accessible directions and campus resources at Boston College.",
+ "start_url": "../",
+ "scope": "../",
+ "display": "standalone",
+ "background_color": "#ffffff",
+ "theme_color": "#8a0d09",
+ "icons": [
+ { "src": "icons/app/icon-192.png", "sizes": "192x192", "type": "image/png" },
+ { "src": "icons/app/icon-512.png", "sizes": "512x512", "type": "image/png" },
+ { "src": "icons/app/icon-maskable-512.png", "sizes": "512x512", "type": "image/png", "purpose": "maskable" },
+ { "src": "icons/app/icon.svg", "sizes": "any", "type": "image/svg+xml" }
+ ]
+}
diff --git a/src/review.css b/src/review.css
new file mode 100644
index 0000000..a5357c0
--- /dev/null
+++ b/src/review.css
@@ -0,0 +1,184 @@
+/* The data review page (review.html): a list to work through, and a map beside it */
+:root {
+ --accent: #0050d0;
+ --bc-red: #8a0d09;
+}
+
+* {
+ box-sizing: border-box;
+}
+
+body {
+ margin: 0;
+ font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
+ line-height: 1.45;
+ color: #1b1b1b;
+ background: #fff;
+}
+
+.skip-link {
+ position: absolute;
+ left: -9999px;
+}
+
+.skip-link:focus {
+ left: 1rem;
+ top: 1rem;
+ z-index: 10;
+ padding: 0.5rem 1rem;
+ background: #fff;
+ border: 2px solid var(--accent);
+}
+
+.review-header {
+ padding: 1rem 1.25rem;
+ border-bottom: 1px solid #ddd;
+}
+
+.review-header h1 {
+ margin: 0 0 0.5rem;
+ font-size: 1.5rem;
+ color: var(--bc-red);
+}
+
+.review-header p {
+ max-width: 60rem;
+ margin: 0 0 0.75rem;
+}
+
+.review-tools {
+ display: flex;
+ flex-wrap: wrap;
+ align-items: center;
+ gap: 0.5rem 1rem;
+}
+
+.review-tools input {
+ min-height: 40px;
+ padding: 0 0.5rem;
+ font: inherit;
+ border: 1px solid #767676;
+ border-radius: 0.3rem;
+}
+
+.progress {
+ margin: 0;
+ font-weight: bold;
+}
+
+button {
+ min-height: 40px;
+ padding: 0 0.9rem;
+ font: inherit;
+ color: var(--accent);
+ background: #fff;
+ border: 2px solid var(--accent);
+ border-radius: 0.4rem;
+ cursor: pointer;
+}
+
+#download {
+ color: #fff;
+ background: var(--accent);
+}
+
+:focus-visible {
+ outline: 3px solid var(--accent);
+ outline-offset: 2px;
+}
+
+.review-main {
+ display: grid;
+ grid-template-columns: minmax(20rem, 34rem) 1fr;
+ height: calc(100vh - 11rem);
+ min-height: 30rem;
+}
+
+.review-list {
+ overflow-y: auto;
+ padding: 0 1.25rem 2rem;
+}
+
+.review-group h2 {
+ margin: 1.25rem 0 0.25rem;
+ font-size: 1.2rem;
+}
+
+.count {
+ font-weight: normal;
+ color: #555;
+}
+
+.review-items {
+ margin: 0;
+ padding: 0;
+ list-style: none;
+}
+
+.review-item fieldset {
+ margin: 0.75rem 0;
+ padding: 0.5rem 0.9rem 0.9rem;
+ border: 1px solid #ccc;
+ border-radius: 0.5rem;
+}
+
+.review-item legend {
+ padding: 0 0.25rem;
+ font-weight: bold;
+}
+
+.review-item p {
+ margin: 0.4rem 0;
+}
+
+.verdicts {
+ display: flex;
+ flex-wrap: wrap;
+ gap: 0.4rem 1rem;
+ margin: 0.5rem 0;
+}
+
+.verdicts label {
+ display: inline-flex;
+ align-items: center;
+ gap: 0.35rem;
+ min-height: 32px;
+}
+
+.verdicts input {
+ width: 1.15rem;
+ height: 1.15rem;
+}
+
+.note-label {
+ display: block;
+ margin-top: 0.25rem;
+ font-weight: bold;
+}
+
+textarea {
+ width: 100%;
+ padding: 0.4rem;
+ font: inherit;
+ border: 1px solid #767676;
+ border-radius: 0.3rem;
+}
+
+.review-map {
+ min-height: 20rem;
+}
+
+/* Phones: the map above the list */
+@media (max-width: 800px) {
+ .review-main {
+ display: block;
+ height: auto;
+ }
+
+ .review-map {
+ position: sticky;
+ top: 0;
+ height: 40vh;
+ z-index: 1;
+ }
+}
diff --git a/sw.js b/sw.js
new file mode 100644
index 0000000..b6aab8e
--- /dev/null
+++ b/sw.js
@@ -0,0 +1,143 @@
+// Access BC's service worker: keeps the app working with weak or no signal (between buildings, indoors).
+//
+// - Pages, scripts, styles, data, fonts and icons: fresh from the network when it answers within NETWORK_WAIT_MS,
+// otherwise (offline, or a very slow connection) the saved copy. Every file fetched is saved.
+// - The basemap and terrain (.pmtiles): the map reads small byte ranges of these large files. Once a whole file has
+// been saved (offline.js asks for this after the page loads), every range is served from it, so the whole map
+// works offline; until then, ranges come from the network. Once per launch, a saved file is compared with the
+// server's (ETag or Last-Modified), and downloaded again when it has changed; the new copy is used from the next
+// launch, so a map never mixes the old file's index with the new file's tiles.
+// - One copy of each file is kept: a page under its address without the query (?from=…&to=…), and a script or
+// style under its latest ?v= version (each deploy's replaces the last), so the saved copies don't pile up.
+//
+// It has to be at the site root to cover the whole site. Changing CACHE_VERSION clears the saved copies.
+const CACHE_VERSION = 1;
+const APP_CACHE = `accessbc-app-v${CACHE_VERSION}`;
+const MAP_CACHE = `accessbc-maps-v${CACHE_VERSION}`;
+const NETWORK_WAIT_MS = 4000;
+
+self.addEventListener('install', () => self.skipWaiting());
+self.addEventListener('activate', (event) => {
+ event.waitUntil((async () => {
+ for (const key of await caches.keys()) if (![APP_CACHE, MAP_CACHE].includes(key)) await caches.delete(key);
+ await self.clients.claim();
+ })());
+});
+
+self.addEventListener('fetch', (event) => {
+ const { request } = event;
+ const url = new URL(request.url);
+ if (request.method !== 'GET' || url.origin !== self.location.origin) return;
+ if (url.pathname.endsWith('.pmtiles')) event.respondWith(mapRange(request, url));
+ else event.respondWith(networkFirst(request));
+});
+
+// Where a file is saved: a page under its address without the query; anything else under its full address, after
+// removing older versions of it (the same path with another ?v=)
+async function saveLatest(cache, request, response) {
+ const url = new URL(request.url);
+ if (request.mode === 'navigate') return cache.put(url.origin + url.pathname, response);
+ if (url.search) await cache.delete(url.origin + url.pathname, { ignoreSearch: true });
+ return cache.put(request, response);
+}
+
+// The network if it answers in time (saving what it sends); otherwise the saved copy, of this version of the file
+// or, failing that, any version (a script saved as app.js?v=old serves app.js?v=new offline)
+async function networkFirst(request) {
+ const cache = await caches.open(APP_CACHE);
+ const network = fetch(request).then((response) => {
+ if (response.ok && response.type === 'basic') saveLatest(cache, request, response.clone());
+ return response;
+ });
+ network.catch(() => { /* offline: handled below */ });
+ const timeout = new Promise((resolve) => setTimeout(() => resolve(null), NETWORK_WAIT_MS));
+ try {
+ const response = await Promise.race([network, timeout]);
+ if (response) return response;
+ } catch { /* offline: use the saved copy */ }
+ const saved = (await cache.match(request)) || (await cache.match(request, { ignoreSearch: true }))
+ || (request.mode === 'navigate' ? await cache.match(new URL('./', self.location).href, { ignoreSearch: true }) : null);
+ if (saved) return saved;
+ return network; // nothing saved: whatever the network does (an error offline)
+}
+
+// ---- The basemap and terrain ----
+
+const savedMaps = new Map(); // url -> {blob, headers}, read from the cache once and used for this whole launch
+const checked = new Set(); // files compared with the server's this launch
+
+async function savedMap(url) {
+ if (savedMaps.has(url)) return savedMaps.get(url);
+ const response = await (await caches.open(MAP_CACHE)).match(url);
+ if (!response) return null;
+ const entry = { blob: await response.blob(), headers: response.headers };
+ savedMaps.set(url, entry);
+ return entry;
+}
+
+async function mapRange(request, url) {
+ const file = url.origin + url.pathname;
+ const saved = await savedMap(file);
+ const range = /^bytes=(\d+)-(\d*)$/.exec(request.headers.get('Range') || '');
+ if (!saved || !range) return fetch(request);
+ if (!checked.has(file)) { checked.add(file); refreshMap(file, saved.headers); }
+ const size = saved.blob.size;
+ const start = Number(range[1]), end = Math.min(range[2] ? Number(range[2]) : size - 1, size - 1);
+ if (start > end) return new Response(null, { status: 416, headers: { 'Content-Range': `bytes */${size}` } });
+ const headers = new Headers({
+ 'Content-Type': saved.headers.get('Content-Type') || 'application/octet-stream',
+ 'Content-Range': `bytes ${start}-${end}/${size}`,
+ 'Content-Length': String(end - start + 1),
+ 'Accept-Ranges': 'bytes',
+ });
+ for (const h of ['ETag', 'Last-Modified']) if (saved.headers.get(h)) headers.set(h, saved.headers.get(h));
+ return new Response(saved.blob.slice(start, end + 1), { status: 206, headers });
+}
+
+// Download a whole map file into the cache (when it isn't saved yet, or the server's copy has changed)
+async function saveMap(file) {
+ const response = await fetch(file, { cache: 'no-store' });
+ if (!response.ok || response.status !== 200) return false;
+ await (await caches.open(MAP_CACHE)).put(file, response);
+ // Not read into savedMaps now: an open map has read the old file's index, so it keeps the old file's tiles.
+ // The new copy is read when the worker next starts.
+ return true;
+}
+
+async function refreshMap(file, headers) {
+ try {
+ const head = await fetch(file, { method: 'HEAD', cache: 'no-store' });
+ const changed = ['ETag', 'Last-Modified'].some((h) => head.headers.get(h) && headers.get(h) && head.headers.get(h) !== headers.get(h));
+ if (head.ok && changed) await saveMap(file);
+ } catch { /* offline: keep the saved copy */ }
+}
+
+// ---- Messages from offline.js ----
+
+self.addEventListener('message', (event) => {
+ const { type, urls = [] } = event.data || {};
+ const reply = (message) => event.source?.postMessage(message);
+ if (type === 'save-files') {
+ // Files the page has loaded (and data it may need later), saved now so they're there offline
+ event.waitUntil((async () => {
+ const cache = await caches.open(APP_CACHE);
+ await Promise.all(urls.map(async (u) => {
+ const request = new Request(u);
+ if (await cache.match(request)) return;
+ try { const r = await fetch(request); if (r.ok) await saveLatest(cache, request, r); } catch { /* try again next time */ }
+ }));
+ reply({ type: 'files-saved' });
+ })());
+ }
+ if (type === 'save-maps') {
+ event.waitUntil((async () => {
+ let saved = 0;
+ for (const u of urls) {
+ const file = new URL(u, self.location).href;
+ if (await savedMap(file)) { saved++; continue; } // already saved
+ try { if (await saveMap(file)) saved++; } catch { /* offline or interrupted: next time */ }
+ }
+ reply({ type: 'maps-saved', saved, total: urls.length });
+ })());
+ }
+});
diff --git a/tests/accessibility/check.mjs b/tests/accessibility/check.mjs
index a582a6d..b9dec95 100644
--- a/tests/accessibility/check.mjs
+++ b/tests/accessibility/check.mjs
@@ -8,21 +8,14 @@
//
// Usage (from this folder): npm ci && npx playwright install chromium && npm run check
// Exits non-zero if axe finds serious or critical problems, or a behaviour check fails.
-import { spawn } from 'node:child_process';
-import path from 'node:path';
-import { chromium } from 'playwright';
import AxeBuilder from '@axe-core/playwright';
+import { startServer, launchBrowser, seedStorage, appReady } from './harness.mjs';
-const ROOT = path.resolve(path.dirname(new URL(import.meta.url).pathname), '../..');
const PORT = 8799;
const BASE = `http://localhost:${PORT}/`;
const TAGS = ['wcag2a', 'wcag2aa', 'wcag21a', 'wcag21aa', 'wcag22aa', 'best-practice'];
const FAIL_ON = new Set(['serious', 'critical']);
const ON_CAMPUS = { longitude: -71.17, latitude: 42.3355 }; // near Gasson Hall
-// CI machines have no graphics card, so the map is drawn in software. Tilting it into 3D (buildings and terrain)
-// in step-by-step mode is then slow enough to freeze the page, so these checks keep the map flat and still.
-// That doesn't change anything the checks look at: the panels, dialogs, and announcements.
-const LIGHT_MAP = { guidance3D: false, headingUp: false, reduceMotion: true };
const problems = []; // failures: axe serious/critical, and failed behaviour checks
const notes = []; // axe minor/moderate, reported but not failing
@@ -42,14 +35,10 @@ function expect(ok, state, message) {
console.log(` ${ok ? 'ok ' : 'FAIL'} ${state}: ${message}`);
}
-const appReady = (page) => page.waitForFunction(() => typeof routing !== 'undefined' && routing && typeof routePoints !== 'undefined' && routePoints, null, { timeout: 60000 });
async function openApp(browser, { viewport = { width: 1280, height: 850 }, settings = {}, noticeSeen = true, time = null } = {}) {
const context = await browser.newContext({ viewport, geolocation: ON_CAMPUS, permissions: ['geolocation'] });
- await context.addInitScript(({ s, seen }) => {
- localStorage.setItem('accessbc.settings', JSON.stringify(s));
- if (seen) localStorage.setItem('accessbc.liveDirectionsNotice', 'understood');
- }, { s: { ...LIGHT_MAP, ...settings }, seen: noticeSeen });
+ await seedStorage(context, settings, { noticeSeen });
const page = await context.newPage();
page.setDefaultTimeout(60000);
if (time) { await page.clock.install({ time }); await page.clock.resume(); } // shuttles run by the clock
@@ -69,10 +58,8 @@ async function findRoute(page, from = 'Gasson Hall', to = 'McElroy Commons') {
}
async function main() {
- const server = spawn('python3', ['scripts/serve.py', String(PORT)], { cwd: ROOT, stdio: 'ignore' });
- await new Promise((r) => setTimeout(r, 800));
- // Software WebGL, so the map renders on machines without a GPU (like CI)
- const browser = await chromium.launch({ args: ['--use-angle=swiftshader', '--enable-unsafe-swiftshader'] });
+ const stopServer = await startServer(PORT);
+ const browser = await launchBrowser();
try {
console.log('Desktop');
let page = await openApp(browser, { noticeSeen: false });
@@ -133,8 +120,16 @@ async function main() {
await axe(page, 'building info');
await page.keyboard.press('Escape');
+ // Your places: the route just found is recent; Save keeps it; both show under Where to?, with Edit
+ await page.click('.save-place');
+ expect(await page.evaluate(() => document.querySelector('.save-place').getAttribute('aria-pressed') === 'true'), 'places', 'Save marks the destination as saved');
+ expect(await page.evaluate(() => !!document.querySelector('#route-result .copy-directions')), 'route', 'the route has Copy directions');
// Quick search: the nearest single-stall restrooms
await page.click('#route-back');
+ expect(await page.evaluate(() => /McElroy Commons/.test(document.getElementById('my-places').textContent)), 'places', 'the saved place is a button under Where to?');
+ await page.click('#places-edit-toggle');
+ await axe(page, 'your places, editing');
+ await page.click('#places-edit-done');
await page.click('.chip[data-find="restroom"]');
await page.waitForSelector('.nearby-list');
expect(await page.evaluate(() => document.activeElement.id === 'results-title'), 'results', 'a quick search moves focus to its results');
@@ -205,6 +200,13 @@ async function main() {
expect(await page.evaluate(() => /Newton Eagle Direct/.test(document.getElementById('route-result').textContent) && /lift or ramp isn’t confirmed/.test(document.getElementById('route-result').textContent)),
'between campuses', 'with the Newton shuttle running, the route uses it, and says its accessibility isn’t confirmed');
await axe(page, 'between campuses: shuttle route');
+ // A T station: in Where to?, and its accessibility on the route
+ await page.click('#route-back');
+ await findRoute(page, 'Gasson Hall', 'Reservoir T station');
+ await page.waitForFunction(() => /wheelchair accessible/.test(document.getElementById('station-notes').textContent));
+ expect(true, 'T station', 'a route to a T station says whether it is wheelchair accessible');
+ await axe(page, 'T station route');
+ await findRoute(page, 'Gasson Hall', 'Kenny Cottle Library');
await page.click('#guidance-start-audio');
await page.waitForFunction(() => currentView() === 'walk');
expect(await page.evaluate(() => guide.steps.some((st) => st.kind === 'board' && /take the Newton Eagle Direct shuttle/.test(st.text))), 'between campuses', 'walking directions include a step to take the shuttle');
@@ -241,6 +243,17 @@ async function main() {
expect(await page.evaluate(() => document.documentElement.scrollWidth <= innerWidth), 'zoom 400%', 'no sideways scrolling');
await page.context().close();
+ console.log('Data review page');
+ {
+ const context = await browser.newContext();
+ page = await context.newPage();
+ await page.goto(BASE + 'review.html');
+ await page.waitForSelector('.review-item');
+ expect(await page.evaluate(() => document.querySelectorAll('.review-item').length > 0), 'review', 'lists the items to review');
+ await axe(page, 'data review page');
+ await context.close();
+ }
+
console.log('Help page');
for (const settings of [{}, { darkMode: true }]) {
const context = await browser.newContext();
@@ -252,7 +265,7 @@ async function main() {
}
} finally {
await browser.close();
- server.kill();
+ stopServer();
}
if (notes.length) console.log(`\nMinor and moderate issues (not failing the check):\n${notes.map((n) => ` ${n}`).join('\n')}`);
diff --git a/tests/accessibility/harness.mjs b/tests/accessibility/harness.mjs
new file mode 100644
index 0000000..c524591
--- /dev/null
+++ b/tests/accessibility/harness.mjs
@@ -0,0 +1,33 @@
+// Shared by check.mjs (accessibility checks) and walks.mjs (simulated walks): the local server, the browser, and
+// opening the app ready to test.
+import { spawn } from 'node:child_process';
+import path from 'node:path';
+import { chromium } from 'playwright';
+
+export const ROOT = path.resolve(path.dirname(new URL(import.meta.url).pathname), '../..');
+
+// CI machines have no graphics card, so the map is drawn in software. Tilting it into 3D (buildings and terrain)
+// in step-by-step mode is then slow enough to freeze the page, so tests keep the map flat and still. That doesn't
+// change anything they look at: the panels, dialogs, announcements, and directions.
+export const LIGHT_MAP = { guidance3D: false, headingUp: false, reduceMotion: true };
+
+// The site's preview server (it serves the map's byte ranges), on a port of its own. Returns a stop function.
+export async function startServer(port) {
+ const server = spawn('python3', ['scripts/serve.py', String(port)], { cwd: ROOT, stdio: 'ignore' });
+ await new Promise((r) => setTimeout(r, 800));
+ return () => server.kill();
+}
+
+// Chromium with software WebGL, so the map renders on machines without a GPU (like CI)
+export const launchBrowser = () => chromium.launch({ args: ['--use-angle=swiftshader', '--enable-unsafe-swiftshader'] });
+
+// Before the page loads: these settings saved, and the live-directions notice already accepted (or not)
+export async function seedStorage(context, settings = {}, { noticeSeen = true } = {}) {
+ await context.addInitScript(({ s, seen }) => {
+ localStorage.setItem('accessbc.settings', JSON.stringify(s));
+ if (seen) localStorage.setItem('accessbc.liveDirectionsNotice', 'understood');
+ }, { s: { ...LIGHT_MAP, ...settings }, seen: noticeSeen });
+}
+
+// Routing is set up and the map's point data loaded
+export const appReady = (page) => page.waitForFunction(() => typeof routing !== 'undefined' && routing && typeof routePoints !== 'undefined' && routePoints, null, { timeout: 60000 });
diff --git a/tests/accessibility/package.json b/tests/accessibility/package.json
index 17021d6..b715010 100644
--- a/tests/accessibility/package.json
+++ b/tests/accessibility/package.json
@@ -4,7 +4,9 @@
"description": "Automated accessibility checks for Access BC (axe-core in a real browser). Used by CI only; the site has no build step or dependencies.",
"type": "module",
"scripts": {
- "check": "node check.mjs"
+ "check": "node check.mjs",
+ "walks": "node walks.mjs",
+ "perf": "node perf.mjs"
},
"devDependencies": {
"@axe-core/playwright": "4.13.0",
diff --git a/tests/accessibility/perf.mjs b/tests/accessibility/perf.mjs
new file mode 100644
index 0000000..b646df4
--- /dev/null
+++ b/tests/accessibility/perf.mjs
@@ -0,0 +1,39 @@
+// Timings at phone speed: loads the site with the processor slowed down (6x by default, about a mid-range phone)
+// and times what students wait for: the first load, routes on campus and between campuses, a re-route mid-walk,
+// and Find nearby. A measurement, not a pass/fail check.
+//
+// Usage (from this folder, with the preview server running on port 8765: python3 scripts/serve.py 8765):
+// npm run perf or npm run perf -- 4 (4x slower)
+import { chromium } from 'playwright';
+const RATE = Number(process.argv[2] || 6);
+// The city sidewalks are prepared in the background a few seconds after load: wait for that, as a student would
+const browser=await chromium.launch({ args: ['--use-angle=swiftshader','--enable-unsafe-swiftshader'] });
+const ctx=await browser.newContext({viewport:{width:390,height:844}, geolocation:{longitude:-71.1703,latitude:42.3356}, permissions:['geolocation'], timezoneId:'America/New_York'});
+await ctx.addInitScript(()=>{localStorage.setItem('accessbc.settings',JSON.stringify({guidance3D:false,headingUp:false,reduceMotion:true})); localStorage.setItem('accessbc.liveDirectionsNotice','understood');});
+const p=await ctx.newPage(); p.setDefaultTimeout(240000);
+await p.clock.install({ time: new Date('2026-10-21T14:00:00Z') }); await p.clock.resume();
+const cdp = await ctx.newCDPSession(p);
+await cdp.send('Emulation.setCPUThrottlingRate', { rate: RATE });
+const t0 = Date.now();
+await p.goto('http://localhost:8765/');
+await p.waitForFunction(()=>typeof routing!=='undefined'&&routing);
+const tRouting = Date.now() - t0;
+await p.waitForFunction(()=>routePoints);
+const tPoints = Date.now() - t0;
+await p.waitForFunction(() => routing.graphs.city && routing.graphs.city.grades, null, { timeout: 120000 });
+const tCity = Date.now() - t0;
+const time = (label, fn) => p.evaluate(fn).then((r) => console.log(label.padEnd(44), `${r} ms`));
+console.log(`CPU ${RATE}x slower`);
+console.log('page load → routing ready'.padEnd(44), `${tRouting} ms`);
+console.log('page load → map data ready'.padEnd(44), `${tPoints} ms`);
+console.log('page load → city sidewalks ready (background)'.padEnd(44), `${tCity} ms`);
+const route = (from, to) => `async () => { const t=performance.now(); document.getElementById('route-from').value=${JSON.stringify(from)}; routing.fromChosen=true; document.getElementById('route-to').value=${JSON.stringify(to)}; await updateRoute(map); return Math.round(performance.now()-t); }`;
+await time('first campus route (Gasson → McElroy)', `(${route('Gasson Hall','McElroy Commons')})()`);
+await time('same route again', `(${route('Gasson Hall','McElroy Commons')})()`);
+await time('first between-campus route (→ Kenny Cottle)', `(${route('Gasson Hall','Kenny Cottle Library')})()`);
+await time('same route again', `(${route('Gasson Hall','Kenny Cottle Library')})()`);
+await time('another city route (Gasson → Murray House)', `(${route('Gasson Hall','Murray House')})()`);
+await time('re-route from here, mid-walk', `(async()=>{ await updateRoute(map); await startGuidance(map,{follow:true}); const t=performance.now(); rerouteFromHere(map,{automatic:true}); await new Promise(r=>{ const c=()=> guide.active && routing.current ? r() : setTimeout(c,20); setTimeout(c,50); }); stopGuidance(map); return Math.round(performance.now()-t); })()`);
+await time('Find nearby restrooms (from you)', `(async()=>{ const t=performance.now(); document.getElementById('nearby-kind').value='restroom'; fillNearbyFrom(); document.getElementById('nearby-from').value='me'; await findNearby(map); return Math.round(performance.now()-t); })()`);
+await time('Find nearby T stations', `(async()=>{ const t=performance.now(); document.getElementById('nearby-kind').value='tstation'; fillNearbyFrom(); document.getElementById('nearby-from').value='me'; await findNearby(map); return Math.round(performance.now()-t); })()`);
+await browser.close();
diff --git a/tests/accessibility/walks.mjs b/tests/accessibility/walks.mjs
new file mode 100644
index 0000000..6768b71
--- /dev/null
+++ b/tests/accessibility/walks.mjs
@@ -0,0 +1,203 @@
+// Simulated walks: live walking directions tested on the move. Loads the site in a real browser, starts walking
+// directions, and feeds the browser GPS fixes along the route (with a few metres of drift), as a phone would while
+// someone walks. Checks what the student would hear and see:
+// - a normal walk: steps move on in order, never backwards; heads-ups before turns; arrival
+// - a wrong turn: off the route for a few fixes, a new route is found from there, and it gets you there
+// - poor signal: a run of very inaccurate fixes and a gap with none don't trigger re-routing or lose your place
+// - a shuttle ride: riding (on roads, well away from walking paths) is never "off route"; getting off is a step
+//
+// Usage (from this folder): npm run walks (the same setup as npm run check); npm run walks -- shuttle runs one walk
+// Exits non-zero if a walk goes wrong.
+import { startServer, launchBrowser, seedStorage, appReady } from './harness.mjs';
+
+const PORT = 8798;
+const BASE = `http://localhost:${PORT}/`;
+const FIX_MS = 150; // between GPS fixes (real phones are about one a second; faster here, same logic)
+const STEP_M = 5; // metres walked between fixes
+const RIDE_STEP_M = 30; // and ridden
+const DRIFT_M = 3; // GPS drift
+const problems = [];
+const only = process.argv[2]; // a walk's name (normal, wrong turn, poor signal, shuttle), to run just that one
+const run = (name) => !only || name.startsWith(only);
+
+function expect(ok, walk, message) {
+ if (!ok) problems.push(`[${walk}] ${message}`);
+ console.log(` ${ok ? 'ok ' : 'FAIL'} ${walk}: ${message}`);
+}
+
+// Repeatable "random" drift, so a failing walk fails the same way every time
+let seed = 7;
+const random = () => ((seed = (seed * 16807) % 2147483647) / 2147483647);
+
+// Flat metres around the campus (as in src/js/routing/network.mjs)
+const LON0 = -71.175, LAT0 = 42.335, KX = 111320 * Math.cos((LAT0 * Math.PI) / 180), KY = 110540;
+const toXY = ([lon, lat]) => [(lon - LON0) * KX, (lat - LAT0) * KY];
+const toLonLat = ([x, y]) => [x / KX + LON0, y / KY + LAT0];
+
+// Points every `spacing` metres along a line of [lon, lat], each moved by up to `drift` metres, and all of them
+// `offset` metres to the left of it
+function walkAlong(coords, spacing = STEP_M, drift = DRIFT_M, offset = 0) {
+ const xy = coords.map(toXY), out = [];
+ for (let i = 1; i < xy.length; i++) {
+ const [a, b] = [xy[i - 1], xy[i]], len = Math.hypot(b[0] - a[0], b[1] - a[1]);
+ for (let d = 0; d < len; d += spacing) {
+ const t = d / len, left = [-(b[1] - a[1]) / len, (b[0] - a[0]) / len];
+ out.push(toLonLat([a[0] + t * (b[0] - a[0]) + left[0] * offset + (random() - 0.5) * 2 * drift, a[1] + t * (b[1] - a[1]) + left[1] * offset + (random() - 0.5) * 2 * drift]));
+ }
+ }
+ out.push(coords.at(-1));
+ return out;
+}
+
+async function openWalk(browser, { time, start = [-71.1695, 42.3357] } = {}) {
+ // A small window: the map is redrawn at every fix, in software on machines without a graphics card
+ const context = await browser.newContext({ viewport: { width: 480, height: 420 }, geolocation: { longitude: start[0], latitude: start[1], accuracy: 8 }, permissions: ['geolocation'], timezoneId: 'America/New_York' });
+ await seedStorage(context, { clockFace: false, soundCues: false });
+ const page = await context.newPage();
+ page.setDefaultTimeout(60000);
+ page.on('pageerror', (err) => problems.push(`[page error] ${err.message}`));
+ if (time) { await page.clock.install({ time }); await page.clock.resume(); }
+ await page.goto(BASE);
+ await appReady(page);
+ // Record what would be said aloud, and the status line, instead of speaking
+ await page.evaluate(() => {
+ window.__said = [];
+ window.__status = [];
+ speak = (text) => { window.__said.push(text); };
+ const status = guidanceStatus;
+ guidanceStatus = (html) => { if (html) window.__status.push(html.replace(/<[^>]+>/g, '')); status(html); };
+ });
+ return { context, page };
+}
+
+// Directions to a building from where you are, and Start (following your location)
+async function startWalk(page, to) {
+ await page.evaluate(async (to) => {
+ document.getElementById('route-from').value = MY_LOCATION;
+ routing.fromChosen = true;
+ document.getElementById('route-to').value = to;
+ await updateRoute(map);
+ }, to);
+ await page.click('#guidance-start-audio');
+ await page.waitForFunction(() => guide.active && guide.watch !== null && guide.steps.length > 1);
+ return page.evaluate(() => ({ line: guide.steps.flatMap((s) => s.coordinates), steps: guide.steps.map((s) => ({ kind: s.kind, type: s.type, length: s.length, coordinates: s.coordinates })) }));
+}
+
+// Feed fixes one at a time; returns the step index after each
+async function feed(context, page, points, { accuracy = 8, ms = FIX_MS } = {}) {
+ const indexes = [];
+ for (const [longitude, latitude] of points) {
+ await context.setGeolocation({ longitude, latitude, accuracy });
+ await page.waitForTimeout(ms);
+ indexes.push(await page.evaluate(() => (guide.active ? guide.index : -1)));
+ }
+ return indexes;
+}
+
+const arrived = (page) => page.evaluate(() => guide.active && guide.index === guide.steps.length - 1 && guide.steps.at(-1).kind === 'arrive');
+const said = (page) => page.evaluate(() => window.__said);
+const neverBackwards = (indexes) => indexes.every((v, i) => i === 0 || v === -1 || indexes[i - 1] === -1 || v >= indexes[i - 1]);
+
+async function main() {
+ const stopServer = await startServer(PORT);
+ const browser = await launchBrowser();
+ try {
+ let context, page, route, indexes, spoken;
+ // ---- A normal walk on campus ----
+ if (run('normal')) {
+ console.log('A normal walk: near Gasson Hall to McElroy Commons');
+ ({ context, page } = await openWalk(browser));
+ route = await startWalk(page, 'McElroy Commons');
+ // 2 m a fix, near a real walking pace (about one fix a second)
+ indexes = await feed(context, page, walkAlong(route.line, 2));
+ expect(neverBackwards(indexes), 'normal', `steps move on in order, never backwards (${new Set(indexes).size} of ${route.steps.length} steps seen)`);
+ // Every step longer than the gap between fixes was announced ("Step 3. Turn left…"): none passed in silence
+ const announced = new Set((await said(page)).flatMap((t) => [...t.matchAll(/Step (\d+)\./g)].map((m) => Number(m[1]) - 1)));
+ const missed = route.steps.map((st, i) => (st.length >= 3 || st.kind === 'arrive' ? i : -1)).filter((i) => i >= 0 && !announced.has(i));
+ expect(!missed.length, 'normal', `every step was announced${missed.length ? ` (missed: ${missed.map((i) => `${i + 1}. ${route.steps[i].kind}`).join(', ')})` : ''}`);
+ expect(await arrived(page), 'normal', 'reaches the arrival step at the end');
+ spoken = await said(page);
+ expect(spoken.some((t) => t.startsWith('Soon:')), 'normal', 'a heads-up before at least one turn ("Soon: …")');
+ expect(spoken.some((t) => /Arrive/.test(t)), 'normal', 'arrival is said aloud');
+ expect(!spoken.some((t) => /Off route/.test(t)), 'normal', 'never told it’s off route');
+ await context.close();
+ }
+
+ // ---- A wrong turn ----
+ if (run('wrong')) {
+ console.log('A wrong turn: off the route partway, then on to the destination');
+ ({ context, page } = await openWalk(browser));
+ route = await startWalk(page, 'McElroy Commons');
+ const points = walkAlong(route.line);
+ const turnAt = Math.floor(points.length * 0.35);
+ await feed(context, page, points.slice(0, turnAt));
+ const before = await page.evaluate(() => guide.steps);
+ // Head off sideways, about 8 m a fix, to about 60 m from the route
+ const [ax, ay] = toXY(points[turnAt - 1]), [bx, by] = toXY(points[turnAt + 3] || points.at(-1));
+ const len = Math.hypot(bx - ax, by - ay) || 1, side = [-(by - ay) / len, (bx - ax) / len];
+ const away = Array.from({ length: 8 }, (_, k) => toLonLat([ax + side[0] * 8 * (k + 1), ay + side[1] * 8 * (k + 1)]));
+ await feed(context, page, away, { ms: 400 });
+ await page.waitForFunction(() => window.__said.some((t) => /Off route/.test(t)) && guide.active, null, { timeout: 20000 }).catch(() => {});
+ spoken = await said(page);
+ expect(spoken.some((t) => /Off route\. Finding a new route from here/.test(t)), 'wrong turn', 'notices after a few fixes off the route, and says so');
+ await page.waitForFunction((old) => guide.active && JSON.stringify(guide.steps[0].start) !== JSON.stringify(old), before[0].start, { timeout: 20000 }).catch(() => {});
+ const rerouted = await page.evaluate(() => guide.active && guide.watch !== null);
+ expect(rerouted, 'wrong turn', 'a new route from where you are, still following your location');
+ route = await page.evaluate(() => ({ line: guide.steps.flatMap((s) => s.coordinates) }));
+ await feed(context, page, walkAlong(route.line));
+ expect(await arrived(page), 'wrong turn', 'the new route gets you there');
+ expect((await said(page)).filter((t) => /Off route/.test(t)).length === 1, 'wrong turn', 'only one re-route for one wrong turn');
+ await context.close();
+ }
+
+ // ---- Poor signal ----
+ if (run('poor')) {
+ console.log('Poor signal: inaccurate fixes, then none, then back');
+ ({ context, page } = await openWalk(browser));
+ route = await startWalk(page, 'McElroy Commons');
+ const walk = walkAlong(route.line);
+ const half = Math.floor(walk.length / 2);
+ indexes = await feed(context, page, walk.slice(0, half));
+ const mid = await page.evaluate(() => guide.index);
+ // Fixes 150 m inaccurate, scattered up to 80 m away (as near tall buildings), then six seconds with none
+ const scattered = Array.from({ length: 6 }, () => { const [x, y] = toXY(walk[half]); return toLonLat([x + (random() - 0.5) * 160, y + (random() - 0.5) * 160]); });
+ await feed(context, page, scattered, { accuracy: 150, ms: 300 });
+ const status = await page.evaluate(() => window.__status.join(' | '));
+ expect(/approximate/.test(status), 'poor signal', 'says the location is approximate');
+ await page.waitForTimeout(6000);
+ expect(await page.evaluate((mid) => guide.active && guide.index >= mid, mid), 'poor signal', 'keeps your place through the gap');
+ indexes = await feed(context, page, walk.slice(half));
+ expect(!(await said(page)).some((t) => /Off route/.test(t)), 'poor signal', 'no re-route from bad fixes');
+ expect(await arrived(page), 'poor signal', 'carries on to arrival when the signal comes back');
+ await context.close();
+ }
+
+ // ---- A shuttle ride ----
+ if (run('shuttle')) {
+ console.log('A shuttle ride: Gasson Hall to Kenny Cottle Library on a Wednesday morning');
+ ({ context, page } = await openWalk(browser, { time: new Date('2026-10-21T14:00:00Z'), start: [-71.1703, 42.3356] }));
+ route = await startWalk(page, 'Kenny Cottle Library');
+ expect(route.steps.some((s) => s.kind === 'board'), 'shuttle', 'the walking directions include a shuttle ride');
+ // On foot at walking spacing; on the bus at bus spacing, 35 m to one side of the drawn line (the far side of a
+ // divided road, or a line drawn a little off), well beyond the 25 m that counts as off route on foot
+ const legs = route.steps.flatMap((s) => (s.type === 'shuttle' ? walkAlong(s.coordinates, RIDE_STEP_M, 5, 35) : walkAlong(s.coordinates)));
+ indexes = await feed(context, page, legs);
+ spoken = await said(page);
+ expect(neverBackwards(indexes), 'shuttle', 'steps move on in order through the ride');
+ expect(!spoken.some((t) => /Off route|off the route/.test(t)), 'shuttle', 'riding the shuttle is never "off route"');
+ expect(spoken.some((t) => /Get off at/.test(t)), 'shuttle', 'getting off is said aloud');
+ expect(await arrived(page), 'shuttle', 'arrives at Kenny Cottle Library');
+ await context.close();
+ }
+ } finally {
+ await browser.close();
+ stopServer();
+ }
+ if (problems.length) {
+ console.log(`\nProblems:\n${problems.map((p) => ` ${p}`).join('\n')}`);
+ process.exit(1);
+ }
+ console.log('\nAll walks went as expected.');
+}
+
+main().catch((err) => { console.error(err); process.exit(1); });
diff --git a/tests/routing/routing.test.mjs b/tests/routing/routing.test.mjs
new file mode 100644
index 0000000..11e0532
--- /dev/null
+++ b/tests/routing/routing.test.mjs
@@ -0,0 +1,291 @@
+// Tests for the routing modules the site uses (src/js/routing/): the graph builder, routes, step-by-step wording,
+// shuttle rides and schedules, and slopes. Small made-up networks test each rule; the real campus data checks that
+// whole routes still work.
+//
+// Usage: node --test tests/routing/ (no packages needed; Node 20 or later)
+import { test } from 'node:test';
+import assert from 'node:assert/strict';
+import * as net from '../../src/js/routing/network.mjs';
+import * as transit from '../../src/js/routing/transit.mjs';
+import { buildSteps } from '../../src/js/routing/guidance.mjs';
+import { segmentGrades } from '../../src/js/routing/elevation.mjs';
+import { load, ROOT } from '../../scripts/routing/lib.mjs';
+import fs from 'node:fs';
+import path from 'node:path';
+
+const readJson = (name) => JSON.parse(fs.readFileSync(path.join(ROOT, 'src/geojson', name), 'utf8'));
+
+// ---- Made-up networks, in metres around the campus origin ----
+
+const at = (x, y) => net.unproj([x, y]);
+let fid = 0;
+const line = (Type, points, extra = {}) => ({ type: 'Feature', properties: { Type, FID: `t${++fid}`, ...extra }, geometry: { type: 'LineString', coordinates: points.map(([x, y]) => at(x, y)) } });
+const sidewalk = (Type, points, city = {}) => ({ type: 'Feature', properties: { Type, osm: ++fid, ...city }, geometry: { type: 'LineString', coordinates: points.map(([x, y]) => at(x, y)) } });
+const building = (name, x, y, half = 10) => ({ type: 'Feature', properties: { NAME: name }, geometry: { type: 'Polygon', coordinates: [[[x - half, y - half], [x + half, y - half], [x + half, y + half], [x - half, y + half], [x - half, y - half]].map(([a, b]) => at(a, b))] } });
+const entrance = (id, name, x, y) => ({ type: 'Feature', properties: { OBJECTID: id, Building: name, Status: 'Working' }, geometry: { type: 'Point', coordinates: at(x, y) } });
+const doors = (graph, name) => graph.entrances.filter((e) => e.building === name).map((e) => e.node);
+const route = (graph, from, to, cost) => net.shortestRoute(graph, doors(graph, from), doors(graph, to), cost);
+
+// Two buildings 200 m apart, with a path between their entrances
+const twoBuildings = (paths) => ({
+ paths,
+ buildings: [building('West Hall', 0, 20), building('East Hall', 200, 20)],
+ entrances: [entrance(1, 'West Hall', 0, 9), entrance(2, 'East Hall', 200, 9)],
+});
+
+test('entrances link to an outdoor path within 15 m, and not beyond', () => {
+ const near = net.buildGraph(twoBuildings([line('Exterior', [[0, 0], [200, 0]])]));
+ assert.deepEqual(near.entrances.map((e) => e.building).sort(), ['East Hall', 'West Hall']);
+ const far = net.buildGraph({ ...twoBuildings([line('Exterior', [[0, -20], [200, -20]])]) });
+ assert.equal(far.entrances.length, 0, 'entrances 29 m from the path are not linked');
+});
+
+test('a route between buildings follows the path, and is about as long as it', () => {
+ const graph = net.buildGraph(twoBuildings([line('Exterior', [[0, 0], [100, 0], [200, 0]])]));
+ const r = route(graph, 'West Hall', 'East Hall');
+ assert.ok(r, 'a route is found');
+ assert.ok(Math.abs(r.length - 218) < 3, `length ${r.length} is the path plus the two door links`);
+});
+
+test('an entrance link (Connector) makes an unconnected entrance routable, and counts as not checked', () => {
+ const paths = [line('Exterior', [[0, -40], [200, -40]]), line('Connector', [[0, 9], [0, -40]]), line('Connector', [[200, 9], [200, -40]])];
+ const graph = net.buildGraph(twoBuildings(paths));
+ const r = route(graph, 'West Hall', 'East Hall');
+ assert.ok(r, 'routable through the links');
+ const d = net.describeRoute(graph, r);
+ const unverified = d.steps.reduce((s, st) => s + st.unverifiedLength, 0);
+ assert.ok(unverified > 90, `the links (98 m) count as not checked: ${unverified}`);
+});
+
+test('city sidewalks join BC paths where one ends near the other, and make an otherwise unreachable building reachable', () => {
+ // BC path ends at x = 100; a city sidewalk starts 10 m on, and reaches East Hall's side
+ const data = {
+ ...twoBuildings([line('Exterior', [[0, 0], [100, 0]])]),
+ sidewalks: [sidewalk('Sidewalk', [[110, 0], [200, 0]])],
+ };
+ // East Hall's entrance links to the outdoor path only if it's BC's or a Connector: add a link to the sidewalk
+ data.paths.push(line('Connector', [[200, 9], [200, 0]]));
+ assert.equal(route(net.buildGraph({ ...data, sidewalks: [] }), 'West Hall', 'East Hall'), null, 'no route on campus paths alone');
+ const graph = net.buildGraph(data);
+ const r = route(graph, 'West Hall', 'East Hall');
+ assert.ok(r, 'a route on campus paths and city sidewalks');
+ const types = new Set(r.nodes.slice(1).map((n, i) => graph.adjacency[r.nodes[i]].find((e) => e.to === n).type));
+ assert.ok(types.has('Link') && types.has('Sidewalk'), `uses the join and the sidewalk: ${[...types]}`);
+});
+
+test('a bridge or tunnel sidewalk does not join a path it crosses', () => {
+ const data = {
+ ...twoBuildings([line('Exterior', [[0, 0], [200, 0]])]),
+ sidewalks: [sidewalk('Sidewalk', [[100, -50], [100, 50]], { level: true })],
+ };
+ const graph = net.buildGraph(data);
+ const crossingNode = net.nearestNode(graph, at(100, 0));
+ const types = new Set(graph.adjacency[crossingNode.node].map((e) => e.type));
+ assert.ok(!(types.has('Sidewalk') && types.has('Exterior')), 'no junction between the bridge and the path below');
+});
+
+test('a street crossing is its own step, named, with its curb ramps', () => {
+ // West Hall's path → a sidewalk along Beacon Street → a crossing of Beacon Street → a sidewalk → East Hall
+ const data = {
+ paths: [line('Exterior', [[0, 9], [0, 0]]), line('Connector', [[200, 9], [200, 40]])],
+ buildings: [building('West Hall', 0, 20), building('East Hall', 200, 20)],
+ entrances: [entrance(1, 'West Hall', 0, 9), entrance(2, 'East Hall', 200, 9)],
+ sidewalks: [
+ sidewalk('Sidewalk', [[0, 0], [100, 0]], { name: 'Beacon Street' }),
+ sidewalk('Crossing', [[100, 0], [100, 40]], { name: 'Beacon Street', crossing: 'traffic_signals', kerb: 'lowered' }),
+ sidewalk('Sidewalk', [[100, 40], [200, 40]], { name: 'Beacon Street' }),
+ ],
+ };
+ const graph = net.buildGraph(data);
+ const r = route(graph, 'West Hall', 'East Hall');
+ assert.ok(r, 'a route');
+ const texts = buildSteps(graph, r, { from: 'West Hall', to: 'East Hall' }).map((s) => s.text);
+ assert.ok(texts.some((t) => t === 'Cross Beacon Street at the traffic lights. There are curb ramps on both sides.'), texts.join('\n'));
+ assert.ok(texts.some((t) => /along Beacon Street/.test(t)), 'steps on the sidewalk name the street');
+});
+
+test('an unconfirmed crossing says its curb ramps are not confirmed', () => {
+ const data = {
+ paths: [line('Exterior', [[0, 9], [0, 0]]), line('Connector', [[200, 9], [200, 40]])],
+ buildings: [building('West Hall', 0, 20), building('East Hall', 200, 20)],
+ entrances: [entrance(1, 'West Hall', 0, 9), entrance(2, 'East Hall', 200, 9)],
+ sidewalks: [
+ sidewalk('Sidewalk', [[0, 0], [100, 0]]),
+ sidewalk('Crossing', [[100, 0], [100, 40]], { name: 'Hammond Street', crossing: 'unmarked', kerb: 'unknown' }),
+ sidewalk('Sidewalk', [[100, 40], [200, 40]]),
+ ],
+ };
+ const graph = net.buildGraph(data);
+ const texts = buildSteps(graph, route(graph, 'West Hall', 'East Hall'), { from: 'West Hall', to: 'East Hall' }).map((s) => s.text);
+ assert.ok(texts.includes('Cross Hammond Street, where there’s no marked crosswalk. Curb ramps aren’t confirmed here.'), texts.join('\n'));
+});
+
+// A sidewalk with a jog in it (a step sideways and back, as at a driveway), from West Hall towards East Hall
+const jogData = (Type) => ({
+ paths: [line('Exterior', [[0, 9], [0, 0]]), line('Connector', [[200, 9], [200, 6]]),
+ ...(Type === 'Exterior' ? [line('Exterior', [[0, 0], [80, 0], [86, 6], [200, 6]])] : [])],
+ buildings: [building('West Hall', 0, 20), building('East Hall', 200, 20)],
+ entrances: [entrance(1, 'West Hall', 0, 9), entrance(2, 'East Hall', 200, 9)],
+ sidewalks: Type === 'Sidewalk' ? [sidewalk('Sidewalk', [[0, 0], [80, 0], [86, 6], [200, 6]], { name: 'Beacon Street' })] : [],
+});
+
+test('on city sidewalks, a jog (a turn and a turn back) is not a step; on campus paths it is', () => {
+ const steps = (data) => { const g = net.buildGraph(data); return buildSteps(g, route(g, 'West Hall', 'East Hall'), { from: 'West Hall', to: 'East Hall' }); };
+ const city = steps(jogData('Sidewalk')).filter((st) => st.kind === 'turn' && Math.abs(st.turn) < 60);
+ const campus = steps(jogData('Exterior')).filter((st) => st.kind === 'turn' && Math.abs(st.turn) < 60);
+ assert.equal(city.length, 0, city.map((st) => st.text).join('\n'));
+ assert.equal(campus.length, 2, 'on campus, both bends are kept (they may be a ramp’s switchbacks)');
+});
+
+test('crossings right after one another are one step', () => {
+ const data = {
+ paths: [line('Exterior', [[0, 9], [0, 0]]), line('Connector', [[200, 9], [200, 40]])],
+ buildings: [building('West Hall', 0, 20), building('East Hall', 200, 20)],
+ entrances: [entrance(1, 'West Hall', 0, 9), entrance(2, 'East Hall', 200, 9)],
+ sidewalks: [
+ sidewalk('Sidewalk', [[0, 0], [100, 0]]),
+ sidewalk('Crossing', [[100, 0], [100, 15]], { name: 'Service Road', crossing: 'marked', kerb: 'lowered' }),
+ sidewalk('Sidewalk', [[100, 15], [100, 20]]),
+ sidewalk('Crossing', [[100, 20], [100, 40]], { name: 'Grant Avenue', crossing: 'marked', kerb: 'flush' }),
+ sidewalk('Sidewalk', [[100, 40], [200, 40]]),
+ ],
+ };
+ const g = net.buildGraph(data);
+ const texts = buildSteps(g, route(g, 'West Hall', 'East Hall'), { from: 'West Hall', to: 'East Hall' }).map((st) => st.text);
+ assert.ok(texts.includes('Cross Service Road, then Grant Avenue at the crosswalk. There are curb ramps or level curbs at each.'), texts.join('\n'));
+ assert.equal(texts.filter((t) => t.startsWith('Cross')).length, 1);
+});
+
+// ---- Slopes ----
+
+test('segment slopes record the climb and the descent the way the path was drawn', async () => {
+ // Ground rising 6% to the north; one path drawn northwards, one southwards
+ const terrain = { ensureTiles: async () => {}, elevation: ([, lat]) => (lat - 42.335) * 110540 * 0.06 };
+ const graph = net.buildGraph({
+ paths: [line('Exterior', [[0, 0], [0, 100]]), line('Exterior', [[50, 100], [50, 0]])],
+ buildings: [], entrances: [],
+ });
+ const grades = await segmentGrades(terrain, graph);
+ const north = graph.segments.findIndex((s) => graph.lines[s.line].coordinates[0][0] === at(0, 0)[0]);
+ const south = graph.segments.findIndex((s) => s !== graph.segments[north]);
+ assert.ok(Math.abs(grades.up[north] - 0.06) < 0.01 && grades.down[north] < 0.01, `northwards: up ${grades.up[north]}, down ${grades.down[north]}`);
+ assert.ok(Math.abs(grades.down[south] - 0.06) < 0.01 && grades.up[south] < 0.01, `southwards: up ${grades.up[south]}, down ${grades.down[south]}`);
+ assert.ok(Math.abs(grades[north] - 0.06) < 0.01, 'the steepest either way');
+});
+
+// ---- Shuttles ----
+
+const route24 = { name: 'Late Loop', loop: false, service: [{ days: [1, 2, 3, 4, 5], from: '17:00', to: '26:00', every: 12 }], stops: [], line: [] };
+// Boston is UTC-4 in October
+const boston = (iso) => new Date(`${iso}-04:00`);
+
+test('shuttle schedules: running times, including service past midnight', () => {
+ assert.equal(transit.runningService(route24, boston('2026-10-14T18:00:00'))?.every, 12, 'Wednesday 6 p.m.');
+ assert.equal(transit.runningService(route24, boston('2026-10-14T16:59:00')), null, 'Wednesday before 5 p.m.');
+ assert.ok(transit.runningService(route24, boston('2026-10-17T01:30:00')), 'Saturday 1:30 a.m. is Friday night’s service');
+ assert.equal(transit.runningService(route24, boston('2026-10-18T01:30:00')), null, 'Sunday 1:30 a.m.: no Saturday service');
+ assert.equal(transit.runningService(route24, boston('2026-10-17T02:00:00')), null, 'ends at 2 a.m.');
+});
+
+test('shuttle schedules: when the next service starts, and how to say it', () => {
+ const next = transit.nextService(route24, boston('2026-10-17T09:00:00')); // Saturday morning
+ assert.deepEqual({ from: next.from, dayOffset: next.dayOffset }, { from: '17:00', dayOffset: 2 }, 'Monday at 5 p.m.');
+ assert.equal(transit.clockTime('26:00'), '2 a.m.');
+ assert.equal(transit.clockTime('08:15'), '8:15 a.m.');
+ assert.equal(transit.nextServiceWords({ dayOffset: 0, from: '17:00' }), 'today at 5 p.m.');
+ assert.equal(transit.nextServiceWords({ dayOffset: 1, from: '07:00' }), 'tomorrow at 7 a.m.');
+ assert.equal(transit.serviceHours(route24), 'weekdays 5 p.m. – 2 a.m.');
+});
+
+test('shuttle rides go one way, cost the wait and the ride, and get their own steps', () => {
+ // A 1 km path; a shuttle from a stop at the west end to one at the east end, 2 minutes' ride, every 10 minutes
+ const graph = net.buildGraph(twoBuildings([line('Exterior', [[0, 0], [500, 0], [1000, 0]])].concat()));
+ graph.entrances.length = 0;
+ const shuttle = { name: 'Test Express', loop: false, service: [], line: [at(0, -5), at(1000, -5)],
+ stops: [{ name: 'West stop', lonlat: at(0, -5), rideToNext: 120, dwell: 0, at: 0 }, { name: 'East stop', lonlat: at(1000, -5), rideToNext: 0, dwell: 0, at: 1 }] };
+ const g = transit.addShuttles(graph, [{ route: shuttle, every: 10 }]);
+ const cost = (e) => transit.shuttleCost(e) ?? e.length;
+ const west = net.nearestNode(graph, at(0, 0)).node, east = net.nearestNode(graph, at(1000, 0)).node;
+ const eastbound = net.shortestRoute(g, [west], [east], cost), westbound = net.shortestRoute(g, [east], [west], cost);
+ const rides = (r) => r.nodes.slice(1).filter((n, i) => g.adjacency[r.nodes[i]].find((e) => e.to === n).type === 'Ride').length;
+ assert.equal(rides(eastbound), 1, 'eastbound takes the shuttle (5 min wait + 2 min ride + 1 min, against 14 min walking)');
+ assert.equal(rides(westbound), 0, 'westbound walks: the shuttle only goes east');
+ const cheaper = transit.shuttleCost({ type: 'Board', wait: 360 }, 0.8) < transit.shuttleCost({ type: 'Board', wait: 360 }, 1.4);
+ assert.ok(cheaper, 'at a slower pace, waiting costs fewer metres of walking');
+ const texts = buildSteps(g, eastbound, { from: 'here', to: 'there', fromBuilding: false, toIsPlace: true }).map((s) => s.text);
+ assert.ok(texts.some((t) => t.startsWith('At the West stop, take the Test Express shuttle to East stop (1 stop)')), texts.join('\n'));
+ assert.ok(texts.some((t) => t.startsWith('Get off at East stop')), texts.join('\n'));
+});
+
+test('trains pass through stations, and avoiding stairs, are boarded and left only at accessible ones', () => {
+ // A 3 km path; a train calling at West (accessible), Middle (not), and East (accessible), 2 minutes apart
+ const graph = net.buildGraph({ paths: [line('Exterior', [[0, 0], [1500, 0], [3000, 0]])], buildings: [], entrances: [] });
+ const train = { name: 'Green Line T', mode: 'train', toward: 'East', loop: false, service: [], line: [at(0, -5), at(1500, -5), at(3000, -5)],
+ stops: [{ name: 'West', lonlat: at(0, -5), rideToNext: 120, at: 0, wheelchair: 'yes' }, { name: 'Middle', lonlat: at(1500, -5), rideToNext: 120, at: 1, wheelchair: 'no' },
+ { name: 'East', lonlat: at(3000, -5), rideToNext: 0, at: 2, wheelchair: 'yes' }] };
+ const cost = (e) => transit.shuttleCost(e) ?? e.length;
+ const node = (x) => net.nearestNode(graph, at(x, 0)).node;
+ const ridesIn = (g, r) => r.nodes.slice(1).filter((n, i) => g.adjacency[r.nodes[i]].find((e) => e.to === n).type === 'Ride').length;
+ const stepFree = transit.addShuttles(graph, [{ route: train, every: 8 }], { stepFree: true });
+ const any = transit.addShuttles(graph, [{ route: train, every: 8 }]);
+ assert.equal(ridesIn(stepFree, net.shortestRoute(stepFree, [node(0)], [node(3000)], cost)), 2, 'West to East rides through Middle');
+ assert.equal(ridesIn(stepFree, net.shortestRoute(stepFree, [node(0)], [node(1500)], cost)), 0, 'avoiding stairs, no getting off at Middle: walk');
+ assert.equal(ridesIn(any, net.shortestRoute(any, [node(0)], [node(1500)], cost)), 1, 'allowing stairs, Middle is a stop');
+ const r = net.shortestRoute(stepFree, [node(0)], [node(3000)], cost);
+ const texts = buildSteps(stepFree, r, { from: 'here', to: 'there', fromBuilding: false, toIsPlace: true }).map((s) => s.text);
+ assert.ok(texts.includes('At West station, take a Green Line T train toward East to East (2 stops). Trains come about every 8 minutes.'), texts.join('\n'));
+});
+
+test('mbta-trains.json: each branch through campus, with service for every day and no gaps within a day', () => {
+ const { routes } = readJson('mbta-trains.json');
+ assert.equal(routes.length, 6, 'B, C and D, both directions');
+ for (const r of routes) {
+ assert.ok(r.stops.length >= 2 && r.stops.slice(0, -1).every((st) => st.rideToNext > 0), `${r.name} toward ${r.toward}: ride times`);
+ for (const day of [0, 1, 2, 3, 4, 5, 6]) {
+ const parts = r.service.filter((sv) => sv.days.includes(day)).sort((a, b) => a.from.localeCompare(b.from));
+ assert.ok(parts.length, `${r.name} toward ${r.toward} runs on day ${day}`);
+ parts.slice(1).forEach((sv, i) => assert.equal(sv.from, parts[i].to, `${r.name} toward ${r.toward}, day ${day}: no gap at ${parts[i].to}`));
+ }
+ }
+ const d = routes.find((r) => r.id === 'Green-D-0');
+ assert.ok(transit.runningService(d, boston('2026-10-21T07:00:00')), 'a D train at 7 a.m. on a Wednesday (a part boundary)');
+ assert.equal(transit.runningService(d, boston('2026-10-21T03:30:00')), null, 'no trains at 3:30 a.m.');
+});
+
+// ---- The real campus data ----
+
+const data = {
+ paths: [...load('accessiblepaths.geojson'), ...load('entrance-links.geojson')],
+ entrances: load('entrances.geojson'), buildings: load('buildings.geojson'), elevators: load('elevators.geojson'),
+};
+const campus = net.buildGraph(data);
+
+test('campus: routes between well-used buildings still work', () => {
+ for (const [from, to] of [['Gasson Hall', 'McElroy Commons'], ["O'Neill Library", 'Gasson Hall'], ['Stokes Hall', 'Robsham Theater']]) {
+ const r = route(campus, from, to);
+ assert.ok(r, `${from} → ${to}`);
+ assert.ok(r.length < 1200, `${from} → ${to} is ${Math.round(r.length)} m`);
+ }
+});
+
+test('campus: Gasson Hall to McElroy Commons goes through Stokes Hall', () => {
+ const steps = net.describeRoute(campus, route(campus, 'Gasson Hall', 'McElroy Commons')).steps;
+ assert.ok(steps.some((s) => s.type === 'indoor' && s.building === 'Stokes Hall'), steps.map((s) => `${s.type} ${s.building || ''}`).join(', '));
+});
+
+test('campus and city: Newton campus and buildings reached only by entrance links are routable', () => {
+ const city = net.buildGraph({ ...data, sidewalks: load('sidewalks.geojson').filter((f) => f.properties.Type !== 'Stairs' && !f.properties.rough && f.properties.kerb !== 'raised') });
+ assert.equal(route(campus, 'Gasson Hall', 'Kenny Cottle Library'), null, 'campus paths alone don’t reach Newton');
+ assert.ok(route(city, 'Gasson Hall', 'Kenny Cottle Library'), 'with city sidewalks, they do');
+ assert.ok(route(city, 'Gasson Hall', 'Murray House'), 'Murray House, through its entrance link');
+});
+
+test('shuttles.json: every route has ordered stops with ride times, and valid schedules', () => {
+ const { routes } = readJson('shuttles.json');
+ for (const r of routes) {
+ assert.ok(r.stops.length >= 2, r.name);
+ assert.ok(r.stops.slice(0, -1).every((s) => Number.isFinite(s.rideToNext) && s.rideToNext >= 0), `${r.name}: ride times`);
+ for (const s of r.service) assert.match(`${s.from} ${s.to}`, /^\d\d:\d\d \d\d:\d\d$/, `${r.name}: times`);
+ }
+ assert.ok(transit.serves(routes.find((r) => r.name === 'Newton Eagle Direct'), 'Main Gate Chestnut Hill', 'Stuart'), 'the Eagle Direct goes from the Main Gate to Stuart');
+});
diff --git a/updatingdata.md b/updatingdata.md
index 96633a8..cef8dab 100644
--- a/updatingdata.md
+++ b/updatingdata.md
@@ -14,6 +14,12 @@ The layers are GeoJSON files in [src/geojson/](src/geojson/), one feature per li
4. Preview locally with `python3 scripts/serve.py` and open http://localhost:8000.
5. Commit and push. GitHub Pages publishes the change.
+## Entrance links
+
+After adding or moving paths or entrances, run `node scripts/link-entrances.mjs` to redraw the automatic links to
+entrances that aren't connected to a path (it downloads street lines from OpenStreetMap), then
+`node scripts/make-data-collection-sheets.mjs` to update the list of links to check.
+
## City sidewalks
[src/geojson/sidewalks.geojson](src/geojson/sidewalks.geojson) comes from OpenStreetMap. To refresh it with newer
@@ -21,6 +27,13 @@ data, run `node scripts/osm-sidewalks.mjs` (Node 18 or later, no packages needed
public Overpass API, and retries if the servers are busy). See [src/geojson/README.md](src/geojson/README.md) for
the fields and the licence.
+## MBTA stations
+
+[src/geojson/mbta-stations.geojson](src/geojson/mbta-stations.geojson) lists the Green Line stations near campus. If
+the MBTA adds, closes, or makes a station accessible, run `node scripts/mbta.mjs` (it also refreshes the train ride times and schedules in `mbta-trains.json`, from
+the MBTA's schedule for the coming weekday, Saturday and Sunday; if a branch has no trains then, its previous data
+is kept). Live alerts and train times need no updating.
+
## BC shuttles
[src/geojson/shuttles.json](src/geojson/shuttles.json) is a snapshot of BC's shuttle routes. Each semester, or when