From 78e7bb4d3d7ae61759c68be3eea8cdc7d27d60a4 Mon Sep 17 00:00:00 2001 From: crimean Date: Tue, 16 Jul 2019 14:44:56 +0300 Subject: [PATCH 1/2] Fix #6914 --- .../java/net/osmand/search/SearchUICore.java | 4 +- .../net/osmand/search/core/ObjectType.java | 24 + .../net/osmand/search/core/SearchResult.java | 17 +- .../test/resources/search/spring_street.json | 8100 +++++++++++++++++ .../resources/search/street_santa_clara.json | 3 +- 5 files changed, 8139 insertions(+), 9 deletions(-) create mode 100644 OsmAnd-java/src/test/resources/search/spring_street.json diff --git a/OsmAnd-java/src/main/java/net/osmand/search/SearchUICore.java b/OsmAnd-java/src/main/java/net/osmand/search/SearchUICore.java index 9f299cd5e0..2d10ecd2e7 100644 --- a/OsmAnd-java/src/main/java/net/osmand/search/SearchUICore.java +++ b/OsmAnd-java/src/main/java/net/osmand/search/SearchUICore.java @@ -853,8 +853,8 @@ public class SearchUICore { boolean topVisible1 = ObjectType.isTopVisible(o1.objectType); boolean topVisible2 = ObjectType.isTopVisible(o2.objectType); if ((!topVisible1 && !topVisible2) || (topVisible1 && topVisible2)) { - if (o1.isUnknownPhraseMatches() != o2.isUnknownPhraseMatches()) { - return o1.isUnknownPhraseMatches() ? -1 : 1; + if (o1.getUnknownPhraseMatchWeight() != o2.getUnknownPhraseMatchWeight()) { + return -Double.compare(o1.getUnknownPhraseMatchWeight(), o2.getUnknownPhraseMatchWeight()); } else if (o1.getFoundWordCount() != o2.getFoundWordCount()) { return -Algorithms.compare(o1.getFoundWordCount(), o2.getFoundWordCount()); } diff --git a/OsmAnd-java/src/main/java/net/osmand/search/core/ObjectType.java b/OsmAnd-java/src/main/java/net/osmand/search/core/ObjectType.java index 399fa4011e..64ed8710cd 100644 --- a/OsmAnd-java/src/main/java/net/osmand/search/core/ObjectType.java +++ b/OsmAnd-java/src/main/java/net/osmand/search/core/ObjectType.java @@ -44,4 +44,28 @@ public enum ObjectType { } return null; } + + public static double getTypeWeight(ObjectType t) { + if (t == null) { + return 1.0; + } + switch (t) { + case CITY: + return 1.0; + case VILLAGE: + return 1.0; + case POSTCODE: + return 1.0; + case STREET: + return 2.0; + case HOUSE: + return 3.0; + case STREET_INTERSECTION: + return 3.0; + case POI: + return 2.0; + default: + return 1.0; + } + } } diff --git a/OsmAnd-java/src/main/java/net/osmand/search/core/SearchResult.java b/OsmAnd-java/src/main/java/net/osmand/search/core/SearchResult.java index 7ae713aee7..b08d901bdc 100644 --- a/OsmAnd-java/src/main/java/net/osmand/search/core/SearchResult.java +++ b/OsmAnd-java/src/main/java/net/osmand/search/core/SearchResult.java @@ -1,7 +1,6 @@ package net.osmand.search.core; import net.osmand.binary.BinaryMapIndexReader; -import net.osmand.data.Amenity; import net.osmand.data.City; import net.osmand.data.LatLon; import net.osmand.data.Street; @@ -30,10 +29,18 @@ public class SearchResult { public boolean firstUnknownWordMatches = true; public boolean unknownPhraseMatches = false; - public boolean isUnknownPhraseMatches() { - boolean res = unknownPhraseMatches; - if (!res && parentSearchResult != null) { - res = parentSearchResult.unknownPhraseMatches; + public double getUnknownPhraseMatchWeight() { + double res = 0; + boolean isHouse = objectType == ObjectType.HOUSE; + if (unknownPhraseMatches) { + res = ObjectType.getTypeWeight(objectType); + } + if (res == 0 && parentSearchResult != null && parentSearchResult.unknownPhraseMatches) { + if (isHouse && parentSearchResult.objectType == ObjectType.STREET) { + res = ObjectType.getTypeWeight(ObjectType.HOUSE); + } else { + res = ObjectType.getTypeWeight(parentSearchResult.objectType); + } } return res; } diff --git a/OsmAnd-java/src/test/resources/search/spring_street.json b/OsmAnd-java/src/test/resources/search/spring_street.json new file mode 100644 index 0000000000..5e794ba6bc --- /dev/null +++ b/OsmAnd-java/src/test/resources/search/spring_street.json @@ -0,0 +1,8100 @@ +{ + "settings": { + "lat": "41.11323", + "lon": "-74.04549", + "radiusLevel": 1, + "totalLimit": -1, + "lang": "", + "transliterateIfMissing": false, + "emptyQueryAllowed": false, + "sortByName": false + }, + "phrase": "spring street", + "results": [ + "Spring (Natural)", + "Spring (Spring / Natural)", + "Spring Street, South Nyack", + "Spring Street, Tomkins Cove", + "Spring Street, Southfields", + "Spring Street, Hastings-on-Hudson", + "Spring Street, Pleasantville", + "Spring Street (Mount Pleasant), Hawthorne", + "Spring Street, Durland", + "Spring Street, Warwick", + "Spring Street, Nelsonville", + "Spring Street, Goshen", + "Spring Street (Little Italy), Manhattan", + "Spring Street, Maybrook", + "West Spring Street, Maybrook", + "Spring Street, South Salem", + "Spring Street, Groveville", + "Spring Street, East Middletown", + "Spring Street, Montgomery", + "Spring Street, Chelsea", + "Spring Street, Wappingers Falls", + "Spring Street, Cold Spring Harbor", + "Spring Street, Staten Island", + "Spring Street, East Meadow", + "Spring Street, Inwood", + "Spring Street, Port Jervis", + "Spring Street, Roosevelt", + "Spring Street, Pawling", + "Spring Street, Fairview", + "Spring Street (Wyandanch), Wheatley Heights", + "Spring Street, Wyandanch", + "Spring Street, East Massapequa", + "Spring Street, Ellenville", + "Spring Street, Monticello", + "Spring Street, Tillson", + "Spring Street, Port Jefferson", + "Spring Street (Smallwood), Bethel", + "Spring Street, Liberty", + "Spring Street (Livingston Manor), Rockland", + "Spring Street, Livingston Manor", + "Spring Street", + "Spring Street", + "Spring Street", + "Spring Street", + "Spring Street", + "Spring Street", + "Spring Street", + "Spring Street", + "Spring Street", + "Spring Street", + "Spring Street" + ], + "amenities": [ + { + "name": "Spring Street Station (6) - Uptown & The Bronx", + "lat": "40.72210", + "lon": "-73.99683", + "id": 10304686932, + "subType": "subway_entrance", + "type": "transportation" + }, + { + "name": "Spring Street", + "lat": "42.58764", + "lon": "-76.36736", + "id": 509891265, + "subType": "bridge", + "type": "man_made", + "additionalInfo": { + "bridge_car": "yes", + "operator": "Tompkins Consolidated Area Transit", + "route_bus_ref": "40, 43, 74" + } + }, + { + "name": "Broadway/Spring Street", + "lat": "40.72274", + "lon": "-73.99906", + "id": 9511662874, + "subType": "public_transport_stop_position", + "type": "transportation", + "additionalInfo": { + "operator": "New York City Transit Authority", + "network": "NYC Transit", + "route_bus_ref": "M55", + "ref": "400157" + } + }, + { + "name": "Spring Street", + "lat": "43.02503", + "lon": "-76.00483", + "id": 434392461, + "subType": "bridge", + "type": "man_made", + "additionalInfo": { + "bridge_car": "yes" + } + }, + { + "name": "Broadway & Spring Street", + "lat": "40.72277", + "lon": "-73.99912", + "id": 9511662872, + "subType": "public_transport_platform", + "type": "transportation", + "additionalInfo": { + "operator": "New York City Transit Authority", + "network": "NYC Transit", + "route_bus_ref": "M55", + "ref": "400157" + } + }, + { + "name": "Spring Street", + "lat": "40.72232", + "lon": "-73.99719", + "id": 1195856686, + "subType": "public_transport_station", + "type": "transportation", + "openingHours": "24/7", + "additionalInfo": { + "subway_station": "subway", + "wheelchair_no": "no", + "opening_hours": "24/7", + "subway_region": "newyork", + "network": "nyc subway", + "operator": "New York City Transit Authority" + } + }, + { + "name": "Spring Street", + "lat": "40.72232", + "lon": "-73.99719", + "id": 1195856686, + "subType": "railway_station", + "type": "transportation", + "openingHours": "24/7", + "additionalInfo": { + "subway_station": "subway", + "wheelchair_no": "no", + "opening_hours": "24/7", + "subway_region": "newyork", + "network": "nyc subway", + "operator": "New York City Transit Authority" + } + }, + { + "name": "Spring Street Salt Shed", + "lat": "40.72591", + "lon": "-74.01052", + "id": 1177548959, + "subType": "building", + "type": "man_made" + }, + { + "name": "Spring Street Apartments", + "lat": "43.07260", + "lon": "-76.16036", + "id": 10379550690, + "subType": "building", + "type": "man_made", + "additionalInfo": { + "phone": "+1 315 313 5612" + } + }, + { + "name": "6th Avenue & Spring Street", + "lat": "40.72570", + "lon": "-74.00384", + "id": 10271601928, + "subType": "bus_stop", + "type": "transportation", + "additionalInfo": { + "wheelchair_yes": "yes", + "covered_no": "no", + "bench_no": "no", + "lit_no": "no", + "network": "M21;M55", + "operator": "MTA" + } + }, + { + "name": "Spring Street Gallery", + "lat": "43.07862", + "lon": "-73.78002", + "id": 715284310, + "subType": "gallery", + "type": "entertainment", + "additionalInfo": { + "ele": "94" + } + }, + { + "name": "Spring Street Station (6) - Uptown & The Bronx", + "lat": "40.72223", + "lon": "-73.99683", + "id": 10304686930, + "subType": "subway_entrance", + "type": "transportation" + }, + { + "name": "Spring Street", + "lat": "40.72521", + "lon": "-74.00283", + "id": 11957491402, + "subType": "alcohol", + "type": "shop" + }, + { + "name": "West Spring Street School", + "lat": "42.94620", + "lon": "-74.19986", + "id": 715193700, + "subType": "school", + "type": "education", + "additionalInfo": { + "ele": "96" + } + }, + { + "name": "Spring Street", + "lat": "42.46436", + "lon": "-75.32156", + "id": 493931189, + "subType": "bridge", + "type": "man_made", + "additionalInfo": { + "bridge_car": "yes" + } + }, + { + "name": "Spring Street Station (6) - Downtown", + "lat": "40.72248", + "lon": "-73.99738", + "id": 10304686966, + "subType": "subway_entrance", + "type": "transportation" + }, + { + "name": "Spring Street", + "lat": "40.72568", + "lon": "-74.00401", + "id": 1195874960, + "subType": "internet_access_wlan", + "type": "service", + "openingHours": "24/7", + "additionalInfo": { + "subway_station": "subway", + "wheelchair_no": "no", + "internet_access_fee_no": "no", + "opening_hours": "24/7", + "subway_region": "newyork", + "network": "nyc subway", + "operator": "New York City Transit Authority" + } + }, + { + "name": "Spring Street", + "lat": "40.72568", + "lon": "-74.00401", + "id": 1195874960, + "subType": "public_transport_station", + "type": "transportation", + "openingHours": "24/7", + "additionalInfo": { + "subway_station": "subway", + "wheelchair_no": "no", + "internet_access_fee_no": "no", + "opening_hours": "24/7", + "subway_region": "newyork", + "network": "nyc subway", + "operator": "New York City Transit Authority" + } + }, + { + "name": "Spring Street", + "lat": "40.72568", + "lon": "-74.00401", + "id": 1195874960, + "subType": "railway_station", + "type": "transportation", + "openingHours": "24/7", + "additionalInfo": { + "subway_station": "subway", + "wheelchair_no": "no", + "internet_access_fee_no": "no", + "opening_hours": "24/7", + "subway_region": "newyork", + "network": "nyc subway", + "operator": "New York City Transit Authority" + } + }, + { + "name": "Richmond Road & Spring Street", + "lat": "40.60307", + "lon": "-74.09274", + "id": 8818460186, + "subType": "public_transport_platform", + "type": "transportation" + }, + { + "name": "Spring Street", + "lat": "43.05323", + "lon": "-74.35030", + "id": 236085273, + "subType": "bridge", + "type": "man_made", + "additionalInfo": { + "bridge_car": "yes" + } + }, + { + "name": "Spring Street Station (6) - Downtown", + "lat": "40.72240", + "lon": "-73.99745", + "id": 10304686968, + "subType": "subway_entrance", + "type": "transportation" + }, + { + "name": "Spring Street", + "lat": "42.92837", + "lon": "-74.65995", + "id": 482828491, + "subType": "bridge", + "type": "man_made", + "additionalInfo": { + "bridge_car": "yes" + } + }, + { + "name": "Spring Street Park", + "lat": "40.72497", + "lon": "-74.00451", + "id": 479976213, + "subType": "park", + "type": "entertainment", + "additionalInfo": { + "website": "https://www.nycgovparks.org/parks/soho-square" + } + }, + { + "name": "Spring Street", + "lat": "43.03055", + "lon": "-73.38284", + "id": 1364728717, + "subType": "bridge", + "type": "man_made", + "additionalInfo": { + "bridge_car": "yes" + } + }, + { + "name": "Spring Street", + "lat": "44.69014", + "lon": "-75.49388", + "id": 79158433, + "subType": "bridge", + "type": "man_made", + "additionalInfo": { + "bridge_car": "yes" + } + } + ], + "cities": [ + { + "name": "Newtonville", + "lat": "42.72452", + "lon": "-73.75845", + "id": 158804318, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Willow Spring Drive", + "lat": "42.72507", + "lon": "-73.75777", + "id": 39199 + }, + { + "name": "Willow Spring", + "lat": "42.72575", + "lon": "-73.75800", + "id": 37250 + } + ], + "matchStreet": 1 + }, + { + "name": "Stissing", + "lat": "41.90926", + "lon": "-73.68207", + "id": 158863700, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Cold Spring Road", + "lat": "41.91076", + "lon": "-73.71273", + "id": 247825 + } + ], + "matchStreet": 1 + }, + { + "name": "Crugers", + "lat": "41.23343", + "lon": "-73.92264", + "id": 158859593, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Place", + "lat": "41.23348", + "lon": "-73.91780", + "id": 278456, + "intersectedStreets": [ + { + "name": "Vale Lane", + "lat": "41.23412", + "lon": "-73.91758" + }, + { + "name": "Springvale Road", + "lat": "41.23246", + "lon": "-73.91664" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Springville", + "lat": "42.50839", + "lon": "-78.66725", + "id": 158496065, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.51145", + "lon": "-78.66271", + "id": 68084 + } + ], + "matchStreet": 1 + }, + { + "name": "Verona", + "lat": "43.13832", + "lon": "-75.57083", + "id": 158391622, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Road (Town of Verona)", + "lat": "43.13735", + "lon": "-75.54135", + "id": 138792 + } + ], + "matchStreet": 1 + }, + { + "name": "Middle Island", + "lat": "40.88622", + "lon": "-72.97305", + "id": 2795064941, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Lake Drive", + "lat": "40.88592", + "lon": "-72.95357", + "id": 286044 + } + ], + "matchStreet": 1 + }, + { + "name": "Bronck House", + "lat": "42.34537", + "lon": "-73.84651", + "id": 158846286, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Cold Spring Road", + "lat": "42.33063", + "lon": "-73.86784", + "id": 110572 + } + ], + "matchStreet": 1 + }, + { + "name": "Richland", + "lat": "43.56952", + "lon": "-76.04770", + "id": 157624666, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Brook Road (Town of Richland)", + "lat": "43.57520", + "lon": "-76.09032", + "id": 144890 + } + ], + "matchStreet": 1 + }, + { + "name": "Groton", + "lat": "42.58669", + "lon": "-76.36662", + "id": 158481744, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.58762", + "lon": "-76.36738", + "id": 269558 + } + ], + "matchStreet": 1 + }, + { + "name": "Cobleskill", + "lat": "42.67785", + "lon": "-74.48542", + "id": 158843210, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.67841", + "lon": "-74.48044", + "id": 148384 + } + ], + "matchStreet": 1 + }, + { + "name": "Morris", + "lat": "42.54874", + "lon": "-75.24521", + "id": 158266672, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.54252", + "lon": "-75.24652", + "id": 147115 + } + ], + "matchStreet": 1 + }, + { + "name": "Middle Island", + "lat": "40.88426", + "lon": "-72.93733", + "id": 158852404, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Lake Drive", + "lat": "40.89530", + "lon": "-72.95544", + "id": 156617 + } + ], + "matchStreet": 1 + }, + { + "name": "Sayre", + "lat": "41.99596", + "lon": "-76.52372", + "id": 187398, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "41.99540", + "lon": "-76.52190", + "id": 65052 + } + ], + "matchStreet": 1 + }, + { + "name": "Staten Island", + "enName": "Staten Island", + "names": { + "ru": "Статен-Айленд" + }, + "lat": "40.58345", + "lon": "-74.14960", + "id": 158851392, + "type": "SUBURB", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "40.60341", + "lon": "-74.09450", + "id": 15091 + } + ], + "matchStreet": 1 + }, + { + "name": "Cambridge", + "lat": "43.02813", + "lon": "-73.38123", + "id": 158857511, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Valley Road", + "lat": "43.03218", + "lon": "-73.37067", + "id": 192340 + }, + { + "name": "Spring Street", + "lat": "43.03049", + "lon": "-73.38354", + "id": 189273 + } + ], + "matchStreet": 1 + }, + { + "name": "Tuckahoe", + "lat": "40.89899", + "lon": "-72.41092", + "id": 158852389, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Lane", + "lat": "40.89473", + "lon": "-72.40705", + "id": 264339 + }, + { + "name": "Cold Spring Point Road", + "lat": "40.90381", + "lon": "-72.45629", + "id": 169327 + }, + { + "name": "Spring Pond Lane", + "lat": "40.89809", + "lon": "-72.45215", + "id": 177773 + }, + { + "name": "Cold Spring Court", + "lat": "40.89721", + "lon": "-72.46943", + "id": 187217 + } + ], + "matchStreet": 1 + }, + { + "name": "Hoosick Falls", + "lat": "42.90119", + "lon": "-73.35150", + "id": 158856494, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.90003", + "lon": "-73.35277", + "id": 44598 + } + ], + "matchStreet": 1 + }, + { + "name": "Mineville", + "lat": "44.08860", + "lon": "-73.51574", + "id": 158823704, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Mountain Spring Road", + "lat": "44.10261", + "lon": "-73.51896", + "id": 107540 + } + ], + "matchStreet": 1 + }, + { + "name": "Westport", + "lat": "44.18417", + "lon": "-73.43571", + "id": 158868766, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Mountain Spring Road", + "lat": "44.14857", + "lon": "-73.49602", + "id": 105913 + }, + { + "name": "Cold Spring Way", + "lat": "44.16378", + "lon": "-73.40966", + "id": 110090 + } + ], + "matchStreet": 1 + }, + { + "name": "Hastings-on-Hudson", + "lat": "40.99466", + "lon": "-73.87859", + "id": 158912800, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "40.99522", + "lon": "-73.88267", + "id": 210798 + } + ], + "matchStreet": 1 + }, + { + "name": "Lorraine", + "lat": "43.76646", + "lon": "-75.95937", + "id": 158657812, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "43.79709", + "lon": "-75.96597", + "id": 276627 + } + ], + "matchStreet": 1 + }, + { + "name": "East Hills", + "lat": "40.79585", + "lon": "-73.62406", + "id": 158843167, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Hill Road", + "lat": "40.78922", + "lon": "-73.62930", + "id": 228551, + "intersectedStreets": [ + { + "name": "Old Farm Road", + "lat": "40.78972", + "lon": "-73.62784" + }, + { + "name": "High Hollow Road", + "lat": "40.78899", + "lon": "-73.63041" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Canaseraga", + "lat": "42.46146", + "lon": "-77.77694", + "id": 158572802, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.46782", + "lon": "-77.77385", + "id": 84104 + } + ], + "matchStreet": 1 + }, + { + "name": "Kings Point", + "lat": "40.81983", + "lon": "-73.73513", + "id": 158856454, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Lane", + "lat": "40.80902", + "lon": "-73.73051", + "id": 231122, + "intersectedStreets": [ + { + "name": "Hicks Lane", + "lat": "40.80655", + "lon": "-73.73032" + }, + { + "name": "Woodcrest Road", + "lat": "40.80769", + "lon": "-73.73051" + }, + { + "name": "Rogers Road", + "lat": "40.80925", + "lon": "-73.73049" + }, + { + "name": "Shady Brook Road", + "lat": "40.80967", + "lon": "-73.73045" + }, + { + "name": "Henhawk Road", + "lat": "40.81045", + "lon": "-73.73051" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Limestreet", + "lat": "42.30842", + "lon": "-73.87569", + "id": 158856451, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Cold Spring Road", + "lat": "42.31188", + "lon": "-73.87816", + "id": 110568 + } + ], + "matchStreet": 1 + }, + { + "name": "Valley Cottage", + "lat": "41.11815", + "lon": "-73.95541", + "id": 158908673, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Road", + "lat": "41.13332", + "lon": "-73.93998", + "id": 241443, + "intersectedStreets": [ + { + "name": "Emerald Drive", + "lat": "41.13196", + "lon": "-73.94050" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Maple Shade", + "lat": "43.01869", + "lon": "-73.72623", + "id": 158811404, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Waters Drive", + "lat": "43.02446", + "lon": "-73.72178", + "id": 44806 + } + ], + "matchStreet": 1 + }, + { + "name": "Knapps Corner", + "lat": "41.62856", + "lon": "-73.91664", + "id": 158855434, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Road", + "lat": "41.62779", + "lon": "-73.91074", + "id": 246745, + "intersectedStreets": [ + { + "name": "Old Post Road", + "lat": "41.62831", + "lon": "-73.91634" + }, + { + "name": "Kerr Road", + "lat": "41.62794", + "lon": "-73.91378" + }, + { + "name": "Labrador Lane", + "lat": "41.62778", + "lon": "-73.91102" + }, + { + "name": "Victor Lane", + "lat": "41.62792", + "lon": "-73.90900" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Quigley Park", + "lat": "42.13645", + "lon": "-79.39589", + "id": 157596955, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.13100", + "lon": "-79.39414", + "id": 257319 + } + ], + "matchStreet": 1 + }, + { + "name": "Valatie", + "lat": "42.41341", + "lon": "-73.67318", + "id": 158811382, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.41348", + "lon": "-73.67290", + "id": 98387 + } + ], + "matchStreet": 1 + }, + { + "name": "South Nyack", + "lat": "41.08320", + "lon": "-73.92020", + "id": 158843124, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "41.08690", + "lon": "-73.92428", + "id": 244097 + } + ], + "matchStreet": 1 + }, + { + "name": "Perry", + "lat": "42.71562", + "lon": "-78.00556", + "id": 157567202, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.71650", + "lon": "-78.00029", + "id": 198072 + } + ], + "matchStreet": 1 + }, + { + "name": "Upper Red Hook", + "lat": "42.02981", + "lon": "-73.84457", + "id": 158840064, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Lake Road", + "lat": "42.02558", + "lon": "-73.84501", + "id": 249101 + } + ], + "matchStreet": 1 + }, + { + "name": "Mumford", + "lat": "42.99284", + "lon": "-77.86029", + "id": 158505210, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.98946", + "lon": "-77.86661", + "id": 124781 + } + ], + "matchStreet": 1 + }, + { + "name": "Cossayuna", + "lat": "43.18369", + "lon": "-73.42678", + "id": 158823673, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Maple Spring Way", + "lat": "43.19075", + "lon": "-73.42079", + "id": 192511 + } + ], + "matchStreet": 1 + }, + { + "name": "Montgomery", + "lat": "41.52759", + "lon": "-74.23682", + "id": 158836967, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "41.52607", + "lon": "-74.23361", + "id": 200973 + } + ], + "matchStreet": 1 + }, + { + "name": "Pleasant Valley", + "lat": "41.74454", + "lon": "-73.82125", + "id": 158802149, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Creek Drive", + "lat": "41.75491", + "lon": "-73.83246", + "id": 250333 + } + ], + "matchStreet": 1 + }, + { + "name": "Palatine Bridge", + "lat": "42.91091", + "lon": "-74.57403", + "id": 158853346, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.90989", + "lon": "-74.57949", + "id": 123565 + } + ], + "matchStreet": 1 + }, + { + "name": "Ilion", + "lat": "43.01507", + "lon": "-75.03543", + "id": 158268663, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "43.01075", + "lon": "-75.02973", + "id": 111336 + } + ], + "matchStreet": 1 + }, + { + "name": "West Mahopac", + "lat": "41.37092", + "lon": "-73.79013", + "id": 158813422, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Road", + "lat": "41.37352", + "lon": "-73.78808", + "id": 237830, + "intersectedStreets": [ + { + "name": "Lake Shore Drive", + "lat": "41.37360", + "lon": "-73.78778" + } + ] + }, + { + "name": "Spring Brook Road", + "lat": "41.37272", + "lon": "-73.78210", + "id": 238395, + "intersectedStreets": [ + { + "name": "Secor Road", + "lat": "41.37119", + "lon": "-73.78184" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Old Brookville", + "lat": "40.83204", + "lon": "-73.60485", + "id": 158815469, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Cold Spring Road", + "lat": "40.84446", + "lon": "-73.60638", + "id": 221249, + "intersectedStreets": [ + { + "name": "Pound Hollow Road", + "lat": "40.84539", + "lon": "-73.60681" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Raymond", + "lat": "43.10700", + "lon": "-78.66725", + "id": 158581203, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Ln", + "lat": "43.10314", + "lon": "-78.65799", + "id": 261915 + } + ], + "matchStreet": 1 + }, + { + "name": "Catskill", + "lat": "42.21731", + "lon": "-73.86457", + "id": 158808533, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.22410", + "lon": "-73.86203", + "id": 108121 + } + ], + "matchStreet": 1 + }, + { + "name": "Whitehall", + "lat": "43.55576", + "lon": "-73.40378", + "id": 158856659, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "43.54118", + "lon": "-73.41170", + "id": 189278 + } + ], + "matchStreet": 1 + }, + { + "name": "Manchester Center", + "lat": "42.97590", + "lon": "-77.17997", + "id": 158563804, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Run", + "lat": "42.97194", + "lon": "-77.16829", + "id": 129856 + } + ], + "matchStreet": 1 + }, + { + "name": "Black Creek", + "lat": "42.27563", + "lon": "-78.22640", + "id": 158554591, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Valley Road", + "lat": "42.26712", + "lon": "-78.20785", + "id": 272027 + } + ], + "matchStreet": 1 + }, + { + "name": "Sylvan Beach", + "lat": "42.46479", + "lon": "-77.10831", + "id": 158368224, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Bubbling Spring Road", + "lat": "42.46464", + "lon": "-77.11051", + "id": 84473 + } + ], + "matchStreet": 1 + }, + { + "name": "Portville", + "lat": "42.03868", + "lon": "-78.34085", + "id": 158647757, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Court", + "lat": "42.03691", + "lon": "-78.32780", + "id": 91800 + } + ], + "matchStreet": 1 + }, + { + "name": "Bath", + "lat": "42.33702", + "lon": "-77.31775", + "id": 158546379, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.34586", + "lon": "-77.32255", + "id": 83079 + } + ], + "matchStreet": 1 + }, + { + "name": "White Creek", + "lat": "42.97008", + "lon": "-73.29122", + "id": 158838223, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Cold Spring Lane (Town of White Creek)", + "lat": "43.00750", + "lon": "-73.38007", + "id": 195067 + }, + { + "name": "Spring Valley Road (Cambridge)", + "lat": "43.03218", + "lon": "-73.37069", + "id": 192341 + }, + { + "name": "Spring Street (Cambridge)", + "lat": "43.03050", + "lon": "-73.38354", + "id": 189274 + } + ], + "matchStreet": 1 + }, + { + "name": "North Chili", + "lat": "43.11978", + "lon": "-77.80556", + "id": 158342606, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Flower Drive", + "lat": "43.12598", + "lon": "-77.79084", + "id": 128329 + } + ], + "matchStreet": 1 + }, + { + "name": "Rocky Point", + "lat": "40.95260", + "lon": "-72.92538", + "id": 158846392, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Garden Road", + "lat": "40.96144", + "lon": "-72.95061", + "id": 172951 + } + ], + "matchStreet": 1 + }, + { + "name": "Wyandanch", + "lat": "40.75399", + "lon": "-73.36040", + "id": 158806452, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "40.76145", + "lon": "-73.35541", + "id": 283852 + } + ], + "matchStreet": 1 + }, + { + "name": "Ellenville", + "lat": "41.71704", + "lon": "-74.39571", + "id": 158839217, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "41.72034", + "lon": "-74.39431", + "id": 178524 + } + ], + "matchStreet": 1 + }, + { + "name": "Marilla", + "lat": "42.84006", + "lon": "-78.55502", + "id": 158237098, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Garden", + "lat": "42.78509", + "lon": "-78.55765", + "id": 71192 + } + ], + "matchStreet": 1 + }, + { + "name": "South Dover", + "lat": "41.66120", + "lon": "-73.55901", + "id": 158826941, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Lane", + "lat": "41.66972", + "lon": "-73.54960", + "id": 247171, + "intersectedStreets": [ + { + "name": "Berkshire Road", + "lat": "41.66974", + "lon": "-73.54941" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Port Jervis", + "lat": "41.37509", + "lon": "-74.69267", + "id": 158842300, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "41.37536", + "lon": "-74.68944", + "id": 200976 + } + ], + "matchStreet": 1 + }, + { + "name": "Richfield", + "lat": "42.85730", + "lon": "-75.05404", + "id": 157615530, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Park Drive", + "lat": "42.85426", + "lon": "-74.98469", + "id": 147877 + }, + { + "name": "Spring Street (Richfield Springs)", + "lat": "42.84787", + "lon": "-74.99272", + "id": 147119 + } + ], + "matchStreet": 1 + }, + { + "name": "Gas Spring", + "lat": "42.41535", + "lon": "-77.83417", + "id": 158578109, + "type": "HAMLET", + "listOfStreets": [], + "matchCity": 1 + }, + { + "name": "Marbletown", + "lat": "41.88343", + "lon": "-74.11320", + "id": 158853544, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Farm Road (Town of Marbletown)", + "lat": "41.79555", + "lon": "-74.12345", + "id": 266055, + "intersectedStreets": [ + { + "name": "Upper 27 Knolls Road", + "lat": "41.79653", + "lon": "-74.12319" + }, + { + "name": "Cedar Drive (Mohonk Lake)", + "lat": "41.79446", + "lon": "-74.12338" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Schuylerville", + "lat": "43.10023", + "lon": "-73.58196", + "id": 158808485, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "43.10590", + "lon": "-73.58181", + "id": 748 + } + ], + "matchStreet": 1 + }, + { + "name": "Old Forge", + "lat": "43.71007", + "lon": "-74.97434", + "id": 158808482, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "43.70604", + "lon": "-74.98042", + "id": 111339 + } + ], + "matchStreet": 1 + }, + { + "name": "Cooperstown", + "lat": "42.70063", + "lon": "-74.92432", + "id": 158877089, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.69332", + "lon": "-74.93905", + "id": 147105 + } + ], + "matchStreet": 1 + }, + { + "name": "Long View", + "lat": "42.12450", + "lon": "-79.39227", + "id": 158266803, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.13022", + "lon": "-79.39347", + "id": 91218 + } + ], + "matchStreet": 1 + }, + { + "name": "Melody Lake", + "lat": "41.59482", + "lon": "-74.66516", + "id": 158853548, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Cold Spring Road", + "lat": "41.60266", + "lon": "-74.67740", + "id": 267396, + "intersectedStreets": [ + { + "name": "Rose Valley Road", + "lat": "41.58974", + "lon": "-74.67019" + }, + { + "name": "Lost Lake Boulevard", + "lat": "41.59250", + "lon": "-74.67208" + }, + { + "name": "Forrestburg Tl", + "lat": "41.59417", + "lon": "-74.67283" + }, + { + "name": "Melody Lake Drive", + "lat": "41.59792", + "lon": "-74.67330" + }, + { + "name": "Lena Road", + "lat": "41.61074", + "lon": "-74.67727" + }, + { + "name": "Kukas Road", + "lat": "41.61206", + "lon": "-74.67755" + }, + { + "name": "Jim Lane", + "lat": "41.61692", + "lon": "-74.67843" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "North Wantagh", + "lat": "40.69344", + "lon": "-73.50762", + "id": 158807468, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Lane", + "lat": "40.69489", + "lon": "-73.50163", + "id": 231124, + "intersectedStreets": [ + { + "name": "Tusk Lane", + "lat": "40.69499", + "lon": "-73.50141" + }, + { + "name": "Fortune Court", + "lat": "40.69486", + "lon": "-73.50242" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Motts Corner", + "lat": "43.02729", + "lon": "-77.40027", + "id": 158404015, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Creek Drive", + "lat": "43.03483", + "lon": "-77.40319", + "id": 130712 + } + ], + "matchStreet": 1 + }, + { + "name": "Sound Beach", + "lat": "40.95621", + "lon": "-72.96788", + "id": 158812585, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Cold Spring Drive", + "lat": "40.96258", + "lon": "-72.96325", + "id": 171047 + } + ], + "matchStreet": 1 + }, + { + "name": "Union Center", + "lat": "42.15147", + "lon": "-76.06909", + "id": 158505368, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.14568", + "lon": "-76.06968", + "id": 74309 + } + ], + "matchStreet": 1 + }, + { + "name": "South Corning", + "lat": "42.12174", + "lon": "-77.03718", + "id": 158622109, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Terrace", + "lat": "42.11846", + "lon": "-77.03521", + "id": 85090 + } + ], + "matchStreet": 1 + }, + { + "name": "Upper Mongaup", + "lat": "41.45760", + "lon": "-74.76488", + "id": 158914965, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Cranes Spring Road", + "lat": "41.46228", + "lon": "-74.76218", + "id": 163634, + "intersectedStreets": [ + { + "name": "Powerhouse Road", + "lat": "41.46251", + "lon": "-74.76246" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Hannans Corner", + "lat": "43.06917", + "lon": "-77.44250", + "id": 158438813, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Hill", + "lat": "43.07666", + "lon": "-77.43876", + "id": 122767 + } + ], + "matchStreet": 1 + }, + { + "name": "Southfields", + "lat": "41.24481", + "lon": "-74.17543", + "id": 158899596, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "41.24351", + "lon": "-74.17512", + "id": 200972 + } + ], + "matchStreet": 1 + }, + { + "name": "Williamsville", + "lat": "42.96379", + "lon": "-78.73773", + "id": 158307739, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "East Spring Street", + "lat": "42.96350", + "lon": "-78.74612", + "id": 67705 + }, + { + "name": "West Spring Street", + "lat": "42.96277", + "lon": "-78.74976", + "id": 71824 + } + ], + "matchStreet": 1 + }, + { + "name": "Muttontown", + "lat": "40.82399", + "lon": "-73.54763", + "id": 158902660, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Court", + "lat": "40.82118", + "lon": "-73.51830", + "id": 222268, + "intersectedStreets": [ + { + "name": "Cecilia Drive", + "lat": "40.82118", + "lon": "-73.51830" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Glenville", + "lat": "41.06565", + "lon": "-73.84069", + "id": 158814605, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring St", + "lat": "41.06560", + "lon": "-73.84033", + "id": 210806, + "intersectedStreets": [ + { + "name": "Old White Plains Road", + "lat": "41.06426", + "lon": "-73.84104" + }, + { + "name": "Benedict Avenue", + "lat": "41.06560", + "lon": "-73.84033" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Spring Cove", + "lat": "44.57117", + "lon": "-74.45600", + "id": 158811511, + "type": "HAMLET", + "listOfStreets": [], + "matchCity": 1 + }, + { + "name": "Northwest Harbor", + "lat": "41.00982", + "lon": "-72.22119", + "id": 158846325, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Red Spring Path", + "lat": "40.99214", + "lon": "-72.25483", + "id": 170545 + } + ], + "matchStreet": 1 + }, + { + "name": "Buckberg", + "lat": "41.26250", + "lon": "-73.99084", + "id": 158855538, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Drive", + "lat": "41.26700", + "lon": "-73.99391", + "id": 242401, + "intersectedStreets": [ + { + "name": "Crestview Drive", + "lat": "41.26760", + "lon": "-73.99333" + }, + { + "name": "Cortlandt Lane", + "lat": "41.26663", + "lon": "-73.99496" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Hampton Manor", + "lat": "42.61619", + "lon": "-73.72012", + "id": 158865791, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Avenue East", + "lat": "42.61610", + "lon": "-73.72195", + "id": 42219 + } + ], + "matchStreet": 1 + }, + { + "name": "Haydenville", + "lat": "42.11145", + "lon": "-78.37502", + "id": 158428535, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Ponds Lane", + "lat": "42.10854", + "lon": "-78.36277", + "id": 92347 + } + ], + "matchStreet": 1 + }, + { + "name": "Sand Ridge", + "lat": "43.25590", + "lon": "-76.23020", + "id": 158573948, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "43.26117", + "lon": "-76.21628", + "id": 140509 + } + ], + "matchStreet": 1 + }, + { + "name": "Butler Center", + "lat": "43.16868", + "lon": "-76.77135", + "id": 157545840, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Wolcott Spring Lake Road", + "lat": "43.18756", + "lon": "-76.77248", + "id": 193862 + } + ], + "matchStreet": 1 + }, + { + "name": "Inwood", + "lat": "40.62205", + "lon": "-73.74680", + "id": 158802280, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "40.62107", + "lon": "-73.73562", + "id": 225794 + } + ], + "matchStreet": 1 + }, + { + "name": "Manhasset", + "lat": "40.79788", + "lon": "-73.69957", + "id": 158863724, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Mill Spring Road", + "lat": "40.78860", + "lon": "-73.68170", + "id": 234125, + "intersectedStreets": [ + { + "name": "Country Club Drive (Strathmore)", + "lat": "40.78912", + "lon": "-73.67927" + }, + { + "name": "Castle Ridge Road", + "lat": "40.78860", + "lon": "-73.68159" + }, + { + "name": "Payne Whitney Lane", + "lat": "40.78959", + "lon": "-73.68378" + }, + { + "name": "Old Mill Road (Strathmore)", + "lat": "40.79476", + "lon": "-73.67803" + }, + { + "name": "Short Drive (Strathmore)", + "lat": "40.79398", + "lon": "-73.67784" + }, + { + "name": "Rockcrest Road", + "lat": "40.79325", + "lon": "-73.67764" + }, + { + "name": "Hilltop Drive (Strathmore)", + "lat": "40.79221", + "lon": "-73.67738" + }, + { + "name": "Woodland Way (Strathmore)", + "lat": "40.79050", + "lon": "-73.67781" + }, + { + "name": "Chapel Road (Strathmore)", + "lat": "40.79011", + "lon": "-73.67889" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Nelsonville", + "lat": "41.42464", + "lon": "-73.94673", + "id": 158844268, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "41.42456", + "lon": "-73.94674", + "id": 237496 + } + ], + "matchStreet": 1 + }, + { + "name": "Fay", + "lat": "44.89283", + "lon": "-74.34268", + "id": 158861672, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Cold Spring Road", + "lat": "44.89960", + "lon": "-74.38551", + "id": 107558 + } + ], + "matchStreet": 1 + }, + { + "name": "Cold Spring", + "lat": "42.94979", + "lon": "-76.57716", + "id": 158233676, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Munro Street", + "lat": "42.94830", + "lon": "-76.57810", + "id": 88755 + }, + { + "name": "State Street", + "lat": "42.94934", + "lon": "-76.57737", + "id": 261144 + } + ], + "matchCity": 1 + }, + { + "name": "Clifton Springs", + "lat": "42.96173", + "lon": "-77.13998", + "id": 158224457, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.96366", + "lon": "-77.13625", + "id": 127755 + } + ], + "matchStreet": 1 + }, + { + "name": "East Massapequa", + "lat": "40.67344", + "lon": "-73.43651", + "id": 158821470, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "40.66410", + "lon": "-73.43195", + "id": 225796 + } + ], + "matchStreet": 1 + }, + { + "name": "Gardnertown", + "lat": "41.53509", + "lon": "-74.07015", + "id": 158813277, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Square Business Park", + "lat": "41.52887", + "lon": "-74.07206", + "id": 202448 + } + ], + "matchStreet": 1 + }, + { + "name": "Jewett", + "lat": "42.27036", + "lon": "-74.30292", + "id": 158814299, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Silver Spring Road (Town of Jewett)", + "lat": "42.22601", + "lon": "-74.27618", + "id": 111642 + } + ], + "matchStreet": 1 + }, + { + "name": "Tomkins Cove", + "lat": "41.25704", + "lon": "-73.98348", + "id": 158863433, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "41.25621", + "lon": "-73.98196", + "id": 244099 + } + ], + "matchStreet": 1 + }, + { + "name": "Ramapo", + "lat": "41.14120", + "lon": "-74.16850", + "id": 158818371, + "type": "SUBURB", + "listOfStreets": [ + { + "name": "Spring Hill Terrace", + "lat": "41.07380", + "lon": "-74.06358", + "id": 242838, + "intersectedStreets": [ + { + "name": "Chestnut Ridge Road (Chestnut Ridge)", + "lat": "41.07477", + "lon": "-74.06487" + }, + { + "name": "Orchard Court (Chestnut Ridge)", + "lat": "41.07380", + "lon": "-74.06358" + }, + { + "name": "Brian Terrace", + "lat": "41.07130", + "lon": "-74.06158" + } + ] + }, + { + "name": "Spring Rock Place", + "lat": "41.14378", + "lon": "-74.04910", + "id": 243011, + "intersectedStreets": [ + { + "name": "Brick Church Road (New Hempstead)", + "lat": "41.14255", + "lon": "-74.04927" + }, + { + "name": "Zavatone Court", + "lat": "41.14316", + "lon": "-74.04918" + }, + { + "name": "Wits End (New Hempstead)", + "lat": "41.14468", + "lon": "-74.04968" + } + ] + }, + { + "name": "Spring Valley Commons Road", + "lat": "41.12349", + "lon": "-74.03824", + "id": 294292, + "intersectedStreets": [ + { + "name": "Slinn Avenue", + "lat": "41.12367", + "lon": "-74.03682" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Avon", + "lat": "42.91199", + "lon": "-77.74546", + "id": 158573646, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.90605", + "lon": "-77.75087", + "id": 117437 + } + ], + "matchStreet": 1 + }, + { + "name": "Cold Spring", + "lat": "42.09700", + "lon": "-78.86476", + "id": 158332972, + "type": "HAMLET", + "listOfStreets": [], + "matchCity": 1 + }, + { + "name": "Conklin", + "lat": "42.03424", + "lon": "-75.80380", + "id": 158426165, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Hollow Drive", + "lat": "42.05321", + "lon": "-75.83377", + "id": 74650 + } + ], + "matchStreet": 1 + }, + { + "name": "Esperance", + "lat": "42.76118", + "lon": "-74.25652", + "id": 158843944, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Hill Lane", + "lat": "42.76497", + "lon": "-74.29713", + "id": 147535 + } + ], + "matchStreet": 1 + }, + { + "name": "Palmyra", + "lat": "43.06237", + "lon": "-77.23472", + "id": 158634018, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "43.05751", + "lon": "-77.22773", + "id": 193444 + } + ], + "matchStreet": 1 + }, + { + "name": "Fostertown", + "lat": "41.55343", + "lon": "-74.04542", + "id": 158860334, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Cold Spring Lane", + "lat": "41.55365", + "lon": "-74.04141", + "id": 199429, + "intersectedStreets": [ + { + "name": "Ramble Wood Drive", + "lat": "41.55343", + "lon": "-74.04210" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Alma", + "lat": "42.01257", + "lon": "-78.05779", + "id": 158347305, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Appalachian Spring Trail", + "lat": "42.00980", + "lon": "-78.00593", + "id": 85734 + } + ], + "matchStreet": 1 + }, + { + "name": "Austerlitz", + "lat": "42.31175", + "lon": "-73.47317", + "id": 158861346, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Hill Lane (Town of Austerlitz)", + "lat": "42.29318", + "lon": "-73.56909", + "id": 293608 + } + ], + "matchStreet": 1 + }, + { + "name": "Quaker Springs", + "lat": "43.03952", + "lon": "-73.64289", + "id": 158843951, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Road", + "lat": "43.03954", + "lon": "-73.64288", + "id": 46091 + }, + { + "name": "Quaker Spring Road", + "lat": "43.04096", + "lon": "-73.64082", + "id": 48315 + } + ], + "matchStreet": 1 + }, + { + "name": "Richfield Springs", + "lat": "42.85340", + "lon": "-74.98543", + "id": 158895143, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Park Drive", + "lat": "42.85428", + "lon": "-74.98469", + "id": 147876 + } + ], + "matchStreet": 1 + }, + { + "name": "Brockport", + "lat": "43.21367", + "lon": "-77.93918", + "id": 158276657, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "43.21214", + "lon": "-77.93446", + "id": 124780 + } + ], + "matchStreet": 1 + }, + { + "name": "Bethel", + "lat": "41.68343", + "lon": "-74.87128", + "id": 158805015, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street (Smallwood)", + "lat": "41.66224", + "lon": "-74.81885", + "id": 153162 + } + ], + "matchStreet": 1 + }, + { + "name": "Spring Mills", + "lat": "42.00784", + "lon": "-77.76360", + "id": 158224398, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Mills Road", + "lat": "42.00383", + "lon": "-77.76591", + "id": 82939 + } + ], + "matchCity": 1, + "matchStreet": 1 + }, + { + "name": "Lysander", + "lat": "43.20646", + "lon": "-76.45910", + "id": 158652433, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Warming Spring", + "lat": "43.19904", + "lon": "-76.29140", + "id": 140641 + } + ], + "matchStreet": 1 + }, + { + "name": "Ravena", + "lat": "42.46842", + "lon": "-73.81624", + "id": 158801923, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.48098", + "lon": "-73.81360", + "id": 35862 + } + ], + "matchStreet": 1 + }, + { + "name": "South Canisteo", + "lat": "42.19591", + "lon": "-77.55054", + "id": 158657521, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Red Spring Run", + "lat": "42.19781", + "lon": "-77.57569", + "id": 83245 + }, + { + "name": "Spring Brook Road", + "lat": "42.22116", + "lon": "-77.56534", + "id": 85516 + } + ], + "matchStreet": 1 + }, + { + "name": "Fine", + "lat": "44.24790", + "lon": "-75.13790", + "id": 158377974, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring", + "lat": "44.24887", + "lon": "-75.14022", + "id": 61590 + }, + { + "name": "Spring Street", + "lat": "44.24880", + "lon": "-75.13882", + "id": 61675 + }, + { + "name": "SPRING ST", + "lat": "44.24857", + "lon": "-75.14161", + "id": 5786 + } + ], + "matchStreet": 1 + }, + { + "name": "Potsdam", + "lat": "44.66980", + "lon": "-74.98134", + "id": 158895102, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "44.66179", + "lon": "-74.97862", + "id": 61672 + } + ], + "matchStreet": 1 + }, + { + "name": "Ballston Spa", + "lat": "43.00091", + "lon": "-73.84901", + "id": 158844913, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "43.00334", + "lon": "-73.85038", + "id": 50651 + } + ], + "matchStreet": 1 + }, + { + "name": "Westfield", + "lat": "42.32228", + "lon": "-79.57811", + "id": 158473206, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.32094", + "lon": "-79.56805", + "id": 91219 + }, + { + "name": "Spring View Drive", + "lat": "42.32213", + "lon": "-79.56707", + "id": 95178 + } + ], + "matchStreet": 1 + }, + { + "name": "Barrington", + "lat": "42.54702", + "lon": "-77.05608", + "id": 158503930, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Crystal Springs Road (Crystal Spring)", + "lat": "42.48447", + "lon": "-77.05154", + "id": 148669 + } + ], + "matchStreet": 1 + }, + { + "name": "Hudson Falls", + "lat": "43.30070", + "lon": "-73.58608", + "id": 158844925, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "43.30566", + "lon": "-73.58876", + "id": 189280 + } + ], + "matchStreet": 1 + }, + { + "name": "Centerport", + "lat": "40.88537", + "lon": "-73.37623", + "id": 158825446, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Hollow Road (Huntington)", + "lat": "40.89684", + "lon": "-73.36453", + "id": 280967 + } + ], + "matchStreet": 1 + }, + { + "name": "Livonia", + "lat": "42.82145", + "lon": "-77.66861", + "id": 158603233, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.81766", + "lon": "-77.66740", + "id": 117434 + } + ], + "matchStreet": 1 + }, + { + "name": "Broadalbin", + "lat": "43.05868", + "lon": "-74.19652", + "id": 158798830, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "43.05757", + "lon": "-74.19293", + "id": 105334 + } + ], + "matchStreet": 1 + }, + { + "name": "Dundee", + "lat": "42.52340", + "lon": "-76.97663", + "id": 158503919, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.52219", + "lon": "-76.97946", + "id": 196082 + } + ], + "matchStreet": 1 + }, + { + "name": "Goshen", + "lat": "41.40203", + "lon": "-74.32432", + "id": 158876645, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "41.40084", + "lon": "-74.33579", + "id": 200970 + }, + { + "name": "Spring Rock Drive", + "lat": "41.40974", + "lon": "-74.33058", + "id": 199633, + "intersectedStreets": [ + { + "name": "Gregory Drive", + "lat": "41.41064", + "lon": "-74.33154" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "New Lebanon", + "lat": "42.46397", + "lon": "-73.39649", + "id": 158803156, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Hill Road (Lebanon Springs)", + "lat": "42.48011", + "lon": "-73.37013", + "id": 99307 + }, + { + "name": "Crystal Spring", + "lat": "42.47808", + "lon": "-73.37050", + "id": 102726 + } + ], + "matchStreet": 1 + }, + { + "name": "Keeseville", + "lat": "44.50505", + "lon": "-73.48014", + "id": 158820562, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "44.50093", + "lon": "-73.47892", + "id": 106726 + } + ], + "matchStreet": 1 + }, + { + "name": "Noyack", + "lat": "40.99566", + "lon": "-72.34119", + "id": 158868704, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Lane", + "lat": "40.99418", + "lon": "-72.33555", + "id": 162494 + } + ], + "matchStreet": 1 + }, + { + "name": "Spring Lake", + "lat": "43.12562", + "lon": "-76.68800", + "id": 158370009, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Peters Road", + "lat": "43.13677", + "lon": "-76.72369", + "id": 192870 + }, + { + "name": "Wolcott Spring Lake Road", + "lat": "43.14718", + "lon": "-76.71663", + "id": 193861 + }, + { + "name": "Saeli Road", + "lat": "43.15935", + "lon": "-76.71086", + "id": 193210 + } + ], + "matchCity": 1, + "matchStreet": 1 + }, + { + "name": "Kingsbury", + "lat": "43.36368", + "lon": "-73.53150", + "id": 158903506, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street (Hudson Falls)", + "lat": "43.30568", + "lon": "-73.58879", + "id": 189281 + } + ], + "matchStreet": 1 + }, + { + "name": "South Argyle", + "lat": "43.18480", + "lon": "-73.49373", + "id": 158859475, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Lick Spring Road", + "lat": "43.19729", + "lon": "-73.50643", + "id": 193534 + } + ], + "matchStreet": 1 + }, + { + "name": "Sour Spring Grove", + "lat": "43.01228", + "lon": "-78.92310", + "id": 158414043, + "type": "HAMLET", + "listOfStreets": [], + "matchCity": 1 + }, + { + "name": "Copake", + "lat": "42.10356", + "lon": "-73.54966", + "id": 158872792, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street (Copake Lake)", + "lat": "42.15403", + "lon": "-73.58432", + "id": 98395 + } + ], + "matchStreet": 1 + }, + { + "name": "Howes Landing", + "lat": "43.81534", + "lon": "-73.43595", + "id": 158821593, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Pine Spring Park Road", + "lat": "43.83143", + "lon": "-73.44296", + "id": 106843 + } + ], + "matchStreet": 1 + }, + { + "name": "Colton", + "lat": "44.55329", + "lon": "-74.93980", + "id": 158810310, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "44.55560", + "lon": "-74.93676", + "id": 61674 + }, + { + "name": "SPRING ST", + "lat": "44.55543", + "lon": "-74.93779", + "id": 4478 + } + ], + "matchStreet": 1 + }, + { + "name": "Ballston Center", + "lat": "42.95591", + "lon": "-73.86540", + "id": 158810307, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Circle", + "lat": "42.96870", + "lon": "-73.86872", + "id": 274322 + } + ], + "matchStreet": 1 + }, + { + "name": "Walworth", + "lat": "43.13923", + "lon": "-77.27221", + "id": 158569669, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Day Spring Ridge", + "lat": "43.12370", + "lon": "-77.30779", + "id": 193983 + } + ], + "matchStreet": 1 + }, + { + "name": "Adams", + "lat": "43.80923", + "lon": "-76.02409", + "id": 158449866, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "43.80486", + "lon": "-76.00331", + "id": 113025 + } + ], + "matchStreet": 1 + }, + { + "name": "Ellenburg", + "lat": "44.89407", + "lon": "-73.83671", + "id": 158818508, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Cold Spring Road", + "lat": "44.89586", + "lon": "-73.82083", + "id": 99025 + } + ], + "matchStreet": 1 + }, + { + "name": "Melville", + "lat": "40.79343", + "lon": "-73.41512", + "id": 158822603, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Drive (Wheatley Heights)", + "lat": "40.77009", + "lon": "-73.37631", + "id": 161283, + "intersectedStreets": [ + { + "name": "Chateau Drive (Wheatley Heights)", + "lat": "40.77001", + "lon": "-73.37661" + }, + { + "name": "Kallenberger Drive", + "lat": "40.77092", + "lon": "-73.37369" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Waverly", + "lat": "42.01035", + "lon": "-76.52717", + "id": 158518477, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.01088", + "lon": "-76.53538", + "id": 81012 + } + ], + "matchStreet": 1 + }, + { + "name": "Cokertown", + "lat": "42.01926", + "lon": "-73.82124", + "id": 158844105, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Lake Road", + "lat": "42.02532", + "lon": "-73.81596", + "id": 267094 + } + ], + "matchStreet": 1 + }, + { + "name": "Diamond Point (hamlet)", + "lat": "43.47924", + "lon": "-73.68706", + "id": 158816435, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Woods", + "lat": "43.48271", + "lon": "-73.71637", + "id": 293922 + } + ], + "matchStreet": 1 + }, + { + "name": "Deer River", + "lat": "43.92979", + "lon": "-75.58908", + "id": 158270633, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Cold Spring Park Road", + "lat": "43.93604", + "lon": "-75.55989", + "id": 113889 + } + ], + "matchStreet": 1 + }, + { + "name": "Mohawk", + "lat": "43.01146", + "lon": "-75.00405", + "id": 158635197, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "43.00352", + "lon": "-75.00928", + "id": 111337 + } + ], + "matchStreet": 1 + }, + { + "name": "East Syracuse", + "lat": "43.06534", + "lon": "-76.07853", + "id": 157642924, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "43.06729", + "lon": "-76.06457", + "id": 141281 + } + ], + "matchStreet": 1 + }, + { + "name": "Gurn Spring", + "lat": "43.17091", + "lon": "-73.71762", + "id": 158843046, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "North Road", + "lat": "43.17254", + "lon": "-73.71717", + "id": 35685 + } + ], + "matchCity": 1 + }, + { + "name": "Carlisle Gardens", + "lat": "43.17922", + "lon": "-78.65587", + "id": 158618785, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "43.17406", + "lon": "-78.68174", + "id": 57875 + }, + { + "name": "Cold Spring Alley", + "lat": "43.17481", + "lon": "-78.68116", + "id": 58327 + } + ], + "matchStreet": 1 + }, + { + "name": "Conquest", + "lat": "43.12117", + "lon": "-76.64801", + "id": 157617329, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Lake Road (Town of Conquest)", + "lat": "43.10670", + "lon": "-76.66406", + "id": 89658 + } + ], + "matchStreet": 1 + }, + { + "name": "Berlin", + "lat": "42.69314", + "lon": "-73.37205", + "id": 158915747, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Lake Road (Town of Berlin)", + "lat": "42.65495", + "lon": "-73.42283", + "id": 44198 + } + ], + "matchStreet": 1 + }, + { + "name": "Campville", + "lat": "42.08758", + "lon": "-76.14882", + "id": 158343313, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.08770", + "lon": "-76.14463", + "id": 296659 + } + ], + "matchStreet": 1 + }, + { + "name": "Newrys", + "lat": "42.43786", + "lon": "-73.98985", + "id": 158853271, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Valley Road", + "lat": "42.42700", + "lon": "-73.96133", + "id": 110232 + } + ], + "matchStreet": 1 + }, + { + "name": "Spring Brook Station", + "lat": "42.83894", + "lon": "-78.68003", + "id": 158477457, + "type": "HAMLET", + "listOfStreets": [], + "matchCity": 1 + }, + { + "name": "Sand Lake", + "lat": "42.63731", + "lon": "-73.54067", + "id": 158844051, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Brook Spring Avenue (Town of Sand Lake)", + "lat": "42.59807", + "lon": "-73.56825", + "id": 41438 + } + ], + "matchStreet": 1 + }, + { + "name": "West Hills", + "lat": "40.81621", + "lon": "-73.43235", + "id": 158806162, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Cold Spring Lane", + "lat": "40.83377", + "lon": "-73.45030", + "id": 181365, + "intersectedStreets": [ + { + "name": "East Gate Drive", + "lat": "40.83321", + "lon": "-73.45041" + } + ] + }, + { + "name": "Cold Spring Hills Road", + "lat": "40.83402", + "lon": "-73.44094", + "id": 160408, + "intersectedStreets": [ + { + "name": "West Rogues Path", + "lat": "40.83755", + "lon": "-73.44375" + }, + { + "name": "Ledgewood Drive", + "lat": "40.83727", + "lon": "-73.44337" + }, + { + "name": "Hamilton Lane", + "lat": "40.83503", + "lon": "-73.44129" + }, + { + "name": "22nd Street", + "lat": "40.83156", + "lon": "-73.43996" + }, + { + "name": "Lee Street", + "lat": "40.83070", + "lon": "-73.43963" + }, + { + "name": "Colonial Drive", + "lat": "40.83003", + "lon": "-73.43938" + }, + { + "name": "Sherman Street", + "lat": "40.83003", + "lon": "-73.43938" + }, + { + "name": "Sheridan Street", + "lat": "40.82937", + "lon": "-73.43908" + }, + { + "name": "Nimitz Street", + "lat": "40.82872", + "lon": "-73.43882" + }, + { + "name": "Clark Street", + "lat": "40.82805", + "lon": "-73.43854" + }, + { + "name": "Bluebird Lane", + "lat": "40.82737", + "lon": "-73.43822" + }, + { + "name": "Hartman Hill Road", + "lat": "40.82737", + "lon": "-73.43822" + }, + { + "name": "West Jericho Turnpike", + "lat": "40.82737", + "lon": "-73.43822" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Hampton Manor", + "lat": "42.62091", + "lon": "-73.72845", + "id": 158853265, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Avenue East", + "lat": "42.61610", + "lon": "-73.72195", + "id": 42218 + }, + { + "name": "Spring Place", + "lat": "42.61602", + "lon": "-73.72303", + "id": 42261 + }, + { + "name": "Spring Avenue West", + "lat": "42.61563", + "lon": "-73.72805", + "id": 45765 + } + ], + "matchStreet": 1 + }, + { + "name": "Spring Brook", + "lat": "42.81812", + "lon": "-78.67558", + "id": 157576330, + "type": "HAMLET", + "listOfStreets": [], + "matchCity": 1 + }, + { + "name": "Summit", + "lat": "42.57952", + "lon": "-74.58820", + "id": 158845064, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Willow Spring Road", + "lat": "42.51856", + "lon": "-74.69336", + "id": 149222 + } + ], + "matchStreet": 1 + }, + { + "name": "Coram", + "lat": "40.86871", + "lon": "-73.00149", + "id": 158869643, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Court", + "lat": "40.91744", + "lon": "-73.02061", + "id": 180219, + "intersectedStreets": [ + { + "name": "Pine Street", + "lat": "40.91744", + "lon": "-73.02061" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Fairport", + "lat": "43.09930", + "lon": "-77.44301", + "id": 157572241, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Crystal Spring Lane", + "lat": "43.09462", + "lon": "-77.46990", + "id": 271659 + }, + { + "name": "Little Spring Run", + "lat": "43.06527", + "lon": "-77.46127", + "id": 7042 + } + ], + "matchStreet": 1 + }, + { + "name": "Thousand Island Park", + "lat": "44.28699", + "lon": "-76.02773", + "id": 158350469, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "44.28907", + "lon": "-76.02874", + "id": 113027 + } + ], + "matchStreet": 1 + }, + { + "name": "Modena", + "lat": "41.66842", + "lon": "-74.10264", + "id": 158875791, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Breeze Lane", + "lat": "41.68145", + "lon": "-74.10504", + "id": 169016, + "intersectedStreets": [ + { + "name": "State Highway 32", + "lat": "41.68125", + "lon": "-74.10401" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Crawford", + "lat": "41.65565", + "lon": "-74.32821", + "id": 158876805, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Indian Spring Camp Road", + "lat": "41.65286", + "lon": "-74.32642", + "id": 177421, + "intersectedStreets": [ + { + "name": "Indian Springs Road", + "lat": "41.65419", + "lon": "-74.32513" + }, + { + "name": "Spadola Lane", + "lat": "41.65419", + "lon": "-74.32513" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "McGraw", + "lat": "42.59618", + "lon": "-76.09326", + "id": 158598282, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.59211", + "lon": "-76.08953", + "id": 101627 + } + ], + "matchStreet": 1 + }, + { + "name": "Braeside", + "lat": "42.53703", + "lon": "-73.60873", + "id": 158856312, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Cold Spring Avenue", + "lat": "42.53718", + "lon": "-73.61323", + "id": 41692 + } + ], + "matchStreet": 1 + }, + { + "name": "Chemung", + "lat": "42.00841", + "lon": "-76.62374", + "id": 158488692, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Water Drive", + "lat": "42.00487", + "lon": "-76.60280", + "id": 95966 + } + ], + "matchStreet": 1 + }, + { + "name": "Mosher Corners", + "lat": "42.59090", + "lon": "-76.40133", + "id": 158325859, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.59078", + "lon": "-76.40092", + "id": 155278 + } + ], + "matchStreet": 1 + }, + { + "name": "Forestport", + "lat": "43.44220", + "lon": "-75.20725", + "id": 157573236, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street (Town of Forestport)", + "lat": "43.40916", + "lon": "-75.18931", + "id": 144837 + } + ], + "matchStreet": 1 + }, + { + "name": "Seneca Falls", + "lat": "42.91072", + "lon": "-76.79678", + "id": 158573669, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "South Spring Street", + "lat": "42.90217", + "lon": "-76.79518", + "id": 150858 + }, + { + "name": "Spring Street", + "lat": "42.90627", + "lon": "-76.79467", + "id": 151489 + } + ], + "matchStreet": 1 + }, + { + "name": "Fairview", + "lat": "41.72371", + "lon": "-73.91986", + "id": 158814305, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "41.72360", + "lon": "-73.91986", + "id": 249366 + } + ], + "matchStreet": 1 + }, + { + "name": "Middleburgh", + "lat": "42.59869", + "lon": "-74.33292", + "id": 158813293, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Indian Spring Lane", + "lat": "42.58928", + "lon": "-74.33706", + "id": 150010 + } + ], + "matchStreet": 1 + }, + { + "name": "Groveville", + "lat": "41.51537", + "lon": "-73.93959", + "id": 158821484, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "41.51804", + "lon": "-73.94447", + "id": 249365 + } + ], + "matchStreet": 1 + }, + { + "name": "Canisteo", + "lat": "42.27035", + "lon": "-77.60582", + "id": 158637163, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.27091", + "lon": "-77.61150", + "id": 83080 + } + ], + "matchStreet": 1 + }, + { + "name": "Sodus", + "lat": "43.23784", + "lon": "-77.06137", + "id": 158270285, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "43.24200", + "lon": "-77.06199", + "id": 193445 + } + ], + "matchStreet": 1 + }, + { + "name": "Willow Glen", + "lat": "42.48980", + "lon": "-76.32799", + "id": 158562134, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Run Road", + "lat": "42.48303", + "lon": "-76.34524", + "id": 158263 + } + ], + "matchStreet": 1 + }, + { + "name": "Fayetteville", + "lat": "43.02979", + "lon": "-76.00436", + "id": 158231390, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "43.02744", + "lon": "-76.00503", + "id": 141278 + } + ], + "matchStreet": 1 + }, + { + "name": "Westmoreland", + "lat": "43.11627", + "lon": "-75.40398", + "id": 158524232, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring House Road (Lowell)", + "lat": "43.13081", + "lon": "-75.50002", + "id": 145843 + } + ], + "matchStreet": 1 + }, + { + "name": "Mount Morris", + "lat": "42.72562", + "lon": "-77.87417", + "id": 158260049, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.71864", + "lon": "-77.86991", + "id": 117439 + } + ], + "matchStreet": 1 + }, + { + "name": "Valley Brook", + "lat": "42.92897", + "lon": "-74.65903", + "id": 158814025, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.92504", + "lon": "-74.66897", + "id": 123559 + } + ], + "matchStreet": 1 + }, + { + "name": "Powers Corner", + "lat": "42.85951", + "lon": "-76.66439", + "id": 158355249, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street Road", + "lat": "42.84650", + "lon": "-76.65796", + "id": 89014 + } + ], + "matchStreet": 1 + }, + { + "name": "Dryden", + "lat": "42.49090", + "lon": "-76.29715", + "id": 158231341, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring House Road", + "lat": "42.49268", + "lon": "-76.31370", + "id": 158808 + } + ], + "matchStreet": 1 + }, + { + "name": "Brinckerhoff", + "lat": "41.54398", + "lon": "-73.86819", + "id": 158811967, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Cold Spring Road", + "lat": "41.54048", + "lon": "-73.86911", + "id": 273691, + "intersectedStreets": [ + { + "name": "E Merritt Blvd", + "lat": "41.53981", + "lon": "-73.86917" + }, + { + "name": "Hustis Lane", + "lat": "41.54116", + "lon": "-73.86791" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Bardonia", + "lat": "41.10957", + "lon": "-73.99525", + "id": 158827326, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Oak Spring Road", + "lat": "41.11557", + "lon": "-73.97406", + "id": 241860, + "intersectedStreets": [ + { + "name": "Rockford Drive (Germonds)", + "lat": "41.11418", + "lon": "-73.97483" + }, + { + "name": "Melrose Lane", + "lat": "41.11708", + "lon": "-73.97258" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Savannah", + "lat": "43.06729", + "lon": "-76.75967", + "id": 158341950, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Lake Road (Savannah Town)", + "lat": "43.12562", + "lon": "-76.70532", + "id": 89660 + }, + { + "name": "Savannah Spring Lake Road", + "lat": "43.07372", + "lon": "-76.74274", + "id": 193432 + } + ], + "matchStreet": 1 + }, + { + "name": "Manhattan", + "names": { + "ru": "Манхэттен", + "uk": "Мангеттен", + "lt": "Manhatanas", + "he": "מנהטן" + }, + "lat": "40.79009", + "lon": "-73.95983", + "id": 357644127, + "type": "SUBURB", + "listOfStreets": [ + { + "name": "Spring Street (Little Italy)", + "lat": "40.72157", + "lon": "-73.99562", + "id": 7485 + } + ], + "matchStreet": 1 + }, + { + "name": "Corbin Corner", + "lat": "42.44701", + "lon": "-75.72519", + "id": 158463778, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Sulphur Spring Road", + "lat": "42.44875", + "lon": "-75.76039", + "id": 98728 + } + ], + "matchStreet": 1 + }, + { + "name": "Pleasantville", + "lat": "41.13288", + "lon": "-73.79263", + "id": 158853923, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "41.13156", + "lon": "-73.79735", + "id": 210796 + } + ], + "matchStreet": 1 + }, + { + "name": "Lloyd Harbor", + "lat": "40.90343", + "lon": "-73.45985", + "id": 158805806, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Bay Lane", + "lat": "40.92804", + "lon": "-73.48993", + "id": 167119, + "intersectedStreets": [ + { + "name": "Watch Way", + "lat": "40.92590", + "lon": "-73.48965" + }, + { + "name": "Lloyd Lane", + "lat": "40.92930", + "lon": "-73.49010" + }, + { + "name": "Lloyd Cove Court", + "lat": "40.92930", + "lon": "-73.49010" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Malone", + "lat": "44.84881", + "lon": "-74.29504", + "id": 158865177, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Flower Drive", + "lat": "44.83527", + "lon": "-74.29762", + "id": 108617 + } + ], + "matchStreet": 1 + }, + { + "name": "Maybrook", + "lat": "41.48398", + "lon": "-74.21765", + "id": 158853910, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "41.48574", + "lon": "-74.21462", + "id": 200974 + }, + { + "name": "West Spring Street", + "lat": "41.48608", + "lon": "-74.21520", + "id": 204416 + } + ], + "matchStreet": 1 + }, + { + "name": "Brewster Hill", + "lat": "41.42416", + "lon": "-73.60414", + "id": 158842643, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Lane", + "lat": "41.43272", + "lon": "-73.61297", + "id": 237684, + "intersectedStreets": [ + { + "name": "Spring Knoll Road", + "lat": "41.43279", + "lon": "-73.61260" + } + ] + }, + { + "name": "Spring Knoll Road", + "lat": "41.43230", + "lon": "-73.61177", + "id": 241153, + "intersectedStreets": [ + { + "name": "State Highway 312", + "lat": "41.43324", + "lon": "-73.61271" + }, + { + "name": "Spring Lane", + "lat": "41.43277", + "lon": "-73.61258" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Tivoli", + "lat": "42.05853", + "lon": "-73.90891", + "id": 158844689, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.05635", + "lon": "-73.90887", + "id": 249367 + } + ], + "matchStreet": 1 + }, + { + "name": "Sanford", + "lat": "42.10231", + "lon": "-75.48351", + "id": 158646045, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Hill Road (Sanford Town)", + "lat": "42.05858", + "lon": "-75.55051", + "id": 74648 + } + ], + "matchStreet": 1 + }, + { + "name": "East Middletown", + "lat": "41.44463", + "lon": "-74.40036", + "id": 158815008, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "41.44191", + "lon": "-74.41673", + "id": 35233 + } + ], + "matchStreet": 1 + }, + { + "name": "Grays Corners", + "lat": "42.81980", + "lon": "-73.75873", + "id": 158898961, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Kendall Drive", + "names": { + "alt_name": "Spring Brook Mobile Home Park" + }, + "lat": "42.82092", + "lon": "-73.75815", + "id": 51507 + }, + { + "name": "Jacob Drive", + "names": { + "alt_name": "Spring Brook Mobile Home Park" + }, + "lat": "42.82152", + "lon": "-73.75877", + "id": 51512 + } + ], + "matchStreet": 1 + }, + { + "name": "Rockland", + "lat": "41.94537", + "lon": "-74.91294", + "id": 158810888, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street (Livingston Manor)", + "lat": "41.89563", + "lon": "-74.83110", + "id": 153171 + } + ], + "matchStreet": 1 + }, + { + "name": "Nashville", + "lat": "43.07728", + "lon": "-78.86587", + "id": 158573315, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Court", + "lat": "43.08024", + "lon": "-78.86261", + "id": 60471 + } + ], + "matchStreet": 1 + }, + { + "name": "Dresden", + "lat": "43.67257", + "lon": "-73.41067", + "id": 158810884, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Road", + "lat": "43.68362", + "lon": "-73.42485", + "id": 190211 + } + ], + "matchStreet": 1 + }, + { + "name": "South Salem", + "lat": "41.27232", + "lon": "-73.55291", + "id": 158856974, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "41.27307", + "lon": "-73.55490", + "id": 294226 + } + ], + "matchStreet": 1 + }, + { + "name": "Bushnell Basin", + "lat": "43.05951", + "lon": "-77.47416", + "id": 158269203, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Little Spring Run", + "lat": "43.06572", + "lon": "-77.46260", + "id": 119447 + } + ], + "matchStreet": 1 + }, + { + "name": "Hawthorne", + "lat": "41.10732", + "lon": "-73.79597", + "id": 158843640, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street (Mount Pleasant)", + "lat": "41.10029", + "lon": "-73.79313", + "id": 210804 + } + ], + "matchStreet": 1 + }, + { + "name": "Bergen", + "lat": "43.08539", + "lon": "-77.94171", + "id": 158442230, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "43.08624", + "lon": "-77.93980", + "id": 197234 + } + ], + "matchStreet": 1 + }, + { + "name": "Gilbertsville", + "lat": "42.47146", + "lon": "-75.32573", + "id": 158569207, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.46334", + "lon": "-75.32124", + "id": 147111 + } + ], + "matchStreet": 1 + }, + { + "name": "Miller Place", + "lat": "40.95982", + "lon": "-72.99621", + "id": 158842620, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Cold Spring Drive", + "lat": "40.96258", + "lon": "-72.96323", + "id": 171048 + }, + { + "name": "Spring Street", + "lat": "40.91912", + "lon": "-72.96722", + "id": 182504 + }, + { + "name": "Spring Garden Road", + "lat": "40.96144", + "lon": "-72.95061", + "id": 172952 + } + ], + "matchStreet": 1 + }, + { + "name": "Pound Ridge", + "lat": "41.20870", + "lon": "-73.57485", + "id": 158896874, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring House Road (Town of Pound Ridge)", + "lat": "41.22638", + "lon": "-73.59883", + "id": 218675, + "intersectedStreets": [ + { + "name": "Honey Hollow Road (Town of Pound Ridge)", + "lat": "41.22520", + "lon": "-73.60254" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Esopus", + "lat": "41.82787", + "lon": "-73.96514", + "id": 158852841, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street (Port Ewen)", + "lat": "41.91063", + "lon": "-73.99249", + "id": 178520 + } + ], + "matchStreet": 1 + }, + { + "name": "Baldwin Place", + "lat": "41.34759", + "lon": "-73.76208", + "id": 158839529, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Drive", + "lat": "41.34684", + "lon": "-73.76231", + "id": 238335, + "intersectedStreets": [ + { + "name": "Kennard Road", + "lat": "41.34568", + "lon": "-73.76268" + }, + { + "name": "Hickory Road", + "lat": "41.34695", + "lon": "-73.76229" + }, + { + "name": "Maple Drive", + "lat": "41.34819", + "lon": "-73.76204" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Spring Valley", + "lat": "41.16870", + "lon": "-73.83875", + "id": 158821335, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Belle Avenue", + "lat": "41.16883", + "lon": "-73.84010", + "id": 215192 + }, + { + "name": "Briarcliff-Peekskill Parkway", + "lat": "41.16856", + "lon": "-73.83857", + "id": 210672 + }, + { + "name": "Cooper Drive", + "lat": "41.17189", + "lon": "-73.83237", + "id": 211053 + }, + { + "name": "Croton Avenue", + "lat": "41.16835", + "lon": "-73.83812", + "id": 218256 + }, + { + "name": "Decker Road", + "lat": "41.16725", + "lon": "-73.83658", + "id": 211470 + }, + { + "name": "Leawood Drive", + "lat": "41.16478", + "lon": "-73.83572", + "id": 213814 + }, + { + "name": "Mohegan Road", + "lat": "41.16728", + "lon": "-73.84018", + "id": 209119 + }, + { + "name": "Pugsley Place", + "lat": "41.16984", + "lon": "-73.84061", + "id": 215045 + }, + { + "name": "Robin Drive", + "lat": "41.16846", + "lon": "-73.83302", + "id": 213187 + }, + { + "name": "Tuttle Drive", + "lat": "41.16824", + "lon": "-73.83499", + "id": 219535 + }, + { + "name": "Upper Croton Avenue", + "lat": "41.16828", + "lon": "-73.83853", + "id": 215261 + }, + { + "name": "Ganung Drive", + "lat": "41.16828", + "lon": "-73.83615", + "id": 218305 + }, + { + "name": "Sleator Drive", + "lat": "41.16751", + "lon": "-73.83137", + "id": 209791 + } + ], + "matchCity": 1 + }, + { + "name": "West Babylon", + "lat": "40.71815", + "lon": "-73.35429", + "id": 158901210, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Place (ny)", + "lat": "40.73100", + "lon": "-73.35992", + "id": 284778 + } + ], + "matchStreet": 1 + }, + { + "name": "Warrensburg", + "lat": "43.49677", + "lon": "-73.77628", + "id": 158904280, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Old Spring Road", + "lat": "43.45812", + "lon": "-73.78218", + "id": 293683 + } + ], + "matchStreet": 1 + }, + { + "name": "Mariaville Lake", + "lat": "42.82480", + "lon": "-74.12874", + "id": 158806992, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Road", + "lat": "42.82764", + "lon": "-74.11795", + "id": 47070 + } + ], + "matchStreet": 1 + }, + { + "name": "Spring Glen", + "lat": "41.66565", + "lon": "-74.42987", + "id": 158820301, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Anderson Drive", + "lat": "41.65709", + "lon": "-74.44514", + "id": 164252 + }, + { + "name": "Klein Road", + "lat": "41.66571", + "lon": "-74.42988", + "id": 171575 + }, + { + "name": "Lake View Drive East", + "lat": "41.65361", + "lon": "-74.43943", + "id": 160108 + }, + { + "name": "Mountaindale Road", + "lat": "41.66751", + "lon": "-74.44244", + "id": 161649 + }, + { + "name": "Old Route 209", + "lat": "41.66576", + "lon": "-74.42956", + "id": 261255 + }, + { + "name": "Red Hill Road", + "lat": "41.65756", + "lon": "-74.45256", + "id": 164524 + }, + { + "name": "Tempaloni Road", + "lat": "41.66671", + "lon": "-74.43862", + "id": 161832 + }, + { + "name": "Terrace Drive", + "lat": "41.65332", + "lon": "-74.43990", + "id": 156445 + }, + { + "name": "Fox Hill A Road", + "lat": "41.65840", + "lon": "-74.42227", + "id": 154492 + }, + { + "name": "Jeannie Drive", + "lat": "41.65299", + "lon": "-74.43769", + "id": 153516 + }, + { + "name": "Kraw Street", + "lat": "41.66571", + "lon": "-74.43205", + "id": 178584 + }, + { + "name": "Meyerson Road", + "lat": "41.66307", + "lon": "-74.44345", + "id": 165811 + }, + { + "name": "Nissenbaum Road", + "lat": "41.65748", + "lon": "-74.42845", + "id": 165250 + }, + { + "name": "Ten Rus Lane", + "lat": "41.66685", + "lon": "-74.42988", + "id": 294728 + } + ], + "matchCity": 1 + }, + { + "name": "Hoosick", + "lat": "42.86258", + "lon": "-73.32816", + "id": 158852022, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street (Hoosick Falls)", + "lat": "42.90003", + "lon": "-73.35275", + "id": 44599 + } + ], + "matchStreet": 1 + }, + { + "name": "Hambletville", + "lat": "42.09675", + "lon": "-75.39296", + "id": 158489521, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Run Farm Road", + "lat": "42.10101", + "lon": "-75.38872", + "id": 80024 + } + ], + "matchStreet": 1 + }, + { + "name": "East Meadow", + "lat": "40.71399", + "lon": "-73.55901", + "id": 158836672, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "40.71256", + "lon": "-73.57091", + "id": 225792 + }, + { + "name": "Spring Drive", + "lat": "40.71461", + "lon": "-73.57793", + "id": 274373, + "intersectedStreets": [ + { + "name": "Avenue C", + "lat": "40.71522", + "lon": "-73.57932" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Crystal Spring", + "lat": "42.48785", + "lon": "-77.05191", + "id": 158434235, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Crystal Springs Road", + "lat": "42.48767", + "lon": "-77.05165", + "id": 195265 + }, + { + "name": "Dean Lane", + "lat": "42.46619", + "lon": "-77.03137", + "id": 149185 + }, + { + "name": "Pulver Road", + "lat": "42.47536", + "lon": "-77.02401", + "id": 148843 + }, + { + "name": "State Route 230", + "lat": "42.48044", + "lon": "-77.07053", + "id": 148617 + }, + { + "name": "Ardrey Road", + "lat": "42.46679", + "lon": "-77.04871", + "id": 148524 + }, + { + "name": "Crystal Valley Road", + "lat": "42.48044", + "lon": "-77.05141", + "id": 148989 + }, + { + "name": "Losey Hill Road", + "lat": "42.47232", + "lon": "-77.02738", + "id": 149220 + }, + { + "name": "Spearville Road", + "lat": "42.47221", + "lon": "-77.05635", + "id": 149126 + } + ], + "matchCity": 1 + }, + { + "name": "Shenorock", + "lat": "41.33176", + "lon": "-73.73819", + "id": 158916524, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "West Spring Court", + "lat": "41.33144", + "lon": "-73.74156", + "id": 213928, + "intersectedStreets": [ + { + "name": "Shenorock Drive", + "lat": "41.33144", + "lon": "-73.74156" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Inlet", + "lat": "43.75473", + "lon": "-74.79321", + "id": 158863279, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Cold Spring Road (Town of Inlet)", + "lat": "43.74721", + "lon": "-74.88519", + "id": 113333 + } + ], + "matchStreet": 1 + }, + { + "name": "Montvale", + "lat": "41.05644", + "lon": "-74.04408", + "id": 170651, + "type": "SUBURB", + "listOfStreets": [ + { + "name": "Spring Valley Road", + "lat": "41.05657", + "lon": "-74.05206", + "id": 256202, + "intersectedStreets": [ + { + "name": "Summit Avenue", + "lat": "41.05961", + "lon": "-74.05266" + }, + { + "name": "Strawberry Hill Court", + "lat": "41.06115", + "lon": "-74.05246" + }, + { + "name": "North Avenue", + "lat": "41.06253", + "lon": "-74.05225" + }, + { + "name": "Upper Saddle River Road", + "lat": "41.06271", + "lon": "-74.05223" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Weedsport", + "lat": "43.04868", + "lon": "-76.56272", + "id": 158364564, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Cold Spring Road", + "lat": "43.04159", + "lon": "-76.57333", + "id": 295927 + } + ], + "matchStreet": 1 + }, + { + "name": "Whiteside Corners", + "lat": "43.06480", + "lon": "-74.09124", + "id": 158916508, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Road", + "lat": "43.05335", + "lon": "-74.10450", + "id": 46089 + } + ], + "matchStreet": 1 + }, + { + "name": "Coldwater", + "lat": "43.13590", + "lon": "-77.73529", + "id": 158604178, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Cold Spring Circle", + "lat": "43.14116", + "lon": "-77.73720", + "id": 130745 + } + ], + "matchStreet": 1 + }, + { + "name": "Syosset", + "lat": "40.82621", + "lon": "-73.50206", + "id": 158807954, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Cold Spring Harbor Road", + "lat": "40.84888", + "lon": "-73.47066", + "id": 226733, + "intersectedStreets": [ + { + "name": "Cold Spring Road", + "lat": "40.84839", + "lon": "-73.47482" + } + ] + }, + { + "name": "Cold Spring Road", + "lat": "40.82656", + "lon": "-73.50111", + "id": 13194, + "intersectedStreets": [ + { + "name": "Cherry Lane", + "lat": "40.83581", + "lon": "-73.48519" + }, + { + "name": "Calvert Drive", + "lat": "40.83529", + "lon": "-73.48725" + }, + { + "name": "Chelsea Drive", + "lat": "40.83505", + "lon": "-73.48897" + }, + { + "name": "Townsend Drive", + "lat": "40.83402", + "lon": "-73.49141" + }, + { + "name": "Renee Road", + "lat": "40.83232", + "lon": "-73.49384" + }, + { + "name": "Iris Lane", + "lat": "40.83018", + "lon": "-73.49405" + }, + { + "name": "Syosset Woodbury Road", + "lat": "40.82789", + "lon": "-73.49388" + }, + { + "name": "Nevada Street", + "lat": "40.82750", + "lon": "-73.49527" + }, + { + "name": "Magnolia Lane", + "lat": "40.82748", + "lon": "-73.49538" + }, + { + "name": "Woodbury Way", + "lat": "40.82691", + "lon": "-73.49808" + }, + { + "name": "Arizona Avenue", + "lat": "40.82670", + "lon": "-73.49907" + }, + { + "name": "Orchard Street", + "lat": "40.82657", + "lon": "-73.49967" + }, + { + "name": "Jackson Avenue", + "lat": "40.82617", + "lon": "-73.50126" + }, + { + "name": "Springwood Path", + "lat": "40.85115", + "lon": "-73.47425" + }, + { + "name": "Cold Spring Harbor Road", + "lat": "40.84838", + "lon": "-73.47482" + }, + { + "name": "Shady Lane", + "lat": "40.84531", + "lon": "-73.47596" + }, + { + "name": "Woodvale Drive", + "lat": "40.84235", + "lon": "-73.47882" + }, + { + "name": "Laurel Lane", + "lat": "40.84066", + "lon": "-73.48051" + }, + { + "name": "White Oak Tree Road", + "lat": "40.84028", + "lon": "-73.48088" + }, + { + "name": "Stillwell Lane", + "lat": "40.83789", + "lon": "-73.48281" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Brantingham", + "lat": "43.68868", + "lon": "-75.29212", + "id": 158575515, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "43.68716", + "lon": "-75.26547", + "id": 114656 + } + ], + "matchStreet": 1 + }, + { + "name": "Hartwood", + "lat": "41.53537", + "lon": "-74.69766", + "id": 158854047, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Cold Spring Road", + "lat": "41.55421", + "lon": "-74.68163", + "id": 160276, + "intersectedStreets": [ + { + "name": "Hartwood Road", + "lat": "41.53579", + "lon": "-74.68392" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Schoharie", + "names": { + "ru": "Скохари" + }, + "lat": "42.66591", + "lon": "-74.30958", + "id": 158817180, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.66183", + "lon": "-74.31036", + "id": 148385 + } + ], + "matchStreet": 1 + }, + { + "name": "Westmere", + "lat": "42.69119", + "lon": "-73.86873", + "id": 158843784, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Hollow Court", + "lat": "42.68668", + "lon": "-73.88391", + "id": 39446 + } + ], + "matchStreet": 1 + }, + { + "name": "Bedell", + "lat": "42.19509", + "lon": "-74.55015", + "id": 158846855, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Clear Spring Lane", + "lat": "42.19236", + "lon": "-74.55406", + "id": 78810 + } + ], + "matchStreet": 1 + }, + { + "name": "Mexico", + "lat": "43.45952", + "lon": "-76.22882", + "id": 158560129, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "43.45764", + "lon": "-76.23136", + "id": 141493 + } + ], + "matchStreet": 1 + }, + { + "name": "East Otto", + "lat": "42.38979", + "lon": "-78.75475", + "id": 158401416, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.38838", + "lon": "-78.75682", + "id": 90035 + } + ], + "matchStreet": 1 + }, + { + "name": "Ossian", + "lat": "42.52117", + "lon": "-77.77944", + "id": 158458760, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Road South", + "lat": "42.56781", + "lon": "-77.80942", + "id": 117829 + } + ], + "matchStreet": 1 + }, + { + "name": "Salamanca", + "lat": "42.15784", + "lon": "-78.71503", + "id": 158619533, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.15073", + "lon": "-78.71301", + "id": 90036 + } + ], + "matchStreet": 1 + }, + { + "name": "Livingston Manor", + "lat": "41.90037", + "lon": "-74.82821", + "id": 158869381, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "41.89565", + "lon": "-74.83110", + "id": 153170 + } + ], + "matchStreet": 1 + }, + { + "name": "Cold Spring", + "lat": "41.42009", + "lon": "-73.95459", + "id": 158816115, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "(u)", + "lat": "41.42481", + "lon": "-73.96784", + "id": 282051 + }, + { + "name": "Academy Street", + "lat": "41.42019", + "lon": "-73.95357", + "id": 238219 + }, + { + "name": "B Street", + "lat": "41.42141", + "lon": "-73.95440", + "id": 238018 + }, + { + "name": "Bank Street", + "lat": "41.42067", + "lon": "-73.94621", + "id": 237297 + }, + { + "name": "Benedict Road", + "lat": "41.41750", + "lon": "-73.95217", + "id": 239392 + }, + { + "name": "Cedar Street", + "lat": "41.42379", + "lon": "-73.95524", + "id": 239154 + }, + { + "name": "Cherry Street", + "lat": "41.41950", + "lon": "-73.95380", + "id": 238601 + }, + { + "name": "Chestnut Street", + "lat": "41.41816", + "lon": "-73.95264", + "id": 32030 + }, + { + "name": "Church Street", + "lat": "41.41929", + "lon": "-73.95666", + "id": 238110 + }, + { + "name": "Cold Spring", + "lat": "41.41565", + "lon": "-73.95839", + "id": 263547 + }, + { + "name": "Constitution Drive", + "lat": "41.41559", + "lon": "-73.95468", + "id": 239085 + }, + { + "name": "Cross Street", + "lat": "41.41882", + "lon": "-73.95912", + "id": 239147 + }, + { + "name": "Depot Square", + "lat": "41.41718", + "lon": "-73.95955", + "id": 238044 + }, + { + "name": "Fair Street", + "lat": "41.42498", + "lon": "-73.96331", + "id": 239568 + }, + { + "name": "Fish Street", + "lat": "41.41678", + "lon": "-73.96020", + "id": 241005 + }, + { + "name": "Fishkill Avenue", + "lat": "41.42152", + "lon": "-73.95511", + "id": 240604 + }, + { + "name": "Furnace Street", + "lat": "41.41874", + "lon": "-73.95522", + "id": 238209 + }, + { + "name": "Garden Street", + "lat": "41.41958", + "lon": "-73.95874", + "id": 237642 + }, + { + "name": "Grandview Terrace", + "lat": "41.42255", + "lon": "-73.96048", + "id": 238235 + }, + { + "name": "Grove Court", + "lat": "41.41892", + "lon": "-73.95011", + "id": 257639 + }, + { + "name": "Hamilton Street", + "lat": "41.42386", + "lon": "-73.95846", + "id": 237816 + }, + { + "name": "Herd Path", + "lat": "41.41832", + "lon": "-73.94653", + "id": 272099 + }, + { + "name": "High Street", + "lat": "41.42035", + "lon": "-73.95694", + "id": 240974 + }, + { + "name": "Locust Ridge", + "lat": "41.42316", + "lon": "-73.95282", + "id": 239074 + }, + { + "name": "Main Street", + "lat": "41.41877", + "lon": "-73.95713", + "id": 32287 + }, + { + "name": "Maple Terrace", + "lat": "41.42273", + "lon": "-73.95048", + "id": 238960 + }, + { + "name": "Marion Avenue", + "lat": "41.41802", + "lon": "-73.95316", + "id": 239350 + }, + { + "name": "Market Street", + "lat": "41.41444", + "lon": "-73.95784", + "id": 240348 + }, + { + "name": "Morris Avenue", + "lat": "41.42217", + "lon": "-73.95799", + "id": 238961 + }, + { + "name": "Mountain Avenue", + "lat": "41.42246", + "lon": "-73.95380", + "id": 239483 + }, + { + "name": "New Street", + "lat": "41.41576", + "lon": "-73.96015", + "id": 239951 + }, + { + "name": "North Street", + "lat": "41.41695", + "lon": "-73.96095", + "id": 239401 + }, + { + "name": "Northern Avenue", + "lat": "41.42051", + "lon": "-73.95829", + "id": 238572 + }, + { + "name": "Oak Street", + "lat": "41.41896", + "lon": "-73.95200", + "id": 237962 + }, + { + "name": "Orchard Street", + "lat": "41.42191", + "lon": "-73.95275", + "id": 238821 + }, + { + "name": "Parsonage Street", + "lat": "41.42238", + "lon": "-73.94962", + "id": 238791 + }, + { + "name": "Paulding Avenue", + "lat": "41.42007", + "lon": "-73.95103", + "id": 237813 + }, + { + "name": "Pine Street", + "lat": "41.42188", + "lon": "-73.94825", + "id": 239131 + }, + { + "name": "Railroad Avenue", + "lat": "41.41813", + "lon": "-73.95940", + "id": 237442 + }, + { + "name": "Rock Street", + "lat": "41.41745", + "lon": "-73.95756", + "id": 239045 + }, + { + "name": "Rocky Road", + "lat": "41.44319", + "lon": "-73.93288", + "id": 31994 + }, + { + "name": "State Highway 9D", + "lat": "41.42666", + "lon": "-73.96569", + "id": 240117 + }, + { + "name": "Stephanie Lane", + "lat": "41.46986", + "lon": "-73.91288", + "id": 34645 + }, + { + "name": "Stone Street", + "lat": "41.41813", + "lon": "-73.95940", + "id": 240471 + }, + { + "name": "The Boulevard", + "lat": "41.41702", + "lon": "-73.95541", + "id": 238936 + }, + { + "name": "U.S. 9", + "lat": "41.47936", + "lon": "-73.91357", + "id": 32860 + }, + { + "name": "Wall Street", + "lat": "41.41819", + "lon": "-73.95556", + "id": 238618 + }, + { + "name": "West Bank Street", + "lat": "41.41964", + "lon": "-73.94737", + "id": 237786 + }, + { + "name": "West Street", + "lat": "41.41679", + "lon": "-73.96178", + "id": 240289 + }, + { + "name": "Craigside Drive", + "lat": "41.42260", + "lon": "-73.95460", + "id": 317 + }, + { + "name": "East Belvedere Street", + "lat": "41.42312", + "lon": "-73.95762", + "id": 239637 + }, + { + "name": "Forge Gate Drive", + "lat": "41.41616", + "lon": "-73.95762", + "id": 237695 + }, + { + "name": "Haldane Street", + "lat": "41.42069", + "lon": "-73.95653", + "id": 239010 + }, + { + "name": "Kemble Avenue", + "lat": "41.41657", + "lon": "-73.95303", + "id": 258567 + }, + { + "name": "Lunn Terrace", + "lat": "41.41567", + "lon": "-73.95880", + "id": 238000 + }, + { + "name": "Northern Gate", + "lat": "41.41840", + "lon": "-73.96013", + "id": 238728 + }, + { + "name": "Old Forge Trail", + "lat": "41.41356", + "lon": "-73.95415", + "id": 258566 + }, + { + "name": "Parrot Street", + "lat": "41.42106", + "lon": "-73.94876", + "id": 239361 + }, + { + "name": "West Belvedere Street", + "lat": "41.42244", + "lon": "-73.95842", + "id": 238368 + }, + { + "name": "Whitehill Place", + "lat": "41.42381", + "lon": "-73.96007", + "id": 238117 + } + ], + "matchCity": 1, + "matchStreet": 1 + }, + { + "name": "Scotch Bush", + "lat": "42.85757", + "lon": "-74.19541", + "id": 158861170, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Sulphur Spring Road", + "lat": "42.85756", + "lon": "-74.17308", + "id": 49076 + } + ], + "matchStreet": 1 + }, + { + "name": "Shelter Island Heights", + "lat": "41.08399", + "lon": "-72.35591", + "id": 158899061, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Garden Avenue", + "lat": "41.08419", + "lon": "-72.35619", + "id": 167828 + } + ], + "matchStreet": 1 + }, + { + "name": "Davenport", + "lat": "42.47175", + "lon": "-74.84460", + "id": 158812026, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Beaver Spring Road", + "lat": "42.47882", + "lon": "-74.83679", + "id": 79909 + }, + { + "name": "Beaver Spring Spur", + "lat": "42.47602", + "lon": "-74.83282", + "id": 79631 + }, + { + "name": "Beaver Spring Lane", + "lat": "42.47624", + "lon": "-74.83436", + "id": 79802 + } + ], + "matchStreet": 1 + }, + { + "name": "St. Johnsville", + "lat": "43.00353", + "lon": "-74.67799", + "id": 175831, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street (Saint Johnsville)", + "lat": "42.99653", + "lon": "-74.67478", + "id": 123552 + } + ], + "matchStreet": 1 + }, + { + "name": "Palisades", + "lat": "41.01118", + "lon": "-73.91346", + "id": 158835553, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Washington Spring Road", + "lat": "41.01064", + "lon": "-73.90936", + "id": 243372, + "intersectedStreets": [ + { + "name": "Highland Avenue", + "lat": "41.01125", + "lon": "-73.91335" + }, + { + "name": "Oak Tree Road", + "lat": "41.01125", + "lon": "-73.91335" + }, + { + "name": "Woods Road", + "lat": "41.01101", + "lon": "-73.91153" + }, + { + "name": "Corsett Lane", + "lat": "41.01099", + "lon": "-73.91052" + }, + { + "name": "Ludlow Lane", + "lat": "41.01049", + "lon": "-73.90881" + }, + { + "name": "Corbett Lane", + "lat": "41.01171", + "lon": "-73.90668" + }, + { + "name": "Lawrence Lane", + "lat": "41.01041", + "lon": "-73.90486" + }, + { + "name": "Snedens Landing", + "lat": "41.01041", + "lon": "-73.90486" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Stamford", + "lat": "42.40731", + "lon": "-74.61431", + "id": 158853998, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Cold Spring Lane", + "lat": "42.40955", + "lon": "-74.60702", + "id": 78773 + } + ], + "matchStreet": 1 + }, + { + "name": "Carthage", + "lat": "43.97824", + "lon": "-75.60963", + "id": 157603712, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "43.97788", + "lon": "-75.61141", + "id": 113026 + } + ], + "matchStreet": 1 + }, + { + "name": "Fort Plain", + "lat": "42.93146", + "lon": "-74.62264", + "id": 158836589, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.93459", + "lon": "-74.62783", + "id": 123563 + } + ], + "matchStreet": 1 + }, + { + "name": "Hague", + "lat": "43.74555", + "lon": "-73.49854", + "id": 158801771, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Rock Road", + "lat": "43.73960", + "lon": "-73.50693", + "id": 191860 + }, + { + "name": "Spring Hill (Sabbath Day Point)", + "lat": "43.66149", + "lon": "-73.52392", + "id": 191938 + }, + { + "name": "Spring Lane (Indian Kettles)", + "lat": "43.76158", + "lon": "-73.48457", + "id": 189331 + } + ], + "matchStreet": 1 + }, + { + "name": "Chatham", + "lat": "42.36425", + "lon": "-73.59484", + "id": 158844503, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.36776", + "lon": "-73.58952", + "id": 98391 + } + ], + "matchStreet": 1 + }, + { + "name": "Madrid Springs", + "lat": "44.74006", + "lon": "-75.14353", + "id": 157597262, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "44.73641", + "lon": "-75.14945", + "id": 61670 + } + ], + "matchStreet": 1 + }, + { + "name": "Pawling", + "lat": "41.56204", + "lon": "-73.60263", + "id": 158813790, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "41.56200", + "lon": "-73.59728", + "id": 249369 + } + ], + "matchStreet": 1 + }, + { + "name": "Norwood", + "lat": "44.75161", + "lon": "-74.99439", + "id": 158821981, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "44.74701", + "lon": "-74.99916", + "id": 61673 + } + ], + "matchStreet": 1 + }, + { + "name": "New Hempstead", + "lat": "41.15009", + "lon": "-74.03625", + "id": 158873172, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Rock Place", + "lat": "41.14376", + "lon": "-74.04910", + "id": 243010, + "intersectedStreets": [ + { + "name": "Brick Church Road", + "lat": "41.14253", + "lon": "-74.04927" + }, + { + "name": "Zavatone Court", + "lat": "41.14315", + "lon": "-74.04918" + }, + { + "name": "Wits End", + "lat": "41.14466", + "lon": "-74.04968" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Monticello", + "lat": "41.65565", + "lon": "-74.68933", + "id": 158813785, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "41.64954", + "lon": "-74.68354", + "id": 153165 + }, + { + "name": "East Cold Spring Road", + "lat": "41.64245", + "lon": "-74.68386", + "id": 156262, + "intersectedStreets": [ + { + "name": "Waverly Avenue", + "lat": "41.64000", + "lon": "-74.67680" + }, + { + "name": "Schroeder Road", + "lat": "41.64226", + "lon": "-74.68343" + }, + { + "name": "Fairground Road", + "lat": "41.64306", + "lon": "-74.68484" + }, + { + "name": "Saint John Street", + "lat": "41.64739", + "lon": "-74.68693" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Liberty", + "lat": "41.80120", + "lon": "-74.74656", + "id": 158806584, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Cold Spring Road", + "lat": "41.80699", + "lon": "-74.73729", + "id": 160249, + "intersectedStreets": [ + { + "name": "Cemetery Road", + "lat": "41.80235", + "lon": "-74.73900" + }, + { + "name": "Park Avenue", + "lat": "41.80235", + "lon": "-74.73900" + }, + { + "name": "Woodland Avenue", + "lat": "41.80336", + "lon": "-74.73855" + }, + { + "name": "Highview Avenue", + "lat": "41.80422", + "lon": "-74.73817" + }, + { + "name": "Summit Avenue", + "lat": "41.80510", + "lon": "-74.73776" + }, + { + "name": "Mager Avenue", + "lat": "41.80605", + "lon": "-74.73748" + }, + { + "name": "Kelly Avenue", + "lat": "41.80699", + "lon": "-74.73729" + }, + { + "name": "California Avenue", + "lat": "41.80795", + "lon": "-74.73716" + }, + { + "name": "Neversink Road", + "lat": "41.80590", + "lon": "-74.72993" + } + ] + }, + { + "name": "Spring Street", + "lat": "41.79728", + "lon": "-74.74613", + "id": 153167 + } + ], + "matchStreet": 1 + }, + { + "name": "Horseheads", + "lat": "42.16702", + "lon": "-76.82052", + "id": 158257710, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Creek Drive", + "lat": "42.17721", + "lon": "-76.81632", + "id": 96212 + } + ], + "matchStreet": 1 + }, + { + "name": "Cold Spring", + "lat": "43.67146", + "lon": "-73.40678", + "id": 158844465, + "type": "HAMLET", + "listOfStreets": [], + "matchCity": 1 + }, + { + "name": "York", + "lat": "42.87114", + "lon": "-77.88556", + "id": 158656063, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street (Retsof)", + "lat": "42.83845", + "lon": "-77.88326", + "id": 264174 + } + ], + "matchStreet": 1 + }, + { + "name": "Uniondale", + "lat": "40.70038", + "lon": "-73.59291", + "id": 158810686, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Avenue", + "lat": "40.69133", + "lon": "-73.58954", + "id": 221857, + "intersectedStreets": [ + { + "name": "Summer Avenue", + "lat": "40.69050", + "lon": "-73.59151" + }, + { + "name": "Fall Avenue", + "lat": "40.69086", + "lon": "-73.59076" + }, + { + "name": "Winter Avenue", + "lat": "40.69180", + "lon": "-73.58907" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Gilboa", + "lat": "42.39730", + "lon": "-74.44598", + "id": 158798397, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Circle (Town of Gilboa)", + "lat": "42.41701", + "lon": "-74.45823", + "id": 276882 + } + ], + "matchStreet": 1 + }, + { + "name": "Diddell", + "lat": "41.62343", + "lon": "-73.85208", + "id": 158825000, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Hill Court", + "lat": "41.62633", + "lon": "-73.85117", + "id": 247837, + "intersectedStreets": [ + { + "name": "Cross Ridge Road", + "lat": "41.62686", + "lon": "-73.85151" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Tompkins Corners", + "lat": "41.19121", + "lon": "-73.78263", + "id": 158865961, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Crystal Spring Road", + "lat": "41.18960", + "lon": "-73.78351", + "id": 218697 + } + ], + "matchStreet": 1 + }, + { + "name": "Beaverkill", + "lat": "41.98147", + "lon": "-74.83543", + "id": 158843439, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Little Spring Brook Trail", + "lat": "42.03328", + "lon": "-74.87646", + "id": 271388 + }, + { + "name": "Little Spring Brook Road Spur", + "lat": "42.01825", + "lon": "-74.88991", + "id": 78087 + }, + { + "name": "Spring Brook Estates", + "lat": "42.03157", + "lon": "-74.88755", + "id": 79389 + }, + { + "name": "Little Spring Brook Road", + "lat": "42.02089", + "lon": "-74.88472", + "id": 78569 + }, + { + "name": "Spring Brook Road", + "lat": "42.01461", + "lon": "-74.89034", + "id": 78587 + } + ], + "matchStreet": 1 + }, + { + "name": "Durland", + "lat": "41.28287", + "lon": "-74.30793", + "id": 158809647, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "41.28801", + "lon": "-74.29380", + "id": 200975 + } + ], + "matchStreet": 1 + }, + { + "name": "Newcomb", + "lat": "43.96959", + "lon": "-74.16492", + "id": 158905886, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "43.96528", + "lon": "-74.17158", + "id": 106728 + }, + { + "name": "Cold Spring", + "lat": "43.96454", + "lon": "-74.27005", + "id": 295805 + } + ], + "matchStreet": 1 + }, + { + "name": "Millers Corners", + "lat": "42.58536", + "lon": "-73.56956", + "id": 158804508, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Brook Spring Avenue", + "lat": "42.59764", + "lon": "-73.56643", + "id": 251676 + } + ], + "matchStreet": 1 + }, + { + "name": "Brushton", + "lat": "44.83055", + "lon": "-74.51374", + "id": 158813722, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Grove Road", + "lat": "44.84241", + "lon": "-74.49996", + "id": 103564 + } + ], + "matchStreet": 1 + }, + { + "name": "Shinnecock Hills", + "lat": "40.89094", + "lon": "-72.46370", + "id": 158811654, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Cold Spring Court", + "lat": "40.89712", + "lon": "-72.46840", + "id": 288370 + } + ], + "matchStreet": 1 + }, + { + "name": "East Aurora", + "lat": "42.76891", + "lon": "-78.61776", + "id": 158618125, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.75940", + "lon": "-78.61954", + "id": 87798 + } + ], + "matchStreet": 1 + }, + { + "name": "Allentown", + "lat": "42.08368", + "lon": "-78.06445", + "id": 157628957, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Wolf Spring Road", + "lat": "42.11280", + "lon": "-78.06644", + "id": 84468 + } + ], + "matchStreet": 1 + }, + { + "name": "Pelham Manor", + "lat": "40.89538", + "lon": "-73.80708", + "id": 158798327, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Road", + "lat": "40.89006", + "lon": "-73.81673", + "id": 211421, + "intersectedStreets": [ + { + "name": "Boston Post Road", + "lat": "40.89146", + "lon": "-73.81710" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Collins", + "lat": "42.49645", + "lon": "-78.92059", + "id": 157557219, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.49963", + "lon": "-78.92329", + "id": 68087 + } + ], + "matchStreet": 1 + }, + { + "name": "Lyons Corners", + "lat": "42.26729", + "lon": "-78.25335", + "id": 157607406, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Valley Road", + "lat": "42.25451", + "lon": "-78.24396", + "id": 84958 + } + ], + "matchStreet": 1 + }, + { + "name": "Caledonia", + "lat": "42.97311", + "lon": "-77.85279", + "id": 158419452, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Cold Spring Road", + "lat": "42.94496", + "lon": "-77.82766", + "id": 118042 + }, + { + "name": "Spring Street", + "lat": "42.97787", + "lon": "-77.86045", + "id": 117433 + } + ], + "matchStreet": 1 + }, + { + "name": "Rhinebeck", + "lat": "41.92688", + "lon": "-73.91267", + "id": 158861811, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Brook Ave", + "lat": "41.93728", + "lon": "-73.91005", + "id": 32892 + }, + { + "name": "Spring Brook Avenue", + "lat": "41.93640", + "lon": "-73.90996", + "id": 248564 + }, + { + "name": "Spring Brook Park", + "lat": "41.93844", + "lon": "-73.91063", + "id": 238328 + } + ], + "matchStreet": 1 + }, + { + "name": "Hamilton", + "lat": "42.82688", + "lon": "-75.54442", + "id": 158408189, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Hill Road", + "lat": "42.82644", + "lon": "-75.52789", + "id": 117950 + }, + { + "name": "Spring Street", + "lat": "42.82460", + "lon": "-75.53053", + "id": 119707 + } + ], + "matchStreet": 1 + }, + { + "name": "Tannersville", + "lat": "42.19564", + "lon": "-74.13375", + "id": 158861814, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.20152", + "lon": "-74.12757", + "id": 108123 + } + ], + "matchStreet": 1 + }, + { + "name": "Peconic", + "lat": "41.04788", + "lon": "-72.46314", + "id": 158844387, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Lane", + "lat": "41.03484", + "lon": "-72.45440", + "id": 162493 + } + ], + "matchStreet": 1 + }, + { + "name": "Port Jefferson", + "lat": "40.94651", + "lon": "-73.06912", + "id": 158859749, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "40.94422", + "lon": "-73.06526", + "id": 182502 + } + ], + "matchStreet": 1 + }, + { + "name": "Bald Mountain", + "lat": "43.12952", + "lon": "-73.53817", + "id": 158874087, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Lick Spring Road", + "lat": "43.15179", + "lon": "-73.52639", + "id": 193533 + } + ], + "matchStreet": 1 + }, + { + "name": "Craigie Clair", + "lat": "41.96425", + "lon": "-74.86627", + "id": 158877401, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Brook Road", + "lat": "41.97910", + "lon": "-74.89350", + "id": 78588 + } + ], + "matchStreet": 1 + }, + { + "name": "Saint Regis Falls", + "lat": "44.67395", + "lon": "-74.54490", + "id": 158895834, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "44.67454", + "lon": "-74.53985", + "id": 107037 + } + ], + "matchStreet": 1 + }, + { + "name": "Randelville", + "lat": "41.34287", + "lon": "-74.34848", + "id": 158802646, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Twin Spring Lane", + "lat": "41.35128", + "lon": "-74.34403", + "id": 204950, + "intersectedStreets": [ + { + "name": "Quaker Mill Run", + "lat": "41.35175", + "lon": "-74.34337" + }, + { + "name": "Durland Road", + "lat": "41.35027", + "lon": "-74.34463" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Grove Springs", + "lat": "42.47118", + "lon": "-77.15608", + "id": 158369499, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Cedar Spring", + "lat": "42.47493", + "lon": "-77.14042", + "id": 85660 + } + ], + "matchStreet": 1 + }, + { + "name": "McIntyre", + "lat": "41.88982", + "lon": "-73.69819", + "id": 158897875, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Cold Spring Road", + "lat": "41.88963", + "lon": "-73.69738", + "id": 247827 + }, + { + "name": "Cold Spring Way", + "lat": "41.89913", + "lon": "-73.70788", + "id": 245998 + } + ], + "matchStreet": 1 + }, + { + "name": "Afton", + "lat": "42.22814", + "lon": "-75.52657", + "id": 158578376, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.23448", + "lon": "-75.53536", + "id": 97252 + } + ], + "matchStreet": 1 + }, + { + "name": "Pantigo", + "lat": "40.96788", + "lon": "-72.16480", + "id": 158809795, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Close Lane", + "lat": "40.97065", + "lon": "-72.16305", + "id": 287475 + }, + { + "name": "Spring Close Highway", + "lat": "40.97136", + "lon": "-72.16625", + "id": 173967 + } + ], + "matchStreet": 1 + }, + { + "name": "New Baltimore", + "lat": "42.44619", + "lon": "-73.78846", + "id": 158809808, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Cold Spring Road (Town of New Baltimore)", + "lat": "42.43838", + "lon": "-73.94046", + "id": 110565 + } + ], + "matchStreet": 1 + }, + { + "name": "Strathmore", + "lat": "40.79204", + "lon": "-73.67735", + "id": 158895814, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Mill Spring Road", + "lat": "40.79044", + "lon": "-73.67820", + "id": 234126, + "intersectedStreets": [ + { + "name": "Rockcrest Road", + "lat": "40.79328", + "lon": "-73.67766" + }, + { + "name": "Hilltop Drive", + "lat": "40.79222", + "lon": "-73.67741" + }, + { + "name": "Woodland Way", + "lat": "40.79052", + "lon": "-73.67784" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Wheatley Heights", + "lat": "40.76371", + "lon": "-73.36984", + "id": 158852811, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street (Wyandanch)", + "lat": "40.76042", + "lon": "-73.35927", + "id": 283895 + } + ], + "matchStreet": 1 + }, + { + "name": "South Glens Falls", + "lat": "43.29945", + "lon": "-73.63518", + "id": 158815946, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "43.30182", + "lon": "-73.63305", + "id": 261409 + }, + { + "name": "Spring Street Extension", + "lat": "43.29943", + "lon": "-73.63059", + "id": 50650 + } + ], + "matchStreet": 1 + }, + { + "name": "Livingston", + "lat": "42.14203", + "lon": "-73.77790", + "id": 158844617, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Road (Town of Livingston)", + "lat": "42.18703", + "lon": "-73.78948", + "id": 99448 + }, + { + "name": "Cold Spring Road (Town of Livingston)", + "lat": "42.16087", + "lon": "-73.79738", + "id": 102265 + } + ], + "matchStreet": 1 + }, + { + "name": "Roxbury", + "lat": "42.28398", + "lon": "-74.56487", + "id": 158853815, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Cold Spring Road (Town of Roxbury)", + "lat": "42.25217", + "lon": "-74.60049", + "id": 78932 + } + ], + "matchStreet": 1 + }, + { + "name": "Gang Mills", + "lat": "42.14618", + "lon": "-77.11164", + "id": 158595763, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Pond Road", + "lat": "42.15629", + "lon": "-77.11216", + "id": 272754 + } + ], + "matchStreet": 1 + }, + { + "name": "Milan", + "lat": "41.95343", + "lon": "-73.79208", + "id": 158853811, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Cold Spring Road (Town of Milan)", + "lat": "41.93373", + "lon": "-73.75937", + "id": 247826 + }, + { + "name": "Spring Lake Road (Town of Milan)", + "lat": "42.03777", + "lon": "-73.80102", + "id": 249100 + } + ], + "matchStreet": 1 + }, + { + "name": "Phoenix", + "lat": "43.23118", + "lon": "-76.30077", + "id": 157630116, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "43.23446", + "lon": "-76.29812", + "id": 141491 + } + ], + "matchStreet": 1 + }, + { + "name": "Dickersonville", + "lat": "43.19061", + "lon": "-78.93032", + "id": 157571747, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Black Nose Spring Road", + "lat": "43.18256", + "lon": "-78.93037", + "id": 60913 + } + ], + "matchStreet": 1 + }, + { + "name": "Newark Valley", + "lat": "42.22369", + "lon": "-76.18327", + "id": 158263974, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.22358", + "lon": "-76.18873", + "id": 75 + } + ], + "matchStreet": 1 + }, + { + "name": "Castile", + "lat": "42.62895", + "lon": "-78.05445", + "id": 158458529, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.62365", + "lon": "-78.05943", + "id": 198073 + } + ], + "matchStreet": 1 + }, + { + "name": "Cold Spring Harbor", + "lat": "40.87148", + "lon": "-73.45679", + "id": 158842530, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Ackerman Place", + "lat": "40.86910", + "lon": "-73.43148", + "id": 185441 + }, + { + "name": "Albert Place", + "lat": "40.86999", + "lon": "-73.44242", + "id": 155356 + }, + { + "name": "Alden Lane", + "lat": "40.87049", + "lon": "-73.44084", + "id": 186851 + }, + { + "name": "Anderson Place", + "lat": "40.86931", + "lon": "-73.43167", + "id": 183701 + }, + { + "name": "Avondale Drive", + "lat": "40.86879", + "lon": "-73.46032", + "id": 162698 + }, + { + "name": "Barrow Court", + "lat": "40.86446", + "lon": "-73.43588", + "id": 155982 + }, + { + "name": "Beech Place", + "lat": "40.86855", + "lon": "-73.45922", + "id": 177357 + }, + { + "name": "Briarwood Drive", + "lat": "40.86267", + "lon": "-73.43208", + "id": 153223 + }, + { + "name": "Carnegie Avenue", + "lat": "40.87024", + "lon": "-73.44504", + "id": 159225 + }, + { + "name": "Cedar Drive", + "lat": "40.85917", + "lon": "-73.43481", + "id": 170884 + }, + { + "name": "Chestnut Street", + "lat": "40.86024", + "lon": "-73.43530", + "id": 179753 + }, + { + "name": "Crosby Place", + "lat": "40.85049", + "lon": "-73.43897", + "id": 180539 + }, + { + "name": "Diamond Court", + "lat": "40.85586", + "lon": "-73.43410", + "id": 177686 + }, + { + "name": "Donovan Drive", + "lat": "40.86279", + "lon": "-73.44092", + "id": 175383 + }, + { + "name": "Eastwoods Drive", + "lat": "40.84250", + "lon": "-73.45184", + "id": 160390 + }, + { + "name": "Elm Place", + "lat": "40.86976", + "lon": "-73.46068", + "id": 165264 + }, + { + "name": "Erick Court", + "lat": "40.86796", + "lon": "-73.45311", + "id": 183050 + }, + { + "name": "Fairway Place", + "lat": "40.87024", + "lon": "-73.45541", + "id": 181052 + }, + { + "name": "Flora Street", + "lat": "40.86830", + "lon": "-73.46047", + "id": 169216 + }, + { + "name": "Fox Hunt Court", + "lat": "40.86602", + "lon": "-73.44732", + "id": 285455 + }, + { + "name": "Fox Hunt Lane", + "lat": "40.87069", + "lon": "-73.44931", + "id": 168116 + }, + { + "name": "Garden Court", + "lat": "40.86642", + "lon": "-73.43871", + "id": 165427 + }, + { + "name": "Glen Way", + "lat": "40.87157", + "lon": "-73.44704", + "id": 158771 + }, + { + "name": "Goose Hill Road", + "lat": "40.87994", + "lon": "-73.45169", + "id": 285449 + }, + { + "name": "Grove Street", + "lat": "40.87194", + "lon": "-73.45092", + "id": 184500 + }, + { + "name": "Halyard Court", + "lat": "40.86860", + "lon": "-73.45725", + "id": 156584 + }, + { + "name": "Harbor Road", + "lat": "40.86323", + "lon": "-73.46133", + "id": 31343 + }, + { + "name": "Hawxhurst Road", + "lat": "40.85865", + "lon": "-73.43777", + "id": 182187 + }, + { + "name": "Heritage Court", + "lat": "40.87200", + "lon": "-73.44948", + "id": 164008 + }, + { + "name": "Highland Court", + "lat": "40.86894", + "lon": "-73.43558", + "id": 161675 + }, + { + "name": "Hillside Avenue", + "lat": "40.86774", + "lon": "-73.43294", + "id": 185620 + }, + { + "name": "Insbrook Court", + "lat": "40.86569", + "lon": "-73.43255", + "id": 154086 + }, + { + "name": "Jennings Road", + "lat": "40.88433", + "lon": "-73.45131", + "id": 285450 + }, + { + "name": "Kennedy Lane", + "lat": "40.86895", + "lon": "-73.44867", + "id": 179346 + }, + { + "name": "Lawrence Hill Road", + "lat": "40.86142", + "lon": "-73.45004", + "id": 179172 + }, + { + "name": "Lisa Court", + "lat": "40.85359", + "lon": "-73.43734", + "id": 186647 + }, + { + "name": "Locust Court", + "lat": "40.85724", + "lon": "-73.43459", + "id": 184616 + }, + { + "name": "Main Street", + "lat": "40.87028", + "lon": "-73.43109", + "id": 275521 + }, + { + "name": "Midland Street", + "lat": "40.87088", + "lon": "-73.44671", + "id": 185231 + }, + { + "name": "Nassau/Suffolk Greenbelt Trail", + "lat": "40.85337", + "lon": "-73.45948", + "id": 275417 + }, + { + "name": "North Hempstead Turnpike", + "lat": "40.85828", + "lon": "-73.46223", + "id": 265480 + }, + { + "name": "Oakwood Road", + "lat": "40.85240", + "lon": "-73.43210", + "id": 251241 + }, + { + "name": "Peabody Road", + "lat": "40.86095", + "lon": "-73.44442", + "id": 164633 + }, + { + "name": "Pegs Lane", + "lat": "40.85320", + "lon": "-73.43579", + "id": 168948 + }, + { + "name": "Pennington Drive", + "lat": "40.85824", + "lon": "-73.43594", + "id": 180152 + }, + { + "name": "Pine Drive", + "lat": "40.86801", + "lon": "-73.45768", + "id": 175600 + }, + { + "name": "Poplar Place", + "lat": "40.87108", + "lon": "-73.45588", + "id": 156808 + }, + { + "name": "Portland Place", + "lat": "40.86907", + "lon": "-73.46150", + "id": 186754 + }, + { + "name": "Proposed Bethpage State Parkway (Historical)", + "lat": "40.84883", + "lon": "-73.45674", + "id": 290915 + }, + { + "name": "Pulaski Road", + "lat": "40.84677", + "lon": "-73.43476", + "id": 285415 + }, + { + "name": "Quaker Path", + "lat": "40.87061", + "lon": "-73.44298", + "id": 179002 + }, + { + "name": "Ridge Road", + "lat": "40.87100", + "lon": "-73.45011", + "id": 186079 + }, + { + "name": "Rogers Drive", + "lat": "40.86063", + "lon": "-73.44747", + "id": 187042 + }, + { + "name": "Saint Marks Place", + "lat": "40.87230", + "lon": "-73.44551", + "id": 285454 + }, + { + "name": "Saw Mill Lane", + "lat": "40.85359", + "lon": "-73.45399", + "id": 155838 + }, + { + "name": "Saw Mill Road", + "lat": "40.85573", + "lon": "-73.44742", + "id": 156849 + }, + { + "name": "Scudder Place", + "lat": "40.86865", + "lon": "-73.43266", + "id": 285408 + }, + { + "name": "Shore Road", + "lat": "40.87056", + "lon": "-73.46040", + "id": 176136 + }, + { + "name": "Skyline Drive", + "lat": "40.85639", + "lon": "-73.43161", + "id": 171737 + }, + { + "name": "Snake Hill Road", + "lat": "40.87927", + "lon": "-73.46476", + "id": 285458 + }, + { + "name": "Soundview Road", + "lat": "40.86224", + "lon": "-73.43092", + "id": 285410 + }, + { + "name": "Spring", + "lat": "40.87196", + "lon": "-73.45706", + "id": 161594 + }, + { + "name": "Spring Hill Road", + "lat": "40.87538", + "lon": "-73.45811", + "id": 184255 + }, + { + "name": "Spring Road", + "lat": "40.85779", + "lon": "-73.45983", + "id": 285462 + }, + { + "name": "Spring Street", + "lat": "40.87114", + "lon": "-73.45927", + "id": 182506 + }, + { + "name": "Spruce Court", + "lat": "40.86243", + "lon": "-73.43277", + "id": 164443 + }, + { + "name": "St Marks Place", + "lat": "40.87212", + "lon": "-73.44435", + "id": 184680 + }, + { + "name": "Tall Oak Drive", + "lat": "40.85454", + "lon": "-73.43358", + "id": 162935 + }, + { + "name": "Tall Tree Court", + "lat": "40.85954", + "lon": "-73.43985", + "id": 185693 + }, + { + "name": "Terrace Place", + "lat": "40.86532", + "lon": "-73.46122", + "id": 177144 + }, + { + "name": "The Commons", + "lat": "40.85102", + "lon": "-73.44850", + "id": 180007 + }, + { + "name": "Titus Lane", + "lat": "40.87593", + "lon": "-73.45365", + "id": 170466 + }, + { + "name": "Trillium Place", + "lat": "40.85685", + "lon": "-73.43676", + "id": 168968 + }, + { + "name": "Valentine Court", + "lat": "40.87504", + "lon": "-73.45345", + "id": 186614 + }, + { + "name": "Walnut Place", + "lat": "40.86107", + "lon": "-73.43167", + "id": 165398 + }, + { + "name": "Walters Avenue", + "lat": "40.87147", + "lon": "-73.45289", + "id": 285452 + }, + { + "name": "West Main Street", + "lat": "40.87139", + "lon": "-73.45695", + "id": 31460 + }, + { + "name": "West Pulaski Road", + "lat": "40.84445", + "lon": "-73.44079", + "id": 254595 + }, + { + "name": "West Ridge Road", + "lat": "40.87157", + "lon": "-73.44704", + "id": 187978 + }, + { + "name": "White Hill Road", + "lat": "40.88073", + "lon": "-73.45489", + "id": 285460 + }, + { + "name": "Willowbrook Road", + "lat": "40.87220", + "lon": "-73.45779", + "id": 169733 + }, + { + "name": "Wilton Road", + "lat": "40.84980", + "lon": "-73.44453", + "id": 188336 + }, + { + "name": "Woodbury Road", + "lat": "40.83685", + "lon": "-73.45304", + "id": 184566 + }, + { + "name": "Woodchuck Hollow Road", + "lat": "40.85487", + "lon": "-73.43669", + "id": 185268 + }, + { + "name": "Woodcutters Lane", + "lat": "40.87940", + "lon": "-73.45689", + "id": 157584 + }, + { + "name": "Woodlee Road", + "lat": "40.84975", + "lon": "-73.45126", + "id": 182741 + }, + { + "name": "Brandy Road", + "lat": "40.85404", + "lon": "-73.43785", + "id": 168194 + }, + { + "name": "Carley Avenue", + "lat": "40.86847", + "lon": "-73.43695", + "id": 187518 + }, + { + "name": "Coleman Court", + "lat": "40.85628", + "lon": "-73.44860", + "id": 164101 + }, + { + "name": "Commons", + "lat": "40.85110", + "lon": "-73.44976", + "id": 285456 + }, + { + "name": "Cragg Court", + "lat": "40.85823", + "lon": "-73.43148", + "id": 176528 + }, + { + "name": "Cyril Drive", + "lat": "40.84872", + "lon": "-73.43562", + "id": 170082 + }, + { + "name": "Edcris Lane", + "lat": "40.84961", + "lon": "-73.43539", + "id": 185051 + }, + { + "name": "Folly Field Court", + "lat": "40.87372", + "lon": "-73.45674", + "id": 285461 + }, + { + "name": "Insbrook Drive", + "lat": "40.86538", + "lon": "-73.43290", + "id": 174585 + }, + { + "name": "Kaylor Court", + "lat": "40.86008", + "lon": "-73.44841", + "id": 184792 + }, + { + "name": "Meadow Farm Lane", + "lat": "40.86767", + "lon": "-73.44637", + "id": 161900 + }, + { + "name": "Minetta Court", + "lat": "40.86655", + "lon": "-73.43448", + "id": 174159 + }, + { + "name": "Mow Bray Lane North", + "lat": "40.87501", + "lon": "-73.45968", + "id": 185887 + }, + { + "name": "Mowbray Lane N", + "lat": "40.87565", + "lon": "-73.45976", + "id": 285457 + }, + { + "name": "Nassau - Suffolk Trail LIGTC", + "lat": "40.86741", + "lon": "-73.46131", + "id": 291058 + }, + { + "name": "Newbury Place", + "lat": "40.86561", + "lon": "-73.43903", + "id": 169352 + }, + { + "name": "North Run", + "lat": "40.84469", + "lon": "-73.45279", + "id": 185523 + }, + { + "name": "Pegs Court", + "lat": "40.85245", + "lon": "-73.43616", + "id": 185043 + }, + { + "name": "Pilgrim Path", + "lat": "40.86795", + "lon": "-73.44146", + "id": 160827 + }, + { + "name": "Pond Field Court", + "lat": "40.87919", + "lon": "-73.45217", + "id": 176224 + }, + { + "name": "Rancher Place", + "lat": "40.85170", + "lon": "-73.43423", + "id": 180332 + }, + { + "name": "Rough Riders Court", + "lat": "40.86232", + "lon": "-73.44208", + "id": 173429 + }, + { + "name": "Rusco Street", + "lat": "40.86535", + "lon": "-73.43837", + "id": 159575 + }, + { + "name": "Seaward Court", + "lat": "40.86191", + "lon": "-73.45594", + "id": 164109 + }, + { + "name": "Snake Hill Lane", + "lat": "40.87797", + "lon": "-73.46480", + "id": 172164 + }, + { + "name": "Snowball Drive", + "lat": "40.85425", + "lon": "-73.43963", + "id": 170334 + }, + { + "name": "South Run", + "lat": "40.84039", + "lon": "-73.45240", + "id": 185331 + }, + { + "name": "Spg Hill Road", + "lat": "40.87921", + "lon": "-73.46313", + "id": 184610 + }, + { + "name": "Squadron Court", + "lat": "40.86358", + "lon": "-73.43985", + "id": 171374 + }, + { + "name": "Sundown Court", + "lat": "40.86271", + "lon": "-73.43586", + "id": 178585 + }, + { + "name": "Thicket Drive", + "lat": "40.86905", + "lon": "-73.45639", + "id": 154752 + }, + { + "name": "Toboggan Hill Path", + "lat": "40.87749", + "lon": "-73.45609", + "id": 176544 + }, + { + "name": "Trainer Court", + "lat": "40.86558", + "lon": "-73.43687", + "id": 159741 + }, + { + "name": "Turkey Lane", + "lat": "40.86632", + "lon": "-73.45126", + "id": 186748 + }, + { + "name": "Uplands West Loop NC", + "lat": "40.85644", + "lon": "-73.45583", + "id": 273793 + }, + { + "name": "Walnut Tree Lane", + "lat": "40.87647", + "lon": "-73.46240", + "id": 182315 + }, + { + "name": "Wawapek Road", + "lat": "40.87823", + "lon": "-73.45940", + "id": 169044 + }, + { + "name": "Whaling Avenue", + "lat": "40.87286", + "lon": "-73.45111", + "id": 285395 + }, + { + "name": "Woodleaf Court", + "lat": "40.86877", + "lon": "-73.44963", + "id": 153231 + }, + { + "name": "Wyona Court", + "lat": "40.86918", + "lon": "-73.43869", + "id": 165825 + } + ], + "matchCity": 1, + "matchStreet": 1 + }, + { + "name": "Wappingers Falls", + "lat": "41.59657", + "lon": "-73.91121", + "id": 158814882, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "41.59983", + "lon": "-73.91743", + "id": 249368 + } + ], + "matchStreet": 1 + }, + { + "name": "Cold Spring Park", + "lat": "43.99839", + "lon": "-73.47485", + "id": 158852777, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Cold Spring Road", + "lat": "43.99621", + "lon": "-73.48828", + "id": 107712 + } + ], + "matchCity": 1, + "matchStreet": 1 + }, + { + "name": "Shelter Island", + "lat": "41.06816", + "lon": "-72.33869", + "id": 158806679, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Garden Avenue", + "lat": "41.08472", + "lon": "-72.35617", + "id": 278645 + } + ], + "matchStreet": 1 + }, + { + "name": "North Hills", + "lat": "40.78093", + "lon": "-73.67652", + "id": 158808726, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Hollow Road", + "lat": "40.76969", + "lon": "-73.67118", + "id": 224011, + "intersectedStreets": [ + { + "name": "Acorn Ponds Drive", + "lat": "40.76959", + "lon": "-73.67123" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Copake Lake", + "lat": "42.13925", + "lon": "-73.58234", + "id": 158853779, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.15403", + "lon": "-73.58432", + "id": 98394 + } + ], + "matchStreet": 1 + }, + { + "name": "Alexander", + "lat": "42.90117", + "lon": "-78.25669", + "id": 158257798, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Road", + "lat": "42.87834", + "lon": "-78.22652", + "id": 196900 + } + ], + "matchStreet": 1 + }, + { + "name": "Halseys Corners", + "lat": "44.70782", + "lon": "-73.46902", + "id": 158858908, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Circle", + "lat": "44.70681", + "lon": "-73.47010", + "id": 97983 + } + ], + "matchStreet": 1 + }, + { + "name": "Starkey", + "lat": "42.53535", + "lon": "-76.92440", + "id": 158298781, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street (Dundee)", + "lat": "42.52219", + "lon": "-76.97944", + "id": 196083 + } + ], + "matchStreet": 1 + }, + { + "name": "Windham", + "lat": "42.30731", + "lon": "-74.25209", + "id": 158819973, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Lane", + "lat": "42.33666", + "lon": "-74.23288", + "id": 107720 + } + ], + "matchStreet": 1 + }, + { + "name": "Hume", + "lat": "42.47284", + "lon": "-78.13640", + "id": 158418566, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Stone Spring Road", + "lat": "42.50256", + "lon": "-78.18208", + "id": 83026 + }, + { + "name": "Spring Street", + "lat": "42.49447", + "lon": "-78.14496", + "id": 84100 + } + ], + "matchStreet": 1 + }, + { + "name": "Port Henry", + "lat": "44.04861", + "lon": "-73.45974", + "id": 158842498, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "44.05129", + "lon": "-73.46212", + "id": 106724 + } + ], + "matchStreet": 1 + }, + { + "name": "Port Ewen", + "lat": "41.90537", + "lon": "-73.97625", + "id": 158876303, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street (Connelly)", + "lat": "41.91063", + "lon": "-73.99247", + "id": 178519 + } + ], + "matchStreet": 1 + }, + { + "name": "Setauket", + "lat": "40.93555", + "lon": "-73.11888", + "id": 158813826, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Meadow Lane (Setauket-East Setauket)", + "lat": "40.89014", + "lon": "-73.09657", + "id": 279937 + }, + { + "name": "Spring Lane (East Setauket)", + "lat": "40.93537", + "lon": "-73.09438", + "id": 162496, + "intersectedStreets": [ + { + "name": "Peters Path (East Setauket)", + "lat": "40.93537", + "lon": "-73.09438" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Meredith", + "lat": "42.35842", + "lon": "-74.93433", + "id": 158843531, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Valley Road (Town of Meredith)", + "lat": "42.32140", + "lon": "-74.92796", + "id": 78740 + } + ], + "matchStreet": 1 + }, + { + "name": "Wolcott", + "lat": "43.22062", + "lon": "-76.81496", + "id": 158467728, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Green Road", + "lat": "43.20432", + "lon": "-76.76424", + "id": 192987 + } + ], + "matchStreet": 1 + }, + { + "name": "Greene", + "lat": "42.32924", + "lon": "-75.76992", + "id": 158553719, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Valley Road", + "lat": "42.36187", + "lon": "-75.77537", + "id": 98506 + } + ], + "matchStreet": 1 + }, + { + "name": "Connelly", + "lat": "41.91009", + "lon": "-73.99125", + "id": 158893684, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "41.91063", + "lon": "-73.99247", + "id": 178521 + } + ], + "matchStreet": 1 + }, + { + "name": "Mendon", + "lat": "42.99784", + "lon": "-77.50444", + "id": 158589566, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Wood Spring Hill", + "lat": "42.99302", + "lon": "-77.53159", + "id": 128554 + } + ], + "matchStreet": 1 + }, + { + "name": "North Salem", + "lat": "41.33482", + "lon": "-73.57123", + "id": 158836345, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Hill Road (Salem Center)", + "lat": "41.33732", + "lon": "-73.60801", + "id": 213330, + "intersectedStreets": [ + { + "name": "Delancey Road (Town of North Salem)", + "lat": "41.33730", + "lon": "-73.60602" + }, + { + "name": "Elizabeth Drive (Salem Center)", + "lat": "41.33993", + "lon": "-73.60904" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Lake Placid", + "lat": "44.27962", + "lon": "-73.97987", + "id": 158810726, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "44.27941", + "lon": "-73.98344", + "id": 106727 + } + ], + "matchStreet": 1 + }, + { + "name": "Warwick", + "lat": "41.25648", + "lon": "-74.35988", + "id": 158862955, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "41.25868", + "lon": "-74.36055", + "id": 200971 + } + ], + "matchStreet": 1 + }, + { + "name": "Chelsea", + "lat": "41.55371", + "lon": "-73.96681", + "id": 158859884, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "41.55168", + "lon": "-73.96807", + "id": 249364 + } + ], + "matchStreet": 1 + }, + { + "name": "East Randolph", + "lat": "42.17284", + "lon": "-78.94782", + "id": 158532200, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "42.16533", + "lon": "-78.95048", + "id": 90034 + } + ], + "matchStreet": 1 + }, + { + "name": "Roosevelt", + "lat": "40.67871", + "lon": "-73.58902", + "id": 158819939, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "40.67921", + "lon": "-73.58488", + "id": 225795 + } + ], + "matchStreet": 1 + }, + { + "name": "Tillson", + "lat": "41.82899", + "lon": "-74.06847", + "id": 158841443, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "41.83734", + "lon": "-74.06916", + "id": 178518 + } + ], + "matchStreet": 1 + }, + { + "name": "Chestnut Ridge", + "lat": "41.08408", + "lon": "-74.05567", + "id": 158799457, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Hill Terrace", + "lat": "41.07380", + "lon": "-74.06358", + "id": 242837, + "intersectedStreets": [ + { + "name": "Chestnut Ridge Road", + "lat": "41.07477", + "lon": "-74.06487" + }, + { + "name": "Orchard Court", + "lat": "41.07380", + "lon": "-74.06358" + }, + { + "name": "Brian Terrace", + "lat": "41.07130", + "lon": "-74.06158" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "West Sparta", + "lat": "42.62701", + "lon": "-77.77305", + "id": 158553701, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Rock Spring Hill Road", + "lat": "42.62790", + "lon": "-77.78749", + "id": 117891 + }, + { + "name": "Spring Road East", + "lat": "42.56925", + "lon": "-77.80621", + "id": 117651 + } + ], + "matchStreet": 1 + }, + { + "name": "Nissequogue", + "lat": "40.90399", + "lon": "-73.19789", + "id": 158826092, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Hollow Road", + "lat": "40.89707", + "lon": "-73.18017", + "id": 173397, + "intersectedStreets": [ + { + "name": "Frog Hollow", + "lat": "40.89686", + "lon": "-73.18040" + }, + { + "name": "Spring Hill Road", + "lat": "40.89622", + "lon": "-73.18135" + }, + { + "name": "Moriches Road", + "lat": "40.89279", + "lon": "-73.18757" + } + ] + }, + { + "name": "Spring Hill Road", + "lat": "40.89759", + "lon": "-73.18257", + "id": 184256, + "intersectedStreets": [ + { + "name": "Spring Hollow Road", + "lat": "40.89622", + "lon": "-73.18135" + } + ] + } + ], + "matchStreet": 1 + }, + { + "name": "Elka Park", + "lat": "42.15925", + "lon": "-74.15736", + "id": 158846572, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring access trail (yellow)", + "lat": "42.13727", + "lon": "-74.16235", + "id": 271053 + } + ], + "matchStreet": 1 + }, + { + "name": "Cuba", + "lat": "42.21757", + "lon": "-78.27529", + "id": 157560443, + "type": "VILLAGE", + "listOfStreets": [ + { + "name": "Spring Hill Road", + "lat": "42.21355", + "lon": "-78.25544", + "id": 83057 + }, + { + "name": "Spring Street", + "lat": "42.21704", + "lon": "-78.27016", + "id": 84103 + }, + { + "name": "Oil Spring Park Rd", + "lat": "42.23166", + "lon": "-78.30945", + "id": 82774 + } + ], + "matchStreet": 1 + }, + { + "name": "Chestertown", + "lat": "43.65257", + "lon": "-73.80096", + "id": 158821993, + "type": "HAMLET", + "listOfStreets": [ + { + "name": "Spring Street", + "lat": "43.65458", + "lon": "-73.79377", + "id": 189051 + } + ], + "matchStreet": 1 + } + ] +} \ No newline at end of file diff --git a/OsmAnd-java/src/test/resources/search/street_santa_clara.json b/OsmAnd-java/src/test/resources/search/street_santa_clara.json index 959745ebc6..48d7643a62 100644 --- a/OsmAnd-java/src/test/resources/search/street_santa_clara.json +++ b/OsmAnd-java/src/test/resources/search/street_santa_clara.json @@ -32,8 +32,7 @@ "Carrer Santa Clara, Castelló d'Empúries", "Carrer de Santa Clara, Vilafranca del Penedès", "Carrer de Santa Clara, Castelló d'Empúries", - "Carrer Clara Campoamor, Santa Coloma de Gramenet", - "Santa Clara" + "Carrer Clara Campoamor, Santa Coloma de Gramenet" ], "amenities": [ { From 6a8d8b91e47afdf055b7b2bef3e7cc90f583773d Mon Sep 17 00:00:00 2001 From: crimean Date: Tue, 16 Jul 2019 22:07:56 +0300 Subject: [PATCH 2/2] Fix gpx layer. Fix travel menu. --- .../controllers/WptPtMenuController.java | 28 +++------ .../src/net/osmand/plus/views/GPXLayer.java | 2 +- .../menu/WikivoyageWptPtMenuBuilder.java | 34 +++++------ .../menu/WikivoyageWptPtMenuController.java | 57 ++++++++++++------- 4 files changed, 59 insertions(+), 62 deletions(-) diff --git a/OsmAnd/src/net/osmand/plus/mapcontextmenu/controllers/WptPtMenuController.java b/OsmAnd/src/net/osmand/plus/mapcontextmenu/controllers/WptPtMenuController.java index 6bcf70484a..88fb42dd98 100644 --- a/OsmAnd/src/net/osmand/plus/mapcontextmenu/controllers/WptPtMenuController.java +++ b/OsmAnd/src/net/osmand/plus/mapcontextmenu/controllers/WptPtMenuController.java @@ -3,12 +3,10 @@ package net.osmand.plus.mapcontextmenu.controllers; import android.graphics.drawable.Drawable; import android.support.annotation.NonNull; import android.support.v4.content.ContextCompat; -import android.util.Log; -import net.osmand.GPXUtilities; +import net.osmand.GPXUtilities.WptPt; import net.osmand.data.LatLon; import net.osmand.data.PointDescription; -import net.osmand.GPXUtilities.WptPt; import net.osmand.plus.GpxSelectionHelper; import net.osmand.plus.GpxSelectionHelper.SelectedGpxFile; import net.osmand.plus.MapMarkersHelper; @@ -18,30 +16,26 @@ import net.osmand.plus.activities.MapActivity; import net.osmand.plus.base.FavoriteImageDrawable; import net.osmand.plus.mapcontextmenu.MenuBuilder; import net.osmand.plus.mapcontextmenu.MenuController; -import net.osmand.plus.mapcontextmenu.builders.WptPtMenuBuilder; import net.osmand.plus.wikivoyage.menu.WikivoyageWptPtMenuBuilder; import net.osmand.plus.wikivoyage.menu.WikivoyageWptPtMenuController; import net.osmand.util.Algorithms; import java.io.File; -import java.util.Map; public class WptPtMenuController extends MenuController { private WptPt wpt; private MapMarker mapMarker; - private MapActivity mapActivity; public WptPtMenuController(@NonNull MenuBuilder menuBuilder, @NonNull MapActivity mapActivity, @NonNull PointDescription pointDescription, @NonNull final WptPt wpt) { super(menuBuilder, pointDescription, mapActivity); this.wpt = wpt; - this.mapActivity = mapActivity; - - final MapMarkersHelper markersHelper = mapActivity.getMyApplication().getMapMarkersHelper(); + MapMarkersHelper markersHelper = mapActivity.getMyApplication().getMapMarkersHelper(); mapMarker = markersHelper.getMapMarker(wpt); if (mapMarker == null) { mapMarker = markersHelper.getMapMarker(new LatLon(wpt.lat, wpt.lon)); - } else { + } + if (mapMarker != null) { MapMarkerMenuController markerMenuController = new MapMarkerMenuController(mapActivity, mapMarker.getPointDescription(mapActivity), mapMarker); leftTitleButtonController = markerMenuController.getLeftTitleButtonController(); @@ -145,16 +139,12 @@ public class WptPtMenuController extends MenuController { return ""; } } - + public static WptPtMenuController getInstance(@NonNull MapActivity mapActivity, @NonNull PointDescription pointDescription, @NonNull final WptPt wpt) { - SelectedGpxFile selectedGpxFile = mapActivity.getMyApplication().getSelectedGpxHelper().getSelectedGPXFile(wpt); - GPXUtilities.GPXFile gpxFile = selectedGpxFile != null ? selectedGpxFile.getGpxFile() : null; - GPXUtilities.Metadata metadata = gpxFile != null ? gpxFile.metadata : null; - Map extensions = metadata != null ? metadata.getExtensionsToRead() : null; - String metadataDesc = extensions != null ? metadata.getExtensionsToRead().get("desc") : null; - if (metadataDesc != null && metadataDesc.contains("wikivoyage.org/")) { - return new WikivoyageWptPtMenuController(new WikivoyageWptPtMenuBuilder(mapActivity, wpt), mapActivity, pointDescription, wpt, gpxFile); + WptPtMenuController controller = WikivoyageWptPtMenuController.getInstance(mapActivity, pointDescription, wpt); + if (controller == null) { + controller = new WptPtMenuController(new WikivoyageWptPtMenuBuilder(mapActivity, wpt), mapActivity, pointDescription, wpt); } - return new WptPtMenuController(new WptPtMenuBuilder(mapActivity, wpt), mapActivity, pointDescription, wpt); + return controller; } } \ No newline at end of file diff --git a/OsmAnd/src/net/osmand/plus/views/GPXLayer.java b/OsmAnd/src/net/osmand/plus/views/GPXLayer.java index 0e06f509f4..8cf1b8182d 100644 --- a/OsmAnd/src/net/osmand/plus/views/GPXLayer.java +++ b/OsmAnd/src/net/osmand/plus/views/GPXLayer.java @@ -395,7 +395,7 @@ public class GPXLayer extends OsmandMapLayer implements ContextMenuLayer.IContex } else { color = getPointColor(o, fileColor); } - paintIcon.setColorFilter(new PorterDuffColorFilter(color, PorterDuff.Mode.MULTIPLY)); + paintIcon.setColorFilter(new PorterDuffColorFilter(color | 0xff000000, PorterDuff.Mode.MULTIPLY)); canvas.drawBitmap(pointSmall, x - pointSmall.getWidth() / 2, y - pointSmall.getHeight() / 2, paintIcon); smallObjectsLatLon.add(new LatLon(o.lat, o.lon)); } else { diff --git a/OsmAnd/src/net/osmand/plus/wikivoyage/menu/WikivoyageWptPtMenuBuilder.java b/OsmAnd/src/net/osmand/plus/wikivoyage/menu/WikivoyageWptPtMenuBuilder.java index 3a072a0251..fc5294e7be 100644 --- a/OsmAnd/src/net/osmand/plus/wikivoyage/menu/WikivoyageWptPtMenuBuilder.java +++ b/OsmAnd/src/net/osmand/plus/wikivoyage/menu/WikivoyageWptPtMenuBuilder.java @@ -3,7 +3,7 @@ package net.osmand.plus.wikivoyage.menu; import android.support.annotation.NonNull; import android.view.View; -import net.osmand.GPXUtilities; +import net.osmand.GPXUtilities.WptPt; import net.osmand.plus.R; import net.osmand.plus.activities.MapActivity; import net.osmand.plus.mapcontextmenu.builders.WptPtMenuBuilder; @@ -12,35 +12,27 @@ import net.osmand.util.Algorithms; import java.util.HashMap; public class WikivoyageWptPtMenuBuilder extends WptPtMenuBuilder { - final String KEY_PHONE = "Phone: "; - final String KEY_EMAIL = "Email: "; - final String KEY_WORKING_HOURS = "Working hours: "; - final String KEY_PRICE = "Price: "; - final String KEY_DIRECTIONS = "Directions: "; - final String KEY_OTHER_DESCRIPTION = "Other description"; + private final static String KEY_PHONE = "Phone: "; + private final static String KEY_EMAIL = "Email: "; + private final static String KEY_WORKING_HOURS = "Working hours: "; + private final static String KEY_PRICE = "Price: "; + private final static String KEY_DIRECTIONS = "Directions: "; + private final static String KEY_DESCRIPTION = "Description"; - public WikivoyageWptPtMenuBuilder(@NonNull MapActivity mapActivity, @NonNull GPXUtilities.WptPt wpt) { + public WikivoyageWptPtMenuBuilder(@NonNull MapActivity mapActivity, @NonNull WptPt wpt) { super(mapActivity, wpt); } @Override - protected void prepareDescription(final GPXUtilities.WptPt wpt, View view) { - String description = wpt.desc; - - if (!description.contains("\n")) { - super.prepareDescription(wpt, view); - return; - } - - HashMap descTokens = getDescriptionTokens(description, KEY_PHONE, KEY_EMAIL, KEY_WORKING_HOURS, KEY_PRICE, KEY_DIRECTIONS); - + protected void prepareDescription(final WptPt wpt, View view) { + HashMap descTokens = getDescriptionTokens(wpt.desc, KEY_PHONE, KEY_EMAIL, KEY_WORKING_HOURS, KEY_PRICE, KEY_DIRECTIONS); String phones = descTokens.get(KEY_PHONE); String emails = descTokens.get(KEY_EMAIL); String workingHours = descTokens.get(KEY_WORKING_HOURS); String price = descTokens.get(KEY_PRICE); String direction = descTokens.get(KEY_DIRECTIONS); - final String desc = descTokens.get(KEY_OTHER_DESCRIPTION); + final String desc = descTokens.get(KEY_DESCRIPTION); if (!Algorithms.isEmpty(desc)) { buildRow(view, R.drawable.ic_action_note_dark, null, desc, 0, false, null, true, 10, false, null, false); } @@ -89,8 +81,8 @@ public class WikivoyageWptPtMenuBuilder extends WptPtMenuBuilder { } } if (!matched) { - String s = mTokens.get(KEY_OTHER_DESCRIPTION); - mTokens.put(KEY_OTHER_DESCRIPTION, s != null ? s + "\n" + token : token); + String s = mTokens.get(KEY_DESCRIPTION); + mTokens.put(KEY_DESCRIPTION, s != null ? s + "\n" + token : token); } } return mTokens; diff --git a/OsmAnd/src/net/osmand/plus/wikivoyage/menu/WikivoyageWptPtMenuController.java b/OsmAnd/src/net/osmand/plus/wikivoyage/menu/WikivoyageWptPtMenuController.java index 10ab32b2b5..7331623a6c 100644 --- a/OsmAnd/src/net/osmand/plus/wikivoyage/menu/WikivoyageWptPtMenuController.java +++ b/OsmAnd/src/net/osmand/plus/wikivoyage/menu/WikivoyageWptPtMenuController.java @@ -1,41 +1,56 @@ package net.osmand.plus.wikivoyage.menu; import android.support.annotation.NonNull; +import android.support.annotation.Nullable; import android.text.TextUtils; -import net.osmand.GPXUtilities; +import net.osmand.GPXUtilities.GPXFile; +import net.osmand.GPXUtilities.Metadata; +import net.osmand.GPXUtilities.WptPt; import net.osmand.data.PointDescription; -import net.osmand.plus.GpxSelectionHelper; -import net.osmand.plus.OsmandApplication; +import net.osmand.plus.GpxSelectionHelper.SelectedGpxFile; import net.osmand.plus.R; import net.osmand.plus.activities.MapActivity; -import net.osmand.plus.mapcontextmenu.MenuBuilder; import net.osmand.plus.mapcontextmenu.controllers.WptPtMenuController; import net.osmand.plus.wikivoyage.article.WikivoyageArticleDialogFragment; import net.osmand.plus.wikivoyage.data.TravelArticle; public class WikivoyageWptPtMenuController extends WptPtMenuController { - public WikivoyageWptPtMenuController(@NonNull MenuBuilder menuBuilder, @NonNull final MapActivity mapActivity, @NonNull PointDescription pointDescription, @NonNull GPXUtilities.WptPt wpt, GPXUtilities.GPXFile gpxFile) { - super(menuBuilder, mapActivity, pointDescription, wpt); - GPXUtilities.Metadata metadata = gpxFile != null ? gpxFile.metadata : null; - final TravelArticle article = metadata != null ? getTravelArticle(metadata) : null; - if (article != null) { - leftTitleButtonController = new TitleButtonController() { - @Override - public void buttonPressed() { - WikivoyageArticleDialogFragment.showInstance(mapActivity.getMyApplication(), mapActivity.getSupportFragmentManager(), article.getTripId(), article.getLang()); + + private WikivoyageWptPtMenuController(@NonNull MapActivity mapActivity, @NonNull PointDescription pointDescription, @NonNull WptPt wpt, @NonNull TravelArticle article) { + super(new WikivoyageWptPtMenuBuilder(mapActivity, wpt), mapActivity, pointDescription, wpt); + final long tripId = article.getTripId(); + final String lang = article.getLang(); + leftTitleButtonController = new TitleButtonController() { + @Override + public void buttonPressed() { + MapActivity mapActivity = getMapActivity(); + if (mapActivity != null) { + WikivoyageArticleDialogFragment.showInstance(mapActivity.getMyApplication(), + mapActivity.getSupportFragmentManager(), tripId, lang); } - }; - leftTitleButtonController.caption = mapActivity.getString(R.string.context_menu_read_article); - leftTitleButtonController.leftIconId = R.drawable.ic_action_read_text; - } + } + }; + leftTitleButtonController.caption = mapActivity.getString(R.string.context_menu_read_article); + leftTitleButtonController.leftIconId = R.drawable.ic_action_read_text; } - private TravelArticle getTravelArticle(@NonNull GPXUtilities.Metadata metadata) { - String title = metadata.getArticleTitle(); - String lang = metadata.getArticleLang(); + private static TravelArticle getTravelArticle(@NonNull MapActivity mapActivity, @NonNull WptPt wpt) { + SelectedGpxFile selectedGpxFile = mapActivity.getMyApplication().getSelectedGpxHelper().getSelectedGPXFile(wpt); + GPXFile gpxFile = selectedGpxFile != null ? selectedGpxFile.getGpxFile() : null; + Metadata metadata = gpxFile != null ? gpxFile.metadata : null; + String title = metadata != null ? metadata.getArticleTitle() : null; + String lang = metadata != null ? metadata.getArticleLang() : null; if (!TextUtils.isEmpty(title) && !TextUtils.isEmpty(lang)) { - return getMapActivity().getMyApplication().getTravelDbHelper().getArticle(title, lang); + return mapActivity.getMyApplication().getTravelDbHelper().getArticle(title, lang); + } + return null; + } + + public static WptPtMenuController getInstance(@NonNull MapActivity mapActivity, @NonNull PointDescription pointDescription, @NonNull WptPt wpt) { + TravelArticle travelArticle = getTravelArticle(mapActivity, wpt); + if (travelArticle != null) { + return new WikivoyageWptPtMenuController(mapActivity, pointDescription, wpt, travelArticle); } return null; }