1 2<!DOCTYPE html> 3<html lang="en"> 4<head> 5 6 <meta http-equiv="Content-type" content="text/html; charset=UTF-8" /> 7<!-- Google Tag Manager for GA4 --> 8
8<script>(function(w,d,s,l,i){w.GAMeasurementID='G-QCBBSNQCMH';w[l]=w[l]||[];w[l].push({'gtm.start': 9 new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 10 j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 11 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 12 })(window,document,'script','cpDataLayerGA4','GTM-K73C5PS');</script>
12 13 <!-- End Google Tag Manager for GA4 --> 14
14<script type='text/javascript'> 15 var enableTelemetry = 'false' 16 var aiConfig = { 17 instrumentationKey: '1cde048e-3185-4906-aa46-c92a7312b60f' 18 } 19 var appInsights = window.appInsights || function (a) { function b(a) { c[a] = function () { var b = arguments; c.queue.push(function () { c[a].apply(c, b) }) } } var c = { config: a }, d = document, e = window; setTimeout(function () { var b = d.createElement('script'); b.src = a.url || 'https://js.monitor.azure.com/scripts/a/ai.0.js', d.getElementsByTagName('script')[0].parentNode.appendChild(b) }); try { c.cookie = d.cookie } catch (a) { } c.queue = []; for (var f = ['Event', 'Exception', 'Metric', 'PageView', 'Trace', 'Dependency']; f.length;)b('track' + f.pop()); if (b('setAuthenticatedUserContext'), b('clearAuthenticatedUserContext'), b('startTrackEvent'), b('stopTrackEvent'), b('startTrackPage'), b('stopTrackPage'), b('flush'), !a.disableExceptionTracking) { f = 'onerror', b('_' + f); var g = e[f]; e[f] = function (a, b, d, e, h) { var i = g && g(a, b, d, e, h); return !0 !== i && c['_' + f](a, b, d, e, h), i } } return c }(aiConfig); 20 window.appInsights = appInsights, appInsights.queue && 0 === appInsights.queue.length; 21 // Add telemetry initializer 22 appInsights.queue.push(function() { 23 appInsights.context.addTelemetryInitializer(function(envelope) { 24 var telemetryItem = envelope.data.baseData; 25 // To check the telemetry itemâs type: 26 if (!false) 27 { 28 //If the telemetry is not enabled, we still want to capture Google map custom event, so only allow that 29 if (envelope.name.indexOf('.Event') == -1) 30 return false; 31 } 32 }); 33 }); 34 appInsights.trackPageView(); 35 </script>
35 36
36<script> 37 function populateAntiForgery(token) { 38 var input = document.createElement("input"); 39 input.name = "__RequestVerificationToken"; 40 input.type = "hidden"; 41 input.value = token; 42 var absPat = /^https?:\/\/|^\/\//i; 43 var forms = document.getElementsByTagName("form"); 44 for (var i = 0; i < forms.length; i++) { 45 if (forms[i].method == "post" && 46 !forms[i].querySelector('[name="__RequestVerificationToken"]') && 47 !absPat.test(forms[i].getAttribute("action"))) { 48 forms[i].appendChild(input.cloneNode()); 49 } 50 } 51 } 52 53 function getAntiForgeryToken(callback, error) { 54 var xhr = new XMLHttpRequest(); 55 xhr.open("GET", "/antiforgery"); 56 xhr.addEventListener("load", function() { 57 try { 58 if (this.status !== 200) { 59 throw Error("Invalid status. Could not retrieve antiforgery token."); 60 } 61 var obj = JSON.parse(this.responseText); 62 callback(obj.token); 63 } catch (e) { 64 typeof error === "function" && error(e); 65 } 66 }); 67 xhr.send(); 68 } 69 70 getAntiForgeryToken(function(token) { 71 if (document.readyState === "complete" 72 || document.readyState === "loaded" 73 || document.readyState === "interactive") { 74 populateAntiForgery(token); 75 return; 76 } 77 document.addEventListener("DOMContentLoaded", function() { 78 populateAntiForgery(token); 79 }, false); 80 }, console.error); 81 </script>
81 82 83 84
84<script type="text/javascript"> 85 window.departmentHeader = {}; 86 window.pageSectionTracker = {}; 87 window.isResponsiveEnabled = true; 88 window.isRemoveSetHeights= true; 89 if (window.isRemoveSetHeights) { 90 document.documentElement.className += ' removeSetHeights'; 91 } 92 window.mainMenuMediaQuery = 'screen and (max-width: 40em)'; 93 window.isMobileBrowserIncludingTablets = false; 94 window.fixedResponsiveMenu = false; 95 window.fullWidthResponsiveMenu = false; 96 window.responsiveMenuHeight = ''; 97 window.responsiveMenuFontSize = ''; 98 window.isContentAdvisor = false; 99 (function () { 100 window.setSizeCookie = function () { 101 document.cookie = "dpi=" + window.devicePixelRatio + "; path=/"; 102 document.cookie = "viewportWidth=" + window.innerWidth + "; path=/"; 103 document.cookie = "viewportHeight=" + window.innerHeight + "; path=/"; 104 if (screen && screen.width && screen.height) { 105 document.cookie = "screenWidth=" + screen.width + "; path=/"; 106 document.cookie = "screenHeight=" + screen.height + "; path=/"; 107 } 108 document.cookie = "responsiveGhost=1; path=/"; 109 }; 110 111 setSizeCookie(); 112 }()); 113 </script>
113 114 <meta name="viewport" content="width=device-width, initial-scale=1"> 115 116
116<script async src="https://docaccess.com/docbox.js"></script>
116 117 <meta name="google-site-verification" content="MgDKzml5kPA20-Ga_UpX5UzpwAnc21v0wr7BV1D2tAA" /> 118 119 <meta name="category0" content="Home" /> 120<meta name="category1" content="Services" /> 121 122 123 <meta name="theme-color" content="rgb(19, 42, 80)"> 124 <link rel="icon" href="/images/favicon.ico" type="image/x-icon" /> 125 <link rel="shortcut icon" href="/images/favicon.ico" type="image/x-icon" /> 126 <title>Services | Andover, MA</title> 127 128 <meta name="description" content=""> 129
129<script src="/Assets/Scripts/jQuery/jquery-3.7.1.min.js"></script>
129 130
130<script src="/Assets/Scripts/jQuery/jquery-migrate-3.6.0.min.js" type="text/javascript"></script>
130 131 132 133 <!--[if IE 6]>
133<script language="JavaScript" type="text/javascript"> var isie6 = true; </script>
133<![endif]--> 134 <!--[if IE 7]>
134<script language="JavaScript" type="text/javascript"> var isie7 = true; </script>
134<![endif]--> 135 <!--[if IE 8]>
135<script language="JavaScript" type="text/javascript"> var isie8 = true; </script>
135<![endif]--> 136 <!--[if IE 9]>
136<script language="JavaScript" type="text/javascript"> var isie8 = true; </script>
136<![endif]--> 137
137<script type="text/javascript"><!-- 138 var intCountryCode = 840; 139 var order = ''; 140//--></script>
140 141 142<link href="/-681783051.css" rel="stylesheet" type="text/css" /> <link href="/-2140275272.css" rel="stylesheet" type="text/css" /> <link href="/-1213281355.css" rel="stylesheet" type="text/css" /> 143 144 <link rel="stylesheet" type="text/css" href="/Assets/Styles/Print.css" media="print"> 145
145<script type="text/javascript"> 146 window.Pages = window.Pages || {}; 147 // FrontEnd RWD initialization 148 window.Pages.rwdReady = $.Deferred(); 149 window.Pages.toolBarDeferred = $.Deferred(); 150 window.Pages.rwdSetupComplete = $.Deferred(); 151 window.Pages.megaMenuLoaded = $.Deferred(); 152 window.Pages.angularToolbarComplete = $.Deferred(); 153 window.Pages.frontEndToolbarComplete = $.Deferred(); 154 </script>
154 155 <!--CPHeadContent--> 156
156<script src="/739942322.js" type="text/javascript"></script>
156 157 158 159 160 161 162 163 164 165 <!--[if lte IE 8]><link rel="stylesheet" type="text/css" href="/App_Themes/ie8.css"><![endif]--> 166 <!--[if lte IE 7]><link rel="stylesheet" type="text/css" href="/App_Themes/ie7.css"><![endif]--> 167 <!--[if lte IE 6]><link rel="stylesheet" type="text/css" href="/App_Themes/ie6.css"><![endif]--> 168 <!--[if lt IE 9]>
168<script type="text/javascript" src="/Scripts/html5.js"></script>
168<![endif]--> 169 170
170<script type="text/javascript"> 171 setEditorVariables(false, 840); 172 function getPrintPreviewType() { return 0; } function printPreview() {pPreview(getPrintPreviewType()); } 173 </script>
173 174
174<script src="/Assets/Scripts/AlpineJS/3.14.1/alpine.min.js" type="text/javascript" defer="defer"></script>
174 175</head> 176<body class="wide " > 177 178
178<script>jQuery(document).click(function (event) { 179 var target = jQuery(event.target); 180 if (target.attr('src') && target.parents('.image').length && target.parents('.widget').length) { 181 var text = target.attr('title'); 182 183 if (!text.length) { 184 text = "N/A"; 185 } 186 ga('send', 187 { 188 hitType: 'event', 189 eventCategory: 'Image', 190 eventAction: 'Image - ' + text, 191 eventLabel: window.location.href 192 }); 193 } 194 if (target.is('button') || target.hasClass('button') || target.parents().hasClass('button')) { 195 var text = ""; 196 if (target.parents('.button')[0]) { 197 text = target.parents('.button').first().text(); 198 } else if (target.text().length) { 199 text = target.text(); 200 } else if (target.attr('title').length) { 201 text = target.attr('title'); 202 } 203 if (!text.length) { 204 text = "N/A"; 205 } 206 ga('send', 207 { 208 hitType: 'event', 209 eventCategory: 'Button', 210 eventAction: 'Button - ' + text, 211 eventLabel: window.location.href 212 }); 213 } 214 if (target.parents('.widgetCustomHtml').length) { 215 ga('send', 216 { 217 hitType: 'event', 218 eventCategory: 'Custom Html',
219 eventAction: 'Custom Html Clicked', 220 eventLabel: window.location.href 221 }); 222 } 223 if (target.parents('.editor').length) { 224 ga('send', 225 { 226 hitType: 'event', 227 eventCategory: 'Editor', 228 eventAction: 'Editor Link Clicked', 229 eventLabel: window.location.href 230 }); 231 } 232 if (target.parents('.GraphicLinks').length) { 233 var text = ""; 234 var targetGraphicLink = target; 235 if (target.hasClass('widgetGraphicLinksLink')) { 236 targetGraphicLink = jQuery(target.children()[0]); 237 } 238 if (targetGraphicLink.hasClass('text')) { 239 text = targetGraphicLink.text(); 240 } else if (targetGraphicLink.attr('src').length) { 241 if (targetGraphicLink.attr('alt').length) { 242 text = targetGraphicLink.attr('alt'); 243 } else { 244 text = targetGraphicLink.attr('src'); 245 } 246 } else { 247 text = "N/A"; 248 } 249 ga('send', 250 { 251 hitType: 'event', 252 eventCategory: 'Graphic Links', 253 eventAction: 'Graphic Link - ' + text, 254 eventLabel: window.location.href 255 }); 256 } 257 if (target.parents('.InfoAdvanced').length) { 258 ga('send', 259 { 260 hitType: 'event', 261 eventCategory: 'Info Advanced', 262 eventAction: 'Info Advanced Clicked', 263 eventLabel: window.location.href 264 }); 265 } 266 if (target.parents('.list').length) { 267 ga('send', 268 { 269 hitType: 'event', 270 eventCategory: 'List', 271 eventAction: 'List Clicked', 272 eventLabel: window.location.href 273 }); 274 } 275 if (target.parents('.megaMenuItem').length || target.parents('.topMenuItem').length) { 276 var megaMenuText = jQuery('.topMenuItem.mouseover').find('span').text(); 277 var breadCrumbs = []; 278 jQuery('.breadCrumbs > li').each(function () { 279 breadCrumbs.push(this.textContent); 280 }); 281 var pageTitle = breadCrumbs.join('>'); 282 var subTitleText = target.parents('.megaMenuItem').children('.widgetTitle').children().text(); 283 var text = ""; 284 if (pageTitle) { 285 text += pageTitle + " | "; 286 } else { 287 text += document.title + ' - '; 288 } 289 if (target.text() == "" && megaMenuText == "") { 290 text += "N/A"; 291 } else if (target.text().length && megaMenuText.length) { 292 if (megaMenuText == target.text()) { 293 text += megaMenuText; 294 } else { 295 text += megaMenuText + " - " + subTitleText + " - " + target.text(); 296 } 297 } else if (target.text() == "") { 298 text += megaMenuText; 299 } else { 300 text += target.text(); 301 } 302 if (!text.length) { 303 text = "N/A"; 304 } 305 ga('send', 306 { 307 hitType: 'event', 308 eventCategory: 'Mega Menu', 309 eventAction: 'Mega Menu : ' + text, 310 eventLabel: window.location.href 311 }); 312 } 313 if (target.parents('.widgetNewsFlash').length && target.parents('.widgetItem').length) { 314 var text = jQuery(target.parents('.widgetItem')[0]).find('.widgetTitle').children().text(); 315 if (!text.length) { 316 text = "N/A"; 317 } 318 ga('send', 319 { 320 hitType: 'event', 321 eventCategory: 'News Flash', 322 eventAction: 'News Flash - ' + text, 323 eventLabel: window.location.href 324 }); 325 } 326 if (target.hasClass('widgetQuickLinksLink') || target.find('.widgetQuickLinksLink').length) { 327 var text = target.text(); 328 if (!text.length) { 329 text = "N/A"; 330 } 331 ga('send', 332 { 333 hitType: 'event', 334 eventCategory: 'Quick Links', 335 eventAction: 'Quick Links - ' + text, 336 eventLabel: window.location.href 337 }); 338 } 339 if (target.attr('src') && target.parents('.cpSlideshow').length) { 340 var text = target.attr('title'); 341 if (!text.length) { 342 text = "N/A"; 343 } 344 ga('send', 345 { 346 hitType: 'event', 347 eventCategory: 'Slideshow', 348 eventAction: 'Slideshow - ' + text, 349 eventLabel: window.location.href 350 }); 351 } 352 if (target.parents('.widgetText').length) { 353 ga('send', 354 { 355 hitType: 'event', 356 eventCategory: 'Text', 357 eventAction: 'Text Link Clicked', 358 eventLabel: window.location.href 359 }); 360 } 361});</script>
361 362 <div id="popoverModal" class="cp-PopOver cp-PopOver--modal cp-AdminWrap" style="position: fixed; display: none;"> 363 <div class="cp-PopOver-header"> 364 <h3 class="cp-PopOver-title"></h3> 365 <button class="cp-Btn cp-PopOver-close" onclick="closePopOverModal(event)"> 366 <svg class="cp-Icon--close" alt="close" title="close"> 367 <use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#iconClose"></use> 368 </svg> 369 </button> 370 </div> 371 <div id="cpPopOverBody" class="cp-PopOver-body"> 372 <form id="cpPopOverForm" name="cpPopOverForm" novalidate></form> 373 </div> 374 <div id="cpPopOverFooter" class="cp-PopOver-footer"> 375 <div class="cp-BtnGroup" id="actionButtons"> 376 <!-- Action buttons will be dynamically added here --> 377 </div> 378 </div> 379</div> 380 <div id="fb-root"></div> 381<div id=skipToContentLinks> 382<a href="#cc2d253645-1132-4ad1-bfa9-ad003afc588b" target="_self" class="skipToContentLink">Skip to Main Content</a> 383</div> 384 <form id="frmReferenceFormForTelerikEditorDialogs"></form> 385 386 <input type="hidden" id="GoogleMapsKey" value="AIzaSyDWUuE-ifkbhxblF920N8MjpBdTg1Wt784" /> 387 388 389 390 <input type="hidden" id="cpcDomain" value="https://cp-civicplusuniversity2.civicplus.com"> 391 <input type="hidden" id="hdnStructureID" value="11" /> 392 <input type="hidden" id="hdnContentCollectionID" value="f031d9cc-b2a2-4de8-a66b-a369d324f9f3" /> 393 <input type="hidden" id="hdnWorkingCopyID" value="00000000-0000-0000-0000-000000000000" /> 394 <input type="hidden" id="hdnThemeID" value="31" /> 395 <input type="hidden" id="pageIsFrontEnd" value="true" /> 396 <input type="hidden" id="pageModuleID" /> 397 <input type="hidden" id="pagePageID" value="101" /> 398 399 <div id="stickyPlaceholder"></div> 400 <div id="outer-wrap" class="outer-wrap"> 401 <div id="inner-wrap" class="inner-wrap"> 402 <div id="divToolbars" class="cpToolbars newCP mui-fixed" style=""> 403 404 405 406 407 </div> 408 <div id="bodyWrapper"> 409 <div id="mainNavHolderMobile" class="mainNavHolderMobile"></div> 410 411<div data-cpRole="structuralContainer" id="bodyContainerTS"> 412<!-- <div data-cpRole="banner" id="banner3" class="fixedBannerTS"> --><!-- Header Container --><header data-cpRole="structuralContainer" id="headerContainerTS" class="fixedTopTS"> 413<div data-cpRole="structuralContainer" id="flexWrap1TS"> 414<div class="siteWrap4"><div data-cpRole="structuralContainer" id="flexHeader1TS" class="headerTS flexTS flex-columnTS justify-betweenTS align-centerTS"> 415<div data-cpRole="structuralContainer" id="logoTS"> 416<div data-cpRole="banner" id="logoInnerTS" class="bannerLogoTS empty"> 417 418 419 420 421 <a id="logoInnerTS-85" style=" display: block; text-align: center; 422" class="bannerObject" href="/" target="_self"><img alt="Andover Massachusetts Homepage" class="bannerObject" height="200" src="/ImageRepository/Document?documentID=19353" width="496" /></a> 423</div> 424</div><div data-cpRole="structuralContainer" id="navTS"> 425<nav data-cpRole="nav" id="mainNav" class="siteNav mainNav" aria-label="Main"> 426<ol id="mainNavMenu" data-parent="1" class="rootNavMenu" role="menu"><!-- 427--><li id="MainItem9" class="topMenuItem" role="none" data-pageid="9" data-displaymegamenu="True"><!-- 428 --><!-- 429 --> <a role = "menuitem" aria-haspopup=true aria-expanded='false' aria-controls="mainNavMegaMenu9" id = "mainNavIWantTo" class="navMainItem mainNavItem mainNavItem1 " href="/9/I-Want-To" target = "_self" > I Want To... </a> <!-- 430 --><!-- 431 --></li><!----><li id="MainItem27" class="topMenuItem" role="none" data-pageid="27" data-displaymegamenu="True"><!-- 432 --><!-- 433 --> <a role = "menuitem" aria-haspopup=true aria-expanded='false' aria-controls="mainNavMegaMenu27" id = "mainNavGovernance" class="navMainItem mainNavItem mainNavItem2 " href="/27/Governance" target = "_self" > Governance </a> <!-- 434 --><!-- 435 --></li><!----><li id="MainItem148" class="topMenuItem" role="none" data-pageid="148" data-displaymegamenu="True"><!-- 436 --><!-- 437 --> <a role = "menuitem" aria-haspopup=true aria-expanded='false' aria-controls="mainNavMegaMenu148" id = "mainNavDepartments" class="navMainItem mainNavItem mainNavItem3 " href="/148/Departments" target = "_self" > Departments </a> <!-- 438 --><!-- 439 --></li><!----><li id="MainItem101" class="topMenuItem" role="none" data-pageid="101" data-displaymegamenu="True"><!-- 440 --><!-- 441 --> <a role = "menuitem" aria-haspopup=true aria-expanded='false' aria-controls="mainNavMegaMenu101" id = "mainNav
441Services" class="navMainItem mainNavItem mainNavItem4 " href="/101/Services" target = "_self" > Services </a> <!-- 442 --><!-- 443 --></li><!----><li id="MainItem35" class="topMenuItem" role="none" data-pageid="35" data-displaymegamenu="True"><!-- 444 --><!-- 445 --> <a role = "menuitem" aria-haspopup=true aria-expanded='false' aria-controls="mainNavMegaMenu35" id = "mainNavBusiness" class="navMainItem mainNavItem mainNavItem5 " href="/35/Business" target = "_self" > Business </a> <!-- 446 --><!-- 447 --></li><!----><li id="MainItem945" class="topMenuItem" role="none" data-pageid="945" data-displaymegamenu="False"><!-- 448 --><!-- 449 --> <a role="menuitem" id="mainNavAndover46" class="navMainItem mainNavItem mainNavItem6" href="https://andover46.com/" target="_self"> Andover46 </a> <!-- 450 --><!-- 451 --></li><!----> 452</ol> 453 454 455
455<script type="text/javascript"> 456 (function () { 457 function setupMenu() { 458 const menuID = 'mainNavMenu'; 459 const menuType = MAIN_MENU; 460 461 //setup menu manager properties for main menu 462 if (!menuManager.mobileMainNav && true) 463 menuManager.adjustMainItemsWidth('#' + menuID); 464 menuManager.isMainMenuEditable = false; 465 menuManager.mainMenuMaxSubMenuLevels = 4; 466 menuManager.setMOMMode(2, menuType); 467 468 //Init main menu 469 const setupDraggable = menuManager.isMainMenuEditable; 470 const urlToGetHiddenMenus = '/Pages/MenuMain/HiddenMainSubMenus?pageID=1&moduleID=&themeID=31&menuContainerID=mainNav'; 471 472 menuManager.setupMenu(menuID, 'mainNav', menuType, setupDraggable, urlToGetHiddenMenus); 473 menuManager.mainMenuInit = true; 474 menuManager.mainMenuTextResizer = true; 475 if (1.00 > 0) 476 menuManager.mainMenuTextResizerRatio = 1.00; 477 if (window.isResponsiveEnabled) 478 menuManager.mainMenuReady.resolve(); 479 480 } 481 482 if (document.readyState === "complete" 483 || document.readyState === "loaded" 484 || document.readyState === "interactive") { 485 setupMenu(); 486 return; 487 } 488 489 document.addEventListener("DOMContentLoaded", setupMenu); 490 })(); 491 </script>
491 492 493 494<aside data-cpRole="megaMenu" id="megaMenu" class="megaMenu" style="display: none;"><input type="hidden" id="megaMenuPopupDirection" value="0"><input type="hidden" id="megaMenuWidthReference" value="1"><aside role="menu" data-cpRole="contentContainer" id="mainNavMegaMenu9" class="contentTop mainNavMegaMenu megaMenuContainer pageID_9 hidden" data-orientation="horizontal"> <div id="cc7e5f4fa5-2b01-49d4-8c2e-f858cfbf87b5" data-containerid="7e5f4fa5-2b01-49d4-8c2e-f858cfbf87b5" class="pageContent cpGrid cpGrid24"> 495 496 497 498 499 </div> 500</aside><aside role="menu" data-cpRole="contentContainer" id="mainNavMegaMenu27" class="contentTop mainNavMegaMenu megaMenuContainer pageID_27 hidden" data-orientation="horizontal"> <div id="cc926e50c1-74f7-40c5-9c79-6b4a3d25ec34" data-containerid="926e50c1-74f7-40c5-9c79-6b4a3d25ec34" class="pageContent cpGrid cpGrid24"> 501 502 503 504 505 </div> 506</aside><aside role="menu" data-cpRole="contentContainer" id="mainNavMegaMenu148" class="contentTop mainNavMegaMenu megaMenuContainer pageID_148 hidden" data-orientation="horizontal"> <div id="cc3ddb16a9-9d71-407a-b08b-267fcde14604" data-containerid="3ddb16a9-9d71-407a-b08b-267fcde14604" class="pageContent cpGrid cpGrid24"> 507 508 509 510 511 </div> 512</aside><aside role="menu" data-cpRole="contentContainer" id="mainNavMegaMenu101" class="contentTop mainNavMegaMenu megaMenuContainer pageID_101 hidden" data-orientation="horizontal"> <div id="ccaa8931a6-734d-4856-9639-ad56ecaadab9" data-containerid="aa8931a6-734d-4856-9639-ad56ecaadab9" class="pageContent cpGrid cpGrid24"> 513 514 515 516 517 </div> 518</aside><aside role="menu" data-cpRole="contentContainer" id="mainNavMegaMenu35" class="contentTop mainNavMegaMenu megaMenuContainer pageID_35 hidden" data-orientation="horizontal"> <div id="cc4365148c-7130-4c49-b7c8-019206022adb" data-containerid="4365148c-7130-4c49-b7c8-019206022adb" class="pageContent cpGrid cpGrid24"> 519 520 521 522 523 </div> 524</aside></aside></nav> 525</div> 526</div></div><div data-cpRole="structuralContainer" id="searchTS"> 527<div class="siteWrap4"><div data-cpRole="contentContainer" id="searchInnerTS" class="containerTS"> <div id="cc42c855df-7e72-4b33-b394-2b90273b6578" data-containerid="42c855df-7e72-4b33-b394-2b90273b6578" class="pageContent cpGrid cpGrid24 isLockedContainer showInMobile" data-contentcontainerbreakpoint="25"> 528 529 530 <div class="row outer wide"><!-- 531--><div class="outer col col10 first" style="" data-widgetcontainerid="35fb3bad-7a31-42e3-8ede-da04760f24d9">� 532 <div class="row nest first last wide">� 533 534 <div class="inner col col10 first last ida1634c73-7b3a-4197-be76-a62ae3652d68" style="" data-widgetcontainerid="a1634c73-7b3a-4197-be76-a62ae3652d68">� 535<div data-widget-id="b2727c50-c58d-4e43-abef-2e728b1fa8cb" data-widget-controller-path="/GraphicLinks/Widget"> 536 537 538 539 540<div id="graphicLinkWidgetb2727c50-c58d-4e43-abef-2e728b1fa8cb" class="widget widgetGraphicLinks skin99 widgetOptionSet4 wide" data-elementqueryclasses='{"wide-narrow":"min-width:1em"}' data-elementquerymatch='matchMultiColumn' data-elementqueryunmatch='unmatchMultiColumn' data-modulewidgettype="graphicLinks"> 541 <div class="widgetHeader"> 542 <div class=""> 543 </div> 544 </div> 545 <div class="widgetBody cpGrid cpGrid3 "> 546 <nav class="widgetGraphicLinksNav" aria-labelledby="GraphicLinkHeaderText"> 547 <div class="row wide"> 548 <!-- 549--><div class="col col1 first "><ul class="semanticList"><!-- 550 --><li class="widgetItem GraphicLinks"><a class="widgetDesc widgetGraphicLinksLink" href="https://www.facebook.com/andoverma/" target="_blank"> 551 552<img src="/ImageRepository/Document?documentID=19361" 553 class="graphicButtonLink" alt="Facebook (opens in new window)" 554 onmouseover="this.src='/ImageRepository/Document?documentID=19361'" 555 onmouseout="this.src='/ImageRepository/Document?documentID=19361'" 556 onfocus="this.src='/ImageRepository/Document?documentID=19361'" 557 onblur="this.src='/ImageRepository/Document?documentID=19361'"> 558</a></li><!-- 559--></ul></div><!----><div class="col col1 "><ul class="semanticList"><!-- 560 --><li class="widgetItem GraphicLinks"><a class="widgetDesc widgetGraphicLinksLink" href="https://www.linkedin.com/company/andover-ma/" target="_self"> 561 562<img src="/ImageRepository/Document?documentID=19363" 563 class="graphicButtonLink" alt="Linkedin" 564 onmouseover="this.src='/ImageRepository/Document?documentID=19363'" 565 onmouseout="this.src='/ImageRepository/Document?documentID=19363'" 566 onfocus="this.src='/ImageRepository/Document?documentID=19363'" 567 onblur="this.src='/ImageRepository/Document?documentID=19363'"> 568</a></li><!-- 569--></ul></div><!----><div class="col col1 last"><ul class="semanticList"><!-- 570 --><li class="widgetItem GraphicLinks"><a class="widgetDesc widgetGraphicLinksLink" href="https://www.instagram.com/andovermagov" target="_self"> 571 572<img src="/ImageRepository/Document?documentID=19362" 573 class="graphicButtonLink" alt="Instagram" 574 onmouseover="this.src='/ImageRepository/Document?documentID=19362'" 575 onmouseout="this.src='/ImageRepository/Document?documentID=19362'" 576 onfocus="this.src='/ImageRepository/Document?documentID=19362'" 577 onblur="this.src='/ImageRepository/Document?documentID=19362'"> 578</a></li><!-- 579--></ul></div><!-- --> 580 </div> 581 </nav> 582 </div> 583 <div class="widgetFooter"> 584 </div> 585</div> 586</div> 587 588 </div> <!-- inner column --> 589 590 </div> <!-- inner row --> 591 592 </div><!-- outer column --><!----><div class="outer col col14 last" style="" data-widgetcontainerid="e3ced237-f342-4c9c-90fe-46407d533a96">� 593 <div class="row nest first last wide">� 594 595 <div class="inner col col14 first last id451b2f72-21a7-4994-8b6d-53f2846832a7" style="" data-widgetcontainerid="451b2f72-21a7-4994-8b6d-53f2846832a7">� 596 597 <div data-widget-id='c9ee3bb9-b50b-4325-a175-df17afbdbb4f' data-moduleName="customHtml" id='widgetCustomHtmlc9ee3bb9-b50b-4325-a175-df17afbdbb4f' class="widget widgetCustomHtml skin94 narrow" > 598 <div class="widgetBody pageStyles" id="widgetBodyc9ee3bb9-b50b-4325-a175-df17afbdbb4f"> 599 <div id="customHtmlc9ee3bb9-b50b-4325-a175-df17afbdbb4f"><div><style> 600/* SEARCH BAR STYLINGS */ 601form.am-search--form { 602 --am-height: 3rem; 603 background: #C0DDF1; 604 width: 100%; 605 display: flex; 606 flex-flow: row nowrap; 607 justify-content: stretch; 608 align-items: center; 609 gap: 0; 610} 611 612/* Hidden label (accessibility) */ 613form.am-search--form label { 614 border: 0; 615 clip-path: inset(50%); 616 height: 1px; 617 margin: -1px; 618 overflow: hidden; 619 padding: 0; 620 position: absolute; 621 width: 1px; 622} 623 624/* Input field */ 625form.am-search--form input[type="search"] { 626 flex: 1; 627 background: none; 628 padding: 0.25rem 1rem; 629 font: 600 16px Montserrat; 630 border: none; 631 height: var(--am-height); 632} 633 634/* Placeholder styling */ 635form.am-search--form input[type="search"]::placeholder { 636 color: #132A50; 637 opacity: 1; 638} 639 640form.am-search--form input[type="search"]:focus { 641/* outline: none; 642 box-shadow: 0 0 0 2px #132A50; */ 643 644 outline: none; 645 border: none; 646 box-shadow: none; 647 648} 649 650/* Button styling */ 651form.am-search--form button { 652 margin: 0.5rem 0.5rem 0.5rem 0; 653 display: flex; 654 justify-content: center; 655 align-items: center; 656 position: relative; 657 background: var(--am-searchBar_button--color); 658 cursor: pointer; 659 border: none; 660} 661</style> 662<div><form class="am-search--form" action="/1711/Search-Results" method="get" role="search" aria-label="Site search"> 663 <label for="site-search">Search</label> 664 <input id="site-search" type="search" name="q" placeholder="Search..." required=""> 665 <input type="hidden" name="cx" value="45dabbb3985664d98"> 666 <button type="submit" aria-label="Search"> 667<img alt="Search" class="imageHover" data-hover="/ImageRepository/Document?documentID=19377" data-image="/ImageRepository/Document?documentID=19378" src="/ImageRepository/Document?documentID=19378"> 668 </button> 669 670</form></div></div></div> 671 </div> 672 673 </div> 674 675 </div> <!-- inner column --> 676 677 </div> <!-- inner row --> 678 679 </div><!-- outer column --><!-- --></div> <!-- outer row --> 680 681 682 </div> 683</div></div> 684</div> 685</div> 686</header><div data-cpRole="structuralContainer" id="banner2WrapTS" class="noOverflowTS"> 687<!-- Banner --><div data-cpRole="structuralContainer" id="bannerContainerTS" class="noOverflowTS"> 688<div data-cpRole="banner" id="banner1"><div data-cpRole="structuralContainer" id="bannerSizingTS"> 689<div data-cpRole="structuralContainer" id="bannerContentTS"> 690<div class="siteWrap4"><div data-cpRole="contentContainer" id="contentTS" class="containerTS">
690 <div id="ccde8b7d91-8b20-4660-9c85-9ce8921bcafd" data-containerid="de8b7d91-8b20-4660-9c85-9ce8921bcafd" class="pageContent cpGrid cpGrid24 showInMobile"> 691 692 693 694 695 </div> 696</div></div> 697</div> 698</div> 699 700 701 702 703 <div id="bannerImagesJSON86" class="hidden"></div> 704 <div id="bannerSlideshowControls_banner1" class="bannerSlideshowControlsNew none " style="display:none"> 705 <a id="arrowPrev_banner1" tabindex="0" class="arrowNew prev" aria-label="Banner Arrow Previous"><svg style=" " class=""><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#iconSlideshowArrowLeft"></use></svg></a> 706 <a id="arrowNext_banner1" tabindex="0" class="arrowNew next" aria-label="Banner Arrow Next"><svg style=" " class=""><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#iconSlideshowArrowRight"></use></svg></a> 707 </div> 708
708<script type="text/javascript"> 709 $(window).on("load", function () { 710 $.when(window.Pages.rwdSetupComplete) 711 .done(function () { 712 renderExternalBannerSlideshow('banner1', 713 {"BannerOptionID":86,"ThemeID":31,"SlotName":"banner1","Name":"Default","IsDefault":true,"BannerMode":2,"SlideShowSlideTiming":"5","SlideshowTransition":0,"SlideShowTransitionTiming":"1","ImageScale":true,"ImageAlignment":1,"ImageScroll":true,"MuteSound":true,"VideoType":0,"Status":40,"SlideshowControlsPosition":0,"SlideshowControlsAlignment":0,"SlideshowBannerControlsColorScheme":0,"DisplayVideoPauseButton":false,"VideoPauseButtonAlignment":1,"VideoPauseButtonControlsAlignment":0,"VideoPauseButtonStyle":"#FFFFFF","VideoPauseButtonBackgroundStyle":"#000000","VideoPauseButtonAlignmentClass":"alignRight viewport","DisplaySlideshowPauseButton":false,"SlideshowControlsColor":"#FFFFFF","SlideshowControlsBackgroundColor":"#000000","SlideshowPauseButtonClass":"isHidden","BannerImages":[{"BannerImageID":173,"BannerOptionID":86,"FileName":"/ImageRepository/Document?documentID=19357","Height":500,"Width":2200,"StartingOn":null,"StoppingOn":null,"IsLink":false,"LinkAddress":null,"Sequence":1,"RecordStatus":0,"ModifiedBy":0,"ModifiedOn":"\/Date(-62135575200000)\/","AltText":""},{"BannerImageID":174,"BannerOptionID":86,"FileName":"/ImageRepository/Document?documentID=19356","Height":500,"Width":2200,"StartingOn":null,"StoppingOn":null,"IsLink":false,"LinkAddress":null,"Sequence":2,"RecordStatus":0,"ModifiedBy":0,"ModifiedOn":"\/Date(-62135575200000)\/","AltText":""},{"BannerImageID":175,"BannerOptionID":86,"FileName":"/ImageRepository/Document?documentID=19355","Height":500,"Width":2200,"StartingOn":null,"StoppingOn":null,"IsLink":false,"LinkAddress":null,"Sequence":3,"RecordStatus":0,"ModifiedBy":0,"ModifiedOn":"\/Date(-62135575200000)\/","AltText":""},{"BannerImageID":176,"BannerOptionID":86,"FileName":"/ImageRepository/Document?documentID=19354","Height":500,"Width":2200,"StartingOn":null,"StoppingOn":null,"IsLink":false,"LinkAddress":null,"Sequence":4,"RecordStatus":0,"ModifiedBy":0,"ModifiedOn":"\/Date(-62135575200000)\/","AltText":""}],"BannerVideos":[{"BannerVideoID":15,"BannerOptionID":86,"VideoFileName":"","ImageFileName":"EmptyBannerBkg202603061313088562.png","IsLink":false,"LinkAddress":null,"ModifiedBy":0,"ModifiedOn":"\/Date(-62135575200000)\/","VideoFileID":"00000000-0000-0000-0000-000000000000","ImageFileID":"00000000-0000-0000-0000-000000000000","VideoWidth":0,"VideoHeight":0,"ImageWidth":0,"ImageHeight":0,"LinkedVideoUrl":"","RecordStatus":0,"AltText":null}],"RecordStatus":0,"ModifiedBy":0,"ModifiedOn":"\/Date(-62135575200000)\/"}, 714 '/App_Themes/Interior - 2026 Redesign/Images/', 715 'Rotating'); 716 }); 717 }); 718 </script>
718 719 720</div> 721</div><main data-cpRole="structuralContainer" id="mainSectionTS"> 722<!-- Content container --><div data-cpRole="structuralContainer" id="mainContainerTS"> 723<div class="siteWrap2"><div data-cpRole="structuralContainer" id="mainWrapTS" class="mainWrap flexTS flex-columnTS roundedTS"> 724<div data-cpRole="structuralContainer" id="siteSidebarTS" class="siteSidebar left-nav-decoration roundedTS"> 725<aside data-cpRole="contentContainer" id="sidebarContainer1TS" class="containerTS"> <div id="cc5ad56e13-c04a-4377-bd27-cb106f0ecffe" data-containerid="5ad56e13-c04a-4377-bd27-cb106f0ecffe" class="pageContent cpGrid cpGrid24 showInMobile"> 726 727 728 729 730 </div> 731</aside><nav data-cpRole="nav" id="secondaryNav" class="siteNav secondaryNav" aria-label="Secondary"> 732 733 734 735 736 737 <ol role="menu" id="secondaryMenusecondaryNav" data-parent="101" class="rootNavMenu accordionNav"> 738 <li class="topMenuItem sideNavLi hasAccordionChildren" id="SideItem465" data-pageid="465"> 739 <div class="accordionNavItem"> 740 <a href="/194" target="_self" class="navMainItem secondaryNavItem cpComponent" data-type="SecondaryMainItem">Assessed Values</a> 741 </div> 742 </li> 743 <li class="topMenuItem sideNavLi hasAccordionChildren" id="SideItem444" data-pageid="444"> 744 <div class="accordionNavItem"> 745 <a href="/268" target="_self" class="navMainItem secondaryNavItem cpComponent" data-type="SecondaryMainItem">Bald Hill Compost Site</a> 746 </div> 747 </li> 748 <li class="topMenuItem sideNavLi hasAccordionChildren" id="SideItem670" data-pageid="670"> 749 <div class="accordionNavItem"> 750 <a href="/670/Stay-Informed" target="_self" class="navMainItem secondaryNavItem cpComponent" data-type="SecondaryMainItem">Stay Informed</a> 751 </div> 752 </li> 753 <li class="topMenuItem sideNavLi hasAccordionChildren" id="SideItem477" data-pageid="477"> 754 <div class="accordionNavItem"> 755 <a href="https://experience.arcgis.com/experience/20b4a43a750f46698f6a7767cdf859aa/" target="_blank" class="navMainItem secondaryNavItem cpComponent" data-type="SecondaryMainItem">GIS Viewer</a> 756 </div> 757 </li> 758 <li class="topMenuItem sideNavLi hasAccordionChildren" id="SideItem505" data-pageid="505"> 759 <div class="accordionNavItem"> 760 <a href="/410" target="_self" class="navMainItem secondaryNavItem cpComponent" data-type="SecondaryMainItem">Online Permit Center</a> 761 </div> 762 </li> 763 <li class="topMenuItem sideNavLi hasAccordionChildren" id="SideItem513" data-pageid="513"> 764 <div class="accordionNavItem"> 765 <a href="/397" target="_self" class="navMainItem secondaryNavItem cpComponent" data-type="SecondaryMainItem">Public Records Requests</a> 766 </div> 767 </li> 768 <li class="topMenuItem sideNavLi hasAccordionChildren" id="SideItem666" data-pageid="666"> 769 <div class="accordionNavItem"> 770 <a href="/607/Public-Works-Request" target="_self" class="navMainItem secondaryNavItem cpComponent" data-type="SecondaryMainItem">Public Works Request</a> 771 </div> 772 </li> 773 <li class="topMenuItem sideNavLi hasAccordionChildren" id="SideItem412" data-pageid="412"> 774 <div class="accordionNavItem"> 775 <a href="/412/Online-Bill-Pay" target="_self" class="navMainItem secondaryNavItem cpComponent" data-type="SecondaryMainItem">Online Bill Pay</a> 776 </div> 777 </li> 778 <li class="topMenuItem sideNavLi hasAccordionChildren" id="SideItem457" data-pageid="457"> 779 <div class="accordionNavItem"> 780 <a href="/304" target="_self" class="navMainItem secondaryNavItem cpComponent" data-type="SecondaryMainItem">Recycling and Trash</a> 781 </div> 782 </li> 783 <li class="topMenuItem sideNavLi hasAccordionChildren" id="SideItem638" data-pageid="638"> 784 <div class="accordionNavItem"> 785 <a href="/638/Community-Events-and-Programs" target="_self" class="navMainItem secondaryNavItem cpComponent" data-type="SecondaryMainItem">Community Events and Programs</a> 786 <a href="#" role="button" class="openAccordionNav accordionSecondaryNavItem" aria-label="Community Events and Programs Submenu" aria-expanded="false" aria-controls="submenu-lvl1-638"></a> 787 </div> 788 <ol aria-hidden="true" class="accordionNavContainer accordionNavContainer--lvl1" id="submenu-lvl1-638" style="display: none;" data-parent="638"> 789 <li class="sideNavLi subMenuItem hasAccordionChildren" id="SideItem703" data-pageid="703"> 790 <div class="accordionNavItem"> 791 <a href="http://www.andoverma.gov/calendar.aspx?CID=24" target="_self" class="navMenuItem cpComponent" data-type="SecondaryMenuItem"><span lang="en">Community Events Calendar</span></a> 792 </div> 793 </li> 794 <li class="sideNavLi subMenuItem hasAccordionChildren" id="SideItem446" data-pageid="446"> 795 <div class="accordionNavItem"> 796 <a href="/227" target="_self" class="navMenuItem cpComponent" data-type="SecondaryMenuItem"><span lang="en">The Robb Center</span></a> 797 </div> 798 </li> 799 <li class="sideNavLi subMenuItem hasAccordionChildren" id="SideItem475" data-pageid="475"> 800 <div class="accordionNavItem"> 801 <a href="https://www.andoverrec.com" target="_self" class="navMenuItem cpComponent" data-type="SecondaryMenuItem"><span lang="en">Recreation Programs</span></a> 802 </div> 803 </li> 804 <li class="sideNavLi subMenuItem hasAccordionChildren" id="SideItem469" data-pageid="469"> 805 <div class="accordionNavItem"> 806 <a href="/1632/Youth-Services" target="_self" class="navMenuItem cpComponent" data-type="SecondaryMenuItem"><span lang="en">Youth Programs</span></a> 807 </div> 808 </li> 809 810 </ol> 811 </li> 812 <li class="topMenuItem sideNavLi hasAccordionChildren" id="SideItem374" data-pageid="374"> 813 <div class="accordionNavItem"> 814 <a href="/quicklinks.aspx?CID=26" target="_self" class="navMainItem secondaryNavItem cpComponent" data-type="SecondaryMainItem">Public Transportation</a> 815 </div> 816 </li> 817 <li class="topMenuItem sideNavLi hasAccordionChildren" id="SideItem470" data-pageid="470"> 818 <div class="accordionNavItem"> 819 <a href="/599/Spring-Grove-Cemetery-Viewer" target="_self" class="navMainItem secondaryNavItem cpComponent" data-type="SecondaryMainItem">Spring Grove Cemetery Search</a> 820 </div> 821 </li> 822 <li class="topMenuItem sideNavLi hasAccordionChildren" id="SideItem721" data-pageid="721"> 823 <div class="accordionNavItem"> 824 <a href="/709/Property-Lookup-Tools" target="_self" class="navMainItem secondaryNavItem cpComponent" data-type="SecondaryMainItem">Property Lookup Tools</a> 825 </div> 826 </li> 827 828 </ol> 829 830 831
831<script type="text/javascript"> 832 (function () { 833 function setupSecondaryMenuProperties() { 834 //setup menu manager properties for secondary menu 835 menuManager.isSideMenuEditable = false; 836 menuManager.sideMenuMaxSubMenuLevels = 4; 837 menuManager.sideMenuHasCustomLinks = false; 838 } 839 840 if (document.readyState === "loading") { 841 document.addEventListener("DOMContentLoaded", setupSecondaryMenuProperties, { once: true }); 842 return; 843 } 844 845 setupSecondaryMenuProperties(); 846 })(); 847 </script>
847 848 849
849<script type="text/javascript"> 850 (function () { 851 function setupAccordionSecondaryNav() { 852 var $menuContainer = $('#secondaryNav'); 853 854 $menuContainer.find('*[id^="SideItem"]').each(function () { 855 var ids = $('[id="' + this.id + '"]'); 856 if (ids.length > 1) 857 $.each(ids, function (index, value) { 858 value.id = value.id + '_' + index; 859 }); 860 }); 861 862 $menuContainer.find('.hasAccordionChildren .openAccordionNav').off('click.secondaryNav').on('click.secondaryNav', function (e) { 863 e.preventDefault(); 864 showHideAccordionMenuForSecondaryNav($(this)); 865 }); 866 867 $menuContainer.find(".grippy").each(function () { 868 menuManager.setupDraggableElement($(this), SIDE_MENU, '#secondaryNav'); 869 }); 870 871 $menuContainer.find("li").each(function () { 872 menuManager.setupDroppableAccordionElement($(this), SIDE_MENU); 873 }); 874 } 875 876 if (document.readyState === "loading") { 877 document.addEventListener("DOMContentLoaded", setupAccordionSecondaryNav, { once: true }); 878 return; 879 } 880 881 setupAccordionSecondaryNav(); 882 })(); 883 </script>
883 884 885 886 887</nav><aside data-cpRole="contentContainer" id="sidebarContainer2TS" class="containerTS"> <div id="ccf4a8bea1-a841-492a-abfa-0411d9c704c1" data-containerid="f4a8bea1-a841-492a-abfa-0411d9c704c1" class="pageContent cpGrid cpGrid24 showInMobile"> 888 889 890 891 892 </div> 893</aside> 894</div><div data-cpRole="structuralContainer" id="outerContentWrapTS" class="outerContentWrap flexTS flex-columnTS"> 895<div data-cpRole="structuralContainer" id="contentWrapTS" class="contentWrap"> 896<div data-cpRole="breadCrumbs" id="breadCrumbs" class="breadCrumbContainer"> <ol class="semanticList breadCrumbs"> 897 <li><a class="breadCrumb" href="/">Home</a></li><li id="currentBCPage" data-pageid="101"><a href class="breadCrumb" aria-current="page">Services</a></li> 898 </ol> 899 900 901 902</div><div data-cpRole="mainContentContainer" id="moduleContent"> 903 904 <div id="page" class="moduleContentNew"> 905 906 907 <input id="hdnPageID" name="hdnPageID" type="hidden" value="101" /> 908 <input id="hdnParentID" name="hdnParentID" type="hidden" value="1" /> 909 <input id="hdnVersionID" name="hdnVersionID" type="hidden" value="1533" /> 910 <input id="pageMenuTitle" name="pageMenuTitle" type="hidden" value="Services" /> 911 <input id="pageShowFeatureColumn" name="pageShowFeatureColumn" type="hidden" value="False" />
912 <input id="hdnIsLayoutPage" name="hdnIsLayoutPage" type="hidden" value="False" /> 913 <input id="hdnPageStatus" name="hdnPageStatus" type="hidden" value="Published" /> 914 915 <h1 id="versionHeadLine" class="headline"> 916 917Services </h1> 918 919 <div id="cc2d253645-1132-4ad1-bfa9-ad003afc588b" data-containerid="2d253645-1132-4ad1-bfa9-ad003afc588b" class="pageContent cpGrid cpGrid24" > 920 921 922 <div class="row outer wide"><!-- 923--><div class="outer col col24 first last" style="" data-widgetcontainerid="e71e09ae-73f5-46d3-bd98-846c81b8ef1a">� 924 <div class="row nest first last wide">� 925 926 <div class="inner col col24 first last idf5b30119-ef60-4b9c-8bfd-37d1977ba0b6" style="" data-widgetcontainerid="f5b30119-ef60-4b9c-8bfd-37d1977ba0b6">� 927<div class="widget editor pageStyles narrow" id="divEditor65cf2174-a1da-4cd9-a2f1-fa8dbf0074c1" data-elementqueryclasses='{"wide-narrow":"min-width:25em"}'> 928 <div class="fr-view"> 929 930 931 The Town of Andover provides a full array of high-quality services to the general public, including:<br> 932<ul> 933 <li>Elder, youth and veterans services</li> 934 <li>Full-service library</li> 935 <li>Full-time police and fire protection</li> 936 <li>Public health and natural resource protection</li> 937 <li>Schools for grades kindergarten through 12 (one early childhood, five elementary, three middle, one senior high, and one vocational technical high)</li> 938 <li>Solid waste disposal and recycling</li> 939 <li>Street maintenance and snow removal</li> 940 <li>Various parks, playgrounds, conservation lands, and recreational programs</li> 941</ul> 942The Town also operates its own water supply, purification, and distribution system and provides sanitary waste disposal via connections to a regional treatment facility. During the summer months the Town operates Pomp's Pond, a family and youth oriented recreation area located off Abbot Street, which includes recreational and instructional swimming, shaded picnic tables, boat rentals, volleyball, and a children's playground. The Town of Andover is committed to a high degree of community responsiveness, providing high quality services to its citizens, and conducting all of its affairs in a professional manner. 943 </div> 944
945<script type="text/javascript"> 946 $(document).ready(function (e) { 947 renderSlideshowIfApplicable($('#divEditor' + '65cf2174-a1da-4cd9-a2f1-fa8dbf0074c1')); 948 }); 949</script>
949 950</div> 951 952 </div> <!-- inner column --> 953 954 </div> <!-- inner row --> 955 956 </div><!-- outer column --><!-- --></div> <!-- outer row --> 957 <div class="row outer wide"><!-- 958--><div class="outer col col24 first last" style="" data-widgetcontainerid="dbfebe44-64a4-4555-924b-698f2ddaac4e">� 959 <div class="row nest first last wide">� 960 961 <div class="inner col col24 first last id050a9c79-26c0-4a4b-9741-280aa81c8111" style="" data-widgetcontainerid="050a9c79-26c0-4a4b-9741-280aa81c8111">� 962 <nav class="widget clear dynamicSubpage widgetPages skin94 wide" id="widgetPagec5def0d8-c2b0-4935-8ac4-d45345478b2b" data-elementqueryclasses='{"wide-narrow":"min-width:25em"}' data-elementquerymatch='matchMultiColumn' data-elementqueryunmatch='unmatchMultiColumn' aria-label = Pages> 963 <div class="hidden widgetTypeID">9</div> 964 <div class="hidden depth">1</div> 965 <div class="hidden cols">1</div> 966 <div class="hidden format">2</div> 967 <div class="widgetBody"> 968 969 <div class="widgetBody cpGrid cpGrid1 "> 970 <div class="row wide"> 971 972 <div class="col col1"> 973 <ol class="semanticList layout2"> 974 <li class="megaMenuItem widgetItem" data-pageid="465" role="none"> 975 <div class="widgetTitle"> 976 <a href="/194" target="_self" >Assessed Values</a> 977 </div> 978 <p class="widgetDesc">The Board of Assessors is now required by the Department of Revenue to make adjustments to assessments on an annual basis. The values are based on sales that took place in calendar year 2014.</p> 979 980 </li> <li class="megaMenuItem widgetItem" data-pageid="444" role="none"> 981 <div class="widgetTitle"> 982 <a href="/268" target="_self" >Bald Hill Compost Site</a> 983 </div> 984 <p class="widgetDesc">Review hours of operation and more information about the Bald Hill compost site. </p> 985 986 </li> <li class="megaMenuItem widgetItem" data-pageid="670" role="none"> 987 <div class="widgetTitle"> 988 <a href="/670/Stay-Informed" target="_self" >Stay Informed</a> 989 </div> 990 <p class="widgetDesc">A listing of all of the channels to connect with the town through subscription services, social media, emergency alerts, public works requests, and feedback forms.</p> 991 992 </li> <li class="megaMenuItem widgetItem" data-pageid="477" role="none"> 993 <div class="widgetTitle"> 994 <a href="https://experience.arcgis.com/experience/20b4a43a750f46698f6a7767cdf859aa/" target="_blank" rel="noopener">GIS Viewer</a> 995 </div> 996 <p class="widgetDesc">Create and print custom geographical maps of Andover.</p> 997 998 </li> <li class="megaMenuItem widgetItem" data-pageid="505" role="none"> 999 <div class="widgetTitle"> 1000 <a href="/410" target="_self" >Online Permit Center</a> 1001 </div> 1002 <p class="widgetDesc">The Town of Andover is pleased to offer licensed contractors and home/property owners the ability to apply, pay for, and receive building, electrical, gas, plumbing, and mechanical permits online through ViewPermit, our permitting partner.</p> 1003 1004 </li> <li class="megaMenuItem widgetItem" data-pageid="513" role="none"> 1005 <div class="widgetTitle"> 1006 <a href="/397" target="_self" >Public Records Requests</a> 1007 </div> 1008 <p class="widgetDesc">Responding to public records requests is an important service we provide the public. In most cases a request for public records will require payment in advance. </p> 1009 1010 </li> <li class="megaMenuItem widgetItem" data-pageid="666" role="none"> 1011 <div class="widgetTitle"> 1012 <a href="/607/Public-Works-Request" target="_self" >Public Works Request</a> 1013 </div> 1014 <p class="widgetDesc">Submit a Public Works Request to the Municipal Services Department</p> 1015 1016 </li> <li class="megaMenuItem widgetItem" data-pageid="412" role="none"> 1017 <div class="widgetTitle"> 1018 <a href="/412/Online-Bill-Pay" target="_self" >Online Bill Pay</a> 1019 </div> 1020 <p class="widgetDesc">The Town of Andover now offers the option of paying several types of municipal bills electronically using third-party payment processing services.</p> 1021 1022 </li> <li class="megaMenuItem widgetItem" data-pageid="457" role="none"> 1023 <div class="widgetTitle"> 1024 <a href="/304" target="_self" >Recycling and Trash</a> 1025 </div> 1026 <p class="widgetDesc">Find information on recycling and trash services in the Town of Andover.</p> 1027 1028 </li> <li class="megaMenuItem widgetItem" data-pageid="638" role="none"> 1029 <div class="widgetTitle"> 1030 <a href="/638/Community-Events-and-Programs" target="_self" >Community Events and Programs</a> 1031 </div> 1032 <p class="widgetDesc">Information Community Events and also program offerings from Recreation, Elder Services, Veterans, and Youth Services </p> 1033 1034 </li> <li class="megaMenuItem widgetItem" data-pageid="374" role="none"> 1035 <div class="widgetTitle"> 1036 <a href="/quicklinks.aspx?CID=26" target="_self" >Public Transportation</a> 1037 </div> 1038 <p class="widgetDesc">Find links to public transportation providers in the Town of Andover.</p> 1039 1040 </li> <li class="megaMenuItem widgetItem" data-pageid="470" role="none"> 1041 <div class="widgetTitle"> 1042 <a href="/599/Spring-Grove-Cemetery-Viewer" target="_self" >Spring Grove Cemetery Search</a> 1043 </div> 1044 <p class="widgetDesc">Search for cemetery information using our online mapping service.</p> 1045 1046 </li> <li class="megaMenuItem widgetItem" data-pageid="721" role="none"> 1047 <div class="widgetTitle"> 1048 <a href="/709/Property-Lookup-Tools" target="_self" >Property Lookup Tools</a> 1049 </div> 1050 <p class="widgetDesc">View Assessor data, GIS, Tax maps, and related property information using an interactive map or searching databases.</p> 1051 1052 </li> </ol> 1053 </div> 1054 </div> 1055 </div> 1056 1057 1058 1059 1060 </div> 1061 1062 </nav> 1063 1064 1065 1066 </div> <!-- inner column --> 1067 1068 </div> <!-- inner row --> 1069 1070 </div><!-- outer column --><!-- --></div> <!-- outer row --> 1071 1072 1073 </div> 1074 1075 </div> 1076 1077
1078 <div class="newCP"> 1079 1080 </div> 1081</div> 1082</div><aside data-cpRole="contentContainer" id="featureColumn" class="secondaryContent containerTS roundedTS"> <div id="cc3afe84ea-6669-4f6d-aaa3-003ef1dc7a6d" data-containerid="3afe84ea-6669-4f6d-aaa3-003ef1dc7a6d" class="pageContent cpGrid cpGrid24 showInMobile"> 1083 1084 1085 <div class="row outer wide"><!-- 1086--><div class="outer col col24 first last" style="" data-widgetcontainerid="f756ffcd-204c-4b1f-99ec-1036e18321d5">� 1087 <div class="row nest first last wide">� 1088 1089 <div class="inner col col24 first last id650ba8c5-b251-4087-b4f9-5eb8387bb0dc" style="" data-widgetcontainerid="650ba8c5-b251-4087-b4f9-5eb8387bb0dc">� 1090<div data-widget-id="10637d60-d881-4158-85af-d24147fdb9d8" data-widget-controller-path="/AlertCenter/Widget"> 1091 1092<section class="widget widgetAlertCenter skin95" data-modulewidgettype="alertCenter" aria-labelledby="header10637d60-d881-4158-85af-d24147fdb9d8" aria-label="Alert Center"> 1093 <header class="widgetHeader" id="header10637d60-d881-4158-85af-d24147fdb9d8"> 1094 <h3><a style="" href="/AlertCenter.aspx?CID=1,2" >Alert Center</a></h3> 1095 </header> 1096 <div class="widgetBody"> 1097 <ol class="semanticList mixed" style=""> 1098 <li class="widgetItem alertOff 16"> 1099 <span class="widgetTitle">There are no alerts at this time.</span> 1100 </li> 1101 </ol> 1102 </div> 1103 <div class="widgetFooter"> 1104 </div> 1105</section></div> 1106 1107 </div> <!-- inner column --> 1108 1109 </div> <!-- inner row --> 1110 1111 </div><!-- outer column --><!-- --></div> <!-- outer row --> 1112 <div class="row outer wide"><!-- 1113--><div class="outer col col24 first last" style="" data-widgetcontainerid="926560ba-c3a7-4700-912f-b77246ac4349">� 1114 <div class="row nest first last wide">� 1115 1116 <div class="inner col col24 first last id27c50940-035e-49d9-841e-8f11019a1dd6" style="" data-widgetcontainerid="27c50940-035e-49d9-841e-8f11019a1dd6">� 1117<div data-widget-id="3c72ae4e-d3c6-49bc-a2fb-47edf228b330" data-widget-controller-path="/NewsFlash/Widget"> 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 <section class="widget widgetNewsFlash skin95 widgetOptionSet43 wide" data-modulewidgettype="newsFlash" id="widgetNewsFlash3c72ae4e-d3c6-49bc-a2fb-47edf228b330" data-elementqueryclasses='{"wide-narrow":"min-width:25em"}' data-elementquerymatch='matchMultiColumn' data-elementqueryunmatch='unmatchMultiColumn' aria-labelledby="newsFlashHeader3c72ae4e-d3c6-49bc-a2fb-47edf228b330"> 1134 <header class="widgetHeader" id="newsFlashHeader3c72ae4e-d3c6-49bc-a2fb-47edf228b330"> 1135 <div class=""> 1136 <h3><a style="" href="/CivicAlerts.aspx?CID=1" >News Flash</a></h3> 1137 </div> 1138 </header> 1139 <div class="widgetBody cpGrid cpGrid1 "> 1140 <div class="row wide" style=""> 1141 <div class="col col1 first last"> 1142 <ol class="semanticList"> 1143 <li class="widgetItem" data-news-i-d="1279"> 1144 1145 <h4 id="newsFlashItemHeader1279" class="widgetTitle"> <a href="/CivicAlerts.aspx?AID=1279" target="_self">Electricity Aggregation Plan Review </a> 1146</h4><div class="widgetDesc"> 1147The Town of Andover is holding a 30-day public review period for its revised aggregation plan for Andover Community Power (ACP). Andover Community Power is our Townâs official electricity supply program, active since June 2024. </div> 1148 1149 </li> 1150 <li class="widgetItem" data-news-i-d="1277"> 1151 1152 <h4 id="newsFlashItemHeader1277" class="widgetTitle"> <a href="https://andoverma.gov/1787/18441/Changes-to-Water-and-Sewer-Billing" target="_self">Changes to Water & Sewer Billing </a> 1153</h4><div class="widgetDesc"> 1154Beginning in September 2026, the Town of Andover is implementing several changes to water and sewer billing, including a redesigned bill, changes to online payments, consolidated irrigation billing, and the assessment of interest on past-due balances. <a id="newsFlashReadOn1277" aria-label="Additional Info...: Changes to Water & Sewer Billing" href="https://andoverma.gov/1787/18441/Changes-to-Water-and-Sewer-Billing" target="_self" class="readOn">Additional Info...</a> 1155</div> 1156 1157 </li> 1158 <li class="widgetItem" data-news-i-d="1274"> 1159 1160 <h4 id="newsFlashItemHeader1274" class="widgetTitle"> <a href="https://andoverma.gov/348/Elections" target="_self">Voter Information for the 2026 State Election </a> 1161</h4><div class="widgetDesc"> 1162The 2026 State Election will be held on Tuesday, November 3rd. Andover voters can cast their ballot in-person on Elect Day, during in-person early voting hours, or by mail. Review important deadlines, and make a plan to vote. <a id="newsFlashReadOn1274" aria-label="Additional Info...: Voter Information for the 2026 State Election" href="https://andoverma.gov/348/Elections" target="_self" class="readOn">Additional Info...</a> 1163</div> 1164 1165 </li> 1166 </ol> 1167 </div> 1168 </div> 1169 1170 <a id="newsFlashViewAll3c72ae4e-d3c6-49bc-a2fb-47edf228b330" class="widgetViewAll alignLeft" style="" href="/CivicAlerts.aspx?CID=1">View All News</a> 1171 </div> 1172 <div class="widgetFooter"> 1173 </div> 1174 <div class="addItemModal hidden"> 1175 <div class="url hidden">/CivicAlerts.aspx</div> 1176 </div> 1177 1178 </section> 1179 1180 1181 1182 1183 1184 1185 1186 1187</div> 1188 </div> <!-- inner column --> 1189 1190 </div> <!-- inner row --> 1191 1192 </div><!-- outer column --><!-- --></div> <!-- outer row --> 1193 <div class="row outer wide"><!-- 1194--><div class="outer col col24 first last" style="" data-widgetcontainerid="57863e1f-8f32-4b46-8010-57e56b92da9f">� 1195 <div class="row nest first last wide">� 1196 1197 <div class="inner col col24 first last idc94ff45f-8c5b-4104-9287-839b7ca69eb2" style="" data-widgetcontainerid="c94ff45f-8c5b-4104-9287-839b7ca69eb2">� 1198<div data-widget-id="9c9e37f3-fdb7-4394-81fd-d40188620421" data-widget-controller-path="/Faq/Widget"> 1199</div> 1200 1201 </div> <!-- inner column --> 1202 1203 </div> <!-- inner row --> 1204 1205 </div><!-- outer column --><!-- --></div> <!-- outer row --> 1206 <div class="row outer wide"><!-- 1207--><div class="outer col col24 first last" style="" data-widgetcontainerid="dd46caf9-4aef-45c2-9b04-32ed43ad045f">� 1208 <div class="row nest first last wide">� 1209 1210 <div class="inner col col24 first last idfa13cd7f-8a63-4881-82f6-9c05a271838b" style="" data-widgetcontainerid="fa13cd7f-8a63-4881-82f6-9c05a271838b">�
1211 <div data-widget-id="5c7960a2-e2e3-45f6-9053-3750a7e0d2c2" data-widget-controller-path="/QuickLinks/Widget"> 1212</div> 1213 1214 </div> <!-- inner column --> 1215 1216 </div> <!-- inner row --> 1217 1218 </div><!-- outer column --><!-- --></div> <!-- outer row --> 1219 <div class="row outer wide"><!-- 1220--><div class="outer col col24 first last" style="" data-widgetcontainerid="46f72c24-426b-4ef9-a182-098d69f6cc22">� 1221 <div class="row nest first last wide">� 1222 1223 <div class="inner col col24 first last idc5ce4529-b996-4871-b86d-6d8de79312a8" style="" data-widgetcontainerid="c5ce4529-b996-4871-b86d-6d8de79312a8">� 1224<div data-widget-id="2bda7eaf-624d-433c-868a-6761c655346c" data-widget-controller-path="/Calendar/Widget"> 1225
1225<script src="/Areas/Calendar/Assets/Scripts/Calendar.js"></script>
1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235
1235<script type="text/javascript"> 1236 function openCalendarPublicSubmissionModal(calendarID, eventID, isCopy, order, updatePanelID, isSubmit) { 1237 var title = null; 1238 var className = null; 1239 1240 if (isSubmit) { 1241 title = ' Event Submission'; 1242 className = 'submitEvent'; 1243 } else 1244 className = 'liveEdit calendar'; 1245 1246 var url = '/common/modules/Calendar/calendarLiveEdit.aspx?calendarID=' + calendarID + '&eventID=' + eventID + '&order=' + order + '&updatePanelID=' + updatePanelID; 1247 1248 if (isSubmit) 1249 url = url + '&submit=1'; 1250 if (isCopy) 1251 url = url + '&strPage=itemCopy'; 1252 else 1253 url = url + '&strPage=itemForm'; 1254 1255 openCpModal({ 1256 title: title, 1257 className: className, 1258 isFrontEnd: true, 1259 useIframe: true, 1260 draggable: true, 1261 url: url 1262 }); 1263 } 1264 1265 $(document).ready(function (e) { 1266 if (typeof $ !== 'undefined') { 1267 $(document).ready(function (e) { 1268 //Bind the submit event click handler. 1269 $('.widgetPublicSubmit').unbind('click').click(function (e) { 1270 openCalendarPublicSubmissionModal(0, 0, false, 0, '', true); 1271 return false; 1272 }); 1273 }); 1274 } 1275 }); 1276 </script>
1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297<div id="widgetCalendar2bda7eaf-624d-433c-868a-6761c655346c" class="widget widgetCalendar skin95 widgetOptionSet41 narrow" data-modulewidgettype="calendar" data-elementqueryclasses='{"wide-narrow":"min-width:25em"}' data-elementquerymatch='matchMultiColumn' data-elementqueryunmatch='unmatchMultiColumn'> 1298 <div class="widgetHeader "> 1299 <div class=""> 1300 <h3 id="calendarHeader2bda7eaf-624d-433c-868a-6761c655346c"><a style="" href="/calendar.aspx?CID=14" >Calendar</a></h3> 1301 1302 </div> 1303 </div> 1304 <div class="widgetBody cpGrid cpGrid1 "> 1305 <div class="calendarInnerWrapper"> 1306 1307 1308 1309 1310 1311 1312 1313 1314<div class="row narrow" data-event-list-row="true" style=""> 1315 1316
1317<script src="/Scripts/jquery.urlToLink.min.js"></script>
1317 1318<input type="hidden" value="["2026-10-02","2026-10-05"]" name="day-list" /> 1319 1320 <div class="col col1 first last"> 1321 <ol class="semanticList"> 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333<li class="widgetItem " data-event-i-d="10145" > 1334 1335 1336 <h4 class="widgetTitle">Fri, Oct. 2 </h4> 1337 <div style="" class="widgetDesc"> 1338 <strong><a href="/Calendar.aspx?EID=10145">ASC SubCommittee on Policy (virtual)</a></strong> 1339 1340 </div> 1341 </li> 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353<li class="widgetItem " data-event-i-d="10167" > 1354 1355 1356 <h4 class="widgetTitle">Mon, Oct. 5 </h4> 1357 <div style="" class="widgetDesc"> 1358 <strong><a href="/Calendar.aspx?EID=10167">ASC Finance subcommittee (virtual)</a></strong> 1359 1360 </div> 1361 </li> 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373<li class="widgetItem " data-event-i-d="10181" > 1374 1375 1376 <h4 class="widgetTitle">Mon, Oct. 5 </h4> 1377 <div style="" class="widgetDesc"> 1378 <strong><a href="/Calendar.aspx?EID=10181">Public Art Commission </a></strong> 1379 1380 </div> 1381 </li> 1382 </ol> 1383 </div> 1384 1385</div> 1386 </div> 1387 <a id="calendarViewAll2bda7eaf-624d-433c-868a-6761c655346c" class="widgetViewAll alignLeft" style="" href="/calendar.aspx?CID=14">View All Events</a> 1388 </div> 1389 <div class="widgetFooter"> 1390 1391 </div> 1392 <div class="addItemModal hidden"> 1393 <div class="url hidden">/Calendar.aspx</div> 1394 </div> 1395</div> 1396</div> 1397 1398 </div> <!-- inner column --> 1399 1400 </div> <!-- inner row --> 1401 1402 </div><!-- outer column --><!-- --></div> <!-- outer row --> 1403 1404 1405 </div> 1406</aside> 1407</div> 1408</div></div> 1409</div><!-- Home Container --><!-- <div data-cpRole="structuralContainer" id="homeContainer1"> 1410 <div class="siteWrap2"> 1411 <div data-cpRole="contentContainer" id="homeContent1a" class="containerTS"></div> 1412 </div> 1413 </div> --> 1414</main><!-- GBs --><div data-cpRole="structuralContainer" id="gbsContainerTS"> 1415<div class="siteWrap2"><div data-cpRole="contentContainer" id="gbsTS" class="containerTS"> <div id="ccb98ac15c-cc48-4cdb-aa6d-12f889e23023" data-containerid="b98ac15c-cc48-4cdb-aa6d-12f889e23023" class="pageContent cpGrid cpGrid24 isLockedContainer showInMobile" data-contentcontainerbreakpoint="28"> 1416 1417 1418 <div class="row outer wide"><!-- 1419--><div class="outer col col8 first" style="" data-widgetcontainerid="18c0ab99-fd91-44d4-8408-83cc129cc2e4">� 1420 <div class="row nest first last wide">� 1421 1422 <div class="inner col col8 first last idbd8dd92e-ca7d-475e-9fe0-f4f0cd047cea" style="" data-widgetcontainerid="bd8dd92e-ca7d-475e-9fe0-f4f0cd047cea">� 1423<div data-widget-id="f748b593-0ae7-4d37-9a7f-20b90b81d7cd" data-widget-controller-path="/GraphicLinks/Widget"> 1424 1425 1426 1427 1428<div id="graphicLinkWidgetf748b593-0ae7-4d37-9a7f-20b90b81d7cd" class="widget widgetGraphicLinks skin97 widgetOptionSet4 wide" data-elementqueryclasses='{"wide-narrow":"min-width:18em"}' data-elementquerymatch='matchMultiColumn' data-elementqueryunmatch='unmatchMultiColumn' data-modulewidgettype="graphicLinks"> 1429 <div class="widgetHeader"> 1430 <div class=""> 1431 </div> 1432 </div> 1433 <div class="widgetBody cpGrid cpGrid2 "> 1434 <nav class="widgetGraphicLinksNav" aria-labelledby="GraphicLinkHeaderText"> 1435 <div class="row wide"> 1436 <!-- 1437--><div class="col col1 first "><ul class="semanticList"><!-- 1438 --><li class="widgetItem GraphicLinks"> 1439 1440<div> 1441 <a href="/670/Get-Connected" target="_self" class="fancyButton fancyButton652 " > 1442 <span> 1443 <span><span class="text"><span class="textStyle1">Stay Informed</span></span></span> 1444 </span> 1445 </a> 1446</div> 1447 <style scoped="scoped">.fancyButton652.fancyButton:link,.fancyButton652.fancyButton:visited, .fancyButton652div.fancyButton{ 1448 background-repeat: no-repeat; 1449 background-position: left top; 1450} 1451.fancyButton652.fancyButton:hover,.fancyButton652.fancyButton:focus,.fancyButton652.fancyButton:active,.fancyButton652.fancyButton.hover{ 1452 background-repeat: no-repeat; 1453 background-position: left top; 1454} 1455.fancyButton652.fancyButton:link > span,.fancyButton652.fancyButton:visited > span, .fancyButton652div.fancyButton > span{ 1456} 1457.fancyButton652.fancyButton:hover > span,.fancyButton652.fancyButton:focus > span,.fancyButton652.fancyButton:active > span,.fancyButton652.fancyButton.hover > span{ 1458} 1459.fancyButton652.fancyButton .text{ 1460 color: #ffffff; 1461 padding-top: 9em; 1462 text-decoration: none; 1463 padding-top: 9em; 1464 background-image: url('/ImageRepository/Document?documentID=19385'); 1465 background-repeat: no-repeat; 1466 background-position: center .75em ; 1467background-size: 7.5em; 1468transition: all .3s ease; 1469} 1470.fancyButton652.fancyButton:hover .text,.fancyButton652.fancyButton:focus .text,.fancyButton652.fancyButton:active .text,.fancyButton652.fancyButton.hover .text{ 1471 text-decoration: none; 1472 background-repeat: no-repeat; 1473 background-position: center top; 1474 1475 1476} 1477.fancyButton652.fancyButton .textStyle1{ 1478 color: rgb(255, 255, 255); 1479 font-size: 1.375em; 1480 font-family: Montserrat; 1481 font-weight: 800; 1482 text-decoration: none; 1483display: block; 1484line-height: 1.2; 1485text-transform: uppercase; 1486transition: all .3s ease; 1487} 1488 1489.fancyButton652 .textStyle1::before { 1490content: ""; 1491display: block; 1492width: 100%; 1493max-width: 60px; 1494height: 3px; 1495border-radius: 3px; 1496background: #F9A64D; 1497margin: 0 auto .875em; 1498transition: all .3s ease;} 1499.fancyButton652.fancyButton:hover .textStyle1, .fancyButton652.fancyButton.hover .textStyle1{ 1500 text-decoration: none; 1501} 1502 1503.fancyButton652:is(:hover, :focus, :active) .textStyle1 { 1504text-decoration: underline !important; 1505} 1506 1507.fancyButton652:is(:hover, :focus, :active) .textStyle1::before { 1508max-width: 120px;} 1509</style> 1510 1511 </li><!-- 1512--></ul></div><!----><div class="col col1 last"><ul class="semanticList"><!-- 1513 --><li class="widgetItem GraphicLinks"> 1514 1515<div> 1516 <a href="/1202/Andover-Central" target="_self" class="fancyButton fancyButton653 " > 1517 <span> 1518 <span><span class="text"><span class="textStyle1">Service Requests</span></span></span> 1519 </span> 1520 </a> 1521</div> 1522 <style scoped="scoped">.fancyButton653.fancyButton:link,.fancyButton653.fancyButton:visited, .fancyButton653div.fancyButton{ 1523 background-repeat: no-repeat; 1524 background-position: left top; 1525} 1526.fancyButton653.fancyButton:hover,.fancyButton653.fancyButton:focus,.fancyButton653.fancyButton:active,.fancyButton653.fancyButton.hover{ 1527 background-repeat: no-repeat; 1528 background-position: left top; 1529} 1530.fancyButton653.fancyButton:link > span,.fancyButton653.fancyButton:visited > span, .fancyButton653div.fancyButton > span{ 1531} 1532.fancyButton653.fancyButton:hover > span,.fancyButton653.fancyButton:focus > span,.fancyButton653.fancyButton:active > span,.fancyButton653.fancyButton.hover > span{ 1533} 1534.fancyButton653.fancyButton .text{ 1535 color: #ffffff; 1536 padding-top: 9em; 1537 text-decoration: none; 1538 padding-top: 9em; 1539 background-image: url('/ImageRepository/Document?documentID=19384'); 1540 background-repeat: no-repeat; 1541 background-position: center .75em ; 1542background-size: 7.5em; 1543transition: all .3s ease; 1544} 1545.fancyButton653.fancyButton:hover .text,.fancyButton653.fancyButton:focus .text,.fancyButton653.fancyButton:active .text,.fancyButton653.fancyButton.hover .text{ 1546 text-decoration: none; 1547 background-repeat: no-repeat; 1548 background-position: center top; 1549 1550 1551} 1552.fancyButton653.fancyButton .textStyle1{ 1553 color: rgb(255, 255, 255); 1554 font-size: 1.375em; 1555 font-family: Montserrat; 1556 font-weight: 800; 1557 text-decoration: none; 1558display: block; 1559line-height: 1.2; 1560text-transform: uppercase; 1561transition: all .3s ease; 1562} 1563 1564.fancyButton653 .textStyle1::before { 1565content: ""; 1566display: block; 1567width: 100%; 1568max-width: 60px; 1569height: 3px; 1570border-radius: 3px; 1571background: #F9A64D; 1572margin: 0 auto .875em; 1573transition: all .3s ease;} 1574.fancyButton653.fancyButton:hover .textStyle1, .fancyButton653.fancyButton.hover .textStyle1{ 1575 text-decoration: none; 1576} 1577 1578.fancyButton653:is(:hover, :focus, :active) .textStyle1 { 1579text-decoration: underline !important; 1580} 1581 1582.fancyButton653:is(:hover, :focus, :active) .textStyle1::before { 1583max-width: 120px;} 1584</style> 1585 1586 </li><!-- 1587--></ul></div><!-- --> 1588 </div> 1589 </nav> 1590 </div> 1591 <div class="widgetFooter"> 1592 </div> 1593</div> 1594</div> 1595 1596 </div> <!-- inner column --> 1597 1598 </div> <!-- inner row --> 1599 1600 </div><!-- outer column --><!----><div class="outer col col8" style="" data-widgetcontainerid="80e79016-88a2-4898-9bfe-ace2dafb2946">� 1601 <div class="row nest first last wide">� 1602 1603 <div class="inner col col8 first last id7f67e68b-84ab-47d4-a9d2-1dfd6460cff4" style="" data-widgetcontainerid="7f67e68b-84ab-47d4-a9d2-1dfd6460cff4">� 1604<div data-widget-id="c986bf3f-d496-48e2-ade0-951e6058b23f" data-widget-controller-path="/GraphicLinks/Widget"> 1605 1606 1607 1608 1609<div id="graphicLinkWidgetc986bf3f-d496-48e2-ade0-951e6058b23f" class="widget widgetGraphicLinks skin97 widgetOptionSet4 wide" data-elementqueryclasses='{"wide-narrow":"min-width:18em"}' data-elementquerymatch='matchMultiColumn' data-elementqueryunmatch='unmatchMultiColumn' data-modulewidgettype="graphicLinks"> 1610 <div class="widgetHeader"> 1611 <div class="">
1612 </div> 1613 </div> 1614 <div class="widgetBody cpGrid cpGrid2 "> 1615 <nav class="widgetGraphicLinksNav" aria-labelledby="GraphicLinkHeaderText"> 1616 <div class="row wide"> 1617 <!-- 1618--><div class="col col1 first "><ul class="semanticList"><!-- 1619 --><li class="widgetItem GraphicLinks"> 1620 1621<div> 1622 <a href="https://andoverma.viewpointcloud.com/" target="_self" class="fancyButton fancyButton654 " > 1623 <span> 1624 <span><span class="text"><span class="textStyle1">Permits & Licenses</span></span></span> 1625 </span> 1626 </a> 1627</div> 1628 <style scoped="scoped">.fancyButton654.fancyButton:link,.fancyButton654.fancyButton:visited, .fancyButton654div.fancyButton{ 1629 background-repeat: no-repeat; 1630 background-position: left top; 1631} 1632.fancyButton654.fancyButton:hover,.fancyButton654.fancyButton:focus,.fancyButton654.fancyButton:active,.fancyButton654.fancyButton.hover{ 1633 background-repeat: no-repeat; 1634 background-position: left top; 1635} 1636.fancyButton654.fancyButton:link > span,.fancyButton654.fancyButton:visited > span, .fancyButton654div.fancyButton > span{ 1637} 1638.fancyButton654.fancyButton:hover > span,.fancyButton654.fancyButton:focus > span,.fancyButton654.fancyButton:active > span,.fancyButton654.fancyButton.hover > span{ 1639} 1640.fancyButton654.fancyButton .text{ 1641 color: #ffffff; 1642 padding-top: 9em; 1643 text-decoration: none; 1644 padding-top: 9em; 1645 background-image: url('/ImageRepository/Document?documentID=19383'); 1646 background-repeat: no-repeat; 1647 background-position: center .75em ; 1648background-size: 7.5em; 1649transition: all .3s ease; 1650} 1651.fancyButton654.fancyButton:hover .text,.fancyButton654.fancyButton:focus .text,.fancyButton654.fancyButton:active .text,.fancyButton654.fancyButton.hover .text{ 1652 text-decoration: none; 1653 background-repeat: no-repeat; 1654 background-position: center top; 1655 1656 1657} 1658.fancyButton654.fancyButton .textStyle1{ 1659 color: rgb(255, 255, 255); 1660 font-size: 1.375em; 1661 font-family: Montserrat; 1662 font-weight: 800; 1663 text-decoration: none; 1664display: block; 1665line-height: 1.2; 1666text-transform: uppercase; 1667transition: all .3s ease; 1668} 1669 1670.fancyButton654 .textStyle1::before { 1671content: ""; 1672display: block; 1673width: 100%; 1674max-width: 60px; 1675height: 3px; 1676border-radius: 3px; 1677background: #F9A64D; 1678margin: 0 auto .875em; 1679transition: all .3s ease;} 1680.fancyButton654.fancyButton:hover .textStyle1, .fancyButton654.fancyButton.hover .textStyle1{ 1681 text-decoration: none; 1682} 1683 1684.fancyButton654:is(:hover, :focus, :active) .textStyle1 { 1685text-decoration: underline !important; 1686} 1687 1688.fancyButton654:is(:hover, :focus, :active) .textStyle1::before { 1689max-width: 120px;} 1690</style> 1691 1692 </li><!-- 1693--></ul></div><!----><div class="col col1 last"><ul class="semanticList"><!-- 1694 --><li class="widgetItem GraphicLinks"> 1695 1696<div> 1697 <a href="/412/Online-Bill-Pay" target="_self" class="fancyButton fancyButton656 " > 1698 <span> 1699 <span><span class="text"><span class="textStyle1">âPay Online</span></span></span> 1700 </span> 1701 </a> 1702</div> 1703 <style scoped="scoped">.fancyButton656.fancyButton:link,.fancyButton656.fancyButton:visited, .fancyButton656div.fancyButton{ 1704 background-repeat: no-repeat; 1705 background-position: left top; 1706} 1707.fancyButton656.fancyButton:hover,.fancyButton656.fancyButton:focus,.fancyButton656.fancyButton:active,.fancyButton656.fancyButton.hover{ 1708 background-repeat: no-repeat; 1709 background-position: left top; 1710} 1711.fancyButton656.fancyButton:link > span,.fancyButton656.fancyButton:visited > span, .fancyButton656div.fancyButton > span{ 1712} 1713.fancyButton656.fancyButton:hover > span,.fancyButton656.fancyButton:focus > span,.fancyButton656.fancyButton:active > span,.fancyButton656.fancyButton.hover > span{ 1714} 1715.fancyButton656.fancyButton .text{ 1716 color: #ffffff; 1717 padding-top: 9em; 1718 text-decoration: none; 1719 padding-top: 9em; 1720 background-image: url('/ImageRepository/Document?documentID=19382'); 1721 background-repeat: no-repeat; 1722 background-position: center .75em ; 1723background-size: 7.5em; 1724transition: all .3s ease; 1725} 1726.fancyButton656.fancyButton:hover .text,.fancyButton656.fancyButton:focus .text,.fancyButton656.fancyButton:active .text,.fancyButton656.fancyButton.hover .text{ 1727 text-decoration: none; 1728 background-repeat: no-repeat; 1729 background-position: center top; 1730 1731 1732} 1733.fancyButton656.fancyButton .textStyle1{ 1734 color: rgb(255, 255, 255); 1735 font-size: 1.375em; 1736 font-family: Montserrat; 1737 font-weight: 800; 1738 text-decoration: none; 1739display: block; 1740line-height: 1.2; 1741text-transform: uppercase; 1742transition: all .3s ease; 1743} 1744 1745.fancyButton656 .textStyle1::before { 1746content: ""; 1747display: block; 1748width: 100%; 1749max-width: 60px; 1750height: 3px; 1751border-radius: 3px; 1752background: #F9A64D; 1753margin: 0 auto .875em; 1754transition: all .3s ease;} 1755.fancyButton656.fancyButton:hover .textStyle1, .fancyButton656.fancyButton.hover .textStyle1{ 1756 text-decoration: none; 1757} 1758 1759.fancyButton656:is(:hover, :focus, :active) .textStyle1 { 1760text-decoration: underline !important; 1761} 1762 1763.fancyButton656:is(:hover, :focus, :active) .textStyle1::before { 1764max-width: 120px;} 1765</style> 1766 1767 </li><!-- 1768--></ul></div><!-- --> 1769 </div> 1770 </nav> 1771 </div> 1772 <div class="widgetFooter"> 1773 </div> 1774</div> 1775</div> 1776 1777 </div> <!-- inner column --> 1778 1779 </div> <!-- inner row --> 1780 1781 </div><!-- outer column --><!----><div class="outer col col8 last" style="" data-widgetcontainerid="a4f4d58d-706a-4371-a609-e3c8abf27eb3">� 1782 <div class="row nest first last wide">� 1783 1784 <div class="inner col col8 first last idfd3e15e3-d83c-4d14-a0ab-01e953b5db58" style="" data-widgetcontainerid="fd3e15e3-d83c-4d14-a0ab-01e953b5db58">� 1785<div data-widget-id="0745c9e0-3c30-4439-a89c-ff3636f10761" data-widget-controller-path="/GraphicLinks/Widget"> 1786 1787 1788 1789 1790<div id="graphicLinkWidget0745c9e0-3c30-4439-a89c-ff3636f10761" class="widget widgetGraphicLinks skin97 widgetOptionSet4 wide" data-elementqueryclasses='{"wide-narrow":"min-width:18em"}' data-elementquerymatch='matchMultiColumn' data-elementqueryunmatch='unmatchMultiColumn' data-modulewidgettype="graphicLinks"> 1791 <div class="widgetHeader"> 1792 <div class="">
1793 </div> 1794 </div> 1795 <div class="widgetBody cpGrid cpGrid2 "> 1796 <nav class="widgetGraphicLinksNav" aria-labelledby="GraphicLinkHeaderText"> 1797 <div class="row wide"> 1798 <!-- 1799--><div class="col col1 first "><ul class="semanticList"><!-- 1800 --><li class="widgetItem GraphicLinks"> 1801 1802<div> 1803 <a href="/218/Financial-Budget-Information" target="_self" class="fancyButton fancyButton657 " > 1804 <span> 1805 <span><span class="text"><span class="textStyle1">Budget & Finance</span></span></span> 1806 </span> 1807 </a> 1808</div> 1809 <style scoped="scoped">.fancyButton657.fancyButton:link,.fancyButton657.fancyButton:visited, .fancyButton657div.fancyButton{ 1810 background-repeat: no-repeat; 1811 background-position: left top; 1812} 1813.fancyButton657.fancyButton:hover,.fancyButton657.fancyButton:focus,.fancyButton657.fancyButton:active,.fancyButton657.fancyButton.hover{ 1814 background-repeat: no-repeat; 1815 background-position: left top; 1816} 1817.fancyButton657.fancyButton:link > span,.fancyButton657.fancyButton:visited > span, .fancyButton657div.fancyButton > span{ 1818} 1819.fancyButton657.fancyButton:hover > span,.fancyButton657.fancyButton:focus > span,.fancyButton657.fancyButton:active > span,.fancyButton657.fancyButton.hover > span{ 1820} 1821.fancyButton657.fancyButton .text{ 1822 color: #ffffff; 1823 padding-top: 9em; 1824 text-decoration: none; 1825 padding-top: 9em; 1826 background-image: url('/ImageRepository/Document?documentID=19380'); 1827 background-repeat: no-repeat; 1828 background-position: center .75em ; 1829background-size: 7.5em; 1830transition: all .3s ease; 1831} 1832.fancyButton657.fancyButton:hover .text,.fancyButton657.fancyButton:focus .text,.fancyButton657.fancyButton:active .text,.fancyButton657.fancyButton.hover .text{ 1833 text-decoration: none; 1834 background-repeat: no-repeat; 1835 background-position: center top; 1836 1837 1838} 1839.fancyButton657.fancyButton .textStyle1{ 1840 color: rgb(255, 255, 255); 1841 font-size: 1.375em; 1842 font-family: Montserrat; 1843 font-weight: 800; 1844 text-decoration: none; 1845display: block; 1846line-height: 1.2; 1847text-transform: uppercase; 1848transition: all .3s ease; 1849} 1850 1851.fancyButton657 .textStyle1::before { 1852content: ""; 1853display: block; 1854width: 100%; 1855max-width: 60px; 1856height: 3px; 1857border-radius: 3px; 1858background: #F9A64D; 1859margin: 0 auto .875em; 1860transition: all .3s ease;} 1861.fancyButton657.fancyButton:hover .textStyle1, .fancyButton657.fancyButton.hover .textStyle1{ 1862 text-decoration: none; 1863} 1864 1865.fancyButton657:is(:hover, :focus, :active) .textStyle1 { 1866text-decoration: underline !important; 1867} 1868 1869.fancyButton657:is(:hover, :focus, :active) .textStyle1::before { 1870max-width: 120px;} 1871</style> 1872 1873 </li><!-- 1874--></ul></div><!----><div class="col col1 last"><ul class="semanticList"><!-- 1875 --><li class="widgetItem GraphicLinks"> 1876 1877<div> 1878 <a href="/996/Employment-Opportunities" target="_self" class="fancyButton fancyButton658 " > 1879 <span> 1880 <span><span class="text"><span class="textStyle1">Employment</span></span></span> 1881 </span> 1882 </a> 1883</div> 1884 <style scoped="scoped">.fancyButton658.fancyButton:link,.fancyButton658.fancyButton:visited, .fancyButton658div.fancyButton{ 1885 background-repeat: no-repeat; 1886 background-position: left top; 1887} 1888.fancyButton658.fancyButton:hover,.fancyButton658.fancyButton:focus,.fancyButton658.fancyButton:active,.fancyButton658.fancyButton.hover{ 1889 background-repeat: no-repeat; 1890 background-position: left top; 1891} 1892.fancyButton658.fancyButton:link > span,.fancyButton658.fancyButton:visited > span, .fancyButton658div.fancyButton > span{ 1893} 1894.fancyButton658.fancyButton:hover > span,.fancyButton658.fancyButton:focus > span,.fancyButton658.fancyButton:active > span,.fancyButton658.fancyButton.hover > span{ 1895} 1896.fancyButton658.fancyButton .text{ 1897 color: #ffffff; 1898 padding-top: 9em; 1899 text-decoration: none; 1900 padding-top: 9em; 1901 background-image: url('/ImageRepository/Document?documentID=19381'); 1902 background-repeat: no-repeat; 1903 background-position: center .75em ; 1904background-size: 7.5em; 1905transition: all .3s ease; 1906} 1907.fancyButton658.fancyButton:hover .text,.fancyButton658.fancyButton:focus .text,.fancyButton658.fancyButton:active .text,.fancyButton658.fancyButton.hover .text{ 1908 text-decoration: none; 1909 background-repeat: no-repeat; 1910 background-position: center top; 1911 1912 1913} 1914.fancyButton658.fancyButton .textStyle1{ 1915 color: rgb(255, 255, 255); 1916 font-size: 1.375em; 1917 font-family: Montserrat; 1918 font-weight: 800; 1919 text-decoration: none; 1920display: block; 1921line-height: 1.2; 1922text-transform: uppercase; 1923transition: all .3s ease; 1924} 1925 1926.fancyButton658 .textStyle1::before { 1927content: ""; 1928display: block; 1929width: 100%; 1930max-width: 60px; 1931height: 3px; 1932border-radius: 3px; 1933background: #F9A64D; 1934margin: 0 auto .875em; 1935transition: all .3s ease;} 1936.fancyButton658.fancyButton:hover .textStyle1, .fancyButton658.fancyButton.hover .textStyle1{ 1937 text-decoration: none; 1938} 1939 1940.fancyButton658:is(:hover, :focus, :active) .textStyle1 { 1941text-decoration: underline !important; 1942} 1943 1944.fancyButton658:is(:hover, :focus, :active) .textStyle1::before { 1945max-width: 120px;} 1946</style> 1947 1948 </li><!-- 1949--></ul></div><!-- --> 1950 </div> 1951 </nav> 1952 </div> 1953 <div class="widgetFooter"> 1954 </div> 1955</div> 1956</div> 1957 1958 </div> <!-- inner column --> 1959 1960 </div> <!-- inner row --> 1961 1962 </div><!-- outer column --><!-- --></div> <!-- outer row --> 1963 1964 1965 </div> 1966</div></div> 1967</div><!-- Footer --><footer data-cpRole="structuralContainer" id="footerContainerTS"> 1968<div data-cpRole="banner" id="banner2"><div data-cpRole="structuralContainer" id="bannerSizing2TS"> 1969<div class="siteWrap2"><div data-cpRole="contentContainer" id="footerTS" class="containerTS"> <div id="cc18e03eb1-f859-4ac5-910b-9c6a39960efe" data-containerid="18e03eb1-f859-4ac5-910b-9c6a39960efe" class="pageContent cpGrid cpGrid24 isLockedContainer showInMobile" data-contentcontainerbreakpoint="60"> 1970 1971 1972 <div class="row outer wide"><!-- 1973--><div class="outer col col18 first" style="" data-widgetcontainerid="3dad1a6b-3b0d-4f10-951f-46b8cdd999cf">� 1974 <div class="row nest first wide">� 1975 1976 <div class="inner col col18 first last id17d9b564-ad81-4b34-b59f-e118b3448283" style="" data-widgetcontainerid="17d9b564-ad81-4b34-b59f-e118b3448283">� 1977 <div data-widget-id="d9422912-cdeb-435f-9df4-e7099d59fe7d" data-widget-controller-path="/InfoAdvanced/Widget"> 1978 1979 1980 1981 1982 1983 <section id="divInfoAdvd9422912-cdeb-435f-9df4-e7099d59fe7d" class="widget widgetInfoAdvanced skin98 widgetOptionSet50 wide" data-modulewidgettype="infoAdv" data-elementqueryclasses='{"wide-narrow":"min-width:25em"}' data-elementquerymatch='matchMultiColumn' data-elementqueryunmatch='unmatchMultiColumn' aria-label="Info Advanced"> 1984 <header class="widgetHeader" id="headerd9422912-cdeb-435f-9df4-e7099d59fe7d"> 1985 <div class=""> 1986 </div> 1987 </header> 1988 <div class="widgetBody cpGrid cpGrid5 "> 1989 <div class="row autoWidths center wide"> 1990 <div class="col col1 first "> 1991 <ol class="pageStyles semanticList"> 1992 1993<li class="InfoAdvanced widgetItem fr-view"> 1994 <p>Town of Andover</p> 1995</li> </ol> 1996 </div> 1997 <div class="col col1 "> 1998 <ol class="pageStyles semanticList"> 1999 2000<li class="InfoAdvanced widgetItem fr-view"> 2001 <p>36 Bartlet Street</p> 2002</li> </ol> 2003 </div> 2004 <div class="col col1 "> 2005 <ol class="pageStyles semanticList"> 2006 2007<li class="InfoAdvanced widgetItem fr-view"> 2008 <p>Andover, MA 01810</p> 2009</li> </ol> 2010 </div> 2011 <div class="col col1 "> 2012 <ol class="pageStyles semanticList"> 2013 2014<li class="InfoAdvanced widgetItem fr-view"> 2015 <p>Phone: <a href="tel:9786238200">978-623-8200</a></p> 2016</li> </ol> 2017 </div> 2018 <div class="col col1 last"> 2019 <ol class="pageStyles semanticList"> 2020 2021<li class="InfoAdvanced widgetItem fr-view"> 2022 <p><a href="/directory.aspx">Staff Directory</a></p> 2023</li> </ol> 2024 </div> 2025 </div> 2026 </div> 2027 <div class="widgetFooter"> 2028 2029 </div> 2030 2031 </section> 2032 2033 2034
2035<script type="text/javascript"> 2036 //Render slideshow if info advacned items contain one. 2037 $(document).ready(function (e) { 2038 $('#divInfoAdvd9422912-cdeb-435f-9df4-e7099d59fe7d .InfoAdvanced.widgetItem').each(function () { 2039 renderSlideshowIfApplicable($(this)); 2040 }); 2041 }); 2042</script>
2042</div> 2043 </div> <!-- inner column --> 2044 2045 </div> <!-- inner row --> 2046 <div class="row nest last wide">� 2047 2048 <div class="inner col col18 first last idd3aecb6b-4f19-40c8-b730-a41824855d00" style="" data-widgetcontainerid="d3aecb6b-4f19-40c8-b730-a41824855d00">� 2049 <div data-widget-id="171a53af-3236-4d9a-a8b6-a1bbb81412bc" data-widget-controller-path="/InfoAdvanced/Widget"> 2050 2051 2052 2053 2054 2055 <section id="divInfoAdv171a53af-3236-4d9a-a8b6-a1bbb81412bc" class="widget widgetInfoAdvanced skin101 widgetOptionSet50 wide" data-modulewidgettype="infoAdv" data-elementqueryclasses='{"wide-narrow":"min-width:25em"}' data-elementquerymatch='matchMultiColumn' data-elementqueryunmatch='unmatchMultiColumn' aria-label="Info Advanced"> 2056 <header class="widgetHeader" id="header171a53af-3236-4d9a-a8b6-a1bbb81412bc"> 2057 <div class=""> 2058 </div> 2059 </header> 2060 <div class="widgetBody cpGrid cpGrid5 "> 2061 <div class="row autoWidths center wide"> 2062 <div class="col col1 first "> 2063 <ol class="pageStyles semanticList"> 2064 2065<li class="InfoAdvanced widgetItem fr-view"> 2066 <p><a href="/accessibility">Accessibility</a></p> 2067</li> </ol> 2068 </div> 2069 <div class="col col1 "> 2070 <ol class="pageStyles semanticList"> 2071 2072<li class="InfoAdvanced widgetItem fr-view"> 2073 <p><a href="/site/copyright">Copyright Notices</a></p> 2074</li> </ol> 2075 </div> 2076 <div class="col col1 "> 2077 <ol class="pageStyles semanticList"> 2078 2079<li class="InfoAdvanced widgetItem fr-view"> 2080 <p><a href="/privacy">Privacy Policy</a></p> 2081</li> </ol> 2082 </div> 2083 <div class="col col1 "> 2084 <ol class="pageStyles semanticList"> 2085 2086<li class="InfoAdvanced widgetItem fr-view"> 2087 <p><a href="/admin">Website Sign In</a></p> 2088</li> </ol> 2089 </div> 2090 <div class="col col1 last"> 2091 <ol class="pageStyles semanticList"> 2092 2093<li class="InfoAdvanced widgetItem fr-view"> 2094 <p><a href="/facebook"><img src="/ImageRepository/Document?documentId=19361" class="fr-fil fr-dib" alt="Facebook" style="width: 24px;"></a></p><p><a href="/linkedin"><img src="/ImageRepository/Document?documentId=19363" class="fr-fil fr-dib" alt="Linkedin" style="width: 24px;"></a></p><p><a href="/instagram"><img src="/ImageRepository/Document?documentId=19362" class="fr-fil fr-dib" alt="Instagram" style="width: 24px;"></a></p> 2095</li> </ol> 2096 </div> 2097 </div> 2098 </div> 2099 <div class="widgetFooter"> 2100 2101 </div> 2102 2103 </section> 2104 2105 2106
2107<script type="text/javascript"> 2108 //Render slideshow if info advacned items contain one. 2109 $(document).ready(function (e) { 2110 $('#divInfoAdv171a53af-3236-4d9a-a8b6-a1bbb81412bc .InfoAdvanced.widgetItem').each(function () { 2111 renderSlideshowIfApplicable($(this)); 2112 }); 2113 }); 2114</script>
2114</div> 2115 </div> <!-- inner column --> 2116 2117 </div> <!-- inner row --> 2118 2119 </div><!-- outer column --><!----><div class="outer col col1" style="" data-widgetcontainerid="7f9c897c-fb29-4c55-af19-8ed00a66ac19">� 2120 <div class="row nest first last wide">� 2121 2122 <div class="inner col col1 first last idf010cce9-7c78-494e-a3cc-21cbaacdbef5" style="" data-widgetcontainerid="f010cce9-7c78-494e-a3cc-21cbaacdbef5">� 2123 2124<div class="widget widgetSpacer" id="80bb7281-a592-4bf5-894e-fdc9b41db509"></div> 2125 </div> <!-- inner column --> 2126 2127 </div> <!-- inner row --> 2128 2129 </div><!-- outer column --><!----><div class="outer col col5 last" style="" data-widgetcontainerid="9d8d8832-6aa3-467f-a6a6-52f68eaf04ae">� 2130 <div class="row nest first last wide">� 2131 2132 <div class="inner col col5 first last idf248d01c-d958-471b-98fe-91103f9b5147" style="" data-widgetcontainerid="f248d01c-d958-471b-98fe-91103f9b5147">� 2133 <div data-widget-id="599b4ddc-1ea4-4bde-aa9e-6566bf6e544e" data-widget-controller-path="/InfoAdvanced/Widget"> 2134 2135 2136 2137 2138 2139 <section id="divInfoAdv599b4ddc-1ea4-4bde-aa9e-6566bf6e544e" class="widget widgetInfoAdvanced skin100 widgetOptionSet5 wide" data-modulewidgettype="infoAdv" data-elementqueryclasses='{"wide-narrow":"min-width:25em"}' data-elementquerymatch='matchMultiColumn' data-elementqueryunmatch='unmatchMultiColumn' aria-label="Info Advanced"> 2140 <header class="widgetHeader" id="header599b4ddc-1ea4-4bde-aa9e-6566bf6e544e"> 2141 <div class=""> 2142 </div> 2143 </header> 2144 <div class="widgetBody cpGrid cpGrid1 "> 2145 <div class="row wide"> 2146 <div class="col col1 first last"> 2147 <ol class="pageStyles semanticList"> 2148 2149<li class="InfoAdvanced widgetItem fr-view"> 2150 <p><a href="/"><img src="/ImageRepository/Document?documentId=19376" class="fr-fil fr-dib" alt="Andover Massachusetts Homepage"></a></p> 2151</li> </ol> 2152 </div> 2153 </div> 2154 </div> 2155 <div class="widgetFooter"> 2156 2157 </div> 2158 2159 </section> 2160 2161 2162
2163<script type="text/javascript"> 2164 //Render slideshow if info advacned items contain one. 2165 $(document).ready(function (e) { 2166 $('#divInfoAdv599b4ddc-1ea4-4bde-aa9e-6566bf6e544e .InfoAdvanced.widgetItem').each(function () { 2167 renderSlideshowIfApplicable($(this)); 2168 }); 2169 }); 2170</script>
2170</div> 2171 </div> <!-- inner column --> 2172 2173 </div> <!-- inner row --> 2174 2175 </div><!-- outer column --><!-- --></div> <!-- outer row --> 2176 2177 2178 </div> 2179</div><div data-cpRole="contentContainer" id="poweredByTS" class="containerTS"> <div id="cc5a81268d-cc20-450f-b8ad-0dc9d3ef43d1" data-containerid="5a81268d-cc20-450f-b8ad-0dc9d3ef43d1" class="pageContent cpGrid cpGrid24 isLockedContainer showInMobile"> 2180 2181 2182 <div class="row outer wide"><!-- 2183--><div class="outer col col24 first last" style="" data-widgetcontainerid="51687982-264b-490e-bc7d-96f1a7e5d4f4">� 2184 <div class="row nest first last wide">� 2185 2186 <div class="inner col col24 first last id4ea9ce7a-df88-4efb-bfaa-ecdfe835fcf9" style="" data-widgetcontainerid="4ea9ce7a-df88-4efb-bfaa-ecdfe835fcf9">� 2187 2188 <div data-widget-id='ff327db9-e046-4bea-ba98-6b7bcc59d23f' data-moduleName="customHtml" id='widgetCustomHtmlff327db9-e046-4bea-ba98-6b7bcc59d23f' class="widget widgetCustomHtml skin94 narrow" > 2189 <div class="widgetBody pageStyles" id="widgetBodyff327db9-e046-4bea-ba98-6b7bcc59d23f"> 2190 <div id="customHtmlff327db9-e046-4bea-ba98-6b7bcc59d23f"><div><style> 2191 /* CP icon */ 2192 .cpBylineIconTS { 2193 color: #fff; 2194 } 2195 /* CP Text */ 2196 .cpBylineTextTS, 2197 .cpBylineTextTS a:is(:link, :visited) { 2198 color: #fff; 2199 } 2200 2201 .cpBylineTS { 2202 text-align: center; 2203 font-weight: 700; 2204 } 2205 2206 .cpBylineIconTS { 2207 fill: currentColor; 2208 width: 39px; 2209 height: 26px; 2210 display: inline; 2211 vertical-align: middle; 2212 } 2213</style> 2214 2215<div class="widgetItem cpBylineTS"> 2216 <svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 100 100" class="cpBylineIconTS"> 2217 <path class="c" d="M73.4,23.2h-19v16.7h19c2.8,0,5,2.2,5,5c0,2.8-2.2,5-5,5h-19v28.4h5.5l11.3-11.7h2.2c11.9,0,21.6-9.7,21.6-21.6C95,33,85.3,23.2,73.4,23.2"></path> 2218 <path class="p" d="M45.8,66.5H26.6C14.7,66.5,5,56.8,5,44.9C5,33,14.7,23.2,26.6,23.2h19.1v16.7H26.6c-2.8,0-5,2.2-5,5c0,2.8,2.2,5,5,5h19.1V66.5z"></path> 2219 </svg> 2220 <span class="cpBylineTextTS">Government Websites by <a href="https://connect.civicplus.com/referral">CivicPlus®</a></span> 2221</div> 2222</div></div> 2223 </div> 2224 2225 </div> 2226 2227 </div> <!-- inner column --> 2228 2229 </div> <!-- inner row --> 2230 2231 </div><!-- outer column --><!-- --></div> <!-- outer row --> 2232 2233 2234 </div> 2235</div></div> 2236</div> 2237 2238 2239 2240 2241 <div id="bannerImagesJSON87" class="hidden"></div> 2242 <div id="bannerSlideshowControls_banner2" class="bannerSlideshowControlsNew none " style="display:none"> 2243 <a id="arrowPrev_banner2" tabindex="0" class="arrowNew prev" aria-label="Banner Arrow Previous"><svg style=" " class=""><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#iconSlideshowArrowLeft"></use></svg></a> 2244 <a id="arrowNext_banner2" tabindex="0" class="arrowNew next" aria-label="Banner Arrow Next"><svg style=" " class=""><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#iconSlideshowArrowRight"></use></svg></a> 2245 </div> 2246
2246<script type="text/javascript"> 2247 $(window).on("load", function () { 2248 $.when(window.Pages.rwdSetupComplete) 2249 .done(function () { 2250 renderExternalBannerSlideshow('banner2', 2251 {"BannerOptionID":87,"ThemeID":31,"SlotName":"banner2","Name":"Default","IsDefault":true,"BannerMode":2,"SlideShowSlideTiming":"5","SlideshowTransition":0,"SlideShowTransitionTiming":"1","ImageScale":true,"ImageAlignment":1,"ImageScroll":true,"MuteSound":true,"VideoType":0,"Status":40,"SlideshowControlsPosition":0,"SlideshowControlsAlignment":0,"SlideshowBannerControlsColorScheme":0,"DisplayVideoPauseButton":false,"VideoPauseButtonAlignment":1,"VideoPauseButtonControlsAlignment":0,"VideoPauseButtonStyle":"#FFFFFF","VideoPauseButtonBackgroundStyle":"#000000","VideoPauseButtonAlignmentClass":"alignRight viewport","DisplaySlideshowPauseButton":false,"SlideshowControlsColor":"#FFFFFF","SlideshowControlsBackgroundColor":"#000000","SlideshowPauseButtonClass":"isHidden","BannerImages":[{"BannerImageID":171,"BannerOptionID":87,"FileName":"/ImageRepository/Document?documentID=19350","Height":255,"Width":2200,"StartingOn":null,"StoppingOn":null,"IsLink":false,"LinkAddress":null,"Sequence":1,"RecordStatus":0,"ModifiedBy":0,"ModifiedOn":"\/Date(-62135575200000)\/","AltText":""}],"BannerVideos":[{"BannerVideoID":16,"BannerOptionID":87,"VideoFileName":"","ImageFileName":"EmptyBannerBkg202603061313088622.png","IsLink":false,"LinkAddress":null,"ModifiedBy":0,"ModifiedOn":"\/Date(-62135575200000)\/","VideoFileID":"00000000-0000-0000-0000-000000000000","ImageFileID":"00000000-0000-0000-0000-000000000000","VideoWidth":0,"VideoHeight":0,"ImageWidth":0,"ImageHeight":0,"LinkedVideoUrl":"","RecordStatus":0,"AltText":null}],"RecordStatus":0,"ModifiedBy":0,"ModifiedOn":"\/Date(-62135575200000)\/"}, 2252 '/App_Themes/Interior - 2026 Redesign/Images/', 2253 'Rotating'); 2254 }); 2255 }); 2256 </script>
2256 2257 2258</div> 2259</footer> 2260</div><!-- </div> --> 2261</div> 2262 2263 </div> 2264 </div> 2265 </div> 2266 2267<link href="/745732998.css" rel="stylesheet" type="text/css" /> 2268 2269<div id="SplashMessageWrapper" class="cp-Splash-wrapper"> 2270 <div role="dialog" aria-labelledby="cp-Splash-title" aria-describedby="editorContentDesc" aria-modal="true" tabindex="-1" id="SplashMessage" class="hidden cp-Splash cp-Splash--modal is-open"> 2271 <div class="cp-Splash-header"> 2272 <h2 class="cp-Splash-title" id="cp-Splash-title">Loading</h2> 2273 <button class="cp-Splash-Btn cp-Splash-close" aria-label="Close this modal" title="Close this window"> 2274 <svg id="iconClose" viewBox="0 0 25 25"> 2275 <polygon style="fill:currentcolor" 2276 points="18.806,6.98 18.075,6.248 12.532,11.792 6.989,6.248 6.257,6.98 11.786,12.508 6.212,18.084 6.943,18.815 12.532,13.224 18.12,18.815 18.851,18.084 13.277,12.508"></polygon> 2277 </svg> 2278 </button> 2279 </div> 2280 <div class="cp-Splash-body"> 2281 <div class="cp-Splash-Prose editorContent fr-view" id="editorContentDesc"> 2282 <!-- Content from the Froala Editor will go here. --> 2283 Loading 2284 </div> 2285 </div> 2286 <div class="cp-Splash-footer"> 2287 <button class="cp-Splash-Btn cp-Splash-Btn--NoShow">Do Not Show Again</button> 2288 <button class="cp-Splash-Btn cp-Splash-Btn--Close">Close</button>
2289 </div> 2290 </div> 2291</div> 2292
2293<script src="/Assets/Scripts/APIClient.js"></script>
vendor: 2 bytes, line 2293
2293
2294<script src="/Assets/Mystique/Shared/Scripts/Moment/Moment.min.js"></script>
vendor: 2 bytes, line 2294
2294
2295<script src="/Assets/Scripts/SplashModal/SplashModalRender.js"></script>
vendor: 2 bytes, line 2295
2295
2296<script> 2297 2298 $(document).ready(function () { 2299 var filter = { 2300 targetId: '101', 2301 targetType: 1 2302 } 2303 2304 new SplashModalRender().triggerRender(filter); 2305 }); 2306</script>
2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 2323
2323<script src="/-1442400649.js" type="text/javascript"></script>
2323 2324 <!----------Google Translate (Mobile Friendly)---------> 2325 2326<style> 2327 #google-translate-container { 2328 float: right; 2329 padding: 3px 5px 0px 0px; 2330 position: fixed; 2331 bottom: 16px; 2332 right: 92px; 2333 z-index: 5; 2334 } 2335 2336 .goog-te-combo, .goog-te-banner *, .goog-te-ftab *, .goog-te-menu *, .goog-te-menu2 *, .goog-te-balloon * { 2337 font-family: arial; 2338 font-size: 10pt; 2339 background-image: url("https://www.gstatic.com/images/branding/product/2x/translate_24dp.png"); 2340 background-position: 5px 5px; 2341 background-size: 18px; 2342 background-repeat: no-repeat; 2343 text-indent: 16px; 2344 background-color: #fff; 2345 color: #000 !important; 2346 } 2347 2348 .goog-logo-link { 2349 display: none !important; 2350 } 2351 2352 .goog-te-gadget { 2353 color: transparent !important; 2354 } 2355 2356 .goog-te-gadget .goog-te-combo { 2357 margin: 2px 0 !important; 2358 border-radius: 15px !important; 2359 } 2360 2361 .goog-te-combo{ 2362 border: 1px solid !important; 2363 border-color: #bcc9d7 #96a3b1 #96a3b1 #bcc9d7 !important; 2364 border-radius: 50px !important; 2365 height:31px !important; 2366 padding: 0 1px 0 .25rem !important; 2367 width: 156px; 2368 } 2369 2370 #launcher-wrapper { 2371 bottom: 50px !important; 2372 } 2373 2374</style> 2375 2376<div id="google-translate-container"> 2377 <div id="google_translate_element"> 2378 </div> 2379</div> 2380
2381<script> 2382 2383 function googleTranslateElementInit() { 2384 new google.translate.TranslateElement({ pageLanguage: "en" }, "google_translate_element"); 2385 // begin accessibility compliance 2386 $('img.goog-te-gadget-icon').attr('alt','Google Translate'); 2387 $('div#goog-gt-tt div.logo img').attr('alt','translate'); 2388 $('div#goog-gt-tt .original-text').css('text-align','left'); 2389 $('.goog-te-gadget-simple .goog-te-menu-value span').css('color','#000000'); 2390 $('.goog-te-combo').attr('aria-label','google translate languages'); 2391 $('svg.goog-te-spinner').attr('title','Google Translate Spinner'); 2392 $('.goog-te-gadget-simple .goog-te-menu-value span').css('color','#000000'); 2393 } 2394 2395 $(function() { 2396 $.getScript("//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"); 2397 }); 2398 2399</script>
2399 2400 2401<!--------------End Google Translate-----------------> 2402 2403
2404<script>
vendor: 352 bytes, lines 2404-2410
2404 2405 (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ 2406 (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), 2407 m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) 2408 })(window,document,'script','https://www.google-analytics.com/analytics.js','ga'); 2409 2410 ga('create', '
2410UA-73597060-1
vendor: 43 bytes, lines 2410-2412
2410', 'auto'); 2411 ga('send', 'pageview'); 2412
2413</script>
2413 2414 2415<!--BrowseAloud--> 2416
2417<script type="text/javascript" src="//www.browsealoud.com/plus/scripts/ba.js"></script>
2417 2418 2419<!--End BrowseAloud--> 2420 2421 2422 2423<!-- Fixed Nav Adjustment -->
2424<script> 2425 function getValueTS(elem, attr) { 2426 const val = elem.css(attr); 2427 if (val === undefined) return undefined; 2428 const num = parseInt(val, 10); 2429 if (num === NaN) return undefined; 2430 return num; 2431 } 2432 2433 function clampTS(number, min, max) { 2434 return Math.min(Math.max(number, min), max); 2435 } 2436 2437 function isPageEditingTS() { 2438 return ( 2439 $("#doneEditing").length > 0 || // In live edit 2440 typeof DesignCenter !== "undefined" // In theme manager 2441 ); 2442 } 2443 2444 const bgColorRegexTS = /rgba\((\d+), (\d+), (\d+), (\d*\.?\d*)\)/; 2445 function isTransparentTS(elem) { 2446 const bg = elem.css('background-color'); 2447 if (typeof bg !== "string" || !bg.startsWith('rgba(')) return false; 2448 const matchState = bg.match(bgColorRegexTS); 2449 if (!matchState || matchState.length !== 5) return false; 2450 const alpha = parseFloat(matchState[4], 10); 2451 if (!(alpha >= 0 && alpha < 1)) return false; 2452 return true; 2453 } 2454 2455 function iterateLeftpads(cb) { 2456 const containersTS = $("[class^='siteWrap'],[class*=' siteWrap']"); 2457 for (let i = 0; i < containersTS.length; i++) { 2458 const containerTS = containersTS[i]; 2459 // Skip the body container and anything with data-skip-leftpad 2460 if ( 2461 containerTS.id !== "bodyContainerTS" && 2462 containerTS.getAttribute('data-skip-leftpad') === null 2463 ) { 2464 cb(containerTS); 2465 } 2466 } 2467 } 2468 2469 const anchor = $("#divToolbars"); 2470 2471 // Outer banner padding (push banner down) 2472 const outerSizingTS = $("#bannerContainerTS"); 2473 // Inner banner padding (push banner content down) - Transparent header OR on attaching headers 2474 const innerSizingTS = $("#bannerSizingTS"); 2475 const bodyContainerTS = $("#bodyContainerTS"); 2476 2477 const forceUnfixClassTS = "forceUnfixTS"; 2478 2479 const fixedTopTS = $(".fixedTopTS"); 2480 const fixedBottomTS = $(".fixedBottomTS"); 2481 const fixedLeftTS = $(".fixedLeftTS"); 2482 2483 var initialTopTS; 2484 var topAttachTS; 2485 if (fixedTopTS && fixedTopTS.length === 1) { 2486 initialTopTS = getValueTS(fixedTopTS, 'top'); 2487 const attachment = fixedTopTS.attr('data-attach');
2488 if (attachment) topAttachTS = $("#" + attachment); 2489 if (!topAttachTS || topAttachTS.length !== 1) topAttachTS = undefined; 2490 } 2491 2492 function resizeAdjustmentTS() { 2493 const editing = isPageEditingTS(); 2494 2495 // Fixed top script 2496 (function () { 2497 if (!fixedTopTS || fixedTopTS.length !== 1 || initialTopTS === undefined) return; 2498 2499 if (editing) { 2500 fixedTopTS[0].classList.add(forceUnfixClassTS); 2501 } else { 2502 fixedTopTS[0].classList.remove(forceUnfixClassTS); 2503 } 2504 2505 const topPosition = fixedTopTS.css('position'); 2506 if (topPosition === 'fixed') { 2507 if (topAttachTS) { 2508 scrollAdjustmentTS(); 2509 } else { 2510 const anchorHeight = anchor.outerHeight() - 1; 2511 fixedTopTS.css('top', anchorHeight + initialTopTS); 2512 } 2513 } else { 2514 fixedTopTS.css('top', initialTopTS); 2515 } 2516 2517 if (topPosition === 'fixed' || topPosition === 'absolute') { 2518 // Bump the banner content down 2519 if (isTransparentTS(fixedTopTS)) { 2520 innerSizingTS.css('padding-top', initialTopTS + fixedTopTS.outerHeight() - 1); 2521 outerSizingTS.css('padding-top', ''); 2522 2523 try { 2524 window.Pages.onResizeHandlersExecute(); 2525 } catch (e) { } 2526 } else { 2527 outerSizingTS.css('padding-top', fixedTopTS.outerHeight() - 1); 2528 innerSizingTS.css('padding-top', ''); 2529 } 2530 } else { 2531 innerSizingTS.css('padding-top', ''); 2532 outerSizingTS.css('padding-top', ''); 2533 } 2534 })(); 2535 2536 // Fixed bottom script 2537 (function () { 2538 if (!fixedBottomTS || fixedBottomTS.length === 0) return; 2539 2540 // If the widget has gone narrow, force unfix 2541 if (editing || fixedBottomTS.outerHeight() > 200) { 2542 fixedBottomTS[0].classList.add(forceUnfixClassTS); 2543 } else { 2544 fixedBottomTS[0].classList.remove(forceUnfixClassTS); 2545 } 2546 2547 if (fixedBottomTS.css('position') === 'fixed') { 2548 bodyContainerTS.css('padding-bottom', fixedBottomTS.outerHeight()); 2549 } else { 2550 bodyContainerTS.css('padding-bottom', ''); 2551 } 2552 })(); 2553 2554 // Fixed left script 2555 (function () { 2556 if (!fixedLeftTS || fixedLeftTS.length === 0) return; 2557 2558 if (editing) { 2559 fixedLeftTS[0].classList.add(forceUnfixClassTS); 2560 } else { 2561 fixedLeftTS[0].classList.remove(forceUnfixClassTS); 2562 } 2563 2564 if (fixedLeftTS.css('position') === 'fixed') { 2565 const anchorHeight = anchor.outerHeight() - 1; 2566 fixedLeftTS.css('top', anchorHeight); 2567 const leftBoundingTS = fixedLeftTS[0].getBoundingClientRect(); 2568 iterateLeftpads(function (containerTS) { 2569 const containerBoundingTS = containerTS.getBoundingClientRect(); 2570 if (containerBoundingTS.left <= leftBoundingTS.right) { 2571 $(containerTS).css('padding-left', leftBoundingTS.width + 16); 2572 } 2573 }); 2574 } else { 2575 fixedLeftTS.css('top', ''); 2576 iterateLeftpads(function (containerTS) { 2577 $(containerTS).css('padding-left', ''); 2578 }); 2579 } 2580 })(); 2581 } 2582 2583 function scrollAdjustmentTS() { 2584 if (!fixedTopTS || fixedTopTS.length !== 1 || !topAttachTS || topAttachTS.length !== 1) return; 2585 const topPosition = fixedTopTS.css('position'); 2586 if (topPosition === 'fixed' || topPosition === 'absolute') { 2587 const anchorBounding = anchor[0].getBoundingClientRect(); 2588 const attachBounding = topAttachTS[0].getBoundingClientRect(); 2589 const scrollTop = $(window).scrollTop(); 2590 2591 fixedTopTS.css('top', Math.max(anchorBounding.bottom - 1, attachBounding.bottom)); 2592 } else { 2593 fixedTopTS.css('top', initialTopTS); 2594 } 2595 } 2596 2597 $(window).load(function () { 2598 setTimeout(function () { 2599 resizeAdjustmentTS(); 2600 }, 350); 2601 2602 $(window).scroll(function () { 2603 scrollAdjustmentTS(); 2604 }); 2605 2606 var adjustTimeoutTS; 2607 $(window).resize(function () { 2608 clearTimeout(adjustTimeoutTS); 2609 adjustTimeoutTS = setTimeout(function () { 2610 resizeAdjustmentTS(); 2611 }, 350); 2612 });
2613 2614 $.when(window.Pages.angularToolbarComplete).done(function () { 2615 resizeAdjustmentTS(); 2616 }); 2617 }); 2618</script>
2618 2619<!-- End Fixed Nav Adjustment --> 2620
2621<script type="text/javascript">!function(){var b=function(){window.__AudioEyeSiteHash = "717a1391fb51fc08ad82eeae9a2119ed"; var a=document.createElement("script");a.src="https://wsmcdn.audioeye.com/aem.js";a.type="text/javascript";a.setAttribute("async","");document.getElementsByTagName("body")[0].appendChild(a)};"complete"!==document.readyState?window.addEventListener?window.addEventListener("load",b):window.attachEvent&&window.attachEvent("onload",b):b()}();</script>
2621 2622
2623<script type="text/javascript"> 2624 window._monsido = window._monsido || { 2625 token: "VwROs34UOJDLVkD4FkB8Yw", 2626 statistics: { 2627 enabled: true, 2628 cookieLessTracking: true, 2629 documentTracking: { 2630 enabled: true, 2631 documentCls: "monsido_download", 2632 documentIgnoreCls: "monsido_ignore_download", 2633 documentExt: [], 2634 }, 2635 }, 2636 heatmap: { 2637 enabled: true, 2638 }, 2639 pageCorrect: { 2640 enabled: true, 2641 }, 2642 }; 2643</script>
vendor: 2 bytes, line 2643
2643
2644<script type="text/javascript" async src="https://app-script.monsido.com/v2/monsido-script.js"></script>
2644 2645 2646 2647
2647<script type="text/javascript"> 2648 $(function () { 2649 document.cookie = "responsiveGhost=0; path=/"; 2650 }); 2651 $(window).on("load", function () { 2652 $('body').addClass('doneLoading').removeClass('hideContent'); 2653 2654 if ($('#404Content').length > 0) 2655 $('div#bodyWrapper').css('padding', '0px'); 2656 }); 2657 </script>
2657 2658 2659 <noscript> 2660 <style> 2661 body.hideContent { 2662 opacity: 1 !important; 2663 } 2664 </style> 2665 </noscript> 2666 2667 2668<div style="display: none;"> 2669 <svg xmlns="http://www.w3.org/2000/svg" style="display:none;"> 2670 2671 <symbol id="iconArrow--left" viewbox="0 0 25 25"> 2672 <title>Arrow Left</title> 2673 <polygon style="fill:currentcolor" points="18.044,25 19.498,23.545 8.409,12.454 19.408,1.455 17.954,0 5.502,12.452"></polygon> 2674 </symbol> 2675 2676 <symbol id="iconArrow--right" viewbox="0 0 25 25"> 2677 <title>Arrow Right</title> 2678 <polygon style="fill:currentcolor" points="6.957,0 5.502,1.455 16.591,12.546 5.592,23.545 7.047,25 19.498,12.548"></polygon> 2679 </symbol> 2680 2681 </svg> 2682</div> 2683
2683<script type="text/javascript">loadCSS('//fonts.googleapis.com/css?family=Lora:700italic|Montserrat:600,600italic,700,800,900,regular|Nunito:500,500italic,600,600italic,700,700italic,800,800italic,italic,regular|Open+Sans:500,500italic,600,600italic,700,700italic,800,800italic,italic,regular|Rubik:500,700,regular|Source+Sans+Pro:600,700,regular|');</script>
2683 2684 2685 2686 <div class="hidden activeWidgetSkinComponentsOnPageJson">[]</div> 2687 <div style="display: none;"> 2688 <svg xmlns="http://www.w3.org/2000/svg" style="display: none;"> 2689 <symbol id="iconSlideshowArrowLeft" viewBox="0 0 22.68 40"> 2690 <title>Slideshow Left Arrow</title> 2691 <g> 2692 <path style="fill:currentcolor;" d="M20,40a2.67,2.67,0,0,1-1.9-.79L.79,21.9a2.68,2.68,0,0,1,0-3.79L18.1.79a2.68,2.68,0,1,1,3.79,3.79L6.47,20,21.89,35.42A2.68,2.68,0,0,1,20,40Z"></path> 2693 </g> 2694 </symbol> 2695 <symbol id="iconSlideshowArrowRight" viewBox="0 0 22.68 40"> 2696 <title>Slideshow Right Arrow</title> 2697 <g> 2698 <path style="fill:currentcolor;" d="M2.68,0a2.67,2.67,0,0,1,1.9.79L21.89,18.1a2.68,2.68,0,0,1,0,3.79L4.58,39.21A2.68,2.68,0,0,1,.79,35.42L16.21,20,.79,4.58A2.68,2.68,0,0,1,2.68,0Z"></path> 2699 </g> 2700 </symbol> 2701 </svg> 2702 </div> 2703 2704 2705 2706 2707 <div id="root-picker-outlet"></div> 2708</body> 2709</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.