Notice (8): Undefined index: searchdate [APP/Plugin/Core/Controller/Component/EventsComponent.php, line 80]Code Context$start_cond['$lt'] = new MongoDate(strtotime($this->params['searchdate']." 23:59:59"));if(!empty($this->params['days']))$start_cond['$lt'] = new MongoDate(strtotime($this->params['searchdate']." 23:59:59 + ".$this->params['days']." days")) ;$count = false $grouped = false $start_cond = array( '$gte' => object(MongoDate) { sec => (int) 1769752800 usec => (int) 0 } )EventsComponent::create_search_condition() - APP/Plugin/Core/Controller/Component/EventsComponent.php, line 80 EventsComponent::search() - APP/Plugin/Core/Controller/Component/EventsComponent.php, line 43 TtdController::process_rule() - APP/Controller/TtdController.php, line 174 TtdController::get_ttd_slots() - APP/Controller/TtdController.php, line 111 TtdController::view() - APP/Controller/TtdController.php, line 71 ReflectionMethod::invokeArgs() - [internal], line ?? Controller::invokeAction() - CORE/Cake/Controller/Controller.php, line 491 Dispatcher::_invoke() - CORE/Cake/Routing/Dispatcher.php, line 193 Dispatcher::dispatch() - CORE/Cake/Routing/Dispatcher.php, line 167 CakeObject::requestAction() - CORE/Cake/Core/CakeObject.php, line 104 Modules::render() - APP/Lib/Modules.php, line 23 include - APP/View/Elements/display.ctp, line 14 View::_evaluate() - CORE/Cake/View/View.php, line 971 View::_render() - CORE/Cake/View/View.php, line 933 View::render() - CORE/Cake/View/View.php, line 473 Controller::render() - CORE/Cake/Controller/Controller.php, line 963 AppController::renderPage() - APP/Controller/AppController.php, line 224 TownsController::displayTown() - APP/Controller/TownsController.php, line 11
Notice (8): Undefined index: searchdate [APP/Plugin/Core/Controller/Component/EventsComponent.php, line 80]Code Context$start_cond['$lt'] = new MongoDate(strtotime($this->params['searchdate']." 23:59:59"));if(!empty($this->params['days']))$start_cond['$lt'] = new MongoDate(strtotime($this->params['searchdate']." 23:59:59 + ".$this->params['days']." days")) ;$count = false $grouped = false $start_cond = array( '$gte' => object(MongoDate) { sec => (int) 1769752800 usec => (int) 0 } )EventsComponent::create_search_condition() - APP/Plugin/Core/Controller/Component/EventsComponent.php, line 80 EventsComponent::search() - APP/Plugin/Core/Controller/Component/EventsComponent.php, line 43 TtdController::process_rule() - APP/Controller/TtdController.php, line 174 TtdController::get_ttd_slots() - APP/Controller/TtdController.php, line 111 TtdController::view() - APP/Controller/TtdController.php, line 71 ReflectionMethod::invokeArgs() - [internal], line ?? Controller::invokeAction() - CORE/Cake/Controller/Controller.php, line 491 Dispatcher::_invoke() - CORE/Cake/Routing/Dispatcher.php, line 193 Dispatcher::dispatch() - CORE/Cake/Routing/Dispatcher.php, line 167 CakeObject::requestAction() - CORE/Cake/Core/CakeObject.php, line 104 Modules::render() - APP/Lib/Modules.php, line 23 include - APP/View/Elements/display.ctp, line 14 View::_evaluate() - CORE/Cake/View/View.php, line 971 View::_render() - CORE/Cake/View/View.php, line 933 View::render() - CORE/Cake/View/View.php, line 473 Controller::render() - CORE/Cake/Controller/Controller.php, line 963 AppController::renderPage() - APP/Controller/AppController.php, line 224 TownsController::displayTown() - APP/Controller/TownsController.php, line 11
Notice (8): Undefined index: searchdate [APP/Plugin/Core/Controller/Component/EventsComponent.php, line 80]Code Context$start_cond['$lt'] = new MongoDate(strtotime($this->params['searchdate']." 23:59:59"));if(!empty($this->params['days']))$start_cond['$lt'] = new MongoDate(strtotime($this->params['searchdate']." 23:59:59 + ".$this->params['days']." days")) ;$count = false $grouped = false $start_cond = array( '$gte' => object(MongoDate) { sec => (int) 1769752800 usec => (int) 0 } )EventsComponent::create_search_condition() - APP/Plugin/Core/Controller/Component/EventsComponent.php, line 80 EventsComponent::search() - APP/Plugin/Core/Controller/Component/EventsComponent.php, line 43 TtdController::process_rule() - APP/Controller/TtdController.php, line 174 TtdController::get_ttd_slots() - APP/Controller/TtdController.php, line 111 TtdController::view() - APP/Controller/TtdController.php, line 71 ReflectionMethod::invokeArgs() - [internal], line ?? Controller::invokeAction() - CORE/Cake/Controller/Controller.php, line 491 Dispatcher::_invoke() - CORE/Cake/Routing/Dispatcher.php, line 193 Dispatcher::dispatch() - CORE/Cake/Routing/Dispatcher.php, line 167 CakeObject::requestAction() - CORE/Cake/Core/CakeObject.php, line 104 Modules::render() - APP/Lib/Modules.php, line 23 include - APP/View/Elements/display.ctp, line 14 View::_evaluate() - CORE/Cake/View/View.php, line 971 View::_render() - CORE/Cake/View/View.php, line 933 View::render() - CORE/Cake/View/View.php, line 473 Controller::render() - CORE/Cake/Controller/Controller.php, line 963 AppController::renderPage() - APP/Controller/AppController.php, line 224 TownsController::displayTown() - APP/Controller/TownsController.php, line 11
Notice (8): Undefined index: searchdate [APP/Plugin/Core/Controller/Component/EventsComponent.php, line 80]Code Context$start_cond['$lt'] = new MongoDate(strtotime($this->params['searchdate']." 23:59:59"));if(!empty($this->params['days']))$start_cond['$lt'] = new MongoDate(strtotime($this->params['searchdate']." 23:59:59 + ".$this->params['days']." days")) ;$count = false $grouped = false $start_cond = array( '$gte' => object(MongoDate) { sec => (int) 1769752800 usec => (int) 0 } )EventsComponent::create_search_condition() - APP/Plugin/Core/Controller/Component/EventsComponent.php, line 80 EventsComponent::search() - APP/Plugin/Core/Controller/Component/EventsComponent.php, line 43 TtdController::process_rule() - APP/Controller/TtdController.php, line 174 TtdController::get_ttd_slots() - APP/Controller/TtdController.php, line 111 TtdController::view() - APP/Controller/TtdController.php, line 71 ReflectionMethod::invokeArgs() - [internal], line ?? Controller::invokeAction() - CORE/Cake/Controller/Controller.php, line 491 Dispatcher::_invoke() - CORE/Cake/Routing/Dispatcher.php, line 193 Dispatcher::dispatch() - CORE/Cake/Routing/Dispatcher.php, line 167 CakeObject::requestAction() - CORE/Cake/Core/CakeObject.php, line 104 Modules::render() - APP/Lib/Modules.php, line 23 include - APP/View/Elements/display.ctp, line 14 View::_evaluate() - CORE/Cake/View/View.php, line 971 View::_render() - CORE/Cake/View/View.php, line 933 View::render() - CORE/Cake/View/View.php, line 473 Controller::render() - CORE/Cake/Controller/Controller.php, line 963 AppController::renderPage() - APP/Controller/AppController.php, line 224 TownsController::displayTown() - APP/Controller/TownsController.php, line 11
Notice (8): Undefined index: searchdate [APP/Plugin/Core/Controller/Component/EventsComponent.php, line 80]Code Context$start_cond['$lt'] = new MongoDate(strtotime($this->params['searchdate']." 23:59:59"));if(!empty($this->params['days']))$start_cond['$lt'] = new MongoDate(strtotime($this->params['searchdate']." 23:59:59 + ".$this->params['days']." days")) ;$count = false $grouped = false $start_cond = array( '$gte' => object(MongoDate) { sec => (int) 1769752800 usec => (int) 0 } )EventsComponent::create_search_condition() - APP/Plugin/Core/Controller/Component/EventsComponent.php, line 80 EventsComponent::search() - APP/Plugin/Core/Controller/Component/EventsComponent.php, line 43 TtdController::process_rule() - APP/Controller/TtdController.php, line 193 TtdController::get_ttd_slots() - APP/Controller/TtdController.php, line 111 TtdController::view() - APP/Controller/TtdController.php, line 71 ReflectionMethod::invokeArgs() - [internal], line ?? Controller::invokeAction() - CORE/Cake/Controller/Controller.php, line 491 Dispatcher::_invoke() - CORE/Cake/Routing/Dispatcher.php, line 193 Dispatcher::dispatch() - CORE/Cake/Routing/Dispatcher.php, line 167 CakeObject::requestAction() - CORE/Cake/Core/CakeObject.php, line 104 Modules::render() - APP/Lib/Modules.php, line 23 include - APP/View/Elements/display.ctp, line 14 View::_evaluate() - CORE/Cake/View/View.php, line 971 View::_render() - CORE/Cake/View/View.php, line 933 View::render() - CORE/Cake/View/View.php, line 473 Controller::render() - CORE/Cake/Controller/Controller.php, line 963 AppController::renderPage() - APP/Controller/AppController.php, line 224 TownsController::displayTown() - APP/Controller/TownsController.php, line 11
Notice (8): Undefined index: searchdate [APP/Plugin/Core/Controller/Component/EventsComponent.php, line 80]Code Context$start_cond['$lt'] = new MongoDate(strtotime($this->params['searchdate']." 23:59:59"));if(!empty($this->params['days']))$start_cond['$lt'] = new MongoDate(strtotime($this->params['searchdate']." 23:59:59 + ".$this->params['days']." days")) ;$count = false $grouped = false $start_cond = array( '$gte' => object(MongoDate) { sec => (int) 1769752800 usec => (int) 0 } )EventsComponent::create_search_condition() - APP/Plugin/Core/Controller/Component/EventsComponent.php, line 80 EventsComponent::search() - APP/Plugin/Core/Controller/Component/EventsComponent.php, line 43 TtdController::process_rule() - APP/Controller/TtdController.php, line 174 TtdController::get_ttd_slots() - APP/Controller/TtdController.php, line 111 TtdController::view() - APP/Controller/TtdController.php, line 71 ReflectionMethod::invokeArgs() - [internal], line ?? Controller::invokeAction() - CORE/Cake/Controller/Controller.php, line 491 Dispatcher::_invoke() - CORE/Cake/Routing/Dispatcher.php, line 193 Dispatcher::dispatch() - CORE/Cake/Routing/Dispatcher.php, line 167 CakeObject::requestAction() - CORE/Cake/Core/CakeObject.php, line 104 Modules::render() - APP/Lib/Modules.php, line 23 include - APP/View/Elements/display.ctp, line 14 View::_evaluate() - CORE/Cake/View/View.php, line 971 View::_render() - CORE/Cake/View/View.php, line 933 View::render() - CORE/Cake/View/View.php, line 473 Controller::render() - CORE/Cake/Controller/Controller.php, line 963 AppController::renderPage() - APP/Controller/AppController.php, line 224 TownsController::displayTown() - APP/Controller/TownsController.php, line 11
From February through October, spend a rainy day observing both local butterflies as well as species from around the world. The Butterfly Place is an indoor garden with hundreds of free-flying… Read More
A fixture in the community since 1979, this family-owned plumbing company prides itself on responsive service and same-day repairs. They also offer financing options so you can take care of problems… Read More
Try the vegetable tempura at sushi yanagi. The scallion pancakes complement this appetizer quite nicely. Even those not into sushi will love these appetizers and more. There are plenty of options for… Read More
An active dairy farm sits in the middle of Great Brook Farm State Park, and tours are available on weekend days. The park also features 20 miles of hiking trails with evidence of settlers from past… Read More
For karaoke, indoor golf and great food and drinks, visit Chip Shots Grill & Sports Pub. The pizza and ribs are to die for, after which you can sing to your heart’s desire or play a round of… Read More
Featuring 16 synthetic Candlepin lanes, Acton Bowladrome & Arcade touts their business as a “complete family entertainment center. You can even reserve your lane online.
Read MoreFeaturing a delectable Sunday brunch, you won’t leave Moonstones hungry. Start with their frozen grapes or roasted pineapple, and then order up Brazilian steak and eggs or a scrambled egg flatbread.… Read More
Located on a 4.5-acre campus, the Discovery Museums are two museums with many interactive exhibits for children. The Science Discovery Museum and the Children’s Discovery Museum are packed with… Read More
Serving the greater Lowell area, Egyptian Grill is a food truck featuring Egyptian cuisine. Enjoy kafta, lamb over rice, yogurt sauce, and more.
Read MorePersonalized, gentle care is what your child will receive at Sugarbug Dental Suite. Little nerves are calmed on arrival when everyone in the office is dedicated to making the visit a relaxing one. … Read More
Notice (8): Trying to access array offset on value of type null [APP/Plugin/Core/Controller/Component/PlacesComponent.php, line 68]Code Contextif($params['tags'])$options['conditions']['tags'] = $params['tags'];else if($this->params['tags_logical'])$params = array( 'show' => (int) 5, 'title' => 'Organizations around Westford', 'images' => false, 'group_type' => 'organization', 'sort' => 'created', 'sort_rule' => '-1', 'keyword' => '', 'radius' => null, 'limit' => (int) 15, 'page' => (int) 1, 'sef' => '', 'tags' => '', 'tags_logical' => '', 'terms' => '', 'show_limit' => (int) 3, 'days' => '', 'max-days' => (int) 365, 'max-miles' => (int) 45, 'message' => '[message to follow]', 'min' => (int) 50, 'prompt' => '', 'height' => '', 'width' => '', 'data_id' => '', 'more' => true, 'type' => '', 'autoshowmore' => false, 'link' => '', 'showdesc' => '', 'rankby' => '', 'empty-message' => '', 'ad_slots' => '', 'see-more-title' => '', 'searchdate' => '', 'searchenddate' => '', 'lat' => (float) 42.580501556396, 'lng' => (float) -71.438499450684, 'latlng' => '42.580501556396,-71.438499450684', 'city' => 'Westford', 'state' => 'MA', 'theme' => '', 'page_type' => 'town' ) $options = array( 'page' => (int) 1, 'limit' => (int) 5, 'order' => array( 'created' => (int) -1 ), 'conditions' => array( 'address.town_sef_url' => 'westford-ma' ) )PlacesComponent::search() - APP/Plugin/Core/Controller/Component/PlacesComponent.php, line 68 PlacesController::local() - APP/Controller/PlacesController.php, line 52 ReflectionMethod::invokeArgs() - [internal], line ?? Controller::invokeAction() - CORE/Cake/Controller/Controller.php, line 491 Dispatcher::_invoke() - CORE/Cake/Routing/Dispatcher.php, line 193 Dispatcher::dispatch() - CORE/Cake/Routing/Dispatcher.php, line 167 CakeObject::requestAction() - CORE/Cake/Core/CakeObject.php, line 104 Modules::render() - APP/Lib/Modules.php, line 23 include - APP/View/Elements/display.ctp, line 14 View::_evaluate() - CORE/Cake/View/View.php, line 971 View::_render() - CORE/Cake/View/View.php, line 933 View::render() - CORE/Cake/View/View.php, line 473 Controller::render() - CORE/Cake/Controller/Controller.php, line 963 AppController::renderPage() - APP/Controller/AppController.php, line 224 TownsController::displayTown() - APP/Controller/TownsController.php, line 11 ReflectionMethod::invokeArgs() - [internal], line ?? Controller::invokeAction() - CORE/Cake/Controller/Controller.php, line 491 Dispatcher::_invoke() - CORE/Cake/Routing/Dispatcher.php, line 193
Westford, Massachusetts. Population for Westford from the last gathering is 20754. You can view Westford venues that host many Westford MA events every year.
You can find a ton of properties for sale if you search the Westford page on Zillow. Currently Westford has an average listing price for homes for sale on the market of $505,625. More real estate facts about Westford: The number of properties currently for sale in Westford is 52. The median homes for sale listing price is $368,950. This is broken down with the number of three bedroom houses in Westford consisting of 16 with an average listing price for these house of $372,456. Out of the 19 houses that are four bedroom the average listing price for Westford is $815,663. Interest rates for Westford are at historic lows as well.
Westford Massachusetts has a latitude of 42.580501556396 and a longitude of -71.438499450684. View the full profile
On Yahoo, Yelp, SuperPages, AmericanTowns and 25 other directories!
Add your social media links and bio and promote your discounts, menus, events.
Be sure your listing is up on all the key local directories with all your important content (social links and product info).
| Nr | Query | Error | Affected | Num. rows | Took (ms) |
|---|---|---|---|---|---|
| 1 | db.towns.find( {"sef_url":"brooklyn-ct"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 4 | |
| 2 | db.sites.find( {"hostname":{"$in":["americantowns.com","localword"]}}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 1 | |
| 3 | db.towns.find( {"sef_url":"westford-ma"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 1 | |
| 4 | db.pages.find( {"type":"town","slug":{"$in":["home"]},"site.hostname":"americantowns.com"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 1 | |
| 5 | db.modules.find( {"name":{"$in":["Header Menu Main","header script","footer menu","footer script"]}}, [] ).sort( [] ).limit( 0 ).skip( 0 ) | 0 | 4 | 1 | |
| 6 | db.ttd_towns.find( {"town_sef_url":"westford-ma","name":"Article Slideshow"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 0 | 1 | |
| 7 | db.ttd.find( {"name":"Article Slideshow"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 1 | |
| 8 | db.modules.find( {"module_id":"1022"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 1 | |
| 9 | db.modules.find( {"name":"AT - Article Slideshow"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 1 | |
| 10 | db.articles.find( {"aggregate":[{"$geoNear":{"near":[-71.4384994506836,42.580501556396484],"distanceField":"distance","distanceMultiplier":3963.2,"maxDistance":0.025232135647961243,"spherical":true,"query":{"tags":"at-bt-articles-home","state":"MA"}}},{"$project":{"title":1,"homepage_title":1,"tags":1,"image_url":1,"distance":1,"page_path":1,"path":1,"article_hostname":1,"text":1,"publish_date":1,"site_canonical":1,"sections.title":1,"sections.geo":1,"sections.text":1}},{"$addFields":{"days_since":{"$divide":[{"$subtract":["MongoDB\\BSON\\UTCDateTime(1769788382985)","$publish_date"]},86400000]},"relevance_score":{"$add":[{"$multiply":["$distance",10]},{"$divide":[{"$subtract":["MongoDB\\BSON\\UTCDateTime(1769788382985)","$publish_date"]},86400000]}]}}},{"$sort":{"relevance_score":1,"_id":1}},{"$skip":0},{"$limit":11}]}, ["article_id","title","homepage_title","tags","image_url","path","article_hostname","sef_tail","page_path","text","publish_date","site_canonical","sections.title","sections.text"] ).sort( {"relevance_score":1,"_id":1} ).limit( 11 ).skip( 0 ) | 0 | 11 | 108 | |
| 11 | db.ttd_towns.find( {"town_sef_url":"westford-ma","name":"Article Slideshow"}, {"TtdTown._id":1} ).sort( [] ).limit( 0 ).skip( 0 ) | 0 | 0 | 1 | |
| 12 | db.ttd.find( {"name":"Article Slideshow"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 1 | |
| 13 | db.events_cache.find( {"_id":"5863b3e5376683ce792da320eef170b1"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 0 | 1 | |
| 14 | db.events.find( {"start":{"$gte":"MongoDate(0.00000000 1769752800)","$lt":"MongoDate(0.00000000 1770443999)"},"tags":"ticketmaster","geo":{"$geoWithin":{"$center":[[-71.4384994506836,42.580501556396484],0.21739130434782608]}}}, ["location_string","event_id","partner_id","address","sef_tail","tags","title","start","end","date_string","time_string","image_url","group_id","group_name","group_sef_tail","venue_name"] ).sort( {"start":1} ).limit( 2 ).skip( 0 ) | 0 | 2 | 15 | |
| 15 | db.events_cache.count( {"_id":"5863b3e5376683ce792da320eef170b1"} ) | 0 | 0 | 1 | |
| 16 | db.events_cache.count( {"_id":"5863b3e5376683ce792da320eef170b1"} ) | 0 | 0 | 1 | |
| 17 | db.events_cache.insert( {"_id":"5863b3e5376683ce792da320eef170b1","town_sef_url":"westford-ma","data_key":["691bd895de4ae56f5a7c0e8c"],"sort_order":{"start":1},"params":"{\"tags\":\"ticketmaster\",\"radius\":\"15\",\"days\":\"7\",\"show\":1,\"geo\":[-71.4384994506836,42.580501556396484],\"has_next_page\":true}","modified":"MongoDate(0.15700000 1769788383)","created":"MongoDate(0.15700000 1769788383)"} , true) | 0 | 0 | 2 | |
| 18 | db.events_cache.find( {"_id":"65c57c9794f379c9f0e45673fd58aad5"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 0 | 1 | |
| 19 | db.events.find( {"start":{"$gte":"MongoDate(0.00000000 1769752800)","$lt":"MongoDate(0.00000000 1770443999)"},"event_id":{"$nin":[76349767]},"tags":"music","geo":{"$geoWithin":{"$center":[[-71.4384994506836,42.580501556396484],0.14492753623188406]}}}, ["location_string","event_id","partner_id","address","sef_tail","tags","title","start","end","date_string","time_string","image_url","group_id","group_name","group_sef_tail","venue_name"] ).sort( {"start":1} ).limit( 2 ).skip( 0 ) | 0 | 2 | 4 | |
| 20 | db.events_cache.count( {"_id":"65c57c9794f379c9f0e45673fd58aad5"} ) | 0 | 0 | 1 | |
| 21 | db.events_cache.count( {"_id":"65c57c9794f379c9f0e45673fd58aad5"} ) | 0 | 0 | 1 | |
| 22 | db.events_cache.insert( {"_id":"65c57c9794f379c9f0e45673fd58aad5","town_sef_url":"westford-ma","data_key":["68eb495dc3af739f25ce1ce0"],"sort_order":{"start":1},"params":"{\"tags\":\"music\",\"radius\":\"10\",\"days\":\"7\",\"show\":1,\"geo\":[-71.4384994506836,42.580501556396484],\"has_next_page\":true}","modified":"MongoDate(0.17800000 1769788383)","created":"MongoDate(0.17800000 1769788383)"} , true) | 0 | 0 | 1 | |
| 23 | db.events_cache.find( {"_id":"3f892fe293164c0aefc250c1eb8d26ff"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 0 | 1 | |
| 24 | db.events.find( {"start":{"$gte":"MongoDate(0.00000000 1769752800)","$lt":"MongoDate(0.00000000 1770098399)"},"event_id":{"$nin":[76349767,76234114]},"tags":"festivals","geo":{"$geoWithin":{"$center":[[-71.4384994506836,42.580501556396484],0.21739130434782608]}}}, ["location_string","event_id","partner_id","address","sef_tail","tags","title","start","end","date_string","time_string","image_url","group_id","group_name","group_sef_tail","venue_name"] ).sort( {"start":1} ).limit( 2 ).skip( 0 ) | 0 | 0 | 1 | |
| 25 | db.events_cache.count( {"_id":"3f892fe293164c0aefc250c1eb8d26ff"} ) | 0 | 0 | 1 | |
| 26 | db.events_cache.count( {"_id":"3f892fe293164c0aefc250c1eb8d26ff"} ) | 0 | 0 | 1 | |
| 27 | db.events_cache.insert( {"_id":"3f892fe293164c0aefc250c1eb8d26ff","town_sef_url":"westford-ma","data_key":[],"sort_order":{"start":1},"params":"{\"tags\":\"festivals\",\"radius\":\"15\",\"days\":\"3\",\"show\":1,\"geo\":[-71.4384994506836,42.580501556396484],\"has_next_page\":false}","modified":"MongoDate(0.19400000 1769788383)","created":"MongoDate(0.19400000 1769788383)"} , true) | 0 | 0 | 1 | |
| 28 | db.events_cache.find( {"_id":"c046a63bdd8632c2d2c1b86dc833b5d1"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 0 | 1 | |
| 29 | db.events.find( {"start":{"$gte":"MongoDate(0.00000000 1769752800)","$lt":"MongoDate(0.00000000 1772431199)"},"event_id":{"$nin":[76349767,76234114]},"tags":"festivals","geo":{"$geoWithin":{"$center":[[-71.4384994506836,42.580501556396484],0.8695652173913043]}}}, ["location_string","event_id","partner_id","address","sef_tail","tags","title","start","end","date_string","time_string","image_url","group_id","group_name","group_sef_tail","venue_name"] ).sort( {"start":1} ).limit( 2 ).skip( 0 ) | 0 | 0 | 1 | |
| 30 | db.events_cache.count( {"_id":"c046a63bdd8632c2d2c1b86dc833b5d1"} ) | 0 | 0 | 1 | |
| 31 | db.events_cache.count( {"_id":"c046a63bdd8632c2d2c1b86dc833b5d1"} ) | 0 | 0 | 1 | |
| 32 | db.events_cache.insert( {"_id":"c046a63bdd8632c2d2c1b86dc833b5d1","town_sef_url":"westford-ma","data_key":[],"sort_order":{"start":1},"params":"{\"tags\":\"festivals\",\"radius\":\"60\",\"days\":\"30\",\"show\":1,\"geo\":[-71.4384994506836,42.580501556396484],\"has_next_page\":false}","modified":"MongoDate(0.20900000 1769788383)","created":"MongoDate(0.20900000 1769788383)"} , true) | 0 | 0 | 1 | |
| 33 | db.events_cache.find( {"_id":"c3c0458100f82c293a780762034dad37"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 0 | 1 | |
| 34 | db.events.find( {"start":{"$gte":"MongoDate(0.00000000 1769752800)","$lt":"MongoDate(0.00000000 1770271199)"},"event_id":{"$nin":[76349767,76234114]},"tags":"arts-and-entertainment","geo":{"$geoWithin":{"$center":[[-71.4384994506836,42.580501556396484],0.14492753623188406]}}}, ["location_string","event_id","partner_id","address","sef_tail","tags","title","start","end","date_string","time_string","image_url","group_id","group_name","group_sef_tail","venue_name"] ).sort( {"start":1} ).limit( 2 ).skip( 0 ) | 0 | 1 | 13 | |
| 35 | db.events_cache.count( {"_id":"c3c0458100f82c293a780762034dad37"} ) | 0 | 0 | 1 | |
| 36 | db.events_cache.count( {"_id":"c3c0458100f82c293a780762034dad37"} ) | 0 | 0 | 1 | |
| 37 | db.events_cache.insert( {"_id":"c3c0458100f82c293a780762034dad37","town_sef_url":"westford-ma","data_key":["69157957de4ae56f5a228025"],"sort_order":{"start":1},"params":"{\"tags\":\"arts-and-entertainment\",\"radius\":\"10\",\"days\":\"5\",\"show\":1,\"geo\":[-71.4384994506836,42.580501556396484],\"has_next_page\":false}","modified":"MongoDate(0.24700000 1769788383)","created":"MongoDate(0.24700000 1769788383)"} , true) | 0 | 0 | 1 | |
| 38 | db.events_cache.find( {"_id":"3a8fa98a426987cd312c0fb5c4bd1c18"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 0 | 1 | |
| 39 | db.events.find( {"start":{"$gte":"MongoDate(0.00000000 1769752800)","$lt":"MongoDate(0.00000000 1771653599)"},"event_id":{"$nin":[76349767,76234114,76327347]},"tags":"ticketmaster","geo":{"$geoWithin":{"$center":[[-71.4384994506836,42.580501556396484],1.4492753623188406]}}}, ["location_string","event_id","partner_id","address","sef_tail","tags","title","start","end","date_string","time_string","image_url","group_id","group_name","group_sef_tail","venue_name"] ).sort( {"start":1} ).limit( 51 ).skip( 0 ) | 0 | 51 | 10 | |
| 40 | db.events_cache.count( {"_id":"3a8fa98a426987cd312c0fb5c4bd1c18"} ) | 0 | 0 | 1 | |
| 41 | db.events_cache.count( {"_id":"3a8fa98a426987cd312c0fb5c4bd1c18"} ) | 0 | 0 | 1 | |
| 42 | db.events_cache.insert( {"_id":"3a8fa98a426987cd312c0fb5c4bd1c18","town_sef_url":"westford-ma","data_key":["689ab73ffb5e4bed1fdedd0a","68c0e125c3af739f253dd04f","695dc38db1faf7c56a6c0ab7","68911579fb5e4bed1fbe4bd2","68ba49aac3af739f257d88ff","68bf8fa6c3af739f25b380eb","68c0e125c3af739f253dd0cf","68ca1ba4c3af739f25d8219e","68d204a6c3af739f25f529da","68e5cb20c3af739f25c78543","68e71ca1c3af739f25e5a17b","68f2fa20c3af739f2533e18d","69193596de4ae56f5a26a465","69251314de4ae56f5a252931","6954890ede4ae56f5a81738c","68941fc1fb5e4bed1fb9496c","68b6552bc3af739f25c02a17","68911579fb5e4bed1fbe4c70","689eabbefb5e4bed1f7b3f71","68c778acc3af739f254fe4ad","68e4799fc3af739f25a9dfe1","68c8ca22c3af739f25291ec4","68d204a6c3af739f25f52a2a","68db3f22c3af739f25854a7b","68e71ca1c3af739f25e5a197","690ea998de4ae56f5ac2873d","69266494de4ae56f5ae48fb6","692a5914de4ae56f5a9b7e67","6969a117b1faf7c56adbec1d","68edb41dc3af739f2514c790","693a2b13de4ae56f5a8b0bfe","695b208fde4ae56f5a081254","69757e98b1faf7c56a25e9a7","68bf8fa6c3af739f25b38146","690ab51fde4ae56f5a8417ae","692f9f13de4ae56f5a523585","695c720ede4ae56f5a665131","695dc38db1faf7c56a6c0b21","68d4a7a5c3af739f25451c69","68bf8fa6c3af739f25b38156","6913ef96de4ae56f5a16bb6b","68c8ca22c3af739f25291ecf","68e71ca1c3af739f25e5a1f3","6909639ade4ae56f5a1c0d9e","693cce12de4ae56f5ae982f2","697ac81cb1faf7c56a7b43d0","68b8f82cc3af739f25569103","6972df1eb1faf7c56a4b83b5","68bf8fa6c3af739f25b381b2","6930f093de4ae56f5aa6ef63"],"sort_order":{"start":1},"params":"{\"tags\":\"ticketmaster\",\"radius\":\"100\",\"days\":\"21\",\"show\":50,\"geo\":[-71.4384994506836,42.580501556396484],\"has_next_page\":true}","modified":"MongoDate(0.27800000 1769788383)","created":"MongoDate(0.27800000 1769788383)"} , true) | 0 | 0 | 1 | |
| 43 | db.ttd_towns.insert( {"name":"Article Slideshow","main_slot_type":"module","main_slot_module_id":"1022","main_slot_html":"<div id=\"atCarousel\" class=\"carousel slide\" data-interval=\"5000\" data-ride=\"carousel\">\n\t<ol class=\"carousel-indicators\">\n\t\t\t\t<li data-target=\"#atCarousel\" data-slide-to=\"0\" class=\"active\"><\/li>\n\t\t\t\t<li data-target=\"#atCarousel\" data-slide-to=\"1\" class=\"\"><\/li>\n\t\t\t\t<li data-target=\"#atCarousel\" data-slide-to=\"2\" class=\"\"><\/li>\n\t\t\t\t<li data-target=\"#atCarousel\" data-slide-to=\"3\" class=\"\"><\/li>\n\t\t\t\t<li data-target=\"#atCarousel\" data-slide-to=\"4\" class=\"\"><\/li>\n\t\t\t\t<li data-target=\"#atCarousel\" data-slide-to=\"5\" class=\"\"><\/li>\n\t\t\t\t<li data-target=\"#atCarousel\" data-slide-to=\"6\" class=\"\"><\/li>\n\t\t\t\t<li data-target=\"#atCarousel\" data-slide-to=\"7\" class=\"\"><\/li>\n\t\t\t\t<li data-target=\"#atCarousel\" data-slide-to=\"8\" class=\"\"><\/li>\n\t\t\t\t<li data-target=\"#atCarousel\" data-slide-to=\"9\" class=\"\"><\/li>\n\t\t\t<\/ol> \n\t<div class=\"carousel-inner\">\n\t\t\t\t<div class=\"item active\" style=\"background-image:url(https:\/\/cdn-p300.americantowns.com\/img\/article\/ma-rainy-day-activities-1.jpg);\">\n\n\t\t\t\t\t<div class=\"carousel-caption\">\n\t\t\t\t<h4><a href=\"https:\/\/bestthingsma.com\/rainy-day-thingstodo\/\" target=\"_blank\">The 12 Best Rainy Day Activities to Do in Massachusetts!<\/a><\/h4>\n\t\t\t\t<div class=\"small\">Featuring<\/div>\n\t\t\t\t<h2><a href=\"https:\/\/bestthingsma.com\/rainy-day-thingstodo\/\" target=\"_blank\">The Butterfly Place, Westford, MA<\/a><\/h2>\n\t\t\t\t<div class=\"d-none hidden\">evergreen,entertainment-bt,entertainment-p300,at-bt-articles-home,at-bt-articles-entertainment<\/div>\n\t\t\t\t<p class=\"small\">From February through October, spend a rainy day observing both local butterflies as well as species from around the world. The Butterfly Place is an indoor garden with hundreds of free-flying… <a href=\"https:\/\/bestthingsma.com\/rainy-day-thingstodo\/\" target=\"_blank\" class=\"text-nowrap\"><b>Read More<\/b><\/a><\/p>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"item \" style=\"background-image:url(https:\/\/cdn-p300.americantowns.com\/img\/article\/ma-plumbers-1.jpg);\">\n\n\t\t\t\t\t<div class=\"carousel-caption\">\n\t\t\t\t<h4><a href=\"https:\/\/bestthingsma.com\/plumbers\/\" target=\"_blank\">10 Best Plumbers in Massachusetts<\/a><\/h4>\n\t\t\t\t<div class=\"small\">Featuring<\/div>\n\t\t\t\t<h2><a href=\"https:\/\/bestthingsma.com\/plumbers\/\" target=\"_blank\">Milltown Plumbing, Chelmsford, MA<\/a><\/h2>\n\t\t\t\t<div class=\"d-none hidden\">evergreen,directory-bt,directory-p300,at-bt-articles-home,at-bt-articles-directory<\/div>\n\t\t\t\t<p class=\"small\">A fixture in the community since 1979, this family-owned plumbing company prides itself on responsive service and same-day repairs. They also offer financing options so you can take care of problems… <a href=\"https:\/\/bestthingsma.com\/plumbers\/\" target=\"_blank\" class=\"text-nowrap\"><b>Read More<\/b><\/a><\/p>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"item \" style=\"background-image:url(https:\/\/cdn-p300.americantowns.com\/img\/article\/ma-appetizers-1.jpg);\">\n\n\t\t\t\t\t<div class=\"carousel-caption\">\n\t\t\t\t<h4><a href=\"https:\/\/bestthingsma.com\/appetizers\/\" target=\"_blank\">8 Best Places for Appetizers in Massachusetts!<\/a><\/h4>\n\t\t\t\t<div class=\"small\">Featuring<\/div>\n\t\t\t\t<h2><a href=\"https:\/\/bestthingsma.com\/appetizers\/\" target=\"_blank\">Sushi Yanagi, Chelmsford, MA<\/a><\/h2>\n\t\t\t\t<div class=\"d-none hidden\">evergreen,food-drink-bt,food-drink-p300,edited-cynthia,at-bt-articles-home,at-bt-articles-restaurant<\/div>\n\t\t\t\t<p class=\"small\">Try the vegetable tempura at sushi yanagi. The scallion pancakes complement this appetizer quite nicely. Even those not into sushi will love these appetizers and more. There are plenty of options for… <a href=\"https:\/\/bestthingsma.com\/appetizers\/\" target=\"_blank\" class=\"text-nowrap\"><b>Read More<\/b><\/a><\/p>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"item \" style=\"background-image:url(https:\/\/cdn-p300.americantowns.com\/img\/article\/ma-state-parks-1.jpg);\">\n\n\t\t\t\t\t<div class=\"carousel-caption\">\n\t\t\t\t<h4><a href=\"https:\/\/bestthingsma.com\/state-parks\/\" target=\"_blank\">The 10 Best State Parks in Massachusetts!<\/a><\/h4>\n\t\t\t\t<div class=\"small\">Featuring<\/div>\n\t\t\t\t<h2><a href=\"https:\/\/bestthingsma.com\/state-parks\/\" target=\"_blank\">Great Brook Farm State Park, Carlisle, MA<\/a><\/h2>\n\t\t\t\t<div class=\"d-none hidden\">evergreen,community-life-bt,community-life-p300,at-bt-articles-home,at-bt-articles-community<\/div>\n\t\t\t\t<p class=\"small\">An active dairy farm sits in the middle of Great Brook Farm State Park, and tours are available on weekend days. The park also features 20 miles of hiking trails with evidence of settlers from past… <a href=\"https:\/\/bestthingsma.com\/state-parks\/\" target=\"_blank\" class=\"text-nowrap\"><b>Read More<\/b><\/a><\/p>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"item \" style=\"background-image:url(https:\/\/cdn-p300.americantowns.com\/img\/article\/ma-karaoke-bar-1.jpg);\">\n\n\t\t\t\t\t<div class=\"carousel-caption\">\n\t\t\t\t<h4><a href=\"https:\/\/bestthingsma.com\/karaoke-bars\/\" target=\"_blank\">The 8 Best Karaoke Bars in Massachusetts!<\/a><\/h4>\n\t\t\t\t<div class=\"small\">Featuring<\/div>\n\t\t\t\t<h2><a href=\"https:\/\/bestthingsma.com\/karaoke-bars\/\" target=\"_blank\">Chip Shots Grill and Sports Pub, Littleton, MA<\/a><\/h2>\n\t\t\t\t<div class=\"d-none hidden\">evergreen,entertainment-bt,entertainment-p300,at-bt-articles-home,at-bt-articles-entertainment<\/div>\n\t\t\t\t<p class=\"small\">For karaoke, indoor golf and great food and drinks, visit Chip Shots Grill & Sports Pub. The pizza and ribs are to die for, after which you can sing to your heart\u2019s desire or play a round of… <a href=\"https:\/\/bestthingsma.com\/karaoke-bars\/\" target=\"_blank\" class=\"text-nowrap\"><b>Read More<\/b><\/a><\/p>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"item \" style=\"background-image:url(https:\/\/cdn-p300.americantowns.com\/img\/article\/ma-bowling-alleys-1.jpg);\">\n\n\t\t\t\t\t<div class=\"carousel-caption\">\n\t\t\t\t<h4><a href=\"https:\/\/bestthingsma.com\/bowling-alleys\/\" target=\"_blank\">10 Best Bowling Alleys in Massachusetts!<\/a><\/h4>\n\t\t\t\t<div class=\"small\">Featuring<\/div>\n\t\t\t\t<h2><a href=\"https:\/\/bestthingsma.com\/bowling-alleys\/\" target=\"_blank\">Acton Bowladrome & Arcade, Acton, MA<\/a><\/h2>\n\t\t\t\t<div class=\"d-none hidden\">evergreen,entertainment-bt,entertainment-p300,edited-cynthia,at-bt-articles-home,at-bt-articles-entertainment<\/div>\n\t\t\t\t<p class=\"small\"><p>Featuring 16 synthetic Candlepin lanes, Acton Bowladrome & Arcade touts their business as a “complete family entertainment center. You can even reserve your lane online. <\/p> <a href=\"https:\/\/bestthingsma.com\/bowling-alleys\/\" target=\"_blank\" class=\"text-nowrap\"><b>Read More<\/b><\/a><\/p>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"item \" style=\"background-image:url(https:\/\/cdn-p300.americantowns.com\/img\/article\/ma-brunch-spot-1.jpg);\">\n\n\t\t\t\t\t<div class=\"carousel-caption\">\n\t\t\t\t<h4><a href=\"https:\/\/bestthingsma.com\/brunch-spots\/\" target=\"_blank\">8 Best Brunch Spots in Massachusetts!<\/a><\/h4>\n\t\t\t\t<div class=\"small\">Featuring<\/div>\n\t\t\t\t<h2><a href=\"https:\/\/bestthingsma.com\/brunch-spots\/\" target=\"_blank\">Moonstones, Chelmsford, MA<\/a><\/h2>\n\t\t\t\t<div class=\"d-none hidden\">evergreen,food-drink-bt,food-drink-p300,edited-cynthia,at-bt-articles-home,at-bt-articles-restaurant<\/div>\n\t\t\t\t<p class=\"small\">Featuring a delectable Sunday brunch, you won\u2019t leave Moonstones hungry. Start with their frozen grapes or roasted pineapple, and then order up Brazilian steak and eggs or a scrambled egg flatbread.… <a href=\"https:\/\/bestthingsma.com\/brunch-spots\/\" target=\"_blank\" class=\"text-nowrap\"><b>Read More<\/b><\/a><\/p>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"item \" style=\"background-image:url(https:\/\/cdn-p300.americantowns.com\/img\/article\/ma-educational-activities-1.jpg);\">\n\n\t\t\t\t\t<div class=\"carousel-caption\">\n\t\t\t\t<h4><a href=\"https:\/\/bestthingsma.com\/educational-activities-for-kids\/\" target=\"_blank\">The 10 Best Educational Activities for Children in Massachusetts!<\/a><\/h4>\n\t\t\t\t<div class=\"small\">Featuring<\/div>\n\t\t\t\t<h2><a href=\"https:\/\/bestthingsma.com\/educational-activities-for-kids\/\" target=\"_blank\">The Discovery Museums, Acton, MA<\/a><\/h2>\n\t\t\t\t<div class=\"d-none hidden\">evergreen,community-life-bt,community-life-p300,at-bt-articles-home,at-bt-articles-community<\/div>\n\t\t\t\t<p class=\"small\">Located on a 4.5-acre campus, the Discovery Museums are two museums with many interactive exhibits for children. The Science Discovery Museum and the Children’s Discovery Museum are packed with… <a href=\"https:\/\/bestthingsma.com\/educational-activities-for-kids\/\" target=\"_blank\" class=\"text-nowrap\"><b>Read More<\/b><\/a><\/p>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"item \" style=\"background-image:url(https:\/\/cdn-p300.americantowns.com\/img\/article\/ma-food-truck-1.jpg);\">\n\n\t\t\t\t\t<div class=\"carousel-caption\">\n\t\t\t\t<h4><a href=\"https:\/\/bestthingsma.com\/food-truck\/\" target=\"_blank\">The 7 Most Delicious Food Trucks in Massachusetts!<\/a><\/h4>\n\t\t\t\t<div class=\"small\">Featuring<\/div>\n\t\t\t\t<h2><a href=\"https:\/\/bestthingsma.com\/food-truck\/\" target=\"_blank\">Egyptian Grill, Lowell, MA<\/a><\/h2>\n\t\t\t\t<div class=\"d-none hidden\">evergreen,food-drink-bt,at-bt-articles-home,at-bt-articles-restaurant<\/div>\n\t\t\t\t<p class=\"small\"><p>Serving the greater Lowell area, Egyptian Grill is a food truck featuring Egyptian cuisine. Enjoy kafta, lamb over rice, yogurt sauce, and more.<\/p> <a href=\"https:\/\/bestthingsma.com\/food-truck\/\" target=\"_blank\" class=\"text-nowrap\"><b>Read More<\/b><\/a><\/p>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"item \" style=\"background-image:url(https:\/\/cdn-p300.americantowns.com\/img\/article\/ma-kid-dentist-1.jpg);\">\n\n\t\t\t\t\t<div class=\"carousel-caption\">\n\t\t\t\t<h4><a href=\"https:\/\/bestthingsma.com\/kid-friendly-dentists\/\" target=\"_blank\">10 Best Kid-Friendly Dentists in Massachusetts!<\/a><\/h4>\n\t\t\t\t<div class=\"small\">Featuring<\/div>\n\t\t\t\t<h2><a href=\"https:\/\/bestthingsma.com\/kid-friendly-dentists\/\" target=\"_blank\">Sugarbug Dental Suite, Chelmsford, MA<\/a><\/h2>\n\t\t\t\t<div class=\"d-none hidden\">evergreen,directory-bt,directory-p300,edited-cynthia,at-bt-articles-home,at-bt-articles-directory<\/div>\n\t\t\t\t<p class=\"small\">Personalized, gentle care is what your child will receive at Sugarbug Dental Suite. Little nerves are calmed on arrival when everyone in the office is dedicated to making the visit a relaxing one. … <a href=\"https:\/\/bestthingsma.com\/kid-friendly-dentists\/\" target=\"_blank\" class=\"text-nowrap\"><b>Read More<\/b><\/a><\/p>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t<\/div>\n<\/div>\n\n\n","town_sef_url":"westford-ma","title":"Hiking!","subtitle":"Maps, directions and reviews for hiking around {local_city_state}!","image_url":"{\"0\":{\"content_type\":\"movie\",\"movie\":\"\/movie\/black-panther-wakanda-forever-297863\/\",\"title\":\"Black Panther: Wakanda Forever\",\"thumbnail\":\"https:\/\/www.movienewsletters.net\/photos\/297863R4.jpg\"},\"1\":{\"content_type\":\"event_tag\",\"searchtag\":\"ticketmaster","url":"\/{town_sef_url}\/hiking\/","slots":[{"rule":"{\"content_type\":\"event_tag\",\"searchtag\":\"ticketmaster\",\"radius\":\"15\",\"days\":\"7\",\"ttl\":\"1\",\"thumbnail\":\"https:\\\/imgcdn.americantowns.com\\\/img\\\/uploads\\\/banner-images\\\/music-1.jpg\"}","expiration":1769791983,"type":"Event","id":76349767,"title":"Gabbys Dollhouse Live! - (All children regardless of age require a ticket for admission)","url":"\/event\/gabbys-dollhouse-live-all-children-regardless-of-age-require-a-ticket-for-admission-2026-01-31-tm-lowell-ma.html","image_url":"https:\/\/s1.ticketm.net\/dam\/a\/8a1\/38678b8a-b9a3-4d0a-8f47-a9d1a476d8a1_SOURCE"},{"rule":"{\"content_type\":\"event_tag\",\"searchtag\":\"music\",\"radius\":\"10\",\"days\":\"7\",\"ttl\":\"1\",\"thumbnail\":\"https:\\\/imgcdn.americantowns.com\\\/img\\\/uploads\\\/banner-images\\\/music-3.jpg\"}","expiration":1769791983,"type":"Event","id":76234114,"title":"Edgar Meyer, Mike Marshall and more","url":"\/event\/edgar-meyer-mike-marshall-and-more-2026-01-30-jb-groton-ma.html","image_url":"https:\/\/www.jambase.com\/wp-content\/uploads\/2015\/06\/Edgar-Meyer-Press-Crop-david-mcclister-980x551.jpg"},{"rule":"{\"content_type\":\"event_category\",\"radius\":\"10\",\"days\":\"5\",\"ttl\":\"1\",\"isempty\":1,\"event_category\":\"arts-and-entertainment\",\"thumbnail\":\"https:\\\/imgcdn.americantowns.com\\\/img\\\/uploads\\\/banner-images\\\/festivals-1.jpg\"}","expiration":1769791983,"type":"Event","id":76327347,"title":"Gregory Porter","url":"\/event\/gregory-porter-2026-02-04-jb-groton-ma.html","image_url":"https:\/\/www.jambase.com\/wp-content\/uploads\/2017\/04\/gregory-porter-gregory-porter-2a6ddc73-49ff-4777-b886-c1753d6a8729_183851_RETINA_LANDSCAPE_16_9-980x551.jpg"},{"rule":"{\"content_type\":\"event_tag\",\"searchtag\":\"ticketmaster\",\"radius\":\"100\",\"days\":\"21\",\"ttl\":\"4\",\"israndom\":1,\"thumbnail\":\"https:\\\/imgcdn.americantowns.com\\\/img\\\/uploads\\\/banner-images\\\/music-1.jpg\"}","expiration":1769802783,"type":"Event","id":76412960,"title":"Fusion Dance Collective presents EMBER - Matinee","url":"\/event\/fusion-dance-collective-presents-ember-matinee-2026-01-31-tm-somerville-ma.html","image_url":"https:\/\/s1.ticketm.net\/dam\/c\/cf0\/e3e32db3-adac-486f-b78d-7c8857f8bcf0_106191_TABLET_LANDSCAPE_LARGE_16_9.jpg"}],"modified":"MongoDate(0.28100000 1769788383)","created":"MongoDate(0.28100000 1769788383)","_id":ObjectId ("697cd3df1b876daf5b07fbce")} , true) | 0 | 0 | 1 | |
| 44 | db.events_cache.find( {"_id":"db39e10d6d6ecb8d054f805dc07271e3"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 0 | 1 | |
| 45 | db.events_radius_cache.find( {"_id":"af152b2786aed9f7dedd0c7763d63bbc"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 0 | 1 | |
| 46 | db.events.count( {"address.town_sef_url":"westford-ma","start":{"$gte":"MongoDate(0.00000000 1769752800)","$lt":"MongoDate(0.00000000 1770357600)"}} ) | 0 | 0 | 1 | |
| 47 | db.events.count( {"geo":{"$geoWithin":{"$center":[[-71.4384994506836,42.580501556396484],0.10144927536231885]}},"start":{"$gte":"MongoDate(0.00000000 1769752800)","$lt":"MongoDate(0.00000000 1770616800)"}} ) | 0 | 1 | 19 | |
| 48 | db.events.count( {"geo":{"$geoWithin":{"$center":[[-71.4384994506836,42.580501556396484],0.21739130434782608]}},"start":{"$gte":"MongoDate(0.00000000 1769752800)","$lt":"MongoDate(0.00000000 1770616800)"}} ) | 0 | 6 | 19 | |
| 49 | db.events_radius_cache.count( {"_id":"af152b2786aed9f7dedd0c7763d63bbc"} ) | 0 | 0 | 1 | |
| 50 | db.events_radius_cache.count( {"_id":"af152b2786aed9f7dedd0c7763d63bbc"} ) | 0 | 0 | 1 | |
| 51 | db.events_radius_cache.insert( {"_id":"af152b2786aed9f7dedd0c7763d63bbc","radius":25,"modified":"MongoDate(0.34300000 1769788383)","created":"MongoDate(0.34300000 1769788383)"} , true) | 0 | 0 | 1 | |
| 52 | db.events.find( {"start":{"$gte":"MongoDate(0.00000000 1769752800)"},"event_id":{"$nin":[76349767,76234114,76327347,76412960]},"geo":{"$geoWithin":{"$center":[[-71.4384994506836,42.580501556396484],0.36231884057971014]}}}, ["location_string","event_id","partner_id","address","sef_tail","tags","title","start","end","date_string","time_string","image_url","group_id","group_name","group_sef_tail","venue_name"] ).sort( {"start":1} ).limit( 6 ).skip( 0 ) | 0 | 6 | 189 | |
| 53 | db.events_cache.count( {"_id":"db39e10d6d6ecb8d054f805dc07271e3"} ) | 0 | 0 | 1 | |
| 54 | db.events_cache.count( {"_id":"db39e10d6d6ecb8d054f805dc07271e3"} ) | 0 | 0 | 1 | |
| 55 | db.events_cache.insert( {"_id":"db39e10d6d6ecb8d054f805dc07271e3","town_sef_url":"westford-ma","data_key":["689ab73ffb5e4bed1fdeddb0","689ab73ffb5e4bed1fdedec6","68d8d465c3af739f2564ba0a","689ab740fb5e4bed1fdee372","689ab740fb5e4bed1fdee3b3"],"sort_order":{"start":1},"params":"{\"show\":5,\"title\":\"Events Around Westford\",\"keyword\":\"\",\"radius\":25,\"limit\":15,\"page\":1,\"sef\":\"\",\"tags\":\"\",\"tags_logical\":\"\",\"terms\":\"\",\"show_limit\":3,\"sort\":\"\",\"days\":\"\",\"images\":true,\"max-days\":365,\"max-miles\":45,\"message\":\"[message to follow]\",\"min\":50,\"prompt\":\"\",\"height\":\"\",\"width\":\"\",\"data_id\":\"\",\"more\":true,\"type\":\"\",\"autoshowmore\":false,\"link\":\"\",\"showdesc\":\"\",\"rankby\":\"\",\"empty-message\":\"\",\"ad_slots\":\"\",\"see-more-title\":\"\",\"searchdate\":\"\",\"searchenddate\":\"\",\"lat\":42.580501556396484,\"lng\":-71.4384994506836,\"latlng\":\"42.580501556396,-71.438499450684\",\"city\":\"Westford\",\"state\":\"MA\",\"theme\":\"\",\"page_type\":\"town\",\"grouped\":false,\"has_next_page\":true}","modified":"MongoDate(0.56000000 1769788383)","created":"MongoDate(0.56000000 1769788383)"} , true) | 0 | 0 | 1 | |
| 56 | db.news.find( {"broadcast":{"$in":["usa","westford-ma","ma","middlesex-county-ma"]},"$and":[{"tags":{"$ne":"at-p-opinion"}},{"tags":{"$ne":"p-opinion"}}]}, [] ).sort( {"publish_date":-1} ).limit( 6 ).skip( 0 ) | 0 | 6 | 3 | |
| 57 | db.places.find( {"address.town_sef_url":"westford-ma","group_type":"organization"}, [] ).sort( {"created":-1} ).limit( 6 ).skip( 0 ) | 0 | 6 | 1 | |
| 58 | db.answerbook.find( {"featured":true,"category_sef_tail":"home"}, [] ).sort( {"answers":-1,"modified":-1} ).limit( 15 ).skip( 0 ) | 0 | 0 | 1 | |
| 59 | db.answerbook_categories.find( [], ["sef_tail","name"] ).sort( {"category_sequence":1} ).limit( 0 ).skip( 0 ) | 0 | 40 | 1 | |
| 60 | db.towns.find( {"sef_url":"westford-ma"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 1 | |
| 61 | db.tokens.find( {"sef_url":{"$in":["usa","ma","middlesex-county-ma","westford-ma"]}}, [] ).sort( [] ).limit( 0 ).skip( 0 ) | 0 | 4 | 1 | |
| 62 | db.modules.find( {"name":"AT - Header Script"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 2 | |
| 63 | db.modules.find( {"name":"AT - Header Section"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 1 | |
| 64 | db.modules.find( {"name":"AT - Nearby Towns"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 1 | |
| 65 | db.modules.find( {"name":"AT - Nav Bar"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 1 | |
| 66 | db.modules.find( {"name":"CV Cancel"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 1 | |
| 67 | db.modules.find( {"name":"AT - Footer Section"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 1 | |
| 68 | db.modules.find( {"name":"AT - Footer Script"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 1 |



