{"felt":{"current_user":{},"referer":null,"urls":{"api":"/api","dashboard":"/maps","marketing":"/product","newMap":"/map/new"},"teams":[],"isAdmin":false,"curated_layers_enabled":true,"felt_version":"51","amplitudeAnalyticsId":"d01926b917624c9f002b79f6016c7213","buildSha":"ab23da59a0e61753d66372d64365dcff2d54b8e8","canPurchasePlan":true,"commonAnalyticsProperties":{"feature_flags":["ff_lightning_sync","ff_measure_anywhere","ff_multi_dataset_queries","ff_offline","ff_raster_analysis","ff_super_measurements"],"native_app_device_model":null,"native_app_os_version":null,"native_app_platform":null,"native_app_version":null,"platform_source":"web"},"featureFlags":{"ff_extensions_use_next_sdk":false,"felt_is_up":true,"ff_change_attribute_type":false,"ff_download_pmtiles":false,"ff_fall_2026_pricing":false,"ff_isr":false,"ff_lightning_sync":true,"ff_measure_anywhere":true,"ff_more_components":false,"ff_multi_dataset_queries":true,"ff_offline":true,"ff_raster_analysis":true,"ff_super_measurements":true,"ff_timeseries_animation":false,"ff_travel_time":false,"ff_travel_time_measurement":false,"ff_use_our_tiles":false},"layerAttrConstraints":{"maxNameLength":300},"loadedAt":1790672307,"mapbox_api_token":"pk.eyJ1IjoiZmVsdG1hcHMiLCJhIjoiY20wZndoenl1MTFrYzJxb2czemdpNGFvZCJ9.y7NzVOMNQNTC487xOYTk7Q","maxImageFileSizeBytes":20000000,"resyncTimeoutMs":5250,"socketTokenTTLSeconds":1209600,"supportsNewMap":true,"validMapImageMimeTypes":["application/pdf","application/postscript","application/x-photoshop","image/apng","image/avif","image/bmp","image/heic","image/heif","image/jp2","image/jpeg","image/jpm","image/jpx","image/jxr","image/pict","image/pjpeg","image/png","image/svg+xml","image/vnd.adobe.photoshop","image/vnd.microsoft.icon","image/webp","image/x-icns","image/x-icon","image/x-pict"],"onboardingNeeded":[],"flashMessages":[]},"karta":{"shareUrl":"https://felt.com/map/ShotSpotter-Microphone-Locations-from-Wired-Article-7vP9A0VIUTSO0BSG9C0BhxkA","mapLinks":[],"partnerBranding":null,"hasPendingAccessRequest":false,"scripts":[],"checkerboardTiles":true,"isTrainingKarta":false,"sharedChat":null,"printLayouts":[],"customIcons":[],"showBasemapLabels":true,"updatedAtUnixMs":1736480065000,"defaultCoordinates":{"lat":37.807,"lng":-122.271},"mapImages":[],"mapProject":null,"isVirtualKarta":false,"canonicalPath":"/map/ShotSpotter-Microphone-Locations-from-Wired-Article-7vP9A0VIUTSO0BSG9C0BhxkA","isAdminView":false,"settings":{"path":"/map/ShotSpotter-Microphone-Locations-from-Wired-Article-7vP9A0VIUTSO0BSG9C0BhxkA","url":"https://felt.com/map/ShotSpotter-Microphone-Locations-from-Wired-Article-7vP9A0VIUTSO0BSG9C0BhxkA","viewers":{"allowExport":false,"dataTable":true,"defaultTableLayerId":null,"duplicateMap":true,"seeMapPresence":true},"mapDescription":null,"mapTitle":"ShotSpotter Microphone Locations from Wired Article"},"constraints":{"bounds":null,"maxZoom":null,"minZoom":null},"mapBackgrounds":[],"selectedDefaultBackgroundMode":"dark","selectedBackgroundId":null,"isOwner":false,"accessControl2":{"view":{"canDownloadMap":false,"canDuplicate":false,"canExportLayers":false,"canExportMap":false},"edit":{"canAdjustMaxInheritedPermission":false,"canChangePublicSharingSettings":false,"canDeleteMap":false,"canEditLayerComponents":false,"canEditMapContents":false,"canEditMapElements":false,"canEditMapLayerFeatures":false,"canEditMapLayers":false,"canEnterContributeMode":false,"canEnterEditMode":false,"canInviteUsers":false,"canMove":false,"canUseAiAgents":false},"comments":{"canAttachPhotosToComments":false,"canCreateThread":false,"canDeleteAnyComment":false,"canDeleteOwnComment":false,"canEditOwnComment":false,"canExportComments":false,"canMoveAnyThread":false,"canMoveOwnThread":false,"canReplyToThread":false,"canResolveAnyComment":false,"canResolveOwnComment":false,"canTrackReadStatus":false,"canViewAllThreads":false,"cannotCommentBecauseBasicViewer":false},"teams":{"canAddSources":false,"canDeletePublishedLayer":false,"canPublishLayer":false},"kartaTeamMemberIds":[]},"embedConfig":null,"pendingAccessRequestApproval":null,"pendingAccessRequests":[],"sharing":{"maxInheritedPermission":"none","publicAccess":"view_only"},"defaultControlsMode":null,"mapId":"eef3fdd1-5214-4d23-b405-21bfd0187190","createMapParams":null,"elements":[{"textStyle":"light","onClick":null,"fillOpacity":null,"position":[37.63797477179696,-134.3306090882997],"showLength":null,"size":null,"mapLinkId":null,"showLinkPreview":null,"author":"6f6779fe-4a5e-4266-9485-d37d6c616363","attributes":[],"widthScale":1,"label":null,"zoom":4.531,"radiusDisplayUnit":null,"opacity":null,"icon":null,"clipSource":null,"symbol":null,"hasLongDescription":null,"showRadius":null,"scale":1.1785966084253716,"isHidden":null,"mapImageId":null,"hideFromLegend":null,"text":"Wired published an article analyzing a leaked database of ShotSpotter microphone locations allegedgly created late last year. Wired redacted some of these in their map due to privacy concerns.\n\nStory: https://www.wired.com/story/shotspotter-secret-sensor-locations-leak/\n\nThey published the map via Flourish Studio which embeds all of the data in json format into the source code. I extracted the json, converted it into a csv, and uploaded here.","ordering":1708664983801475,"showEndcaps":null,"isTextHidden":null,"isCollapsed":null,"frame":null,"routeMode":null,"strokeStyle":null,"radiusDisplayAngle":90,"description":null,"renderHoles":null,"parentId":null,"color":"#C93535","textAlign":"left","coordinates":[[[26.1759232,-143.2919051],[26.1759232,-125.369313],[47.5719298,-125.369313],[47.5719298,-143.2919051],[26.1759232,-143.2919051]]],"id":"86c9050d-f9fb-4ade-b210-73a68a9ef72f","rotation":0,"showArea":null,"createdAtUnixTimeMs":1708665004000,"strokeOpacity":null,"type":"Note","locked":false,"radius":null,"strokeWidth":null}],"editableByCurrentSession":false,"mapUrls":{"data":"/map/ShotSpotter-Microphone-Locations-from-Wired-Article-7vP9A0VIUTSO0BSG9C0BhxkA/data_v2.json","export":"https://felt.com/map/export/eef3fdd1-5214-4d23-b405-21bfd0187190","embed":"https://felt.com/embed/map/ShotSpotter-Microphone-Locations-from-Wired-Article-7vP9A0VIUTSO0BSG9C0BhxkA","login":"/login/map/eef3fdd1-5214-4d23-b405-21bfd0187190","appHomeForKarta":"/maps/contains/eef3fdd1-5214-4d23-b405-21bfd0187190","dataTroubleshooting":"https://help.felt.com/upload-anything/troubleshooting","exportComments":"https://felt.com/map/export/eef3fdd1-5214-4d23-b405-21bfd0187190/comments","signup":"/signup/map/eef3fdd1-5214-4d23-b405-21bfd0187190","supportedFormats":"https://help.felt.com/upload-anything/files"},"defaultZoom":14.0,"socketTokenUrl":null,"mapFolderId":null,"kartaTeamId":"e9f8875b-ae3f-4eaa-9c51-815ceb436657","widgets":[],"satelliteMode":false,"ghostPresences":[],"folderId":null,"comments":{"threads":[],"users":{}},"layerGroups":[{"id":"41618b24-aa93-4f52-ade9-f877822618f8","name":"Microphone Locations","visible":true,"description":"","created_at":"2024-02-23T05:02:18","subtitle":"","layers":[{"min_zoom":0,"excerpt_url":"https://us1.data-pipeline.felt.com/b5e4156f-313c-4dbd-a583-72d400004453/excerpt/excerpt.json","geomatch_metadata":null,"edit_delta_url":"https://us1.data-pipeline.felt.com/edit-delta/b5e4156f-313c-4dbd-a583-72d400004453.json{?query}","legendVisibility":"show","raster_details":null,"processing_time_seconds":24,"is_spreadsheet":true,"pipeline_version":"0.35.11005","raster_preview_url":null,"pipeline_dataset_id":"b5e4156f-313c-4dbd-a583-72d400004453","source_id":null,"feature_url":"https://us1.data-pipeline.felt.com/onefeature/b5e4156f-313c-4dbd-a583-72d400004453/{feature}.geojson{?skip_geometry,zoom_level}","semantic_columns":[],"geocoder_metadata":null,"visible":true,"ls_layer_id":null,"z_order":0,"stats":[],"legend_items":[{"id":"5c9b0a83-69c9-4917-9391-ee85f92a368b-0","visible":true}],"next_processing_state":null,"external_refresh_frequency_ms":null,"modified_at":"2025-08-26T19:40:26","maximum_bounding_box":{"coordinates":[[[-122.445328,-85.051129],[122.391761,-85.051129],[122.391761,45.0511679],[-122.445328,45.0511679],[-122.445328,-85.051129]]],"crs":{"properties":{"name":"EPSG:4326"},"type":"name"},"type":"Polygon"},"legendDisplay":"default","has_download_url":true,"source_has_custom_query":false,"scheduled_refresh_status":null,"geometry_type":"Point","runCause":"reprocess","status":"completed","html_popup_source":null,"parsed_size_bytes":8867840,"tile_url":"https://us1.data-pipeline.felt.com/vectortile/b5e4156f-313c-4dbd-a583-72d400004453/{z}/{x}/{y}.pbf{?attributes,layer,query}","curated_layer":false,"column_selections":[{"type":"lng","column":"lon"},{"type":"lat","column":"lat"}],"multi_select_selected":null,"tagged_user_ids":[],"errorMessage":null,"hideFromLegend":null,"h3_levels":[11,22,52,96,143,262,564,1647,6106,17928,20123,20184,20212,20242,20242,20242],"progress":100,"raster_colors":null,"tile_max_zoom":8,"hash_url":"https://us1.data-pipeline.felt.com/hash/{hash}","layer_name":"parsed","edit_version":null,"remote_data_url":null,"created_at":"2024-02-23T05:02:58","created_by":"Ian Servin","last_refresh_checked_at":null,"unlinked_from_ls_layer_id":null,"filtered_row_count":null,"normalized":{"filename":"locations.csv","feature_id_field":null,"filetype":"GeoPackage","layername":"locations"},"pending_fork_operation":false,"h3_geomatched_level":null,"initial_stroke_color":null,"id":"5c9b0a83-69c9-4917-9391-ee85f92a368b","name":"Microphone Locations","scheduled_refresh_frequency":null,"subtitle":"","source_dataset_id":null,"centroids_layer_name":null,"data_last_updated_by_user_at":"2024-02-23T05:02:58","initial_fill_color":null,"bounding_box":{"coordinates":[[[-122.445328,-85.051129],[122.391761,-85.051129],[122.391761,45.0511679],[-122.445328,45.0511679],[-122.445328,-85.051129]]],"crs":{"properties":{"name":"EPSG:4326"},"type":"name"},"type":"Polygon"},"style":{"config":{"labelAttribute":["lat"]},"label":{"color":"auto","fontSize":13,"fontStyle":"Normal","fontWeight":500,"haloColor":"auto","haloWidth":1,"justify":"auto","letterSpacing":0,"lineHeight":1.2,"maxLineChars":10,"maxZoom":23,"minZoom":23,"offset":[8,8],"padding":2,"placement":"auto","textTransform":"none","visible":false},"legend":{},"paint":{"color":"#efe6a8","intensity":0.5,"opacity":0.9,"size":10,"strokeColor":"auto","strokeWidth":1},"type":"simple","version":"2.3.1"},"max_zoom":18,"stac_url":null,"stats_url":"https://us1.data-pipeline.felt.com/b5e4156f-313c-4dbd-a583-72d400004453/stats/stats.json","table":{"name":"parsed","columns":[{"autocomplete_url":"https://us1.data-pipeline.felt.com/autocomplete/b5e4156f-313c-4dbd-a583-72d400004453/0/1.json{?query}","count":22471,"count_distinct":20179,"max":45.0511683333,"median":39.1514883333,"min":-9999.0,"name":"lat","stats_url":"https://us1.data-pipeline.felt.com/stats/b5e4156f-313c-4dbd-a583-72d400004453/0.json{?query}","type":"REAL","values":{"-9999.0":8,"41.7254083333":5,"41.7508233333":5,"41.753722":5,"41.756595":5,"41.7578033333":5,"41.7584933333":5,"41.7601883333":7,"41.789845":5,"41.7908733333":5,"41.7917783333":5}},{"autocomplete_url":"https://us1.data-pipeline.felt.com/autocomplete/b5e4156f-313c-4dbd-a583-72d400004453/1/1.json{?query}","count":22471,"count_distinct":20213,"max":122.391761,"median":-83.526705,"min":-9999.0,"name":"lon","stats_url":"https://us1.data-pipeline.felt.com/stats/b5e4156f-313c-4dbd-a583-72d400004453/1.json{?query}","type":"REAL","values":{"-87.6220466667":6,"-87.62454":5,"-87.6248466667":5,"-87.6258616667":5,"-87.6262633333":5,"-87.626925":5,"-87.6301916667":5,"-87.6323083333":5,"-87.63419":5,"-87.634475":6,"-9999.0":8}},{"autocomplete_url":"https://us1.data-pipeline.felt.com/autocomplete/b5e4156f-313c-4dbd-a583-72d400004453/2/1.json{?query}","count":22471,"count_distinct":304,"name":"metadata-1","stats_url":"https://us1.data-pipeline.felt.com/stats/b5e4156f-313c-4dbd-a583-72d400004453/2.json{?query}","type":"TEXT","values":{"ChicagoILDistrict25":298,"ChicagoILDistrict3":256,"ChicagoILDistrict5":248,"ChicagoILDistrict7":196,"ChicagoILDistrict830":203,"ChicagoILDistrict9":316,"DanRyanExpresswayIL":222,"DetroitMIPrecinct9":202,"OaklandCA":253,"QueensNYJamaica":200,"USVIStCroix":276}},{"autocomplete_url":"https://us1.data-pipeline.felt.com/autocomplete/b5e4156f-313c-4dbd-a583-72d400004453/3/1.json{?query}","count":22471,"count_distinct":85,"name":"metadata-2","stats_url":"https://us1.data-pipeline.felt.com/stats/b5e4156f-313c-4dbd-a583-72d400004453/3.json{?query}","type":"TEXT","values":{"":813,"Albuquerque, NM":721,"Chicago-Naperville-Elgin, IL-IN":3568,"Denver-Aurora-Centennial, CO":445,"Las Vegas-Henderson-North Las Vegas, NV":426,"Miami-Fort Lauderdale-West Palm Beach, FL":1724,"New York-Newark-Jersey City, NY-NJ":2419,"Pittsburgh, PA":547,"San Francisco-Oakland-Fremont, CA":856,"San Juan-Bayam��n-Caguas, PR":783,"Washington-Arlington-Alexandria, DC-VA-MD-WV":521}}],"row_count":22471,"content_url":"https://us1.data-pipeline.felt.com/table/b5e4156f-313c-4dbd-a583-72d400004453/{page}.json{?query}"},"index_json_url":"https://us1.data-pipeline.felt.com/upload/930f9c40-ea79-53cd-8a57-95b10000554c.json","errorType":null,"last_processed_at":"2024-12-10T21:21:44"}],"created_by":"Ian Servin","user_id":"6f6779fe-4a5e-4266-9485-d37d6c616363","ls_server_id":null,"index_json_url":"https://us1.data-pipeline.felt.com/upload/930f9c40-ea79-53cd-8a57-95b10000554c.json","progress_percent":100,"z_order":3,"max_zoom":18,"modified_at":"2024-03-05T23:50:22","isCollapsed":false,"hideFromLegend":null,"errorType":null,"errorMessage":null,"thumbnailUrl":null,"visibilityInteraction":"checkbox","created_at_unix_time_ms":1708664538000,"duplicatedFromId":null,"legendVisibility":"show","renderAsLayer":true}],"customViewport":{"latitude":37.59755874629287,"longitude":-101.88704310727246,"zoom":4.298},"viewerPermissionInfo":{"directInvitePermission":null,"effectivePermission":"view_only","effectiveSource":"public_access"},"individualPermissions":[],"thumbnailUrl":"https://d3a9fdbxbk3c9v.cloudfront.net/73fa18b9-695d-46b3-8fe4-15bbf1c25789.jpg","layerProcessingEmailSubscriptions":[],"channelId":"anonymous_map:eef3fdd1-5214-4d23-b405-21bfd0187190","authors":{"6f6779fe-4a5e-4266-9485-d37d6c616363":{"name":"Ian Servin"}},"actions":[],"layerTaggedUsers":[],"mapTeamId":null},"workspace":{"sources":[],"urls":{"workspaceUsage":"/maps/Ian-Servins-Team-6fiHW649CTqqcUYFc60NmVD/usage"},"brandColor":null,"hideFeltLogoInEmbeds":false,"folderTree":[],"workspaceAnalyticsProperties":{"feature_flags":["ff_lightning_sync","ff_measure_anywhere","ff_multi_dataset_queries","ff_offline","ff_raster_analysis","ff_super_measurements"],"workspace_id":"e9f8875b-ae3f-4eaa-9c51-815ceb436657","workspace_name":"Ian Servin's Team","workspace_plan":"personal","workspace_age_days":1058},"allowedFeatures":{"publicSources":false,"streamCogs":false,"uploadLayer":false,"workspaceLibrary":false,"iframePopups":false,"checkerboardTiles":true,"viewerExportData":false,"h3":false,"nonCheckerboardedTiles":false,"printLayouts":false,"extensions":false,"customIcons":false,"sdk":false,"embedActionCustomization":false,"enterprisePipelineExports":false,"embedTokens":false,"advancedDataExport":false,"filters":false,"selfServeAddons":false,"basicViewerLicenses":false,"stacSource":false,"deleteDraftsOnUserRemoval":true,"basicDataExport":false,"basicPipelineExports":false,"usageDashboard":false,"aiCreationAndAnalysis":false,"liveLayers":false,"embeds":false,"streamVectorTiles":false,"createLayerFromColumns":false,"createNewLightningServerPaywalled":true,"sameDomainJoin":false,"mcp":false,"commentsAttachedMedia":false,"imageExport":false,"basicExports":false,"editableLayers":false,"liveRefreshDaily":false,"contributorLicenses":false,"advancedExports":false,"mapActions":false,"liveRefreshHourly":false,"sources":false,"commentExport":false,"editTracking":false,"widgets":false,"offlineMaps":false,"updateEnterpriseSettings":false,"multipleFeltServer":false,"liveRefreshQuarterHourly":false,"bucketSources":false,"commentsAttachedData":false,"printStudio":false,"transformations":false,"enterpriseExports":false,"advancedForms":false,"workspaceBranding":false,"selfServeCheckout":false,"restApi":false},"currentTeamBannerAcknowledgement":{"plan":null,"plan_name":null,"acknowledged":true},"teamAdminEmails":[],"workspaceBilling":{"plan_limits":{"processing_bytes":0,"editor_limit":3,"contributor_limit":0,"viewer_limit":22,"member_limit":25,"storage_bytes":0,"api_calls":0,"map_views":5000,"data_connection_limit":0,"ai_credits":0},"limits_enforced":true,"next_monthly_cycle_start":1790812800000,"plan_data_usage":{"data_processing":0,"data_storage":281226032},"featureGroups":{"enterprise_geocoding":false,"ai_agents":false,"cloud_sources":false,"dashboards":false,"app_development":false,"raster_infrastructure":false,"branding":false},"inGracePeriod":false}}}