1<!DOCTYPE html> 2<html class="" lang="en-US"> 3<head> 4 <!-- lPRXV-WORD06 --> 5 <meta charset="utf-8">
5<script type="text/javascript">(window.NREUM||(NREUM={})).init={privacy:{cookies_enabled:true},ajax:{deny_list:["bam.nr-data.net"]},distributed_tracing:{enabled:true}};(window.NREUM||(NREUM={})).loader_config={agentID:"15772231",accountID:"27781",trustKey:"27781",xpid:"VgEAWVdACQYHV1lRBgA=",licenseKey:"NRBR-ef6a1ade564393667ce",applicationID:"15738311",browserID:"15772231"};;/*! For license information please see nr-loader-spa-1.323.0.min.js.LICENSE.txt */ 6(()=>{var e={8122(e,t,r){"use strict";r.d(t,{a:()=>i});var n=r(944);function i(e,t){try{if(!e||"object"!=typeof e)return(0,n.R)(3);if(!t||"object"!=typeof t)return(0,n.R)(4);const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),s=0===Object.keys(r).length?e:r;for(let a in s)if(void 0!==e[a])try{if(null===e[a]){r[a]=null;continue}Array.isArray(e[a])&&Array.isArray(t[a])?r[a]=Array.from(new Set([...e[a],...t[a]])):e[a]instanceof Map||e[a]instanceof Set||e[a]instanceof Date||e[a]instanceof RegExp?r[a]=e[a]:"object"==typeof e[a]&&null!==t[a]&&"object"==typeof t[a]?r[a]=i(e[a],t[a]):r[a]=e[a]}catch(e){r[a]||(0,n.R)(1,e)}return r}catch(e){(0,n.R)(2,e)}}},2555(e,t,r){"use strict";r.d(t,{f:()=>a});var n=r(384),i=r(8122);const s={beacon:n.NT.beacon,errorBeacon:n.NT.errorBeacon,licenseKey:void 0,applicationID:void 0,sa:void 0,queueTime:void 0,applicationTime:void 0,ttGuid:void 0,user:void 0,account:void 0,product:void 0,extra:void 0,jsAttributes:{},userAttributes:void 0,atts:void 0,transactionName:void 0,tNamePlain:void 0};function a(e){try{return!!e.licenseKey&&!!e.errorBeacon&&!!e.applicationID}catch(e){return!1}}r.d(t,["D",0,e=>(0,i.a)(e,s)])},7699(e,t,r){"use strict";var n=r(860);const i={[n.K7.logging]:!0,[n.K7.genericEvents]:!0,[n.K7.jserrors]:!0,[n.K7.ajax]:!0};r.d(t,["It",0,1e6,"KC",0,i,"qh",0,"SESSION_ERROR"])},9324(e,t,r){"use strict";r.d(t,["A",0,"@newrelic/rrweb","x",0,"1.323.0"])},981(e,t,r){"use strict";r.d(t,["R",0,{AJAX:"AjaxRequest",PA:"PageAction",UA:"UserAction",BP:"BrowserPerformance",WS:"WebSocket",SPV:"SecurityPolicyViolation",JSE:"JavaScriptError",LOG:"Log",PVE:"PageView",PVT:"PageViewTiming",SR:"SessionReplay",ST:"SessionTrace",BI:"BrowserInteraction"}])},9752(e,t,r){"use strict";const n="newrelic-iframe-",i=n+"timing-update",s=n+"api",a=n+"api-response",o=n+"vitals-update",c=n+"ajax";r.d(t,["$8",0,o,"Gi",0,a,"KU",0,c,"Pl",0,n,"cS",0,s,"cr",0,i])},6154(e,t,r){"use strict";var n=r(1863);const i="undefined"!=typeof window&&!!window.document,s="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),a=i?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),o=Boolean("hidden"===a?.document?.visibilityState),c=""+a?.location,d=/iPad|iPhone|iPod/.test(a.navigator?.userAgent),u=d&&"undefined"==typeof SharedWorker,l=(()=>{const e=a.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);return Array.isArray(e)&&e.length>=2?+e[1]:0})(),f=Date.now()-(0,n.t)();r.d(t,["OF",0,d,"RI",0,i,"WN",0,f,"bv",0,s,"gm",0,a,"lR",0,l,"m",0,c,"mw",0,o,"sb",0,u,"zk",0,()=>{const e=a?.performance?.getEntriesByType?.("navigation")?.[0];if(e&&e.responseStart>0&&e.responseStart<a.performance.now())return e}])},7295(e,t,r){"use strict";r.d(t,{Xv:()=>a,gX:()=>i,iW:()=>s});var n=[];function i(e){if(!e||s(e))return!1;if(0===n.length)return!0;if("*"===n[0].hostname)return!1;for(var t=0;t<n.length;t++){var r=n[t];if(r.hostname.test(e.hostname)&&r.pathname.test(e.pathname))return!1}return!0}function s(e){return void 0===e.hostname}function a(e){if(n=[],e&&e.length)for(var t=0;t<e.length;t++){let r=e[t];if(!r)continue;if("*"===r)return void(n=[{hostname:"*"}]);0===r.indexOf("http://")?r=r.substring(7):0===r.indexOf("https://")&&(r=r.substring(8));const i=r.indexOf("/");let s,a;i>0?(s=r.substring(0,i),a=r.substring(i)):(s=r,a="*");let[c]=s.split(":");n.push({hostname:o(c),pathname:o(a,!0)})}}function o(e,t=!1){const r=e.replace(/[.+?^${}()|[\]\\]/g,e=>"\\"+e).replace(/\*/g,".*?");return new RegExp((t?"^":"")+r+"$")}},3241(e,t,r){"use strict";r.d(t,{W:()=>i});var n=r(6154);function i(e={}){try{n.gm.dispatchEvent(new CustomEvent("newrelic",{detail:e}))}catch(e){}}},1687(e,t,r){"use strict";r.d(t,{Ak:()=>o,Ze:()=>d,x3:()=>c});var n=r(3241),i=r(3606),s=r(860),a=r(2646);function o(e,t){if(!e)return;const r={staged:!1,priority:s.P3[t]||0};
6e.runtime.drainRegistry.get(t)||e.runtime.drainRegistry.set(t,r)}function c(e,t){if(!e)return;const r=e.runtime.drainRegistry;r&&(r.get(t)&&r.delete(t),l(e,t,!1),r.size&&u(e))}function d(e,t="feature",r=!1){if(e){if(!e.runtime.drainRegistry.get(t)||r)return l(e,t);e.runtime.drainRegistry.get(t).staged=!0,u(e)}}function u(e){if(!e)return;const t=Array.from(e.runtime.drainRegistry);t.every(([e,t])=>t.staged)&&(t.sort((e,t)=>e[1].priority-t[1].priority),t.forEach(([t])=>{e.runtime.drainRegistry.delete(t),l(e,t)}))}function l(e,t,r=!0){if(!e)return;const s=e.ee,o=i.i.handlers;if(s&&!s.aborted&&s.backlog&&o){if((0,n.W)({type:"lifecycle",name:"drain",feature:t}),r){const e=s.backlog[t],r=o[t];if(r){for(let t=0;e&&t<e.length;++t)f(e[t],r);Object.entries(r).forEach(([e,t])=>{Object.values(t||{}).forEach(t=>{t[0]?.on&&t[0].context()instanceof a.y&&!t[0].listeners(e).includes(t[1])&&t[0].on(e,t[1])})})}}s.isolatedBacklog||delete o[t],s.backlog[t]=null,s.emit("drain-"+t,[])}}function f(e,t){var r=e[1];Object.values(t[r]||{}).forEach(t=>{var r=e[0];if(t[0]===r){var n=t[1],i=e[3],s=e[2];n.apply(i,s)}})}},7836(e,t,r){"use strict";var n=r(384),i=r(8990),s=r(2646),a=r(5607);const o="nr@context:".concat(a.W),c=function e(t,r){var n={},a={},u={},l=!1;try{l=16===r.length&&d.initializedAgents?.[r]?.runtime.isolatedBacklog}catch(e){}var f={on:p,addEventListener:p,removeEventListener:function(e,t){var r=n[e];if(!r)return;for(var i=0;i<r.length;i++)r[i]===t&&r.splice(i,1)},emit:function(e,r,n,i,s){!1!==s&&(s=!0);if(c.aborted&&!i)return;t&&s&&t.emit(e,r,n);var o=h(n);g(e).forEach(e=>{e.apply(o,r)});var d=v()[a[e]];d&&d.push([f,e,r,o]);return o},get:m,listeners:g,context:h,buffer:function(e,t){const r=v();if(t=t||"feature",f.aborted)return;Object.entries(e||{}).forEach(([e,n])=>{a[n]=t,t in r||(r[t]=[])})},abort:function(){f._aborted=!0,Object.keys(f.backlog).forEach(e=>{delete f.backlog[e]})},isBuffering:function(e){return!!v()[a[e]]},debugId:r,backlog:l?{}:t&&"object"==typeof t.backlog?t.backlog:{},isolatedBacklog:l};return Object.defineProperty(f,"aborted",{get:()=>{let e=f._aborted||!1;return e||(t&&(e=t.aborted),e)}}),f;function h(e){return e&&e instanceof s.y?e:e?(0,i.I)(e,o,()=>new s.y(o)):new s.y(o)}function p(e,t){n[e]=g(e).concat(t)}function g(e){return n[e]||[]}function m(t){return u[t]=u[t]||e(f,t)}function v(){return f.backlog}}(void 0,"globalEE"),d=(0,n.Zm)();d.ee||(d.ee=c),r.d(t,["P",0,o,"ee",0,c])},2646(e,t,r){"use strict";r.d(t,{y:()=>n});class n{constructor(e){this.contextId=e}}},9908(e,t,r){"use strict";r.d(t,{d:()=>n,p:()=>i});var n=r(7836).ee.get("handle");function i(e,t,r,i,s){s?(s.buffer([e],i),s.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},3606(e,t,r){"use strict";r.d(t,{i:()=>s});var n=r(9908);s.on=a;var i=s.handlers={};function s(e,t,r,s){a(s||n.d,i,e,t,r)}function a(e,t,r,i,s){s||(s="feature"),e||(e=n.d);var a=t[s]=t[s]||{};(a[r]=a[r]||[]).push([e,i])}},3878(e,t,r){"use strict";function n(e,t){return{capture:e,passive:!1,signal:t}}function i(e,t,r=!1,i){window.addEventListener(e,t,n(r,i))}function s(e,t,r=!1,i){document.addEventListener(e,t,n(r,i))}r.d(t,{DD:()=>s,jT:()=>n,sp:()=>i})},5607(e,t,r){"use strict";const n=(0,r(9566).bz)();r.d(t,["W",0,n])},9566(e,t,r){"use strict";r.d(t,{LA:()=>a,ZF:()=>o,bz:()=>s,el:()=>c});var n=r(6154);function i(e,t){return e?15&e[t]:16*Math.random()|0}function s(){const e=n.gm?.crypto||n.gm?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(30))),"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".split("").map(e=>"x"===e?i(t,r++).toString(16):"y"===e?(3&i()|8).toString(16):e).join("")}function a(e){const t=n.gm?.crypto||n.gm?.msCrypto;let r,s=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(e)));const a=[];for(var o=0;o<e;o++)a.push(i(r,s++).toString(16));return a.join("")}function o(){return a(16)}function c(){return a(32)}},2614(e,t,r){"use strict";r.d(t,["BB",0,18e5,"Wt",0,"NRBA_SESSION::","g",0,{OFF:0,FULL:1,ERROR:2},"iL",0,{SAME_TAB:"same-tab",CROSS_TAB:"cross-tab"},"tS",0,{STARTED:"session-started",PAUSE:"session-pause",RESET:"session-reset",RESUME:"session-resume",UPDATE:"session-update"},"wk",0,144e5])},733(e,t,r){"use strict";function n(e,t){return function(e){let t=2166136261;for(let r=0;r<e.length;r++)t^=e.charCodeAt(r),t=Math.imul(t,16777619);return(t>>>0).toString(16).padStart(8,"0")}("".concat(String(e),":").concat(String(t)))}r.d(t,{Y:()=>n})},1863(e,t,r){"use strict";function n(){return Math.floor(performance.now())}r.d(t,{t:()=>n})},9119(e,t,r){"use strict";r.d(t,{L:()=>s});var n=/([^?#]*)[^#]*(#[^?]*|$).*/,i=/([^?#]*)().*/;function s(e,t){return e?e.replace(t?n:i,"$1$2"):e}},7485(e,t,r){"use strict";r.d(t,{D:()=>i});var n=r(6154);function i(e){if(0===(e||"").indexOf("data:"))return{protocol:"data"};try{const t=new URL(e,location.href),r={port:t.port,hostname:t.hostname,pathname:t.pathname,search:t.search,protocol:t.protocol.slice(0,t.protocol.indexOf(":")),sameOrigin:t.protocol===n.gm?.location?.protocol&&t.host===n.gm?.location?.host};return r.port&&""!==r.port||("http:"===t.protocol&&(r.port="80"),"https:"===t.protocol&&(r.port="443")),r.pathname&&""!==r.pathname?r.pathname.startsWith("/")||(r.pathname="/".concat(r.pathname)):r.pathname="/",r}catch(e){return{}}}},7866(e,t,r){"use strict";r.d(t,["Nc",0,/^\s*at Function code \(Function code:\d+:\d+\)\s*/i,"cn",0,/^\s*(?:([^@]*)(?:\(.*?\))?@)?((?:file|http|https|chrome|safari-extension).*?):(\d+)(?::(\d+))?\s*$/i,"fL",0,/^\s*at .+ \(eval at \S+ \((?:(?:file|http|https):[^)]+)?\)(?:, [^:]*:\d+:\d+)?\)$/i,"h3",0,/function (.+?)\s*\(/,"hB",0,/^\s*at (?:((?:\[object object\])?(?:[^(]*\([^)]*\))*[^()]*(?: \[as \S+\])?) )?\(?((?:file|http|https|chrome-extension):.*?)?:(\d+)(?::(\d+))?\)?\s*$/i])},944(e,t,r){"use strict";r.d(t,{R:()=>i});var n=r(3241);function i(e,t){"function"==typeof console.debug&&(console.debug("New Relic Warning: https://github.com/newrelic/newrelic-browser-agent/blob/main/docs/warning-codes.md#".concat(e),t),(0,n.W)({drained:null,type:"data",name:"warn",feature:"warn",data:{code:e,secondary:t}}))}},8990(e,t,r){"use strict";r.d(t,{I:()=>i});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},6389(e,t,r){"use strict";function n(e,t=500,r={}){const n=r?.leading||!1;let i;return(...r)=>{n&&void 0===i&&(e.apply(this,r),i=setTimeout(()=>{i=clearTimeout(i)},t)),n||(clearTimeout(i),i=setTimeout(()=>{e.apply(this,r)},t))}}function i(e){let t=!1;return(...r)=>{t||(t=!0,e.apply(this,r))}}r.d(t,{J:()=>i,s:()=>n})},1910(e,t,r){"use strict";r.d(t,{i:()=>s});var n=r(944);const i=new Map;function s(...e){return e.every(e=>{if(i.has(e))return i.get(e);const t="function"==typeof e?e.toString():"",r=t.includes("[native code]"),s=t.includes("nrWrapper");return r||s||(0,n.R)(64,e?.name||t),i.set(e,r),r})}},3304(e,t,r){"use strict";r.d(t,{A:()=>i});var n=r(7836);function i(e){try{return JSON.stringify(e,(()=>{const e=new WeakSet;return(t,r)=>{if("object"==typeof r&&null!==r){if(e.has(r))return;e.add(r)}return r}})())??""}catch(e){try{n.ee.emit("internal-error",[e])}catch(e){}return""}}},9232(e,t,r){"use strict";r.d(t,["f",0,{MFE:"MFE",BA:"BA"}])},7560(e,t,r){"use strict";r.d(t,{N:()=>a,j:()=>c});var n=r(9119),i=r(944);const s=(0,r(6389).J)(e=>(0,i.R)(80,e));function a(e){if(!Array.isArray(e?.assets)||!e.assets.length)return;
6const t=e.assets.map(o).filter(Boolean);return t.length?{assets:t,scripts:t.filter(e=>e.isScript)}:void 0}function o(e){if(!e||"object"!=typeof e)return;const{matcher:t,type:r}=e;let i="string"==typeof t&&t.endsWith(".js");return void 0!==r&&(!function(e){return"script"===e||"asset"===e}(r)?s(r):i=function(e){return"script"===e}(r)),a=t,"[object RegExp]"===Object.prototype.toString.call(a)?{pattern:t,test:e=>(t.lastIndex=0,t.test((0,n.L)(e))),isScript:i}:"string"==typeof t&&t.length>0?{pattern:t,test:e=>(0,n.L)(e).includes(t),isScript:i}:void s(t);var a}function c(e,t,{scriptsOnly:r=!1}={}){if(!e||!t)return!1;return(r?e.scripts:e.assets).some(e=>e.test(t))}},5718(e,t,r){"use strict";r.d(t,{xo:()=>T,AZ:()=>v,cI:()=>g,Qr:()=>A,QL:()=>y});var n=r(6154),i=r(1863),s=r(9119),a=r(7866);class o{dom=new c;performance=new c;constructor(e){this.url=e,this.claimedBy=new Set}get script(){const e=Math.max(this.dom.start,this.performance.end);return{start:e,end:Math.max(this.dom.end,this.performance.end,e)}}}class c{start=0;end=0;value=void 0}function d(e=()=>{},t){return{get:()=>void 0!==t?t:e(),set:e=>{t=e}}}let u;try{u=v(y())[0]}catch(e){u=v(e)[0]}const l=new Map;let f=[];const h=new WeakMap;function p(e){let t=h.get(e);return t||(t={weighedAssetUrls:new Set,recordManifestScriptWindow:(t,r)=>{t&&(e.scriptStart=e.scriptStart>0?Math.min(e.scriptStart,t):t),r&&(e.scriptEnd=e.scriptEnd>0?Math.max(e.scriptEnd,r):r)}},h.set(e,t)),t}function g(e){return l.get(e)}function m(e){const t=g(e);
6if(t)return t;const r=new o(e);if(l.set(e,r),l.size>1e3){const e=l.keys().next().value;l.delete(e)}return r}if(n.gm.MutationObserver&&n.gm.document){new MutationObserver(e=>{e.forEach(e=>{e.addedNodes.forEach(e=>{if("SCRIPT"===e.nodeName&&e.src){const t=m((0,s.L)(e.src));t.dom.start=(0,i.t)(),t.dom.value=e;const r=()=>{t.dom.end=(0,i.t)()};["load","error"].forEach(t=>e.addEventListener(t,r,{once:!0}))}})})}).observe(n.gm.document,{childList:!0,subtree:!0})}if(n.gm.PerformanceObserver?.supportedEntryTypes.includes("resource")){new PerformanceObserver(e=>{e.getEntries().forEach(e=>{if((e=>"script"===e.initiatorType||["link","fetch"].includes(e.initiatorType)&&(0,s.L)(e.name).endsWith(".js"))(e)){const t=m((0,s.L)(e.name));t.performance.start=Math.floor(e.startTime),t.performance.end=Math.floor(e.responseEnd),t.performance.value=e}if(!f.length)return;const t=[];f.forEach(({test:r,addedAt:n},s)=>{(r(e)||(0,i.t)()-n>1e4)&&t.push(s)}),f=f.filter((e,r)=>!t.includes(r))})}).observe({type:"resource",buffered:!0})}function v(e){if(!e||"string"!=typeof e)return[];const t=new Set,r=e.split("\n");for(const e of r){const r=e.match(a.cn)||e.match(a.hB)||e.match(a.fL);if(r&&r[2])t.add((0,s.L)(r[2]));else{const r=e.match(/\(([^)]+\.js):\d+:\d+\)/)||e.match(/^\s+at\s+([^\s(]+\.js):\d+:\d+/);r&&r[1]&&t.add((0,s.L)(r[1]))}}return[...t]}function y(){let e;try{const t=Error.stackTraceLimit;Error.stackTraceLimit=50,e=(new Error).stack,Error.stackTraceLimit=t}catch(t){e=(new Error).stack}return e}function b(e,t){return(0,s.L)(e.name)===t}function E(e,t){e.fetchStart=Math.floor(t.startTime),e.fetchEnd=Math.floor(t.responseEnd),e.asset=t.name,e.type=t.initiatorType,w(e,t)}function w(e,t){const r=(0,s.L)(t.name),{weighedAssetUrls:n}=p(e);n.has(r)||(n.add(r),e.totalWeight=(e.totalWeight||0)+(t.transferSize||0),"blocking"===t.renderBlockingStatus?e.renderBlocking=!0:"non-blocking"===t.renderBlockingStatus&&!0!==e.renderBlocking&&(e.renderBlocking=!1))}function R(e,t,r,n,i){if(w(e,t),"scripts"!==i&&"all"!==i)return;if("all"===i||r.isScript){const r=Math.floor(t.startTime),n=Math.floor(t.responseEnd);e.fetchStart=e.fetchStart>0?Math.min(e.fetchStart,r):r,e.fetchEnd=e.fetchEnd>0?Math.max(e.fetchEnd,n):n}if(r.isScript){const r=g((0,s.L)(t.name));if(r){const t=()=>{const{start:t,end:n}=r.script;p(e).recordManifestScriptWindow(t,n)};t(),!r.dom.end&&r.dom.value&&["load","error"].forEach(e=>r.dom.value.addEventListener(e,t,{once:!0}))}n.resolved||(e.asset=t.name,e.type=t.initiatorType,n.resolved=!0)}}function T(e,t){const r=t?.manifest;if(!r||!r.assets.length)return;const s={resolved:!1},a=new Set(r.assets);(n.gm.performance?.getEntriesByType("resource")||[]).forEach(r=>{const n=[...a].find(e=>e.test(r.name));n&&(R(e,r,n,s,t.timingMethod),a.delete(n))}),a.size&&function(e,t,r,s){n.gm.PerformanceObserver?.supportedEntryTypes?.includes("resource")&&f.push({addedAt:(0,i.t)(),test:n=>{const i=[...t].find(e=>e.test(n.name));return i&&(R(e,n,i,r,s),t.delete(i)),0===t.size}})}(e,a,s,t.timingMethod)}function A(e){const t=e?.id,r={registeredAt:(0,i.t)(),reportedAt:void 0,fetchStart:0,fetchEnd:0,scriptStart:0,scriptEnd:0,asset:void 0,type:"unknown",totalWeight:0,renderBlocking:void 0},a=y();if(!a)return r;const o=n.gm.performance?.getEntriesByType("navigation")?.[0]?.name||"";try{const e=v(a),c=(e.length>1?e.filter(e=>u!==e):e)[0];if(!c)return r;if(o.includes(c))return r.asset=(0,s.L)(o),r.type="inline",r;r.correlation=g(c);const l=r.correlation?.performance.value||n.gm.performance?.getEntriesByType("resource")?.find(e=>b(e,c));if(l)E(r,l);else{(function(e){if(!e||!n.gm.document)return!1;try{const t=n.gm.document.querySelectorAll('link[rel="preload"][as="script"]');for(const r of t)if((0,s.L)(r.href)===e)return!0}catch(e){}return!1})(c)&&(r.asset=c,r.type="preload"),function(e,t){n.gm.PerformanceObserver?.supportedEntryTypes?.includes("resource")&&f.push({addedAt:(0,i.t)(),test:r=>!!b(r,t)&&(E(e,r),!0)})}(r,c)}const h=r.correlation,m=!!t&&!!h?.claimedBy.has(t);h&&t&&h.claimedBy.add(t);const y=()=>{const e=h?.script.start;if(!m||!e)return!1;return r.registeredAt-e>1e4};let w=0,R=0;p(r).recordManifestScriptWindow=(e,t)=>{e&&(w=w>0?Math.min(w,e):e),t&&(R=R>0?Math.max(R,t):t)},Object.defineProperty(r,"scriptStart",d(()=>{const e=y()?r.registeredAt:h?.script.start??r.fetchEnd;return w>0?Math.min(e,w):e})),Object.defineProperty(r,"scriptEnd",d(()=>{const e=y()?r.registeredAt:h?.script.end??r.registeredAt;return R>0?Math.max(e,R):e}))}catch(e){}return r}},5732(e,t,r){"use strict";r.d(t,{$5:()=>m,B5:()=>g,K6:()=>u,M$:()=>
6o,Ms:()=>d,NG:()=>c,Ux:()=>h,YA:()=>p,yx:()=>l});var n=r(5718),i=r(7560),s=r(9119),a=r(9232);function o(e){return e?.type===a.f.MFE}function c(e,t){if(!y(e,t))return;const r=t.runtime.registeredEntities;return r?.find(t=>t.metadata.target.iframeInterfaceId===e)}function d(e,t){if(!y(e,t))return[];const r=t.runtime.registeredEntities;return r?.filter(t=>String(t.metadata.target.id)===String(e)).map(e=>e.metadata.target)||[]}function u(e,t){if(!y(e,t))return[];const r=t.runtime.registeredEntities,n=(0,s.L)(e),a=r?.filter(t=>{const r=t.metadata.target?.manifest;return r?(0,i.j)(r,e,{scriptsOnly:!1}):!!t.metadata.timings?.asset&&(0,s.L)(t.metadata.timings.asset)===n});return f(a).map(e=>e.metadata.target)}function l(e,t){if(!y(e,t))return[];const r=t.runtime.registeredEntities,n=r?.filter(t=>{const r=t.metadata.target?.manifest;return r?(0,i.j)(r,e,{scriptsOnly:!0}):!!t.metadata.timings?.asset?.endsWith(e)});return f(n).map(e=>e.metadata.target)}function f(e){if(!e?.length)return e||[];const t=new Map,r=[];for(const n of e){const e=n.metadata?.timings?.asset;if(!e){r.push(n);continue}const i="".concat(e,"::").concat(n.metadata?.target?.id),s=t.get(i);if(s){if(s.metadata.target?.blocked&&!n.metadata.target?.blocked){const e=r.indexOf(s);-1!==e&&(r[e]=n),t.set(i,n)}}else t.set(i,n),r.push(n)}return r}function h(e,t){return v(t)?o(e)?e.attributes:t.agentRef.runtime.v2Target.attributes:{}}function p(e,t){return g(e,t)?{"child.id":e.id,"child.type":e.type,...h(void 0,t)}:{}}function g(e,t){return o(e)&&!!v(t)&&t.agentRef.init.api.register.duplicate_data_to_container}function m(e){if(!e?.runtime)return[];if(!y(!0,e)||!e.runtime.registeredEntities?.length)return[e.runtime.v2Target];const t=[];try{var r=(0,n.AZ)((0,n.QL)());let i=r.length-1;for(;r[i];)t.push(...l(r[i--],e))}catch(e){}const i=function(e){const t=new Set,r=[];for(const n of e){const e=n?.instance;t.has(e)||(t.add(e),r.push(n))}return r}(t);return i.length||i.push(e.runtime.v2Target),i}function v(e){return 2===e?.harvestEndpointVersion}function y(e,t){return!!e&&!!t?.init.api.register.enabled}},5289(e,t,r){"use strict";r.d(t,{GG:()=>a,Qr:()=>c,sB:()=>o});var n=r(3878),i=r(6389);function s(){return"undefined"==typeof document||"complete"===document.readyState}function a(e,t){if(s())return e();const r=(0,i.J)(e),a=setInterval(()=>{s()&&(clearInterval(a),r())},500);(0,n.sp)("load",r,t)}function o(e){if(s())return e();(0,n.DD)("DOMContentLoaded",e)}function c(e){if(s())return e();(0,n.sp)("popstate",e)}},384(e,t,r){"use strict";r.d(t,{Zm:()=>c,bQ:()=>u,dV:()=>d,pV:()=>l});var n=r(6154),i=r(1863),s=r(944),a=r(1910);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function c(){return n.gm.NREUM||(n.gm.NREUM={}),void 0===n.gm.newrelic&&(n.gm.newrelic=n.gm.NREUM),n.gm.NREUM}function d(){let e=c();return e.o||(e.o={ST:n.gm.setTimeout,SI:n.gm.setImmediate||n.gm.setInterval,CT:n.gm.clearTimeout,XHR:n.gm.XMLHttpRequest,REQ:n.gm.Request,EV:n.gm.Event,PR:n.gm.Promise,MO:n.gm.MutationObserver,FETCH:n.gm.fetch,WS:n.gm.WebSocket},(0,a.i)(...Object.values(e.o))),e}function u(e,t){let r=c();r.initializedAgents??={},t.initializedAt={ms:(0,i.t)(),date:new Date},r.initializedAgents[e]=t,2===Object.keys(r.initializedAgents).length&&(0,s.R)(69)}function l(){return function(){let e=c();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=c();const t=e.init||{};e.init={...t}}(),d(),function(){let e=c();const t=e.loader_config||{};e.loader_config={...t}}(),c()}r.d(t,["NT",0,o])},2843(e,t,r){"use strict";r.d(t,{G:()=>s,u:()=>i});var n=r(3878);function i(e,t=!1,r,i){(0,n.DD)("visibilitychange",function(){if(t)return void("hidden"===document.visibilityState&&e());e(document.visibilityState)},r,i)}function s(e,t,r){(0,n.sp)("pagehide",e,t,r)}},8139(e,t,r){"use strict";r.d(t,{u:()=>f});var n=r(7836),i=r(3434),s=r(8990),a=r(6154);const o={},c=a.gm.XMLHttpRequest,d="addEventListener",u="removeEventListener",l="nr@wrapped:".concat(n.P);function f(e,t){var r=function(e){return(e||n.ee).get("events")}(e);if(o[r.debugId]++)return r;o[r.debugId]=1;var f=(0,i.YM)(r,!0,t);function p(e){f.inPlace(e,[d,u],"-",g)}function g(e,t){return e[1]}return"getPrototypeOf"in Object&&(a.RI&&h(document,p),c&&h(c.prototype,p),h(a.gm,p)),r.on(d+"-start",function(e,t){var r=e[1];if(null!==r&&("function"==typeof r||"object"==typeof r)&&"newrelic"!==e[0]){var n=(0,s.I)(r,l,function(){var e={object:function(){if("function"!=typeof r.handleEvent)return;return r.handleEvent.apply(r,arguments)},function:r}[typeof r];return e?f(e,"fn-",null,e.name||"anonymous"):r});this.wrapped=e[1]=n}}),r.on(u+"-start",function(e){e[1]=this.wrapped||e[1]}),r}function h(e,t,...r){let n=e;for(;"object"==typeof n&&!Object.prototype.hasOwnProperty.call(n,d);)n=Object.getPrototypeOf(n);n&&t(n,...r)}},3434(e,t,r){"use strict";r.d(t,{YM:()=>d});var n=r(7836),i=r(5607),s=r(5732);const a="nr@original:".concat(i.W);var o=Object.prototype.hasOwnProperty,c=!1;function d(e,t,r){return e||(e=n.ee),i.inPlace=function(e,t,r,n,s,a){r||(r="");const o="-"===r.charAt(0);for(let c=0;c<t.length;c++){const d=t[c],u=e[d];l(u)||(e[d]=i(u,o?d+r:r,n,d,s,a))}},i.flag=a,i;function i(t,n,i,c,f,h){return l(t)?t:(n||(n=""),nrWrapper[a]=t,function(e,t,r){if(Object.defineProperty&&Object.keys)try{return Object.keys(e).forEach(function(r){Object.defineProperty(t,r,{get:function(){return e[r]},set:function(t){return e[r]=t,t}})}),t}catch(e){u([e],r)}for(var n in e)o.call(e,n)&&(t[n]=e[n])}
6(t,nrWrapper,e),nrWrapper);function nrWrapper(){var a,o,l,p;let g,m;try{o=this,a=[...arguments],m=h?(0,s.$5)(r):[r?.runtime?.v2Target],l="function"==typeof i?i(a,o):i||{}}catch(t){u([t,"",[a,o,c],l],e)}d(n+"start",[a,o,c,m],l,f);const v=performance.now();let y;try{return p=t.apply(o,a),y=performance.now(),p}catch(e){throw y=performance.now(),d(n+"err",[a,o,e,m],l,f),g=e,g}finally{const e=y-v,t={start:v,end:y,duration:e,isLongTask:e>=50,methodName:c,thrownError:g};t.isLongTask&&d("long-task",[t,o,m],l,f),d(n+"end",[a,o,p,m],l,f)}}}function d(r,n,i,s){if(!c||t){var a=c;c=!0;try{e.emit(r,n,i,t,s)}catch(t){u([t,r,n,i],e)}c=a}}}function u(e,t){t||(t=n.ee);try{t.emit("internal-error",e)}catch(e){}}function l(e){return!(e&&"function"==typeof e&&e.apply&&!e[a])}r.d(t,["Jt",0,a])},9300(e,t,r){"use strict";const n=r(860).K7.ajax;r.d(t,["TZ",0,n,"f5",0,"ajaxRequest.id","mo",0,{NONE:"none",FAILURES:"failures",ALL:"all"}])},3333(e,t,r){"use strict";var n=r(981);const i=r(860).K7.genericEvents,s=[n.R.PA,n.R.UA,n.R.BP];r.d(t,["$v",0,{RESOURCES:"experimental.resources",REGISTER:"register"},"TZ",0,i,"Zp",0,["auxclick","click","copy","keydown","paste","scrollend"],"kd",0,s,"qN",0,["focus","blur"]])},6774(e,t,r){"use strict";const n=r(860).K7.jserrors;r.d(t,["T",0,n])},993(e,t,r){"use strict";const n=r(860).K7.logging;r.d(t,["A$",0,{OFF:0,ERROR:1,WARN:2,INFO:3,DEBUG:4,TRACE:5},"TZ",0,n,"p_",0,{ERROR:"ERROR",WARN:"WARN",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"}])},3785(e,t,r){"use strict";r.d(t,{R:()=>c,b:()=>d});var n=r(9908),i=r(1863),s=r(860),a=r(3969),o=r(993);function c(e,t,r={},c=o.p_.INFO,d=!0,u,l=(0,i.t)()){(0,n.p)(a.xV,["API/logging/".concat(c.toLowerCase(),"/called")],void 0,s.K7.metrics,e),(0,n.p)("log",[l,t,r,c,d,u],void 0,s.K7.logging,e)}function d(e){return"string"==typeof e&&Object.values(o.p_).some(t=>t===e.toUpperCase().trim())}},3969(e,t,r){"use strict";const n=r(860).K7.metrics;r.d(t,["TZ",0,n,"XG",0,"storeEventMetrics","xV",0,"storeSupportabilityMetrics"])},6630(e,t,r){"use strict";const n=r(860).K7.pageViewEvent;r.d(t,["T",0,n])},782(e,t,r){"use strict";const n=r(860).K7.pageViewTiming;r.d(t,["T",0,n])},6344(e,t,r){"use strict";var n=r(2614);const i=r(860).K7.sessionReplay,s={[n.g.ERROR]:15e3,[n.g.FULL]:3e5,[n.g.OFF]:0}
6;r.d(t,["Qb",0,{API:"api",RESUME:"resume",SWITCH_TO_FULL:"switchToFull",INITIALIZE:"initialize",PRELOAD:"preload"},"TZ",0,i,"Vh",0,"errorDuringReplay","_s",0,{DomContentLoaded:0,Load:1,FullSnapshot:2,IncrementalSnapshot:3,Meta:4,Custom:5},"bc",0,{RESET:{message:"Session was reset",sm:"Reset"},IMPORT:{message:"Recorder failed to import",sm:"Import"},TOO_MANY:{message:"429: Too Many Requests",sm:"Too-Many"},TOO_BIG:{message:"Payload was too large",sm:"Too-Big"},CROSS_TAB:{message:"Session Entity was set to OFF on another tab",sm:"Cross-Tab"},ENTITLEMENTS:{message:"Session Replay is not allowed and will not be started",sm:"Entitlement"}},"yP",0,s])},5270(e,t,r){"use strict";r.d(t,{Aw:()=>a,SR:()=>s,rF:()=>o});var n=r(384),i=r(7767);function s(e){return!!(0,n.dV)().o.MO&&(0,i.V)(e)&&!0===e?.session_trace.enabled}function a(e){return!0===e?.session_replay.preload&&s(e)}function o(e,t){try{if("string"==typeof t?.type&&"password"===t.type.toLowerCase())return"*".repeat(e?.length||0);if(void 0!==t?.dataset?.nrUnmask||t?.classList?.contains("nr-unmask"))return e}catch(e){}return"string"==typeof e?e.replace(/[\S]/g,"*"):"*".repeat(e?.length||0)}},3738(e,t,r){"use strict";const n=r(860).K7.sessionTrace,i="-start",s="-end",a="fn"+i,o="fn"+s;r.d(t,["He",0,"bstResource","Kp",0,s,"Lc",0,o,"Rz",0,"pushState","TZ",0,n,"bD",0,"resource","bc",0,{CROSS_TAB:{message:"Session Entity was set to OFF on another tab"},ENTITLEMENTS:{message:"Session Trace is not allowed and will not be started"},RESET:{message:"Session was reset"},SESSION_CHANGED:{message:"Session identifier changed unexpectedly"}},"d3",0,i,"uP",0,a])},3962(e,t,r){"use strict";const n=r(860).K7.softNav;r.d(t,["O2",0,{INITIAL_PAGE_LOAD:"",ROUTE_CHANGE:1,UNSPECIFIED:2},"OV",0,"popstate","Qu",0,{INTERACTION:1,AJAX:2,CUSTOM_END:3,CUSTOM_TRACER:4},"TZ",0,n,"ih",0,{IP:"in progress",PF:"pending finish",FIN:"finished",CAN:"cancelled"},"pP",0,"initialPageLoad","tC",0,["click","keydown","submit"]])},4234(e,t,r){"use strict";r.d(t,{W:()=>i});var n=r(1687);class i{constructor(e,t){this.agentRef=e,this.ee=e?.ee,this.featureName=t,this.blocked=!1}deregisterDrain(){(0,n.x3)(this.agentRef,this.featureName)}}},7767(e,t,r){"use strict";var n=r(6154);r.d(t,["V",0,e=>n.RI&&!0===e?.privacy.cookies_enabled])},8362(e,t,r){"use strict";r.d(t,{d:()=>s});var n=r(9566),i=r(1741);class s extends i.W{agentIdentifier=(0,n.LA)(16)}},1741(e,t,r){"use strict";r.d(t,{W:()=>s});var n=r(944),i=r(4261);class s{#e(e,...t){if(this[e]!==s.prototype[e])return this[e](...t);(0,n.R)(35,e)}addPageAction(e,t){return this.#e(i.hG,e,t)}register(e){return this.#e(i.eY,e)}recordCustomEvent(e,t){return this.#e(i.fF,e,t)}setPageViewName(e,t){return this.#e(i.Fw,e,t)}setCustomAttribute(e,t,r){return this.#e(i.cD,e,t,r)}noticeError(e,t){return this.#e(i.o5,e,t)}setUserId(e,t=!1){return this.#e(i.Dl,e,t)}setApplicationVersion(e){return this.#e(i.nb,e)}setErrorHandler(e){return this.#e(i.bt,e)}addRelease(e,t){return this.#e(i.k6,e,t)}log(e,t){return this.#e("log",e,t)}start(){return this.#e("start")}finished(e){return this.#e(i.BL,e)}recordReplay(){return this.#e(i.CH)}pauseReplay(){return this.#e(i.Tb)}addToTrace(e){return this.#e(i.U2,e)}setCurrentRouteName(e){return this.#e(i.PA,e)}interaction(e){return this.#e(i.dT,e)}wrapLogger(e,t,r){return this.#e(i.Wb,e,t,r)}measure(e,t){return this.#e(i.V1,e,t)}consent(e){return this.#e(i.Pv,e)}}},4261(e,t,r){"use strict";r.d(t,["BL",0,"finished","CH",0,"recordReplay","Dl",0,"setUserId","Fw",0,"setPageViewName","PA",0,"setCurrentRouteName","Pv",0,"consent","Tb",0,"pauseReplay","U2",0,"addToTrace","V1",0,"measure","Wb",0,"wrapLogger","bt",0,"setErrorHandler","cD",0,"setCustomAttribute","dT",0,"interaction","eY",0,"register","fF",0,"recordCustomEvent","hG",0,"addPageAction","hw",0,"api-ixn-","k6",0,"addRelease","nb",0,"setApplicationVersion","o5",0,"noticeError"])},1738(e,t,r){"use strict";r.d(t,{U:()=>l,Y:()=>u});var n=r(3241),i=r(9908),s=r(1863),a=r(944),o=r(3969),c=r(8362),d=r(860);function u(e,t,r,s){const u=s||r;!u||u[e]&&u[e]!==c.d.prototype[e]||(u[e]=function(){(0,i.p)(o.xV,["API/"+e+"/called"],void 0,d.K7.metrics,r.ee),(0,n.W)({drained:!!r.runtime?.activatedFeatures,type:"data",name:"api",feature:"api-"+e,data:{}});try{return t.apply(this,arguments)}catch(e){(0,a.R)(23,e)}})}function l(e,t,r,n,a){const o=e.info;null===r?delete o.jsAttributes[t]:o.jsAttributes[t]=r,(a||null===r)&&(0,i.p)("api-"+n,[(0,s.t)(),t,r],void 0,"session",e.ee)}},8374(e,t,r){r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},860(e,t,r){"use strict";const n="events",i="jserrors",s="browser/blobs",a="browser/logs",o={ajax:"ajax",genericEvents:"generic_events",jserrors:i,logging:"logging",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",softNav:"soft_navigations"},c={[o.pageViewEvent]:1,[o.pageViewTiming]:2,[o.metrics]:3,[o.jserrors]:4,[o.softNav]:5,[o.ajax]:6,[o.sessionTrace]:7,[o.sessionReplay]:8,[o.logging]:9,[o.genericEvents]:10},d={[o.pageViewEvent]:"rum",[o.pageViewTiming]:n,[o.ajax]:n,[o.softNav]:n,[o.metrics]:i,[o.jserrors]:i,[o.sessionTrace]:s,[o.sessionReplay]:s,[o.logging]:a,[o.genericEvents]:"ins"};r.d(t,["$J",0,d,"K7",0,o,"P3",0,c,"XX",0,i,"Yy",0,a,"df",0,s,"hg",0,"connect"])}};const t={};function r(n){const i=t[n];if(void 0!==i)return i.exports;const s=t[n]={exports:{}};return e[n](s,s.exports,r),s.exports}r.m=e,r.d=(e,t)=>{if(Array.isArray(t))for(var n=0;n<t.length;){var i=t[n++],s=t[n++];r.o(e,i)?0===s&&n++:0===s?Object.defineProperty(e,i,{enumerable:!0,value:t[n++]}):Object.defineProperty(e,i,{enumerable:!0,get:s})}else for(var i in t)r.o(t,i)&&!r.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce((t,n)=>(r.f[n](e,t),t),[])),r.u=e=>({212:"nr-spa-compressor",238:"nr-spa-iframe-message-handler",249:"nr-spa-recorder",478:"nr-spa"}[e]+"-1.323.0.min.js"),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{const e={},t="NRBA-1.323.0.PROD:";r.l=(n,i,s,a)=>
6{if(e[n])return void e[n].push(i);let o,c;if(void 0!==s){const e=document.getElementsByTagName("script");for(var d=0;d<e.length;d++){const r=e[d];if(r.getAttribute("src")==n||r.getAttribute("data-webpack")==t+s){o=r;break}}}if(!o){c=!0;var u={478:"sha512-ORjtmy+nQMgxbu0os8+oTRa5sPzbinyuWSvpZrrstVLIaHofRRlfODdH+oUmkIgeQpM+vPf3vG/4RzvCsFVh1A==",249:"sha512-o7+K6xC0z3TqynjVxpd+jgiSgqy8rrPeRcUSqt5J0Rqg5Su5CycLMYfpwiM3WBCHiNDrG5aZoXJQ6HRc335XYQ==",212:"sha512-kRvBt1IYQDBnClTEWNaE8sDFqbXXM3Vdyf972Uf4MFbJxl7u3KmdO+jdB1H4achPEoT9YtNXHswaESey6sCH0A==",238:"sha512-U5EGmyYbFVR2UMNAuZJ7fTgVVtPa5b8RPMySDwXo7z3frRdkUJ2x1VAQTLQCeBab8VlGVGRV8FiSHIn/pwN72A=="};o=document.createElement("script"),o.charset="utf-8",r.nc&&o.setAttribute("nonce",r.nc),o.setAttribute("data-webpack",t+s),o.src=n,0!==o.src.indexOf(window.location.origin+"/")&&(o.crossOrigin="anonymous"),u[a]&&(o.integrity=u[a])}e[n]=[i];const l=(t,r)=>{o.onerror=o.onload=null,clearTimeout(f);const i=e[n];if(delete e[n],o.parentNode?.removeChild(o),i?.forEach(e=>e(r)),t)return t(r)},f=setTimeout(l.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=l.bind(null,o.onerror),o.onload=l.bind(null,o.onload),c&&document.head.appendChild(o)}})(),r.r=e=>{Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.p="https://js-agent.newrelic.com/",(()=>{const e={38:0,788:0};r.f.j=(t,n)=>{let i=r.o(e,t)?e[t]:void 0;if(0!==i)if(i)n.push(i[2]);else{const s=new Promise((r,n)=>i=e[t]=[r,n]);n.push(i[2]=s);const a=r.p+r.u(t),o=new Error,c=n=>{if(r.o(e,t)&&(i=e[t],0!==i&&(e[t]=void 0),i)){const e=n&&("load"===n.type?"missing":n.type),r=n&&n.target&&n.target.src;o.message="Loading chunk "+t+" failed: ("+e+": "+r+")",o.name="ChunkLoadError",o.type=e,o.request=r,i[1](o)}};r.l(a,c,"chunk-"+t,t)}};const t=(t,n)=>{let[i,s,a]=n;var o,c,d=0;if(i.some(t=>0!==e[t])){for(o in s)r.o(s,o)&&(r.m[o]=s[o]);if(a)a(r)}for(t&&t(n);d<i.length;d++)c=i[d],r.o(e,c)&&e[c]&&e[c][0](),e[c]=0},n=self["webpackChunk:NRBA-1.323.0.PROD"]=self["webpackChunk:NRBA-1.323.0.PROD"]||[];n.forEach(t.bind(null,0)),n.push=t.bind(null,n.push.bind(n))})(),(()=>{"use strict";r(8374);var e=r(8362),t=r(860);const n=Object.values(t.K7);var i=r(384),s=r(1741);var a=r(2555),o=r(3333),c=r(9300);const d=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var u=r(2614),l=r(944),f=r(8122);const h="[data-nr-mask]",p=e=>(0,f.a)(e,(()=>{const e={feature_flags:[],experimental:{register:!1,resources:!1,iframe_bridge:!1,iframe_domains:[]},mask_selector:"*",block_selector:"[data-nr-block]",mask_input_options:{color:!1,date:!1,"datetime-local":!1,email:!1,month:!1,number:!1,range:!1,search:!1,tel:!1,text:!1,time:!1,url:!1,week:!1,textarea:!1,select:!1,password:!0}};return{ajax:{deny_list:void 0,block_internal:!0,enabled:!0,autoStart:!0,capture_payloads:c.mo.NONE},api:{register:{get enabled(){return e.feature_flags.includes(o.$v.REGISTER)||e.experimental.register},set enabled(t){e.experimental.register=t},duplicate_data_to_container:!1,get allow_iframe_bridge(){return e.feature_flags.includes(o.$v.IFRAME_BRIDGE)||e.experimental.iframe_bridge},set allow_iframe_bridge(t){e.experimental.iframe_bridge=t},get iframe_domains(){return e.experimental.iframe_domains},set iframe_domains(t){Array.isArray(t)?e.experimental.iframe_domains=t:(0,l.R)(1,t)}}},browser_consent_mode:{enabled:!1},distributed_tracing:{enabled:void 0,exclude_newrelic_header:void 0,cors_use_newrelic_header:void 0,cors_use_tracecontext_headers:void 0,allowed_origins:void 0},get feature_flags(){return e.feature_flags},set feature_flags(t){e.feature_flags=t},generic_events:{enabled:!0,autoStart:!0},harvest:{interval:30},jserrors:{enabled:!0,autoStart:!0},logging:{enabled:!0,autoStart:!0},metrics:{enabled:!0,autoStart:!0},obfuscate:void 0,page_action:{enabled:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,autoStart:!0},performance:{capture_marks:!1,capture_measures:!1,capture_detail:!0,resources:{get enabled(){return e.feature_flags.includes(o.$v.RESOURCES)||e.experimental.resources},set enabled(t){e.experimental.resources=t},asset_types:[],first_party_domains:[],ignore_newrelic:!0}},privacy:{cookies_enabled:!0},proxy:{assets:void 0,beacon:void 0},session:{expiresMs:u.wk,inactiveMs:u.BB},session_replay:{autoStart:!0,enabled:!1,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inl
6ine_images:!1,fix_stylesheets:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){d(t)?e.mask_selector="".concat(t,",").concat(h):""===t||null===t?e.mask_selector=h:(0,l.R)(5,t)},get block_class(){return"nr-block"},get ignore_class(){return"nr-ignore"},get mask_text_class(){return"nr-mask"},get block_selector(){return e.block_selector},set block_selector(t){d(t)?e.block_selector+=",".concat(t):""!==t&&(0,l.R)(6,t)},get mask_input_options(){return e.mask_input_options},set mask_input_options(t){t&&"object"==typeof t?e.mask_input_options={...t,password:!0}:(0,l.R)(7,t)}},session_trace:{enabled:!0,autoStart:!0},soft_navigations:{enabled:!0,autoStart:!0},ssl:void 0,user_actions:{enabled:!0,elementAttributes:["id","className","tagName","type"]},web_sockets:{enabled:!1}}})());var g=r(6154),m=r(9324);let v=0;const y={buildEnv:"PROD",distMethod:"CDN",version:m.x,originTime:g.WN},b={consented:!1},E={activatedFeatures:void 0,appMetadata:{},configured:!1,get consented(){return this.session?.state?.consent||b.consented},set consented(e){b.consented=e},customTransaction:void 0,denyList:[],disabled:!1,drainRegistry:new Map,connector:void 0,harvester:void 0,v2Target:void 0,isolatedBacklog:!1,isRecording:!1,loaderType:void 0,maxBytes:3e4,obfuscator:void 0,onerror:void 0,ptid:void 0,releaseIds:{},session:void 0,timeKeeper:void 0,registeredEntities:[],jsAttributesMetadata:{bytes:0},get harvestCount(){return++v},listeningForIframeMessages:!1};var w=r(9232);var R=r(7836),T=r(3241);const A={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0};var S=r(9908),x=r(9752);function O(e,t={},n,o){let{init:c,info:d,loader_config:u,runtime:l={},exposed:h=!0}=t;if(!d){const e=(0,i.pV)();c=e.init,d=e.info,u=e.loader_config}var m;e.init=p(c||{}),e.loader_config=(m=u||{},(0,f.a)(m,A)),d.jsAttributes??={},g.bv&&(d.jsAttributes.isWorker=!0),e.info=(0,a.D)(d);const v=e.init;e.runtime??=(e=>{const t=(0,f.a)(e,E),r=Object.keys(y).reduce((e,t)=>(e[t]={value:y[t],writable:!1,configurable:!0,enumerable:!0},e),{});return Object.defineProperties(t,r)})(l),e.runtime.v2Target??={type:w.f.BA,instance:e.agentIdentifier,get id(){return e.runtime.appMetadata?.agents?.[0]?.entityGuid},get attributes(){return{"entity.guid":this.id,appId:e.info.applicationID}}},v.proxy.assets&&(e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e})(v.proxy.assets),e.runtime.configured||(Object.defineProperty(e,"beacons",{get:()=>[e.info.beacon,e.info.errorBeacon,e.init.proxy.assets,e.init.proxy.beacon].filter(Boolean)}),Object.defineProperty(e.runtime,"denyList",{get:()=>[...e.init.ajax.deny_list||[],...e.init.ajax.block_internal?e.beacons:[]]}),e.runtime.ptid=e.agentIdentifier,function(e){const t=(0,i.pV)();Object.getOwnPropertyNames(s.W.prototype).forEach(r=>{const n=s.W.prototype[r];if("function"!=typeof n||"constructor"===n)return;let i=t[r];e[r]&&!1!==e.exposed&&"micro-agent"!==e.runtime?.loaderType&&(t[r]=(...t)=>{const n=e[r](...t);return i?i(...t):n})})}(e),e.runtime.loaderType=n,e.ee=R.ee.get(e.agentIdentifier),e.exposed=h,(0,T.W)({drained:!!e.runtime.activatedFeatures,type:"lifecycle",name:"initialize",feature:void 0,data:e.config}),e.init.api.register.allow_iframe_bridge&&g.gm.addEventListener("message",t=>{"string"==typeof t.data?.type&&t.data.type.startsWith(x.Pl)&&(0,S.p)("iframe-message",[t],void 0,"IFRAME",e.ee)}),e.runtime.configured=!0)}var _=r(1863),k=r(4261),N=r(1738);var L=r(1687),M=r(4234),P=r(5289),I=r(5270),j=r(7767),C=r(6389),D=r(7699);const B=new WeakSet,H=new WeakMap;class W extends M.W{constructor(e,t){super(e,t),this.abortHandler=void 0,this.featAggregate=void 0,this.loadedSuccessfully=void 0,this.onAggregateImported=new Promise(e=>{this.loadedSuccessfully=e}),this.deferred=Promise.resolve(),!1===e.init[this.featureName].autoStart?this.deferred=new Promise((t,r)=>{this.ee.on("manual-start-all",(0,C.J)(()=>{(0,L.Ak)(e,this.featureName),t()}))}):(0,L.Ak)(e,t)}importAggregator(e,t,n={}){if(this.featAggregate)return;const i=async()=>{if(await this.deferred,this.#t(e),!(0,a.f)(e.info))return(0,l.R)(43),e.ee.abort(),void this.loadedSuccessfully(!1);try{await async function(e,t,n){if(H.has(e))return H.get(e);const i=(async()=>
6{if((0,j.V)(e.init))try{const{setupAgentSession:t}=await r.e(478).then(r.bind(r,8766));t(e)}catch(e){(0,l.R)(20,e),t.emit("internal-error",[e]),(0,S.p)(D.qh,[e],void 0,n,t)}if(e.init.api.register.allow_iframe_bridge)try{const{setupIframeMFEMessageListener:t}=await r.e(238).then(r.bind(r,6417));t(e)}catch(e){(0,l.R)(23,e)}const[{Connector:i},{Harvester:s}]=await Promise.all([r.e(478).then(r.bind(r,6589)),r.e(478).then(r.bind(r,5237))]);e.runtime.connector=new i(e),e.runtime.harvester=new s(e);const a=Object.values(e.features).filter(t=>e.runtime.drainRegistry.has(t.featureName));Promise.all(a.map(e=>e.onAggregateImported)).then(()=>e.runtime.harvester.startTimer())})();H.set(e,i),await i}(e,this.ee,this.featureName)}catch(e){return(0,l.R)(79,e),this.ee.abort(),void this.loadedSuccessfully(!1)}try{if(!this.#r(this.featureName,e.runtime.session,e.init))return this.abortHandler?.(),(0,L.Ze)(this.agentRef,this.featureName),void this.loadedSuccessfully(!1);const{Aggregate:r}=await t();this.featAggregate=new r(e,n),e.runtime.harvester.initializedAggregates.push(this.featAggregate),this.loadedSuccessfully(!0)}catch(e){(0,l.R)(34,e),this.abortHandler?.(),(0,L.Ze)(this.agentRef,this.featureName,!0),this.loadedSuccessfully(!1)}};g.RI?(0,P.GG)(()=>i(),!0):i()}#r(e,r,n){if(this.blocked)return!1;switch(e){case t.K7.sessionReplay:return(0,I.SR)(n)&&!!r;case t.K7.sessionTrace:return!!r;default:return!0}}#t(e){if(!B.has(e)&&(B.add(e),!(0,a.f)(e.info))){const t=(0,i.pV)();let r={...t.info?.jsAttributes};try{r={...r,...e.info?.jsAttributes}}catch(e){}O(e,{...t,info:{...t.info,jsAttributes:r},runtime:e.runtime},e.runtime.loaderType)}}}var U=r(6630);class K extends W{static featureName=U.T;constructor(e){var t;super(e,U.T),this.setupInspectionEvents(),t=e,(0,N.Y)(k.Fw,function(e,r){"string"==typeof e&&("/"!==e.charAt(0)&&(e="/"+e),t.runtime.customTransaction=(r||"http://custom.transaction")+e,(0,S.p)("api-"+k.Fw,[(0,_.t)()],void 0,void 0,t.ee))},t),this.importAggregator(e,()=>e.init.feature_flags.includes("rum_v2")?r.e(478).then(r.bind(r,908)):r.e(478).then(r.bind(r,7927)))}setupInspectionEvents(){const e=(e,t)=>{e&&(0,T.W)({timeStamp:e.timeStamp,loaded:"complete"===e.target.readyState,type:"window",name:t,data:e.target.location+""})};(0,P.sB)(t=>{e(t,"DOMContentLoaded")}),(0,P.GG)(t=>{e(t,"load")}),(0,P.Qr)(t=>{e(t,"navigate")}),this.ee.on(u.tS.UPDATE,(e,t)=>{(0,T.W)({type:"lifecycle",name:"session",data:t})})}}class F extends e.d{constructor(e){var t;(super(),g.gm)?(this.features={},(0,i.bQ)(this.agentIdentifier,this),this.desiredFeatures=new Set(e.features||[]),this.desiredFeatures.add(K),O(this,e,e.loaderType||"agent"),t=this,(0,N.Y)(k.cD,function(e,r,n=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof r)||null===r)return(0,N.U)(t,e,r,k.cD,n);(0,l.R)(40,typeof r)}else(0,l.R)(39,typeof e)},t),function(e){(0,N.Y)(k.Dl,function(t,r=!1){if("string"!=typeof t&&null!==t)return void(0,l.R)(41,typeof t);const n=e.info.jsAttributes["enduser.id"];r&&null!=n&&n!==t?(0,S.p)("api-setUserIdAndResetSession",[t],void 0,"session",e.ee):(0,N.U)(e,"enduser.id",t,k.Dl,!0)},e)}(this),function(e){(0,N.Y)(k.nb,function(t){if("string"==typeof t||null===t)return(0,N.U)(e,"application.version",t,k.nb,!1);(0,l.R)(42,typeof t)},e)}(this),function(e){(0,N.Y)("start",function(){e.ee.emit("manual-start-all")},e)}(this),function(e){(0,N.Y)(k.Pv,function(t=!0){if("boolean"==typeof t){if((0,S.p)("api-"+k.Pv,[t],void 0,"session",e.ee),e.runtime.consented=t,t){const t=e.features.page_view_event;t.onAggregateImported.then(e=>{const r=t.featAggregate;e&&!r.sentRum&&r.sendRum?.()})}}else(0,l.R)(65,typeof t)},e)}(this),this.run()):(0,l.R)(21)}get config(){return{info:this.info,init:this.init,loader_config:this.loader_config,runtime:this.runtime}}get api(){return this}run(){try{const e=function(e){const t={};return n.forEach(r=>{t[r]=!!e[r]?.enabled}),t}(this.init),r=[...this.desiredFeatures],i=this.init.feature_flags.includes("rum_v2");r.sort((e,r)=>t.P3[e.featureName]-t.P3[r.featureName]),r.forEach(r=>{if(!e[r.featureName]&&(i||r.featureName!==t.K7.pageViewEvent))return;const n=function(e){switch(e){case t.K7.ajax:return[t.K7.jserrors];case t.K7.sessionTrace:return[t.K7.ajax,t.K7.pageViewEvent];case t.K7.sessionReplay:return[t.K7.sessionTrace];case t.K7.pageViewTiming:return[t.K7.pageViewEvent];default:return[]}}(r.featureName).filter(e=>!(e in this.features));n.length>0&&(0,l.R)(36,{targetFeature:r.featureName,missingDependencies:n}),this.features[r.featureName]=new r(this)})}catch(e){(0,l.R)(22,e);for(const e in this.features)this.features[e].abortHandler?.();const t=(0,i.Zm)();delete t.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return t.ee.get(this.agentIdentifier).abort(),!1}}}var V=r(2843),z=r(782);class G extends W{static featureName=z.T;constructor(e){super(e,z.T),g.RI&&((0,V.u)(()=>(0,S.p)("docHidden",[(0,_.t)()],void 0,z.T,this.ee),!0),(0,V.G)(()=>(0,S.p)("winPagehide",[(0,_.t)()],void 0,z.T,this.ee)),this.importAggregator(e,()=>r.e(478).then(r.bind(r,9917))))}}var q=r(3969);class Y extends W{static featureName=q.TZ;constructor(e){super(e,q.TZ),this.importAggregator(e,()=>r.e(478).then(r.bind(r,6555)))}}var Z=r(6774),J=r(3878),X=r(3304);class Q{constructor(e,t,r,n,i){this.name="UncaughtError",this.message="string"==typeof e?e:(0,X.A)(e),this.sourceURL=t,this.line=r,this.column=n,this.__newrelic=i}}function ee(e){return ne(e)?e:new Q(void 0!==e?.message?e.message:e,e?.filename||e?.sourceURL,e?.lineno||e?.line,e?.colno||e?.col,e?.__newrelic,e?.cause)}function te(e){const t="Unhandled Promise Rejection: ";if(!e?.reason)return;if(ne(e.reason)){try{e.reason.message.startsWith(t)||(e.reason.message=t+e.reason.message)}catch(e){}return ee(e.reason)}const r=ee(e.reason);return(r.message||"").startsWith(t)||(r.message=t+r.message),r}function re(e){if(e.error instanceof SyntaxError&&!/:\d+$/.test(e.error.stack?.trim())){const t=new Q(e.message,e.filename,e.lineno,e.colno,e.error.__newrelic,e.cause);return t.name=SyntaxError.name,t}return ne(e.error)?e.error:ee(e)}function ne(e){return e instanceof Error&&!!e.stack}function ie(e,r,n,i,s=(0,_.t)()){"string"==typeof e&&(e=new Error(e)),(0,S.p)("err",[e,s,!1,r,n.runtime.isRecording,void 0,i],void 0,t.K7.jserrors,n.ee),(0,S.p)("uaErr",[],void 0,t.K7.genericEvents,n.ee)}var se=r(993),ae=r(3785);function oe(e,{customAttributes:t={},level:r=se.p_.INFO}={},n,i,s=(0,_.t)()){(0,ae.R)(n.ee,e,t,r,!1,i,s)}function ce(e,r,n,i,s=(0,_.t)()){(0,S.p)("api-"+k.hG,[s,e,r,i],void 0,t.K7.genericEvents,n.ee)}function de(e,r,n,i,s=(0,_.t)()){const{start:a,end:o,customAttributes:c}=r||{},d={customAttributes:c||{}};if("object"!=typeof d.customAttributes||"string"!=typeof e||0===e.length)return void(0,l.R)(57);const u=(e,t)=>
6null==e?t:"number"==typeof e?e:e instanceof PerformanceMark?e.startTime:Number.NaN;if(d.start=u(a,0),d.end=u(o,s),Number.isNaN(d.start)||Number.isNaN(d.end))(0,l.R)(57);else{if(d.duration=d.end-d.start,!(d.duration<0))return(0,S.p)("api-"+k.V1,[d,e,i],void 0,t.K7.genericEvents,n.ee),d;(0,l.R)(58)}}function ue(e,r={},n,i,s=(0,_.t)()){(0,S.p)("api-"+k.fF,[s,e,r,i],void 0,t.K7.genericEvents,n.ee)}var le=r(5718);const fe=(e,t)=>e?.nrMfeId===t.id&&(!e?.nrMfeObserved||e?.nrMfeObserved===t.instance),he=e=>{try{return g.gm.CSS.escape(e)}catch(t){return e}},pe=(e,t={})=>{const r=t.id,n=t.instance;if(!e||!r||!n)return!1;try{let r=1===e.nodeType?e:e.parentElement;for(;r?.tagName;){if(fe(r.dataset,t))return r.dataset.nrMfeObserved=n,!0;r=r.parentNode}}catch(e){}return!1},ge=(e,t)=>{const r=g.gm.document?.querySelectorAll('[data-nr-mfe-id="'.concat(he(e.id),'"]')),n=(Array.from(r)||[]).find(t=>fe(t.dataset,e));let i=!!n;i&&(n.dataset.nrMfeObserved??=e.instance);const s=new g.gm.MutationObserver(r=>{r.forEach(r=>{r.addedNodes.forEach(r=>{const n=1===r.nodeType?r:null;!i&&fe(n?.dataset,e)&&(s.disconnect(),s.observe(n,{childList:!0,subtree:!0}),i=!0,n.dataset.nrMfeObserved=e.instance),(e=>{try{return e?.textContent?.trim()||["img","video","canvas","svg"].includes(e?.nodeName?.toLowerCase())}catch(e){return!1}})(r)&&(i||pe(r,e))&&t(r,s)})})});return s.observe(n||g.gm.document,{childList:!0,subtree:!0}),s},me=(e,t,r)=>{try{const n=new g.gm.PerformanceObserver(e=>{e.getEntries().forEach(r)});return n.observe(t),e.push(n),n}catch(e){return null}};function ve(e,t){let r,n,i=!1;const s=e=>null==e?e:e-(t?.scriptStart||t?.registeredAt||0),a={fcp:{get value(){const e=s(r);return e>1e4?void 0:e},set value(e){i||(r=e)}},lcp:{get value(){if(void 0!==a.fcp.value)return s(n)},set value(e){i||(n=e)}},cls:{value:void 0},inp:{value:void 0},disconnect:()=>{}};if(!(e&&g.RI&&g.gm.MutationObserver&&g.gm.PerformanceObserver))return a;const o=[];setTimeout(()=>{r||a.disconnect()},1e4);const c=()=>{if(!i){if(null==r){const e=(0,_.t)();if(s(e)>1e4)return void a.disconnect();r=e}n??=(0,_.t)(),a.cls.value??=0}},d=ge(e,(e,t)=>{c(),t.disconnect()});o.push(d);let u=0,l=null;const f=new Set;try{l=new g.gm.ResizeObserver(e=>{i||e.forEach(e=>{try{const t=e.contentRect.width*e.contentRect.height;t>u&&(u=t,a.lcp.value=(0,_.t)()),l.unobserve(e.target)}catch(e){}})})}catch(e){}const h=ge(e,e=>{if(c(),l)try{const t=1===e.nodeType?e:e.parentElement;t&&!f.has(t)&&(f.add(t),"IMG"===t.tagName?t.complete?l.observe(t):t.addEventListener("load",()=>{l.observe(t)},{once:!0}):"VIDEO"===t.tagName?t.readyState>=2?l.observe(t):t.addEventListener("loadeddata",()=>{l.observe(t)},{once:!0}):l.observe(t))}catch(e){}});l&&o.push(l),o.push(h),me(o,{type:"layout-shift",buffered:!0},t=>{i||t.hadRecentInput||(t.sources||[]).some(r=>!!pe(r.node,e)&&(c(),a.cls.value+=t.value,!0))}),me(o,{type:"event",buffered:!0,durationThreshold:40},t=>{!i&&t.interactionId&&pe(t.target,e)&&(void 0===a.inp.value||t.duration>a.inp.value)&&(c(),a.inp.value=t.duration)});const p=["pointerdown","keydown"],m=()=>{p.forEach(e=>{g.gm.removeEventListener(e,v,{passive:!0})})};a.disconnect=()=>{i=!0,o.forEach(e=>{try{e?.disconnect()}catch(e){}}),m(),["visibilitychange","pagehide"].forEach(e=>{g.gm.removeEventListener(e,a.disconnect,{once:!0,passive:!0})})};const v=t=>{pe(t?.target,e)&&((()=>{try{h?.disconnect(),l?.disconnect()}catch(e){}})(),m())};p.forEach(e=>{g.gm.addEventListener(e,v,{passive:!0})}),["visibilitychange","pagehide"].forEach(e=>{g.gm.addEventListener(e,a.disconnect,{once:!0,passive:!0})});const y=g.gm.document?.querySelectorAll('[data-nr-mfe-id="'.concat(he(e.id),'"]'));return Array.from(y||[]).some(t=>fe(t.dataset,e))&&c(),a}var ye=r(9566),be=r(7560),Ee=r(9119);const we=["entry","scripts","all"],Re=["name","id","type"],Te=new Map([[ce,"addPageAction"],[oe,"log"],[de,"measure"],[ie,"noticeError"],[ue,"recordCustomEvent"]]),Ae={experimental:(0,C.J)(()=>(0,l.R)(54,"newrelic.register")),disabled:(0,C.J)(()=>(0,l.R)(55)),invalidTarget:(0,C.J)(e=>(0,l.R)(48,e)),deregistered:(0,C.J)(()=>(0,l.R)(68)),invalidTimingMethod:(0,C.J)(e=>(0,l.R)(80,e)),duplicateName:(0,C.J)(e=>(0,l.R)(81,e)),duplicateId:(0,C.J)(e=>(0,l.R)(82,e))};function Se(e){(0,N.Y)(k.eY,function(t){return xe(e,t)},e)}function xe(e,r){Ae.experimental(),r||={},r.instance=(0,ye.LA)(8),r.type=w.f.MFE,r.licenseKey||=e.info.licenseKey,r.blocked=!1,("object"!=typeof r.tags||null===r.tags||Array.isArray(r.tags))&&(r.tags={}),r.parent??={get id(){return e.runtime.appMetadata.agents?.[0].entityGuid},type:w.f.BA},r.manifest=(0,be.N)(r.manifest),void 0===r.timingMethod||we.includes(r.timingMethod)||(Ae.invali
6dTimingMethod(r.timingMethod),r.timingMethod=void 0);const n=(0,le.Qr)(r);r.manifest&&(0,le.xo)(n,r);const i=ve(r,n),s=(0,Ee.L)(""+location),a={};Object.prototype.hasOwnProperty.call(r,"attributes")||Object.defineProperty(r,"attributes",{get:()=>({...a,"source.id":r.id,"source.name":r.name,"source.type":r.type,"parent.type":r.parent?.type||w.f.BA,"parent.id":r.parent?.id})}),Object.entries(r.tags).forEach(([e,t])=>{Re.includes(e)||(a["source.".concat(e)]=t)});let o=()=>{};const c=e.runtime.registeredEntities,d=e=>{r.blocked=!0,o=e};function u(e){return"string"==typeof e&&!!e.trim()&&e.trim().length<501}e.init.api.register.enabled||d(Ae.disabled),u(r.id)&&u(r.name)||d(()=>Ae.invalidTarget(r)),c.forEach(e=>{try{const{name:t,id:n}=e.metadata.target;t===r.name&&n!==r.id&&Ae.duplicateName(r),n===r.id&&t!==r.name&&Ae.duplicateId(r)}catch(e){}});const f={addPageAction:(t,n={})=>m(ce,[t,{...a,...n},e],r),deregister:()=>{p(),d(Ae.deregistered)},log:(t,n={})=>m(oe,[t,{...n,customAttributes:{...a,...n.customAttributes||{}}},e],r),measure:(t,n={})=>m(de,[t,{...n,customAttributes:{...a,...n.customAttributes||{}}},e],r),noticeError:(t,n={})=>m(ie,[t,{...a,...n},e],r),recordCustomEvent:(t,n={})=>m(ue,[t,{...a,...n},e],r),setApplicationVersion:e=>g("application.version",e),setCustomAttribute:(e,t)=>g(e,t),setUserId:e=>g("enduser.id",e),metadata:{get customAttributes(){return a},target:r,timings:n,vitals:i,events:{latestTimestamp:void 0}}},h=()=>(r.blocked&&o(),r.blocked);function p(){if(n.reportedAt)return;n.reportedAt=(0,_.t)(),i.disconnect(),n.fcp=i.fcp,n.lcp=i.lcp,n.cls=i.cls,n.inp=i.inp;const e=n.fetchEnd-n.fetchStart,t=n.scriptEnd-n.scriptStart,r={assetUrl:n.asset,assetType:n.type,registerUrl:s,deregisterUrl:(0,Ee.L)(""+location),pageUrl:void 0,currentUrl:void 0,timeAlive:n.reportedAt-n.registeredAt,timeToBeRequested:n.fetchStart,timeToExecute:t,timeToFetch:e,timeToLoad:e+t,t
6imeToRegister:n.registeredAt,totalWeight:n.totalWeight,...void 0!==n.renderBlocking&&{renderBlocking:n.renderBlocking},...i.fcp.value>=0&&{"vitals.fcp.value":i.fcp.value},...i.lcp.value>=0&&{"vitals.lcp.value":i.lcp.value},...i.cls.value>=0&&{"vitals.cls.value":i.cls.value},...i.inp.value>=0&&{"vitals.inp.value":i.inp.value}};f.recordCustomEvent("MicroFrontEndTiming",r)}h()||(c.push(f),(0,V.G)(p));const g=(e,t)=>{h()||(a[e]=t)},m=(r,n,i)=>{if(h()&&r!==xe)return;const s=f.metadata.events.latestTimestamp??(0,_.t)();f.metadata.events.latestTimestamp=void 0;const a=Te.get(r)||"unknown";(0,S.p)(q.xV,["API/register/".concat(a,"/called")],void 0,t.K7.metrics,e.ee);try{return r(...n,i,s)}catch(e){(0,l.R)(50,e)}};return f}class Oe extends W{static featureName=Z.T;constructor(e){var t;super(e,Z.T),t=e,(0,N.Y)(k.o5,(e,r)=>ie(e,r,t),t),function(e){(0,N.Y)(k.bt,function(t){e.runtime.onerror=t},e)}(e),function(e){let t=0;(0,N.Y)(k.k6,function(e,r){++t>10||(this.runtime.releaseIds[e.slice(-200)]=(""+r).slice(-200))},e)}(e),Se(e);try{this.removeOnAbort=new AbortController}catch(e){}this.ee.on("internal-error",(t,r)=>{this.abortHandler&&(0,S.p)("ierr",[ee(t),(0,_.t)(),!0,{},e.runtime.isRecording,r],void 0,this.featureName,this.ee)}),g.gm.addEventListener("unhandledrejection",t=>{this.abortHandler&&(0,S.p)("err",[te(t),(0,_.t)(),!1,{unhandledPromiseRejection:1},e.runtime.isRecording],void 0,this.featureName,this.ee)},(0,J.jT)(!1,this.removeOnAbort?.signal)),g.gm.addEventListener("error",t=>{this.abortHandler&&(0,S.p)("err",[re(t),(0,_.t)(),!1,{},e.runtime.isRecording],void 0,this.featureName,this.ee)},(0,J.jT)(!1,this.removeOnAbort?.signal)),this.abortHandler=this.#n,this.importAggregator(e,()=>r.e(478).then(r.bind(r,9377)))}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}var _e=r(8990);let ke=1;function Ne(e){const t=typeof e;return!e||"object"!==t&&"function"!==t?-1:e===g.gm?0:(0,_e.I)(e,"nr@id",function(){return ke++})}function Le(e){if("string"==typeof e)return e.length;if("object"==typeof e){if("undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer&&e.byteLength)return e.byteLength;if("undefined"!=typeof Blob&&e instanceof Blob&&e.size)return e.size;if(!("undefined"!=typeof FormData&&e instanceof FormData))try{return(0,X.A)(e).length}catch(e){return}}}var Me=r(8139),Pe=r(3434),Ie=r(5732);const je={},Ce=["open","send","setRequestHeader"];function De(e,t){var r=e||R.ee;const n=function(e){return(e||R.ee).get("xhr")}(r);if(void 0===g.gm.XMLHttpRequest)return n;if(je[n.debugId]++)return n;je[n.debugId]=1,(0,Me.u)(r,t);var i=(0,Pe.YM)(n,void 0,t),s=g.gm.XMLHttpRequest,a=g.gm.MutationObserver,o=g.gm.Promise,c=g.gm.setInterval,d="readystatechange",u=["onload","onerror","onabort","onloadstart","onloadend","onprogress","ontimeout"],f=[],h=g.gm.XMLHttpRequest=function(e){const r=new s(e),a=n.context(r);a.targets=(0,Ie.$5)(t);try{n.emit("new-xhr",[r],a),r.addEventListener(d,(o=a,function(){var e=this;e.readyState>3&&!o.resolved&&(o.resolved=!0,n.emit("xhr-resolved",[],e)),i.inPlace(e,u,"fn-",E)}),(0,J.jT)(!1))}catch(e){(0,l.R)(15,e);try{n.emit("internal-error",[e])}catch(e){}}var o;return r};function p(e,t){i.inPlace(t,["onreadystatechange"],"fn-",E)}if(function(e,t){for(var r in e)t[r]=e[r]}(s,h),h.prototype=s.prototype,i.inPlace(h.prototype,Ce,"-xhr-",E),n.on("send-xhr-start",function(e,t){p(e,t),function(e){f.push(e),a&&(m?m.then(b):c?c(b):(v=-v,y.data=v))}(t)}),n.on("open-xhr-start",p),a){var m=o&&o.resolve();if(!c&&!o){var v=1,y=document.createTextNode(v);new a(b).observe(y,{characterData:!0})}}else r.on("fn-end",function(e){e[0]&&e[0].type===d||b()});function b(){for(var e=0;e<f.length;e++)p(0,f[e]);f.length&&(f=[])}function E(e,t){return t}return n}var Be="fetch-",He=Be+"body-",We=["arrayBuffer","blob","json","text","formData"],Ue=g.gm.Request,Ke=g.gm.Response,Fe="prototype";const Ve={};function ze(e,t){const r=function(e){return(e||R.ee).get("fetch")}(e);if(!(Ue&&Ke&&g.gm.fetch))return r;if(Ve[r.debugId]++)return r;function n(e,n,i){var s=e[n];"function"==typeof s&&(e[n]=function(){var e=[...arguments];const n={},a=(0,Ie.$5)(t);var o;r.emit(i+"before-start",[e],n),n[R.P]&&n[R.P].dt&&(o=n[R.P].dt);var c=s.apply(this,e);return r.emit(i+"start",[e,o],c),c.then(function(e){return r.emit(i+"end",[null,e,a],c),e},function(e){throw r.emit(i+"end",[e,void 0,a],c),e})})}
6return Ve[r.debugId]=1,We.forEach(e=>{n(Ue[Fe],e,He),n(Ke[Fe],e,He)}),n(g.gm,"fetch",Be),r.on(Be+"end",function(e,n,i){var s=this;if(s.targets=i||[t.runtime.v2Target],n){var a=n.headers.get("content-length");null!==a&&(s.rxSize=a),r.emit(Be+"done",[null,n],s)}else r.emit(Be+"done",[e],s)}),r}var Ge=r(7485);class qe{constructor(e){this.agentRef=e}generateTracePayload(e){const t=this.agentRef.loader_config;if(!this.shouldGenerateTrace(e)||!t)return null;var r=(t.accountID||"").toString()||null,n=(t.agentID||"").toString()||null,i=(t.trustKey||"").toString()||null;if(!r||!n)return null;var s,a=(0,ye.ZF)(),o=(0,ye.el)(),c=Date.now();this.agentRef.runtime?.timeKeeper?.ready&&(s=Math.floor(this.agentRef.runtime.timeKeeper.correctAbsoluteTimestamp(c)));var d={spanId:a,traceId:o,timestamp:c,timestampCorrected:s};return(e.sameOrigin||this.isAllowedOrigin(e)&&this.useTraceContextHeadersForCors())&&(d.traceContextParentHeader=this.generateTraceContextParentHeader(a,o),d.traceContextStateHeader=this.generateTraceContextStateHeader(a,s??c,r,n,i)),(e.sameOrigin&&!this.excludeNewrelicHeader()||!e.sameOrigin&&this.isAllowedOrigin(e)&&this.useNewrelicHeaderForCors())&&(d.newrelicHeader=this.generateTraceHeader(a,o,s??c,r,n,i)),d}generateTraceContextParentHeader(e,t){return"00-"+t+"-"+e+"-01"}generateTraceContextStateHeader(e,t,r,n,i){return i+"@nr=0-1-"+r+"-"+n+"-"+e+"----"+t}generateTraceHeader(e,t,r,n,i,s){if(!("function"==typeof g.gm?.btoa))return null;var a={v:[0,1],d:{ty:"Browser",ac:n,ap:i,id:e,tr:t,ti:r}};return s&&n!==s&&(a.d.tk=s),btoa((0,X.A)(a))}shouldGenerateTrace(e){return this.agentRef.init?.distributed_tracing?.enabled&&this.isAllowedOrigin(e)}isAllowedOrigin(e){var t=!1;const r=this.agentRef.init?.distributed_tracing;if(e.sameOrigin)t=!0;else if(r?.allowed_origins instanceof Array)for(var n=0;n<r.allowed_origins.length;n++){var i=(0,Ge.D)(r.allowed_origins[n]);if(e.hostname===i.hostname&&e.protocol===i.protocol&&e.port===i.port){t=!0;break}}return t}excludeNewrelicHeader(){var e=this.agentRef.init?.distributed_tracing;return!!e&&!!e.exclude_newrelic_header}useNewrelicHeaderForCors(){var e=this.agentRef.init?.distributed_tracing;return!!e&&!1!==e.cors_use_newrelic_header}useTraceContextHeadersForCors(){var e=this.agentRef.init?.distributed_tracing;return!!e&&!!e.cors_use_tracecontext_headers}}var Ye=r(7295);function Ze(e){return"string"==typeof e?e:e instanceof(0,i.dV)().o.REQ?e.url:g.gm?.URL&&e instanceof URL?e.href:void 0}function $e(e,t){var r=(0,Ge.D)(t),n=e.params||e;n.hostname=r.hostname,n.port=r.port,n.protocol=r.protocol,n.host=r.hostname+":"+r.port,n.pathname=r.pathname,e.parsedOrigin=r,e.sameOrigin=r.sameOrigin}var Je=["load","error","abort","timeout"],Xe=Je.length,Qe=(0,i.dV)().o.REQ,et=(0,i.dV)().o.XHR;const tt="X-NewRelic-App-Data",rt="internal-error";class nt extends W{static featureName=c.TZ;constructor(e){super(e,c.TZ),this.dt=new qe(e),this.handler=(e,t,r,n)=>(0,S.p)(e,t,r,n,this.ee);try{const e={xmlhttprequest:"xhr",fetch:"fetch",beacon:"beacon"};g.gm?.performance?.getEntriesByType("resource").forEach(r=>{if(r.initiatorType in e&&0!==r.responseStatus){const n={status:r.responseStatus},i={rxSize:r.transferSize,duration:Math.floor(r.duration),cbTime:0};$e(n,r.name),this.handler("xhr",[n,i,r.startTime,r.responseEnd,e[r.initiatorType]],void 0,t.K7.ajax)}})}catch(e){}ze(this.ee,e),De(this.ee,e),function(e,r,n,i){const s=[c.mo.ALL,c.mo.FAILURES].includes(e.init.ajax?.capture_payloads);function a(e){var t=this;t.totalCbs=0,t.called=0,t.cbTime=0,t.end=A,t.ended=!1,t.xhrGuids={},t.lastSize=null,t.loadCaptureCalled=!1,t.params=this.params||{},t.metrics=this.metrics||{},t.latestLongtaskEnd=0,e.addEventListener("load",function(r){O(t,e)},(0,J.jT)(!1)),g.lR||e.addEventListener("progress",function(e){t.lastSize=e.loaded},(0,J.jT)(!1))}function o(e){this.params={method:e[0]},$e(this,e[1]),this.metrics={}}function d(t,r){e.loader_config.xpid&&this.sameOrigin&&r.setRequestHeader("X-NewRelic-ID",e.loader_config.xpid);var n=i.generateTracePayload(this.parsedOrigin);if(n){var s=!1;n.newrelicHeader&&(r.setRequestHeader("newrelic",n.newrelicHeader),s=!0),n.traceContextParentHeader&&(r.setRequestHeader("traceparent",n.traceContextParentHeader),n.traceContextStateHeader&&r.setRequestHeader("tracestate",n.traceContextStateHeader),s=!0),s&&(this.dt=n)}}function u(e,t){s&&e.length>=2&&(this.requestHeaders??={},this.requestHeaders[e[0].toLowerCase()]=e[1])}function l(e,t){var n=this.metrics,i=e[0],s=this;if(n&&i){var a=Le(i);a&&(n.txSize=a)}this.startTime=(0,_.t)(),this.requestBody=i,this.listener=function(e){try{"abort"!==e.type||s.loadCaptureCalled||(s.params.aborted=!0),("load"
6!==e.type||s.called===s.totalCbs&&(s.onloadCalled||"function"!=typeof t.onload)&&"function"==typeof s.end)&&s.end(t)}catch(e){try{r.emit(rt,[e])}catch(e){}}};for(var o=0;o<Xe;o++)t.addEventListener(Je[o],this.listener,(0,J.jT)(!1))}function f(e,t,r){this.cbTime+=e,t?this.onloadCalled=!0:this.called+=1,this.called!==this.totalCbs||!this.onloadCalled&&"function"==typeof r.onload||"function"!=typeof this.end||this.end(r)}function h(e,t){var r=""+Ne(e)+!!t;this.xhrGuids&&!this.xhrGuids[r]&&(this.xhrGuids[r]=!0,this.totalCbs+=1)}function p(e,t){var r=""+Ne(e)+!!t;this.xhrGuids&&this.xhrGuids[r]&&(delete this.xhrGuids[r],this.totalCbs-=1)}function m(){this.endTime=(0,_.t)()}function v(e,t){t instanceof et&&"load"===e[0]&&r.emit("xhr-load-added",[e[1],e[2]],t)}function y(e,t){t instanceof et&&"load"===e[0]&&r.emit("xhr-load-removed",[e[1],e[2]],t)}function b(e,t,r){t instanceof et&&("onload"===r&&(this.onload=!0),("load"===(e[0]&&e[0].type)||this.onload)&&(this.xhrCbStart=(0,_.t)()))}function E(e,t){this.xhrCbStart&&r.emit("xhr-cb-time",[(0,_.t)()-this.xhrCbStart,this.onload,t],t)}function w(e){var t,r=e[1]||{};if("string"==typeof e[0]?0===(t=e[0]).length&&g.RI&&(t=""+g.gm.location.href):e[0]&&e[0].url?t=e[0].url:g.gm?.URL&&e[0]&&e[0]instanceof URL?t=e[0].href:"function"==typeof e[0].toString&&(t=e[0].toString()),"string"==typeof t&&0!==t.length){t&&(this.parsedOrigin=(0,Ge.D)(t),this.sameOrigin=this.parsedOrigin.sameOrigin);var n=i.generateTracePayload(this.parsedOrigin);if(n&&(n.newrelicHeader||n.traceContextParentHeader))if(e[0]&&e[0].headers)o(e[0].headers,n)&&(this.dt=n);else{var s={};for(var a in r)s[a]=r[a];s.headers=new Headers(r.headers||{}),o(s.headers,n)&&(this.dt=n),e.length>1?e[1]=s:e.push(s)}}function o(e,t){var r=!1;return t.newrelicHeader&&(e.set("newrelic",t.newrelicHeader),r=!0),t.traceContextParentHeader&&(e.set("traceparent",t.traceContextParentHeader),t.traceContextStateHeader&&e.set("tracestate",t.traceContextStateHeader),r=!0),r}}function R(e,t){this.params={},this.metrics={},this.startTime=(0,_.t)(),this.dt=t;let[r,n={}]=e;$e(this,Ze(r));const i=(""+(r&&r instanceof Qe&&r.method||n.method||"GET")).toUpperCase();this.params.method=i,this.txSize=Le(n.body||r?.body)||0;try{var a=n.headers||r?.headers;if(s&&a)if(this.requestHeaders??={},a instanceof Headers)a.forEach(function(e,t){this.requestHeaders[t.toLowerCase()]=e}.bind(this));else if("object"==typeof a)for(var o in a)this.requestHeaders[o.toLowerCase()]=a[o]}catch(e){}this.requestBody=n.body||r?.body}function T(e,t){if(this.endTime=(0,_.t)(),this.params||(this.params={}),(0,Ye.iW)(this.params))return;this.params.status=t?t.status:0;const n=()=>{const e=+this.rxSize,t=null==this.rxSize||isNaN(e)?void 0:e,r={txSize:this.txSize,rxSize:t,duration:this.endTime-this.startTime},n=[this.params,r,this.startTime,this.endTime,"fetch"];this.targets.forEach(e=>x(n,this,e))};t&&s?t.clone().text().then(e=>{this.responseBody=e,this.rxSize&&"0"!==this.rxSize&&0!==this.rxSize||void 0===e||0===this.params.status||(this.rxSize=Le(e)),t?.headers&&(this.responseHeaders={},t.headers.forEach(function(e,t){this.responseHeaders[t.toLowerCase()]=e}.bind(this)))}).catch(e=>{r.emit(rt,[e])}).finally(()=>{n()}):n()}function A(e){const t=this.params,n=this.metrics;if(this.ended)return;this.ended=!0;for(let t=0;t<Xe;t++)e.removeEventListener(Je[t],this.listener,!1);if(t.aborted)return;if((0,Ye.iW)(t))return;if(n.duration=this.endTime-this.startTime,this.loadCaptureCalled||4!==e.readyState?null==t.status&&(t.status=0):O(this,e),n.cbTime=this.cbTime,s){try{this.responseBody=e.responseText}catch(t){this.responseBody=e.response}if((!n.rxSize||0===n.rxSize)&&void 0!==this.responseBody&&0!==t.status){const e=Le(this.responseBody);void 0!==e&&(n.rxSize=e)}try{this.responseHeaders=function(e){const t={};return e?(e.split("\r\n").forEach(function(e){const r=e.indexOf(": ");if(r>0){const n=e.substring(0,r),i=e.substring(r+2);t[n.toLowerCase()]=i}}),t):t}(e.getAllResponseHeaders())}catch(e){r.emit(rt,[e])}}const i=[t,n,this.startTime,this.endTime,"xhr"];this.targets.forEach(e=>x(i,this,e))}function x(e,r,i){n("xhr",[...e,i],r,t.K7.ajax)}function O(e,n){e.params.status=n.status;var i=function(e,t){var r=e.responseType;return"json"===r&&null!==t?t:"arraybuffer"===r||"blob"===r||"json"===r?Le(e.response):"text"===r||""===r||void 0===r?Le(e.responseText):void 0}(n,e.lastSize);if(void 0!==i&&0!==n.status&&(e.metrics.rxSize=i),e.sameOrigin&&n.getAllResponseHeaders().indexOf(tt)>=0){var s=n.getResponseHeader(tt);s&&((0,S.p)("sm",["Ajax/CrossApplicationTracing/Header/Seen"],void 0,t.K7.metrics,r),e.params.cat=s.split(", ").pop())}e.loadCaptureCalled=!0}r.on("new-xhr",a),r.on("open-xhr-start",o),r.on("open-xhr-end",d),r.on("send-xhr-start",l),r.on("setRequestHeader-xhr-start",u),r.on("xhr-cb-time",f),r.on("xhr-load-added",h),r.on("xhr-load-removed",p),r.on("xhr-resolved",m),r.on("addEventListener-end",v),r.on("removeEventListener-end",y),r.on("fn-end",E),r.on("fetch-before-start",w),r.on("fetch-start",R),r.on("fn-start",b),r.on("fetch-done",T)}(e,this.ee,this.handler,this.dt),this.importAggregator(e,()=>r.e(478).then(r.bind(r,3845)))}}const it={},st=["pushState","replaceState"];function at(e,t){const r=function(e){return(e||R.ee).get("history")}(e);return!g.RI||it[r.debugId]++||(it[r.debugId]=1,(0,Pe.YM)(r,void 0,t).inPlace(window.history,st,"-")),r}var ot=r(3738);function ct(e){(0,N.Y)(k.BL,function(r=Date.now()){const n=r-g.WN;n<0&&(0,l.R)(62,r),(0,S.p)(q.XG,[k.BL,{time:n}],void 0,t.K7.metrics,e.ee),e.addToTrace({name:k.BL,start:r,origin:"nr"}),(0,S.p)("api-"+k.hG,[n,k.BL],void 0,t.K7.genericEvents,e.ee)},e)}const{He:dt,bD:ut,d3:lt,Kp:ft,TZ:ht,Lc:pt,uP:gt,Rz:mt}=ot;class vt extends W{static featureName=ht;constructor(e){var n;super(e,ht),n=e,(0,N.Y)(k.U2,function(e){if(!(e&&"object"==typeof e&&e.name&&e.start))return;const r={n:e.name,s:e.start-g.WN,e:(e.end||e.start)-g.WN,o:e.origin||"",t:"api"};r.s<0||r.e<0||r.e<r.s?(0,l.R)(61,{start:r.s,end:r.e}):(0,S.p)("bstApi",[r],void 0,t.K7.sessionTrace,n.ee)},n),ct(e);
6if(!(0,j.V)(e.init))return void this.deregisterDrain();const i=this.ee;let s;at(i,e),this.eventsEE=(0,Me.u)(i,e),this.eventsEE.on(gt,function(e,t){this.bstStart=(0,_.t)()}),this.eventsEE.on(pt,function(e,r){(0,S.p)("bst",[e[0],r,this.bstStart,(0,_.t)()],void 0,t.K7.sessionTrace,i)}),i.on(mt+lt,function(e){this.time=(0,_.t)(),this.startPath=location.pathname+location.hash}),i.on(mt+ft,function(e){(0,S.p)("bstHist",[location.pathname+location.hash,this.startPath,this.time],void 0,t.K7.sessionTrace,i)});try{s=new PerformanceObserver(e=>{const r=e.getEntries();(0,S.p)(dt,[r],void 0,t.K7.sessionTrace,i)}),s.observe({type:ut,buffered:!0})}catch(e){}this.importAggregator(e,()=>r.e(478).then(r.bind(r,6974)),{resourceObserver:s})}}var yt=r(733),bt=r(6344);class Et extends W{static featureName=bt.TZ;#i;recorder;constructor(e){var n;let i;super(e,bt.TZ),n=e,(0,N.Y)(k.CH,function(){(0,S.p)(k.CH,[],void 0,t.K7.sessionReplay,n.ee)},n),function(e){(0,N.Y)(k.Tb,function(){(0,S.p)(k.Tb,[],void 0,t.K7.sessionReplay,e.ee)},e)}(e);const s="".concat(u.Wt).concat((0,yt.Y)(e.info.licenseKey,e.info.applicationID));try{i=JSON.parse(localStorage.getItem(s))}catch(e){}(0,I.SR)(e.init)&&this.ee.on(k.CH,()=>this.#s()),this.#a(i)&&this.importRecorder().then(e=>{e.startRecording(bt.Qb.PRELOAD,i?.sessionReplayMode)}),this.abortHandler=this.#n,this.importAggregator(this.agentRef,()=>r.e(478).then(r.bind(r,6167)),this),this.ee.on("err",e=>{this.blocked||this.agentRef.runtime.isRecording&&(this.errorNoticed=!0,(0,S.p)(bt.Vh,[e],void 0,this.featureName,this.ee))})}#a(e){return e&&(e.sessionReplayMode===u.g.FULL||e.sessionReplayMode===u.g.ERROR)||(0,I.Aw)(this.agentRef.init)}importRecorder(){return this.recorder?Promise.resolve(this.recorder):(this.#i??=Promise.all([r.e(478),r.e(249)]).then(r.bind(r,4866)).then(({Recorder:e})=>(this.recorder=new e(this),this.recorder)).catch(e=>{throw this.ee.emit("internal-error",[e]),this.blocked=!0,e}),this.#i)}#s(){this.blocked||(this.featAggregate?this.featAggregate.mode!==u.g.FULL&&this.featAggregate.initializeRecording(u.g.FULL,!0,bt.Qb.API):this.importRecorder().then(()=>{this.recorder.startRecording(bt.Qb.API,u.g.FULL)}))}#n(){this.recorder?.stopRecording()}}var wt=r(3962);class Rt extends W{static featureName=wt.TZ;constructor(e){if(super(e,wt.TZ),function(e){const r=e.ee.get("tracer");function n(){}(0,N.Y)(k.dT,function(e){return(new n).get("object"==typeof e?e:{})},e);const i=n.prototype={createTracer:function(n,i){var s={},a=this,o="function"==typeof i;return(0,S.p)(q.xV,["API/createTracer/called"],void 0,t.K7.metrics,e.ee),function(){if(r.emit((o?"":"no-")+"fn-start",[(0,_.t)(),a,o],s),o)try{return i.apply(this,arguments)}catch(e){const t="string"==typeof e?new Error(e):e;throw r.emit("fn-err",[arguments,this,t],s),t}finally{r.emit("fn-end",[(0,_.t)()],s)}}}};["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach(r=>{N.Y.apply(this,[r,function(){return(0,S.p)(k.hw+r,[performance.now(),...arguments],this,t.K7.softNav,e.ee),this},e,i])}),(0,N.Y)(k.PA,function(){(0,S.p)(k.hw+"routeName",[performance.now(),...arguments],void 0,t.K7.softNav,e.ee)},e)}(e),!g.RI||!(0,i.dV)().o.MO)return;const n=at(this.ee,e);try{this.removeOnAbort=new AbortController}catch(e){}wt.tC.forEach(e=>{(0,J.sp)(e,e=>{c(e)},!0,this.removeOnAbort?.signal)}
6);const s=()=>(0,S.p)("newURL",[(0,_.t)(),""+window.location],void 0,this.featureName,this.ee);n.on("pushState-end",s),n.on("replaceState-end",s),(0,J.sp)(wt.OV,e=>{c(e),(0,S.p)("newURL",[e.timeStamp,""+window.location],void 0,this.featureName,this.ee)},!0,this.removeOnAbort?.signal);let a=!1;const o=new((0,i.dV)().o.MO)((e,t)=>{a||(a=!0,requestAnimationFrame(()=>{(0,S.p)("newDom",[(0,_.t)()],void 0,this.featureName,this.ee),a=!1}))}),c=(0,C.s)(e=>{"loading"!==document.readyState&&((0,S.p)("newUIEvent",[e],void 0,this.featureName,this.ee),o.observe(document.body,{attributes:!0,childList:!0,subtree:!0,characterData:!0}))},100,{leading:!0});this.abortHandler=function(){this.removeOnAbort?.abort(),o.disconnect(),this.abortHandler=void 0},this.importAggregator(e,()=>r.e(478).then(r.bind(r,4393)),{domObserver:o})}}var Tt=r(981);const At={},St=new Set;function xt(e){return"string"==typeof e?{type:"string",size:(new TextEncoder).encode(e).length}:e instanceof ArrayBuffer?{type:"ArrayBuffer",size:e.byteLength}:e instanceof Blob?{type:"Blob",size:e.size}:e instanceof DataView?{type:"DataView",size:e.byteLength}:ArrayBuffer.isView(e)?{type:"TypedArray",size:e.byteLength}:{type:"unknown",size:0}}class Ot{constructor(e,t){this.timestamp=(0,_.t)(),this.currentUrl=(0,Ee.L)(window.location.href),this.socketId=(0,ye.LA)(8),this.requestedUrl=(0,Ee.L)(e),this.requestedProtocols=Array.isArray(t)?t.join(","):t||"",this.openedAt=void 0,this.protocol=void 0,this.extensions=void 0,this.binaryType=void 0,this.messageOrigin=void 0,this.messageCount=0,this.messageBytes=0,this.messageBytesMin=0,this.messageBytesMax=0,this.messageTypes=void 0,this.sendCount=0,this.sendBytes=0,this.sendBytesMin=0,this.sendBytesMax=0,this.sendTypes=void 0,this.closedAt=void 0,this.closeCode=void 0,this.closeReason="unknown",this.closeWasClean=void 0,this.connectedDuration=0,this.hasErrors=void 0}}class _t extends W{static featureName=o.TZ;constructor(e){super(e,o.TZ);const n=e.init.feature_flags.includes("websockets")||e.init.web_sockets?.enabled,s=!e.init.feature_flags.includes("no_spv"),a=[e.init.page_action.enabled,e.init.performance.capture_marks,e.init.performance.capture_measures,e.init.performance.resources.enabled,e.init.user_actions.enabled,n,s];var c;let d;if(c=e,(0,N.Y)(k.hG,(e,t)=>ce(e,t,c),c),function(e){(0,N.Y)(k.fF,(t,r)=>ue(t,r,e),e)}(e),ct(e),Se(e),function(e){(0,N.Y)(k.V1,(t,r)=>de(t,r,e),e)}(e),this.removeOnAbort=new AbortController,this.abortHandler=()=>{this.removeOnAbort.abort(),this.abortHandler=void 0},n){const u=function(e,t){if(!(0,i.dV)().o.WS)return e;const r=e.get("websockets");if(At[r.debugId]++)return r;At[r.debugId]=1,(0,V.G)(()=>{const e=(0,_.t)();St.forEach(t=>{t.nrData.closedAt=e,t.nrData.closeCode=1001,t.nrData.closeReason="Page navigating away",t.nrData.closeWasClean=!1,t.nrData.openedAt&&(t.nrData.connectedDuration=e-t.nrData.openedAt),r.emit("ws",[t.nrData,t.targets],t)})});
6class n extends WebSocket{static name=Tt.R.WS;static toString(){return"function WebSocket() { [native code] }"}toString(){return"[object WebSocket]"}get[Symbol.toStringTag](){return n.name}#o(e){(e.__newrelic??={}).socketId=this.nrData.socketId,this.nrData.hasErrors??=!0}constructor(...e){super(...e),this.nrData=new Ot(e[0],e[1]),this.targets=(0,Ie.$5)(t),this.addEventListener("open",()=>{this.nrData.openedAt=(0,_.t)(),["protocol","extensions","binaryType"].forEach(e=>{this.nrData[e]=this[e]}),St.add(this)}),this.addEventListener("message",e=>{const{type:t,size:r}=xt(e.data);this.nrData.messageOrigin??=(0,Ee.L)(e.origin),this.nrData.messageCount++,this.nrData.messageBytes+=r,this.nrData.messageBytesMin=Math.min(this.nrData.messageBytesMin||1/0,r),this.nrData.messageBytesMax=Math.max(this.nrData.messageBytesMax,r),(this.nrData.messageTypes??"").includes(t)||(this.nrData.messageTypes=this.nrData.messageTypes?"".concat(this.nrData.messageTypes,",").concat(t):t)}),this.addEventListener("close",e=>{this.nrData.closedAt=(0,_.t)(),this.nrData.closeCode=e.code,e.reason&&(this.nrData.closeReason=e.reason),this.nrData.closeWasClean=e.wasClean,this.nrData.connectedDuration=this.nrData.closedAt-this.nrData.openedAt,St.delete(this),r.emit("ws",[this.nrData,this.targets],this)})}addEventListener(e,t,...r){const n=this,i="function"==typeof t?function(...e){try{return t.apply(this,e)}catch(e){throw n.#o(e),e}}:t?.handleEvent?{handleEvent:function(...e){try{return t.handleEvent.apply(t,e)}catch(e){throw n.#o(e),e}}}:t;return super.addEventListener(e,i,...r)}send(e){if(this.readyState===WebSocket.OPEN){const{type:t,size:r}=xt(e);this.nrData.sendCount++,this.nrData.sendBytes+=r,this.nrData.sendBytesMin=Math.min(this.nrData.sendBytesMin||1/0,r),this.nrData.sendBytesMax=Math.max(this.nrData.sendBytesMax,r),(this.nrData.sendTypes??"").includes(t)||(this.nrData.sendTypes=this.nrData.sendTypes?"".concat(this.nrData.sendTypes,",").concat(t):t)}try{return super.send(e)}catch(e){throw this.#o(e),e}}close(...e){try{super.close(...e)}catch(e){throw this.#o(e),e}}}return g.gm.WebSocket=n,r}(this.ee,e);u.on("ws",(e,t)=>{(0,S.p)("ws-complete",[e,t],void 0,this.featureName,this.ee)})}if(s){if("function"==typeof g.gm.ReportingObserver){const l=new g.gm.ReportingObserver(e=>{e.forEach(e=>{(0,S.p)("spv",[kt(e),(0,_.t)()],void 0,t.K7.genericEvents,this.ee)}),l.disconnect()},{types:["csp-violation"],buffered:!0});l.observe()}g.gm.addEventListener("securitypolicyviolation",e=>{(0,S.p)("spv",[kt(e),e.timeStamp],void 0,t.K7.genericEvents,this.ee)},(0,J.jT)(!1,this.removeOnAbort.signal))}if(g.RI){if(ze(this.ee,e),De(this.ee,e),d=at(this.ee,e),e.init.user_actions.enabled){function f(t){const r=(0,Ge.D)(t);return e.beacons.includes(r.hostname+":"+r.port)}function h(){d.emit("navChange")}o.Zp.forEach(e=>(0,J.sp)(e,e=>(0,S.p)("ua",[e],void 0,this.featureName,this.ee),!0)),o.qN.forEac
6h(e=>{const t=(0,C.s)(e=>{(0,S.p)("ua",[e],void 0,this.featureName,this.ee)},500,{leading:!0});(0,J.sp)(e,t)}),g.gm.addEventListener("error",()=>{(0,S.p)("uaErr",[],void 0,t.K7.genericEvents,this.ee)},(0,J.jT)(!1,this.removeOnAbort.signal)),this.ee.on("open-xhr-start",(e,r)=>{f(e[1])||r.addEventListener("readystatechange",()=>{2===r.readyState&&(0,S.p)("uaXhr",[],void 0,t.K7.genericEvents,this.ee)},(0,J.jT)(void 0,this.removeOnAbort.signal))}),this.ee.on("fetch-start",e=>{e.length>=1&&!f(Ze(e[0]))&&(0,S.p)("uaXhr",[],void 0,t.K7.genericEvents,this.ee)}),d.on("pushState-end",h),d.on("replaceState-end",h),window.addEventListener("hashchange",h,(0,J.jT)(!0,this.removeOnAbort.signal)),window.addEventListener("popstate",h,(0,J.jT)(!0,this.removeOnAbort.signal))}if(e.init.performance.resources.enabled&&g.gm.PerformanceObserver?.supportedEntryTypes.includes("resource")){new PerformanceObserver(e=>{e.getEntries().forEach(e=>{(0,S.p)("browserPerformance.resource",[e],void 0,this.featureName,this.ee)})}).observe({type:"resource",buffered:!0})}}a.some(e=>e)?this.importAggregator(e,()=>r.e(478).then(r.bind(r,8019))):this.deregisterDrain()}}function kt(e){const t=e.body??e;return{blockedUrl:t.blockedURL??e.blockedURI,documentUrl:t.documentURL??e.documentURI,effectiveDirective:t.effectiveDirective,originalPolicy:t.originalPolicy,sourceFile:t.sourceFile,statusCode:t.statusCode,lineNumber:t.lineNumber,columnNumber:t.columnNumber,disposition:"reporting"===t.disposition?"report":t.disposition,sample:t.sample,referrer:t.referrer}}var Nt=r(2646);const Lt=new Map;function Mt(e,t,r,n,i=!0,s){if("object"!=typeof t||!t||"string"!=typeof r||!r||"function"!=typeof t[r])return(0,l.R)(29);const a=function(e){return(e||R.ee).get("logger")}(e),o=(0,Pe.YM)(a,void 0,s),c=new Nt.y(R.P);c.level=n.level,c.customAttributes=n.customAttributes,c.autoCaptured=i;const d=t[r]?.[Pe.Jt]||t[r];return Lt.set(d,c),o.inPlace(t,[r],"wrap-logger-",()=>Lt.get(d),void 0,!0),a}var Pt=r(1910);class It extends W{static featureName=se.TZ;constructor(e){var t;super(e,se.TZ),t=e,(0,N.Y)("log",(e,r)=>oe(e,r,t),t),function(e){(0,N.Y)(k.Wb,(t,r,{customAttributes:n={},level:i=se.p_.INFO}={})=>{Mt(e.ee,t,r,{customAttributes:n,level:i},!1,e)},e)}(e),Se(e);const n=this.ee;["log","error","warn","info","debug","trace"].forEach(t=>{(0,Pt.i)(g.gm.console[t]),Mt(n,g.gm.console,t,{level:"log"===t?"info":t},void 0,e)}),this.ee.on("wrap-logger-end",function([t],r,i,s=[e.runtime.v2Target]){const{level:a,customAttributes:o,autoCaptured:c}=this;s.forEach(e=>{(0,ae.R)(n,t,o,a,c,e)})}),this.importAggregator(e,()=>r.e(478).then(r.bind(r,5288)))}}new F({features:[nt,K,G,vt,Et,Y,Oe,_t,It,Rt],loaderType:"spa"})})()})();</script>
6 7 <meta http-equiv="x-dns-prefetch-control" content="on"/> 8 <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=5, viewport-fit=cover" /> 9 10
10<script type='text/javascript'> 11 window.bt = {"outage":false,"firebase":{"url":"https:\/\/boomtown.app\/","apn":"com.boomtownroi.android.consumer","ibi":"com.boomtown.BoomTown-Consumer-iOS","isi":1478958795,"ofl":"https:\/\/www.thewilliamsgroupal.com\/","afl":null,"ifl":null,"vid":"uqlSiLQU8sYDn3QnPspMiemTtDlzbOhXMW2ozMyIx7M="},"config":{"disclaimer":"By submitting my phone number and checking the box above, I agree to calls, texts, and emails from The Williams Group at Keller Williams Realty regarding my account, inquiry, and services provided to me. Message & data rates may apply. Message frequency may vary. I also agree to The Williams Group at Keller Williams Realty's <a href=\"\/privacy\/\" target=\"_blank\">Privacy Policy<\/a> and The Williams Group at Keller Williams Realty's <a href=\"\/terms\/\" target=\"_blank\">Terms of Use<\/a>. Reply STOP to unsubscribe or HELP for help.","disclaimerLogin":"By submitting my phone number above, I agree to calls, texts, and emails from The Williams Group at Keller Williams Realty regarding my account, inquiry, and services provided to me. Message & data rates may apply. Message frequency may vary. I also agree to The Williams Group at Keller Williams Realty's <a href=\"\/privacy\/\" target=\"_blank\">Privacy Policy<\/a> and The Williams Group at Keller Williams Realty's <a href=\"\/terms\/\" target=\"_blank\">Terms of Use<\/a>. Reply STOP to unsubscribe or HELP for help.","disclaimerFinance":"By submitting my phone number and checking the box above, I agree to calls, texts, and emails from The Williams Group at Keller Williams Realty regarding my account, inquiry, and services provided to me. Message & data rates may apply. Message frequency may vary. I also agree to The Williams Group at Keller Williams Realty's <a href=\"\/privacy\/\" target=\"_blank\">Privacy Policy<\/a> and The Williams Group at Keller Williams Realty's <a href=\"\/terms\/\" target=\"_blank\">Terms of Use<\/a>. Reply STOP to unsubscribe or HELP for help.","soldSidebarDisclaimer":false,"sellerCalculator":true,"sellerProperties":true,"interestRateUS":6.3,"interestRateCA":4.64,"csrf":{"accountUpdate":"05fd643003"},"twilio10DLC":true,"twilio10DLCAdwords":false,"gmapsEmbed":"AIzaSyA0yD1YTgIPu57hbSwlvsrjWHFw6tBXBu8","contactFormMigration":true,"enableAppBanner":true,"ajaxUrl":null,"apiUrl":"https:\/\/flagshipapi.boomtownroi.com","newsstand":null,"baseUrl":null,"staticHost":"bt-boomstatic.global.ssl.fastly.net","build":"1787663817","dataCookieName":"BoomTownData","authCookieName":"BoomTownAuth","tempCookieName":null,"conversionCookieName":"ConversionType","conversionQueryStringName":"regformcomplete","registrationQueryStringName":"regformdisplay","blTrackingOrigUrlQSName":"blt_url","blTrackingReferrerQSName":"blt_ref","defaultLat":33.253452,"defaultLng":-87.56541,"defaultZoom":11,"deviceInfo":{"deviceInfo":"","platformVersion":""},"pageCount":10,"defaultView":"gallery","defaultSearchUrl":"results-gallery","maxviews":1,"maxviewsParam":"mdv","maxphotoParam":"mpv","nonce":null,"suggestApiUrl":"https:\/\/suggest.boomtownroi.com","templateUrl":"https:\/\/www.thewilliamsgroupal.com\/wp-content\/themes\/wp-base-theme\/templates\/","baseThemeUrl":"https:\/\/www.thewilliamsgroupal.com\/wp-content\/themes\/wp-base-theme","themeUrl":"https:\/\/www.thewilliamsgroupal.com\/wp-content\/themes\/wp-base-theme","browserTitle":"West Alabama & Birmingham Real Estate | The Williams Group","token":"0u1F2a2U2E002f010k1F3t3M361b1.0l1c1X1u2a1d2c1b151H3P3Q1Z2Q0j2w1E","viewCookieName":"PropCount","searchCookieName":"LastSearch","boardAlias":"tuscaloosa","boardHtml":{"AllDataPagesDisclaimer":"\u00a9 [YEAR] West Alabama Multiple Listing Service, Inc. All rights reserved. \r\n\r\nIDX information is provided exclusively for consumers' personal, non-commercial use and may not be used for any purpose other than to identify prospective properties consumers may be interested in purchasing. Information is deemed reliable but is not guaranteed accurate by the MLS or [TENANTNAME]. \r\n\r\nData last updated: [UPDATEDTIMESTAMP].<\/br><\/br>","ContentBottomHtml":"","DetailsBottomHtml":"","DetailsRemarksHtml":"","DetailsTopHtml":"","DisclaimerPageHtml":"","eAlertFooter":"","eAlertHtml":"","eAlertHtmlMore":"","FitScreenFooterHtml":"","FullDetailsDisclaimer":"Listing provided by [AGENTNAME] of [OFFICENAME]: [OFFICEPHONE].","HomePageAndMapDisclaimer":"","HomePageDisclaimer":"","MobileDisclaimer":"","MobileFullViewCompliance":"","MobileResultCompliance":"","MultiMLSThumbcardDisclaimer":"\u00a9 [YEAR] West Alabama Multiple Listing Service, Inc.","PreviewDisclaimer":"","PreviewHtml":"","ResultsDisclaimer":"","ResultsHtml":"","ScriptBottom":"","SoldFullDetailsDisclaimer":"","SoldThumbCardDisclaimer":"","TermsDisclaimer":"","ThumbCardDisclaimer":"","ThumbnailDisclaimer":"","ThumbnailLogo":"","TopFullDetailsDisclaimer":"","TopPopBottomHtml":"","TopPopHtml":""},"boards":{"128":{"_ID":128,"BoardAlias":"birmingham","BoardName":"Greater Alabama MLS","Description":"Birmingham Association of Realtors","LastUpdated":"2026-10-04T16:30:50.84","RestrictMLS":false,"LastUpdatedAgo":73},"316":{"_ID":316,"BoardAlias":"tuscaloosa","BoardName":"West Alabama MLS","Description":"","LastUpdated":"2026-10-04T16:50:34.053","RestrictMLS":false,"LastUpdatedAgo":53}},"boardHTMLs":{"128":{"AllDataPagesDisclaimer":"<\/br><\/br><img style=\"border: 0pt none; float:left; padding-right:10px; padding-bottom:0px\" src=\"https:\/\/static.boomtownroi.com\/content\/photos\/birmingham\/idx\/idx-large.gif\" alt=\"Greater Alabama MLS (Birmingham Association of Realtors) logo\"\/>\r\n\r\n\u00a9 [YEAR] Greater Alabama MLS. IDX information is provided exclusively for consumers\u2019 personal, non-commercial use and may not be used for any purpose other than to identify prospective properties consumers may be interested in purchasing. IDX content is not guaranteed accurate by the MLS or [TENANTNAME]. \r\n\r\nData last updated: [UPDATEDTIMESTAMP].<\/br><\/br>","ContentBottomHtml":"","DetailsBottomHtml":"","DetailsRemarksHtml":"","DetailsTopHtml":"","DisclaimerPageHtml":"","eAlertFooter":"","eAlertHtml":"","eAlertHtmlMore":"","FitScreenFooterHtml":"\u00a9 [YEAR] Birmingham Area Multiple Listing Service, Inc. IDX information is provided exclusively for consumers\u2019 personal, non-commercial use and may not be used for any purpose other than to identify prospective properties consumers may be interested in purchasing. IDX content is not guaranteed accurate by the MLS or [TENANTNAME]. Data last updated: [UPDATEDTIMESTAMP].","FullDetailsDisclaimer":"Listing provided by [OFFICENAME]: [OFFICEPHONE].","HomePageAndMapDisclaimer":"Courtesy of [OFFICENAME]","HomePageDisclaimer":"","MobileDisclaimer":"\u00a9 [YEAR] Birmingham Area Multiple Listing Service, Inc. IDX information is provided exclusively for consumers\u2019 personal, non-commercial use and may not be used for any purpose other than to identify prospective properties consumers may be interested in purchasing. IDX content is not guaranteed accurate by the MLS or [TENANTNAME]. Data last updated: [UPDATEDTIMESTAMP]. ","MobileFullViewCompliance":" <div align=\"center\" style=\"background: #fff; color: #000; margin-bottom: 8px;\">Listing provided courtesy of [OFFICENAME].<br\/><br\/>\u00a9 [YEAR] Birmingham Area Multiple Listing Service, Inc.\r\n<br\/><br\/><\/div>","MobileResultCompliance":" ","MultiMLSThumbcardDisclaimer":"\u00a9 [YEAR] Greater Alabama MLS.","PreviewDisclaimer":"","PreviewHtml":"","ResultsDisclaimer":"Courtesy of [OFFICENAME]","ResultsHtml":"Listing provided courtesy of [OFFICENAME].","ScriptBottom":"","SoldFullDetailsDisclaimer":"","SoldThumbCardDisclaimer":"","TermsDisclaimer":"","ThumbCardDisclaimer":"<img src=\"https:\/\/static.boomtownroi.com\/content\/photos\/birmingham\/idx\/idx-small.gif\" alt=\"Greater Alabama MLS (Birmingham Association of Realtors) logo\"\/>","ThumbnailDisclaimer":"","ThumbnailLogo":"","TopFullDetailsDisclaimer":"<img style=\"border: 0pt none; float:left; padding-right:10px; padding-bottom:0px\" src=\"https:\/\/static.boomtownroi.com\/content\/photos\/birmingham\/idx\/idx-large.gif\" alt=\"Greater Alabama MLS (Birmingham Association of Realtors) logo\"\/>\r\n\r\nListing provided courtesy of [OFFICENAME].<\/br>
11\r\n\r\n \u00a9 [YEAR] Greater Alabama MLS.<\/br><\/br><\/br><\/br>","TopPopBottomHtml":"","TopPopHtml":""},"316":{"AllDataPagesDisclaimer":"\u00a9 [YEAR] West Alabama Multiple Listing Service, Inc. All rights reserved. \r\n\r\nIDX information is provided exclusively for consumers' personal, non-commercial use and may not be used for any purpose other than to identify prospective properties consumers may be interested in purchasing. Information is deemed reliable but is not guaranteed accurate by the MLS or [TENANTNAME]. \r\n\r\nData last updated: [UPDATEDTIMESTAMP].<\/br><\/br>","ContentBottomHtml":"","DetailsBottomHtml":"","DetailsRemarksHtml":"","DetailsTopHtml":"","DisclaimerPageHtml":"","eAlertFooter":"","eAlertHtml":"","eAlertHtmlMore":"","FitScreenFooterHtml":"","FullDetailsDisclaimer":"Listing provided by [AGENTNAME] of [OFFICENAME]: [OFFICEPHONE].","HomePageAndMapDisclaimer":"","HomePageDisclaimer":"","MobileDisclaimer":"","MobileFullViewCompliance":"","MobileResultCompliance":"","MultiMLSThumbcardDisclaimer":"\u00a9 [YEAR] West Alabama Multiple Listing Service, Inc.","PreviewDisclaimer":"","PreviewHtml":"","ResultsDisclaimer":"","ResultsHtml":"","ScriptBottom":"","SoldFullDetailsDisclaimer":"","SoldThumbCardDisclaimer":"","TermsDisclaimer":"","ThumbCardDisclaimer":"","ThumbnailDisclaimer":"","ThumbnailLogo":"","TopFullDetailsDisclaimer":"","TopPopBottomHtml":"","TopPopHtml":""}},"overrideTenantRegFormSettings":true,"cookieDomain":".thewilliamsgroupal.com","boardUpdated":"10-04-2026","boardUpdatedTimestamp":"2026-10-04T16:50:34.053","debug":false,"photoSqueeze":3,"powerfulFeaturesDeprecated":false,"publicAssetUrl":"https:\/\/bt-wpstatic.freetls.fastly.net","isMobile":false,"showUserMenu":true,"allowSoldData":true,"showQualifyingQuestions":true,"showStartAnOffer":true,"hideSchoolsInfoLink":false,"btsource":null,"fbAuthenticatorUrl":"https:\/\/wp.prod.boomtownroi.com\/fb-authenticator\/","isMobileApp":false,"mobileAppPlatform":null,"mobileAppVersion":false,"videoBackgroundEnabled":true,"homepageLayout":false,"hasVideoBackground":"","teaserTemplate":"rectangular-image","disableLocationAppMessage":false,"useListMapResultsSync":true,"useUnifiedNearbySearch":true,"enableTextPreferences":true,"enableExternalAppLinks":true,"isLandingPage":false,"passwordReset":true,"homeval":{"calculator":{"brokerFee":"6.0","concessions":"","closing":"0.6","taxes":""}},"homepageHeroPlugin":[],"cdnHost":"bt-wpstatic.freetls.fastly.net","inner_logo_uri":"https:\/\/bt-wpstatic.freetls.fastly.net\/wp-content\/blogs.dir\/14320\/files\/2026\/04\/TWG-ip-logo-0b2bed4875165deb939ed21e5b4dd35477b8e902.png","colorScheme":{"hex":"#00b4f5","darker5":"#00a1dc","darker10":"#008fc2","rgb":"0, 180, 245"},"isCrawler":false},"compliance":{"SuperAggroMode":false,"HideLocalPics":false,"HideYearBuilt":false,"RestrictMLS":false,"MaxListingResults":0,"HideDaysOld":false,"MLSContentOnly":false,"ReplaceUnderContract":"Under Contract","ShowFeatureTextOnCard":null},"tenant":{"id":14833,"street":"4412 HWY 69 N","legalName":"The Williams Group at Keller Williams Realty","city":"Northport","state":"al","zip":"35473","phone":"(205) 292-2108","email":"[email protected]","formNumber":2,"facebookPixelID":null,"allowFBLogin":true,"showAgentDDL":false,"lenderChecked":true,"conversionID":"18132602924","signupLabel":"yo3MCKnu36UcEKygpsZD","clSqueeze":true,"hideLender":true,"isCanadian":false,"doubleOptIn":false,"IsMultiBoard":true,"brandLevelSearchNoResultsText":null,"brandLevelSearchNoResultsPage":null,"IsLiteCustomer":0,"testGroup":2},"network":{"id":0},"plugin":{"contactFormDisclaimer":{"text":"By submitting my phone number and checking the box above, I agree to calls, texts, and emails from The Williams Group at Keller Williams Realty regarding my account, inquiry, and services provided to me. Message & data rates may apply. Message frequency may vary. I also agree to The Williams Group at Keller Williams Realty's <a href=\"\/privacy\/\" target=\"_blank\">Privacy Policy<\/a> and The Williams Group at Keller Williams Realty's <a href=\"\/terms\/\" target=\"_blank\">Terms of Use<\/a>. Reply STOP to unsubscribe or HELP for help."}},"visitorActions":{"LoginViewed":61,"FacebookClicked":62,"FacebookRegistrationViewed":63,"FacebookRegistrationIncomplete":64,"FacebookRegistrationComplete":65,"FacebookSuccess":66,"GoogleClicked":67,"GoogleRegistrationViewed":68,"GoogleRegistrationIncomplete":69,"GoogleRegistrationComplete":70,"GoogleSuccess":71},"visitorDetails":{"api":{"token":"0u1F2a2U2E002f010k1F3t3M361b1.0l1c1X1u2a1d2c1b151H3P3Q1Z2Q0j2w1E","apiUrl":null,"down":false,"record":false,"last_error":null,"error_code":null,"timeout":10,"cache":{"enabled":true},"baseUrl":"http:\/\/flagshipapi.boomtownroi.com","apiKey":"5dd11cc6-4960-461c-9781-049be88fe73f","secret":"4b036960-4104-42ba-aac7-8c862818a7cf"},"_ID":6429472391,"IsRegistered":false,"TenantID":14833,"FirstName":"Guest","LastName":"Visitor","FavoriteCount":0,"ActiveSearchCount":0},"visitDetails":{"_ID":7587701947,"Source":"DIRECT","StartDate":"2026-10-04T17:43:39.227","WebVisitorID":6429472391,"Url":"https:\/\/www.thewilliamsgroupal.com\/blog\/","UserAgent":"Mozilla\/5.0 AppleWebKit\/537.36 (KHTML, like Gecko; compatible; PageSourceSearchBot\/1.0; +https:\/\/pagesourcesearch.com\/bot) Chrome\/128.0.0.0 Safari\/537.36","UrlReferrer":"","IPAddress":"181.215.65.77","VisitApplicationType":1},"agentDetails":null,"template_variations":[],"globalVars":{"ImgDir":"\/wp-content\/themes\/wp-base-theme\/assets\/media\/build\/","footerBelow":""}}; 12 window.bt.config.dataCookieExpDate = new Date(1791153819000); 13 </script>
13 14 <title>West Alabama, Greater Birmingham Area Real Estate | The Williams Group at Keller Williams Realty</title> 15<meta name='robots' content='max-image-preview:large' /> 16 17
17<script>
vendor: 414 bytes, lines 17-22
17 18 (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ 19 (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), 20 m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) 21 })(window,document,'script','https://www.google-analytics.com/analytics.js','ga'); 22 ga('create', '
22UA-22147283-3
vendor: 49 bytes, lines 22-23
22', 'auto', {allowLinker: true}); 23
23ga('require', 'GTM-M8C4ZPS'); 24 </script>
24
24<script type="text/javascript"> 25 26 (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function() 27 {(i[r].q=i[r].q||[]).push(arguments)} 28 ,i[r].l=1*new Date();a=s.createElement(o), 29 m=s.getElementsByTagName(o)[0]; 30 a.async=1; 31 a.src=g; 32 m.parentNode.insertBefore(a,m) 33 })(window,document,'script','https://www.google-analytics.com/analytics.js','ga'); 34 35 window.bt.trackers = [['','google code']]; 36 37 ga('create','google code', 'thewilliamsgroupal.com', {'name': 'clientAccount'}); 38ga('clientAccount.require', 'displayfeatures'); 39ga('clientAccount.send', 'pageview', {"&uid":6429472391,"dimension4":"unregistered","dimension11":"6429472391"}); 40 41 42 (function() { 43 var ga = document.createElement('script'), 44 s = document.getElementsByTagName('script')[0]; 45 ga.type = 'text/javascript'; 46 ga.async = true; 47 ga.src = 'https://stats.g.doubleclick.net/dc.js'; 48 s.parentNode.insertBefore(ga, s); 49 })(); 50 51 </script>
51 52<!-- START: Google Analytics 4 -->
vendor: 81 bytes, lines 52-53
52 53<script type='text/javascript' src="https://www.googletagmanager.com/gtag/js?id=
53G-SK2113WW5W
vendor: 18 bytes, line 53
53" async></script>
54<script type='text/javascript'> 55var btGlobalAnalyticsParams = {"tenantId":14833,"visitorId":6429472391,"visitId":7587701947,"isRegistered":0,"subdomainAgentId":0,"homepageLayout":"Hawkeye","teaserTemplate":"rectangular-image","videoBackground":"","postId":1829,"source":""}; 56 57window.dataLayer = window.dataLayer || []; 58function gtag(){dataLayer.push(arguments);} 59gtag('js', new Date()); 60gtag('config', 'G-SK2113WW5W', window.btGlobalAnalyticsParams); // BoomTown Tracking 61gtag('config', 'AW-1050553015', window.btGlobalAnalyticsParams); // AdWords Tracking 62 63 gtag('config', 'G-Y1DZ48QG93', window.btGlobalAnalyticsParams); // Client Tracking 64 65</script>
65 66<!-- END: Google Analytics 4 --> 67 68<!-- START: Google Analytics 4 Event Scripts -->
69<script type='text/javascript' src='/wp-content/plugins/bt-google-analytics/resources/javascript/btga4.js?v=4'></script>
vendor: 1 bytes, line 69
69
70<script type='text/javascript'> 71 window.addEventListener('DOMContentLoaded', function () { 72 window.BoomTownGA4 = new BoomTownGA4(false); 73 }); 74</script>
74 75<!-- END: Google Analytics 4 Event Scripts --> 76<link rel='dns-prefetch' href='//www.thewilliamsgroupal.com' /> 77<link rel='dns-prefetch' href='//s.w.org' /> 78<link rel='dns-prefetch' href='//bt-wpstatic.freetls.fastly.net' /> 79<link rel='dns-prefetch' href='//flagshipapi.boomtownroi.com' /> 80<link rel='dns-prefetch' href='//suggest.boomtownroi.com' /> 81<link href='https://bt-wpstatic.freetls.fastly.net/wp-content/themes/wp-base-theme/assets/js/build/details.7a22ef63.min.js' as='script' rel='prefetch' /> 82<link href='https://bt-wpstatic.freetls.fastly.net/wp-content/themes/wp-base-theme/assets/js/build/results-gallery.0fe208be.min.js' as='script' rel='prefetch' /> 83<!-- Webmaster Tools Code --> 84<meta name="msvalidate.01" content="D8D04684151FD367E65EE086C044BB13" /><meta name="verify-v1" content="HfrlOxI0tXOyQYVa5mn06aV6HRUw316FVZdvJN7S7Dg=" /><meta name="verify-v1" content="4B9FVONeQL4QgOvNN80STUWkDyrAlYC0719uBNXVK6Q=" /><meta name="y_key" content="caa407bf3d1005c3" /><link rel='stylesheet' id='jquery.bxslider-css' href='https://bt-wpstatic.freetls.fastly.net/wp-content/plugins/testimonials-widget/includes/libraries/bxslider-4/dist/jquery.bxslider.css' type='text/css' media='all' /> 85<link rel='stylesheet' id='Axl_Testimonials_Widget-css' href='https://bt-wpstatic.freetls.fastly.net/wp-content/plugins/testimonials-widget/assets/css/testimonials-widget.css' type='text/css' media='all' /> 86<link rel='stylesheet' id='wp-block-library-css' href='https://bt-wpstatic.freetls.fastly.net/wp-includes/css/dist/block-library/style.min.css' type='text/css' media='all' /> 87<link rel='stylesheet' id='bt-testimonials-widget-frontend-styles-css' href='https://www.thewilliamsgroupal.com/wp-content/build/plugins/bt-testimonials.frontend.e0fb56d7.min.css' type='text/css' media='all' /> 88<link rel='stylesheet' id='bt-block-editor-forms-frontend-styles-css' href='https://www.thewilliamsgroupal.com/wp-content/build/plugins/bt-block-editor-forms.frontend.85a385f0.min.css' type='text/css' media='all' /> 89<link rel='stylesheet' id='bt_pt-styles-css' href='https://bt-wpstatic.freetls.fastly.net/wp-content/themes/wp-base-theme/assets/css/build/base-theme.36ad7330.min.css' type='text/css' media='all' /> 90
90<script type='text/javascript' src='https://bt-wpstatic.freetls.fastly.net/wp-content/build/manifest.7ecd6199.min.js' id='bt-core-manifest-js'></script>
vendor: 1 bytes, line 90
90
91<script type='text/javascript' src='https://bt-wpstatic.freetls.fastly.net/wp-includes/js/dist/vendor/regenerator-runtime.min.js' id='regenerator-runtime-js'></script>
vendor: 1 bytes, line 91
91
92<script type='text/javascript' src='https://bt-wpstatic.freetls.fastly.net/wp-includes/js/dist/vendor/wp-polyfill.min.js' id='wp-polyfill-js'></script>
vendor: 1 bytes, line 92
92
93<script type='text/javascript' src='https://bt-wpstatic.freetls.fastly.net/wp-content/themes/wp-base-theme/assets/js/lib/jquery/jquery-3-6-0-migrate-3.4.0.min.js' id='jquery-js'></script>
vendor: 1 bytes, line 93
93
94<script type='text/javascript' src='https://bt-wpstatic.freetls.fastly.net/wp-content/build/vendor.bundle.63bd000a.js' id='bt-core-vendors-js'></script>
vendor: 1 bytes, line 94
94
95<script type='text/javascript' src='https://bt-wpstatic.freetls.fastly.net/wp-includes/js/dist/escape-html.min.js' id='wp-escape-html-js'></script>
vendor: 1 bytes, line 95
95
96<script type='text/javascript' src='https://bt-wpstatic.freetls.fastly.net/wp-includes/js/dist/element.min.js' id='wp-element-js'></script>
vendor: 1 bytes, line 96
96
97<script type='text/javascript' src='https://bt-wpstatic.freetls.fastly.net/wp-content/build/core/core-components.1e6d6953.min.js' id='bt-core-components-js'></script>
vendor: 1 bytes, line 97
97
98<script type='text/javascript' src='https://www.thewilliamsgroupal.com/wp-content/build/plugins/bt-block-editor.frontend.f684738f.min.js' id='bt-block-editor-frontend-script-js'></script>
98 99 100<!-- Meta Description --> 101<meta name="description" content="The Williams Group at Keller Williams Realty: Northport, al Real Estate information and listings in Northport, al. Find all Northport, al homes for sale, Northport, al foreclosures, Northport, al condos for sale, and Northport, al land for sale - Every Listing from Every Company" /> 102<!-- Meta Keywords --> 103<meta name="keywords" content="Real Estate, West Alabama, Greater Birmingham Area Real Estate, West Alabama, Greater Birmingham Area Homes for Sale" /> 104<!-- Robots Instructions --> 105 106<!-- Open Graph --> 107<meta property="og:site_name" content="West Alabama & Birmingham Real Estate | The Williams Group" /> 108<meta property="og:title" content="West Alabama, Greater Birmingham Area Real Estate | The Williams Group at Keller Williams Realty" /> 109<meta property="og:url" content="https://www.thewilliamsgroupal.com/blog/" /> 110<meta property="og:description" content="The Williams Group at Keller Williams Realty: Northport, al Real Estate information and listings in Northport, al. Find all Northport, al homes for sale, Northport, al foreclosures, Northport, al condos for sale, and Northport, al land for sale - Every Listing from Every Company" /> 111<meta property="og:image" content="https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/10/what-500k-buys-birmingham-suburbs-b363a1c2894fed42d117248b2b198a3fb6a62305-920x690.jpg" /> 112 113<!-- Schema.org Tags --> 114<meta itemprop="image" content="https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/10/what-500k-buys-birmingham-suburbs-b363a1c2894fed42d117248b2b198a3fb6a62305-920x690.jpg"> 115<meta itemprop="name" content="West Alabama & Birmingham Real Estate | The Williams Group"> 116<meta itemprop="description" content="The Williams Group at Keller Williams Realty: Northport, al Real Estate information and listings in Northport, al. Find all Northport, al homes for sale, Northport, al foreclosures, Northport, al condos for sale, and Northport, al land for sale - Every Listing from Every Company"> 117<link rel="canonical" href="https://www.thewilliamsgroupal.com/blog/" /> 118<!-- Plugin: Fair Housing Notice -->
119<script type='text/javascript'> 120 window.bt.config.fairHousingTemplate = false; 121</script>
121 122 123 124<!-- NR Plguin -->
125<script type='text/javascript'> 126 if (window.newrelic) { 127 newrelic.setErrorHandler(function(err) { 128 try { 129 if (err instanceof Error) { 130 if ( 131 !err.name || 132 !err.message || 133 err.name.toLowerCase().trim() === '' || 134 err.message.toLowerCase().trim() === '' || 135 err.name.toLowerCase().includes('invocation') || 136 err.message.toLowerCase().includes('invocation') || 137 err.message.toLowerCase().includes('chrome-extension') || 138 err.message.toLowerCase().includes('cross-origin frame') || 139 err.message.toLowerCase().includes('g.readyState') || 140 err.message.toLowerCase().includes('ceCurrentVideo.currentTime') 141 ) { 142 console.log(err); 143 console.log("Error Object Skip Match. Throwing Out."); 144 return true; 145 } 146 } else { 147 console.log('Not A Real Error Object'); 148 return true; 149 } 150 } catch (e) { 151 console.log('Could Not Parse Error.'); 152 } 153 return false; 154 }); 155 } 156</script>
156 157<!-- END NR Plugin --> 158 159
159<script type='text/javascript'> 160 window.btSellerEnabled=true; 161 </script>
161<style>.bt-disclaimer-terms{ display:none !important; }</style> <link rel="apple-touch-icon" sizes="57x57" href="https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/cropped-The-Williams-Group-Logo-favicon-9bb6d01d94fbc51e01843e3e84c6c8188db987a7-150x150.png"> 162 <link rel="apple-touch-icon" sizes="60x60" href="https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/cropped-The-Williams-Group-Logo-favicon-9bb6d01d94fbc51e01843e3e84c6c8188db987a7-150x150.png"> 163 <link rel="apple-touch-icon" sizes="72x72" href="https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/cropped-The-Williams-Group-Logo-favicon-9bb6d01d94fbc51e01843e3e84c6c8188db987a7-150x150.png"> 164 <link rel="apple-touch-icon" sizes="76x76" href="https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/cropped-The-Williams-Group-Logo-favicon-9bb6d01d94fbc51e01843e3e84c6c8188db987a7-150x150.png"> 165 <link rel="apple-touch-icon" sizes="114x114" href="https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/cropped-The-Williams-Group-Logo-favicon-9bb6d01d94fbc51e01843e3e84c6c8188db987a7-150x150.png"> 166 <link rel="apple-touch-icon" sizes="120x120" href="https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/cropped-The-Williams-Group-Logo-favicon-9bb6d01d94fbc51e01843e3e84c6c8188db987a7-150x150.png"> 167 <link rel="apple-touch-icon" sizes="144x144" href="https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/cropped-The-Williams-Group-Logo-favicon-9bb6d01d94fbc51e01843e3e84c6c8188db987a7-150x150.png"> 168 <link rel="apple-touch-icon" sizes="152x152" href="https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/cropped-The-Williams-Group-Logo-favicon-9bb6d01d94fbc51e01843e3e84c6c8188db987a7-180x180.png"> 169 <link rel="apple-touch-icon" sizes="180x180" href="https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/cropped-The-Williams-Group-Logo-favicon-9bb6d01d94fbc51e01843e3e84c6c8188db987a7-180x180.png"> 170 <link rel="icon" type="image/png" href="https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/cropped-The-Williams-Group-Logo-favicon-9bb6d01d94fbc51e01843e3e84c6c8188db987a7-32x32.png" sizes="32x32"> 171 <link rel="icon" type="image/png" href="https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/cropped-The-Williams-Group-Logo-favicon-9bb6d01d94fbc51e01843e3e84c6c8188db987a7-192x192.png" sizes="192x192"> 172 <link rel="icon" type="image/png" href="https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/cropped-The-Williams-Group-Logo-favicon-9bb6d01d94fbc51e01843e3e84c6c8188db987a7-150x150.png" sizes="96x96"> 173 <link rel="icon" type="image/png" href="https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/cropped-The-Williams-Group-Logo-favicon-9bb6d01d94fbc51e01843e3e84c6c8188db987a7-32x32.png" sizes="16x16"> 174 <link rel="shortcut icon" href="https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/cropped-The-Williams-Group-Logo-favicon-9bb6d01d94fbc51e01843e3e84c6c8188db987a7.png" /> 175 176<style id="bt-theme-customizations"> 177:root { 178 --bt--style--color: #00b4f5; 179 --bt--style--color--lightest: #f5fcff; 180 --bt--style--color--light: #bdedff; 181 --bt--style--color--dark: #008fc2; 182 --bt--style--color--darkest: #007ca9; 183 --bt--style--color--rgb: 0, 180, 245; 184 185 --bt--style--color--blue: #1581e2; 186 --bt--style--color--blue--lightest: #f8fbfe; 187 --bt--style--color--blue--light: #c4e0fa; 188 --bt--style--color--blue--dark: #1166b3; 189 --bt--style--color--blue--darkest: #0e599c;
190 --bt--style--color--blue--rgb: 21, 129, 226; 191 192 --bt--style--color--override: #00b4f5; 193 --bt--style--color--override--lightest: #f5fcff; 194 --bt--style--color--override--light: #bdedff; 195 --bt--style--color--override--dark: #008fc2; 196 --bt--style--color--override--darkest: #007ca9; 197 --bt--style--color--override--rgb: 0, 180, 245; 198} 199 200 @media (max-width: 479px) and (max-aspect-ratio: 13/9), 201 (max-width: 823px) and (min-aspect-ratio: 13/9) { 202 :root { 203 --bt--style--color: #417be8; 204 --bt--style--color--lightest: #386cd5; 205 --bt--style--color--light: #386cd5; 206 --bt--style--color--dark: #386cd5; 207 --bt--style--color--darkest: #386cd5; 208 --bt--style--color--rgb: 65, 123, 232; 209 210 --bt--style--color--blue: #417be8; 211 --bt--style--color--blue--lightest: #386cd5; 212 --bt--style--color--blue--light: #386cd5; 213 --bt--style--color--blue--dark: #386cd5; 214 --bt--style--color--blue--darkest: #386cd5; 215 --bt--style--color--blue--rgb: 65, 123, 232; 216 } 217 } 218 219 220 221 .customizer-background { 222 background-image: url('https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/Mountain-Brook-fdecf501bd4cdb3521c841cbd815ffff413b2492-scaled-600x320.jpg'); 223 } 224 .customizer-background-homeval { 225 background-image: url('https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/Mountain-Brook-fdecf501bd4cdb3521c841cbd815ffff413b2492-scaled-1440x520.jpg'); 226 } 227 @media (min-width: 768px) { 228 .customizer-background { 229 background-image: url('https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/Mountain-Brook-fdecf501bd4cdb3521c841cbd815ffff413b2492-scaled-1024x520.jpg'); 230 } 231 } 232 @media (min-width: 960px) { 233 .customizer-background { 234 background-image: url('https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/Mountain-Brook-fdecf501bd4cdb3521c841cbd815ffff413b2492-scaled-1440x520.jpg'); 235 } 236 } 237 @media (min-width: 1220px) { 238 .customizer-background { 239 background-image: url('https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/Mountain-Brook-fdecf501bd4cdb3521c841cbd815ffff413b2492-scaled.jpg'); 240 } 241 } 242 243 #hero-background { 244 background-image: url('https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/Mountain-Brook-fdecf501bd4cdb3521c841cbd815ffff413b2492-scaled-600x320.jpg'); 245 } 246 @media (min-width: 768px) { 247 #hero-background { 248 background-image: url('https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/Mountain-Brook-fdecf501bd4cdb3521c841cbd815ffff413b2492-scaled-1024x520.jpg'); 249 } 250 } 251 @media (min-width: 960px) { 252 #hero-background { 253 background-image: url('https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/Mountain-Brook-fdecf501bd4cdb3521c841cbd815ffff413b2492-scaled-1440x520.jpg'); 254 } 255 } 256 @media (min-width: 1220px) { 257 #hero-background { 258 background-image: url('https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/Mountain-Brook-fdecf501bd4cdb3521c841cbd815ffff413b2492-scaled.jpg'); 259 } 260 } 261 </style> 262 <style id="bt-agent-subdomain-customizer"> 263 </style> 264<link rel="icon" href="https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/cropped-The-Williams-Group-Logo-favicon-9bb6d01d94fbc51e01843e3e84c6c8188db987a7-32x32.png" sizes="32x32" /> 265<link rel="icon" href="https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/cropped-The-Williams-Group-Logo-favicon-9bb6d01d94fbc51e01843e3e84c6c8188db987a7-192x192.png" sizes="192x192" /> 266<link rel="apple-touch-icon" href="https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/cropped-The-Williams-Group-Logo-favicon-9bb6d01d94fbc51e01843e3e84c6c8188db987a7-180x180.png" /> 267<meta name="msapplication-TileImage" content="https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/cropped-The-Williams-Group-Logo-favicon-9bb6d01d94fbc51e01843e3e84c6c8188db987a7-270x270.png" /> 268 </head> 269<body class="blog wp-embed-responsive "> 270<a href='#skip-to-content' style='position:absolute; top:-100%; left:-100%; opacity:0'>Skip To Content</a>
vendor: 78 bytes, lines 270-271
270 271 <noscript><iframe src="//www.googletagmanager.com/ns.html?id=
271GTM-5BDFQV
vendor: 115 bytes, lines 271-273
271" 272 height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> 273
273<script>
vendor: 385 bytes, lines 273-277
273(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 274 new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 275 j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 276 '//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 277 })(window,document,'script','dataLayer','
277GTM-5BDFQV
vendor: 3 bytes, line 277
277');
277</script>
277<script type='text/javascript'> 278 window.dataLayer = window.dataLayer || []; 279 window.dataLayer.push({"currentPostID":1829}); 280</script>
280 281 282 <!--[if IE]> 283 <div id="browser-warning" class="alert alert-warning uk-text-center"> 284 <h3 class="mb-4">Browser Warning</h3> 285 <p class="mt-4">You are running an unsupported browser. You need to upgrade or use a different browser, such as <a href="https://google.com/chrome" target="_blank">Google Chrome</a>, to use this site.</p> 286 </div> 287 <![endif]--> 288 <div class="bt-off-canvas__wrapper"> 289 <header id="top" class="js-header-top"> 290 <nav class="bt-navbar js-hub"> 291 <div class="container bt-navbar__container"> 292 <div class="bt-navbar__left"><ul id="menu-main-menu" class="uk-subnav"><li class="menu-item menu-item-type-custom menu-item-object-custom " ><a class="menu-list__link" href="/" >Home</a></li> 293<li class="menu-item menu-item-type-custom menu-item-object-custom " ><a class="menu-list__link" href="/agents/" >Meet the Team</a></li> 294<li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children bt-ccomp" data-bt-ccomp="dropdown"><a class="menu-list__link" href="#" data-bt-ccomp-trigger>Search <i class="bt-fa-icon bt-fa-icon--small far fa-fw fa-chevron-down"></i></a> 295<div class="bt-ccomp__content "><ul class="menu-list level-0"> 296 <li class="menu-item menu-item-type-custom menu-item-object-custom " ><a class="menu-list__link" href="/results-gallery/?userID=all" >Our Listings</a></li> 297 <li class="menu-item menu-item-type-custom menu-item-object-custom " ><a class="menu-list__link" href="/results-map/" >Map Search</a></li> 298 299</ul></div> 300</li> 301<li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children bt-ccomp" data-bt-ccomp="dropdown"><a class="menu-list__link" href="#" data-bt-ccomp-trigger>Buyer Guides <i class="bt-fa-icon bt-fa-icon--small far fa-fw fa-chevron-down"></i></a> 302<div class="bt-ccomp__content "><ul class="menu-list level-0"> 303 <li class="menu-item menu-item-type-post_type menu-item-object-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/first-time-home-buyers/" >Buying Your First Home</a></li> 304 <li class="menu-item menu-item-type-post_type menu-item-object-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/buying-selling-together/" >Buying & Selling Together</a></li> 305 <li class="menu-item menu-item-type-post_type menu-item-object-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/veteran-va-home-buyers/" >Veteran (VA) Home Buyers</a></li> 306 <li class="menu-item menu-item-type-post_type menu-item-object-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/investment-property-buyers/" >Investment Property Buyers</a></li> 307 <li class="menu-item menu-item-type-post_type menu-item-object-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/relocating-to-alabama/" >Relocating to Alabama</a></li> 308 <li class="menu-item menu-item-type-post_type menu-item-object-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/short-term-rentals/" >Short-Term Rentals</a></li> 309 <li class="menu-item menu-item-type-post_type menu-item-object-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/new-construction-homes/" >New Construction Homes</a></li> 310 <li class="menu-item menu-item-type-post_type menu-item-object-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/ua-parent-buyers/" >University of Alabama Parents – Condo Buyer Guide</a></li> 311 312</ul></div> 313</li> 314<li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children bt-ccomp" data-bt-ccomp="dropdown"><a class="menu-list__link" href="#" data-bt-ccomp-trigger>Seller Guides <i class="bt-fa-icon bt-fa-icon--small far fa-fw fa-chevron-down"></i></a> 315<div class="bt-ccomp__content "><ul class="menu-list level-0"> 316 <li class="menu-item menu-item-type-post_type menu-item-object-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/selling-during-divorce/" >Selling During a Divorce</a></li> 317 <li class="menu-item menu-item-type-post_type menu-item-object-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/downsizing-sellers/" >Downsizing Sellers</a></li> 318 <li class="menu-item menu-item-type-post_type menu-item-object-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/need-to-sell-fast-facing-foreclosure/" >Need to Sell Fast/Facing Foreclosure</a></li> 319 <li class="menu-item menu-item-type-post_type menu-item-object-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/land-lot-sellers/" >Land & Lot Sellers</a></li> 320 <li class="menu-item menu-item-type-custom menu-item-object-custom " ><a class="menu-list__link" href="/sell/" >Sell Your Home</a></li> 321 <li class="menu-item menu-item-type-post_type menu-item-object-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/selling-an-inherited-home/" >Selling an Inherited Home</a></li> 322 323</ul></div> 324</li> 325<li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children bt-ccomp" data-bt-ccomp="dropdown"><a class="menu-list__link" href="#" data-bt-ccomp-trigger>City Guides <i class="bt-fa-icon bt-fa-icon--small far fa-fw fa-chevron-down"></i></a> 326<div class="bt-ccomp__content "><ul class="menu-list level-0"> 327 <li class="menu-item menu-item-type-post_type_archive menu-item-object-guide-page " ><a class="menu-list__link" target="_blank" href="https://www.thewilliamsgroupal.com/guides/" >All Guides</a></li> 328 <li class="menu-item menu-item-type-post_type menu-item-object-guide-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/guide/birmingham/" >Birmingham</a></li> 329 <li class="menu-item menu-item-type-post_type menu-item-object-guide-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/guide/northport/" >Northport</a></li> 330 <li class="menu-item menu-item-type-post_type menu-item-object-guide-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/guide/tuscaloosa/" >Tuscaloosa</a></li> 331 <li class="menu-item menu-item-type-post_type menu-item-object-guide-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/guide/cottondale/" >Cottondale</a></li> 332 <li class="menu-item menu-item-type-post_type menu-item-object-guide-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/guide/homewood/" >Homewood</a></li> 333 <li class="menu-item menu-item-type-post_type menu-item-object-guide-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/guide/coker/" >Coker</a></li> 334 <li class="menu-item menu-item-type-post_type menu-item-object-guide-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/guide/vestavia-hills/" >Vestavia Hills</a></li> 335 <li class="menu-item menu-item-type-post_type menu-item-object-guide-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/guide/mountain-brook/" >Mountain Brook</a></li> 336 <li class="menu-item menu-item-type-post_type menu-item-object-guide-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/guide/hoover/" >Hoover</a></li> 337 <li class="menu-item menu-item-type-post_type menu-item-object-guide-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/guide/mccalla/" >McCalla</a></li> 338 <li class="menu-item menu-item-type-post_type menu-item-object-guide-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/guide/trussville/" >Trussville</a></li> 339 <li class="menu-item menu-item-type-post_type menu-item-object-guide-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/guide/helena/" >Helena</a></li> 340 <li class="menu-item menu-item-type-post_type menu-item-object-guide-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/guide/pelham/" >Pelham</a></li> 341 <li class="menu-item menu-item-type-post_type menu-item-object-guide-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/guide/alabaster/" >Alabaster</a></li> 342 <li class="menu-item menu-item-type-post_type menu-item-object-guide-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/guide/chelsea/" >Chelsea</a></li> 343 344</ul></div> 345</li> 346<li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children bt-ccomp" data-bt-ccomp="dropdown"><a class="menu-list__link" href="#" data-bt-ccomp-trigger>Next Chapter <i class="bt-fa-icon bt-fa-icon--small far fa-fw fa-chevron-down"></i></a> 347<div class="bt-ccomp__content "><ul class="menu-list level-0"> 348 <li class="menu-item menu-item-type-custom menu-item-object-custom " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/next-chapter/" >Your Next Chapter Starts Here</a></li> 349 <li class="menu-item menu-item-type-post_type menu-item-object-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/relocating-to-alabama/" >Relocating to Alabama</a></li> 350 <li class="menu-item menu-item-type-post_type menu-item-object-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/moving-to-tuscaloosa/" >Moving to Tuscaloosa</a></li> 351 <li class="menu-item menu-item-type-post_type menu-item-object-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/moving-to-northport/" >Moving to Northport</a></li> 352 <li class="menu-item menu-item-type-post_type menu-item-object-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/moving-to-birmingham/" >Moving to Birmingham</a></li> 353 <li class="menu-item menu-item-type-post_type menu-item-object-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/moving-to-hoover/" >Moving to Hoover</a></li> 354 <li class="menu-item menu-item-type-post_type menu-item-object-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/moving-to-homewood/" >Moving to Homewood</a></li> 355 <li class="menu-item menu-item-type-post_type menu-item-object-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/moving-to-vestavia-hills/" >Moving to Vestavia Hills</a></li> 356 357</ul></div> 358</li> 359<li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-ancestor current-menu-parent menu-item-has-children bt-ccomp" data-bt-ccomp="dropdown"><a class="menu-list__link" href="#" data-bt-ccomp-trigger>Resources <i class="bt-fa-icon bt-fa-icon--small far fa-fw fa-chevron-down"></i></a> 360<div class="bt-ccomp__content "><ul class="menu-list level-0"> 361 <li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item " ><a class="menu-list__link" href="/blog/" >TWG Blog</a></li> 362 <li class="menu-item menu-item-type-custom menu-item-object-custom " ><a class="menu-list__link" href="/finance/" >Financing</a></li> 363 <li class="menu-item menu-item-type-custom menu-item-object-custom " ><a class="menu-list__link" href="/resources/" >Additional Resources</a></li> 364 <li class="menu-item menu-item-type-post_type menu-item-object-page " ><a class="menu-list__link" href="https://www.thewilliamsgroupal.com/in-the-media/" >In the Media</a></li> 365 366</ul></div> 367</li> 368</ul></div> <div class="bt-navbar__right"> 369 <ul class="uk-subnav"> 370 <li class="bt-ccomp js-saved-search-dropdown" data-bt-ccomp="dropdown"> 371 <a class="js-savedsearcheslnk" href="#" data-bt-ccomp-trigger data-cy="top-navbar__saved-searches">Saved Searches <span class="js-savedsearchcount pill pill--badge" data-cy="top-navbar__saved-searches-pill">0</span></a> 372 <div class="bt-ccomp__content bt-dropdown--right jsx-saved-search-menu" /> 373 </li> 374 <li> 375 <a class="js-favorites" rel="nofollow" href="/results-gallery/?favs=1" data-cy="top-navbar__favorites-link">Favorites <span class="js-favoritescount pill pill--badge">0</span></a> 376 </li> 377 <li class="js-account-placeholder uk-hidden"></li> 378 <li><a class="js-signin" rel="nofollow" href="#" title="Sign In" data-cy="top-navbar__sign-in">Sign In</a></li> 379 </ul> 380 </div> 381 </div> 382 </nav> 383 </header> 384 <div class="js-mobile-header__wrapper bt-header__mobile px-12--safe py-4"> 385 <div class="grid grid--center grid--justifyBetween"> 386 <div class="cell"> 387 <a href="/" class="uk-display-inline-block"> 388 <img 389 class="bt-inner-logo" 390 src="https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/TWG-ip-logo-0b2bed4875165deb939ed21e5b4dd35477b8e902.png" 391 alt="The Williams Group at Keller Williams Realty" 392 > 393 </a> 394 </div> 395 <div class="cell cell-xs-2 text-xs--right"> 396 <a href="#" class="bt-off-canvas__hamburger bt-off-canvas__trigger js-off-canvas__trigger at-menu-btn" aria-label="Menu"> 397 <i class="fas fa-fw fa-bars"></i> 398 </a> 399 </div> 400 </div> 401</div> 402<a name='skip-to-content'></a> 403<div id="inner-viewport"> 404 <div> 405<div class="sticky-outer-wrapper"> 406 <div class="sticky-inner-wrapper"> 407 <div class="bt-listing-search-menu js-listing-search-menu js-results__page-header"> 408 <div class="container bt-listing-search__wrapper js-filter-bar"> 409 <div class="grid grid--gutters grid--center"> 410 <div class="cell cell-md-3 bt-listing-search__logo"> 411 <a class="js-inner-logo" href="https://www.thewilliamsgroupal.com"> 412 <img class="bt-inner-logo" alt="The Williams Group at Keller Williams Realty" src="https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/TWG-ip-logo-0b2bed4875165deb939ed21e5b4dd35477b8e902.png"> 413 </a> 414 </div> 415 416 <div class="cell"> 417 <div class="grid bt-filter-bar__components grid--gutters-small grid--justifyend" label="Properties Search Toolbar"> 418 <div class="cell cell-md-12 cell-xl-fit"> 419 <form> 420 <label class="form__label form__label--hidden" for="bt-ballerbox__autocomplete-input--id">Search Properties</label> 421 <div class="grid"> 422 <div class="cell"> 423 <div class="form__input-group"> 424 <div class="bt-ccomp bt-ccomp__dropdown height-1-1"> 425 <button class="btn bt-ccomp__trigger at-searchby-trigger form__input-prefix ballerbox__searchby-button btn--width-auto" type="button" name="ballerbox__searchby-button">Search By 426 <i class="fa-angle-down far fa-fw bt-fa-icon"></i> 427 </button>
428 <span></span> 429 </div> 430 <input class="ballerbox__autocomplete-input form__input--grouped" type="text" name="bt-ballerbox__autocomplete-input--id" id="bt-ballerbox__autocomplete-input--id" role="combobox" aria-autocomplete="list" aria-expanded="false" autocomplete="off" placeholder="Type any Area, Address, ZIP, School, etc." value=""> 431 </div> 432 </div> 433 </div> 434 </form> 435 </div> 436 <div class="cell cell-xs-none"> 437 <div class="btn-group ml-0 bt-search__options-wrapper" role="group" aria-label="Properties Search Filters"> 438 <div class="btn-group__item"> 439 <div class="bt-ccomp bt-ccomp__dropdown"> 440 <button class="btn bt-ccomp__trigger at-price-trigger bt-filter__button js-search-price btn-group__item-btn btn-group__item-btn--first btn--primary" data-cy="search-bar__price" type="button">Price 441 <i class="fa-angle-down far fa-fw bt-fa-icon"></i> 442 </button> 443 <span></span> 444 </div> 445 </div> 446 <div class="btn-group__item"> 447 <div class="bt-ccomp bt-ccomp__dropdown"> 448 <button class="btn bt-ccomp__trigger at-type-menu-trigger bt-filter__button btn-group__item-btn btn--primary" data-cy="seach-bar__type" type="button">Type 449 <i class="fa-angle-down far fa-fw bt-fa-icon"></i> 450 </button> 451 <span></span> 452 </div> 453 </div> 454 <div class="btn-group__item"> 455 <div class="bt-ccomp bt-ccomp__dropdown uk-display-block"> 456 <button class="btn bt-ccomp__trigger at-minbeds-trigger bt-filter__button js-search-beds btn-group__item-btn btn--primary" data-cy="search-bar__beds-button" type="button">Beds 457 <i class="fa-angle-down far fa-fw bt-fa-icon"></i> 458 </button> 459 <span></span> 460 </div> 461 </div> 462 <div class="btn-group__item"> 463 <div class="bt-ccomp bt-ccomp__dropdown uk-display-block"> 464 <button class="btn bt-ccomp__trigger at-minbaths-trigger bt-filter__button js-search-beds btn-group__item-btn btn--primary" data-cy="search-bar__baths-button" type="button">Baths 465 <i class="fa-angle-down far fa-fw bt-fa-icon"></i> 466 </button> 467 <span></span> 468 </div> 469 </div> 470 <div class="btn-group__item"> 471 <div class="bt-ccomp bt-ccomp__dropdown bt-ccomp--full-width"> 472 <button class="btn bt-filter__button bt-more__trigger bt-ccomp__trigger at-sub-menu-trigger btn-group__item-btn btn-group__item-btn--last btn--primary" data-cy="search-bar__more" type="button">More 473 <i class="fa-plus far fa-fw bt-fa-icon"></i> 474 </button> 475 <span></span> 476 </div> 477 </div> 478 </div> 479 </div> 480 </div> 481 <div class="bt-search-filter-area mt-16 js-search-filter-area"> 482 <div class="grid grid--gutters grid--noWrap grid--justifyBetween grid--center"> 483 <div class="cell pr-4 bt-save-search__wrapper" style="opacity: 0;"> 484 <div class="pr-16"> 485 <button class="btn uk-text-nowrap at-save-search-btn btn--primary btn--size-small" data-cy="search-bar__save-search" type="button">Save This Search</button> 486 </div> 487 <div class="bt-search-tags__container"> 488 <ul class="bt-search-tags"> 489 <li> 490 <button class="btn btn--tag btn--secondary btn--size-small" data-cy="search-bar__search_tag" type="button">Has Photos 491 <i class="fa-times-circle fas fa-fw bt-fa-icon"></i> 492 </button> 493 </li> 494 </ul> 495 </div> 496 </div> 497 <div id="results-set-interactions" class="cell pl-12 bt-view-options__wrapper"> 498 <div class="btn-toolbar grid--justifyEnd" role="toolbar" aria-label="Sort results options and results view switcher"> 499 <div class="bt-ccomp bt-ccomp__dropdown mr-12 sort-button"> 500 <button class="btn bt-ccomp__trigger bt-sort-by btn--secondary btn--size-small" data-cy="search-bar__sort" type="button">Sort 501 <i class="fa-angle-down far fa-fw bt-fa-icon"></i> 502 </button>
503 <span></span> 504 </div> 505 <div class="btn-group bt-view-toggle ml-4" role="group" aria-label="Results View Switcher"> 506 <div class="btn-group__item"> 507 <a href="/results-map/" title="Map View" role="button" class="btn-small bt-view-toggle__show-map"> 508 <button class="btn btn--size-small btn-group__item-btn btn-group__item-btn--first btn--secondary" type="button"> 509 <i class="fa-map-marker-alt fas fa-fw bt-fa-icon"></i> Map 510 </button> 511 </a> 512 </div> 513 <div class="btn-group__item"> 514 <a href="/results-gallery/" title="Gallery View" role="button" class="btn-small bt-view-toggle__show-gallery uk-active"> 515 <button class="btn btn--size-small btn-group__item-btn btn-group__item-btn--last btn--secondary" type="button"> 516 <i class="fa-th fas fa-fw bt-fa-icon"></i> Gallery 517 </button> 518 </a> 519 </div> 520 </div> 521 </div> 522 </div> 523 </div> 524 </div> 525 </div> 526 527 </div> 528 </div> 529 </div> 530 </div> 531</div> 532</div> 533 534 <div id="js-search-layout--main" class="view"> 535 <section class="bt-content-wrapper px--safe "> 536 <div class="container"> 537 538 <article class="uk-article post-1829 post type-post status-publish format-standard has-post-thumbnail hentry category-birmingham-metro-news tag-greater-birmingham tag-homewood tag-hoover tag-housing-market tag-mountain-brook tag-vestavia-hills"> 539 <div class="bt-page-header"> 540 <h1 class="bt-heading__h2">Blog</h1> 541 </div> 542 <div class="bt-interior-content"> 543 <div class="grid grid--gutters"> 544 <div class="cell"> 545 <ul class="grid grid--gutters grid-xs--full grid-sm--halves grid-md--halves grid-lg--thirds grid--flexCells"><div class='bt-blog-index-wrapper'> 546 <div class='bt-blog-index-article'> 547 <h3 class='bt-blog-index-header'> 548 <a href='https://www.thewilliamsgroupal.com/blog/what-500k-buys-birmingham-suburbs/'>What Does $500,000 Buy in Hoover, Vestavia Hills, Homewood and Mountain Brook?</a> 549 </h3> 550 <div class='bt-blog-index-author'> 551 By <strong>Byron Bennett</strong> | October 2, 2026 </div> 552 553 <a aria-label='What Does $500,000 Buy in Hoover, Vestavia Hills, Homewood and Mountain Brook?' href='https://www.thewilliamsgroupal.com/blog/what-500k-buys-birmingham-suburbs/' class='bt-blog-index-image' style='background-image:url(https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/10/what-500k-buys-birmingham-suburbs-b363a1c2894fed42d117248b2b198a3fb6a62305-1024x768.jpg);'> 554 </a> 555 556 <p class='bt-blog-index-excerpt'> 557 Last updated: October 2026 · By Byron Bennett, The Williams Group at Keller Williams Realty QUICK SUMMARY The short answer: $500,000 buys a typical three-bedroom home in Hoover or Vestavia Hills, a below-median three-bedroom in Homewood, and is a stretch budget in Mountain Brook. Over the 12 months ending August 2026, Greater Alabama MLS closings... <a href='https://www.thewilliamsgroupal.com/blog/what-500k-buys-birmingham-suburbs/'>Read More</a> 558 </p> 559 </div> 560 <div class='bt-blog-index-article'> 561 <h3 class='bt-blog-index-header'> 562 <a href='https://www.thewilliamsgroupal.com/blog/alabama-property-tax-proration-closing/'>How Are Property Taxes Prorated at Closing in Alabama?</a> 563 </h3> 564 <div class='bt-blog-index-author'> 565 By <strong>Byron Bennett</strong> | October 2, 2026 </div> 566 567 <a aria-label='How Are Property Taxes Prorated at Closing in Alabama?' href='https://www.thewilliamsgroupal.com/blog/alabama-property-tax-proration-closing/' class='bt-blog-index-image' style='background-image:url(https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/10/alabama-property-tax-proration-closing-7f7c5518019885f438c218488f822ee6e39e194a-1024x683.jpg);'> 568 </a> 569 570 <p class='bt-blog-index-excerpt'> 571 Last updated: October 2026 · By Byron Bennett, The Williams Group at Keller Williams Realty QUICK SUMMARY The short answer: Alabama property taxes are paid a year in arrears. The tax year runs October 1 to September 30, and the bill that comes due each October 1 (and turns delinquent after December 31) pays for... <a href='https://www.thewilliamsgroupal.com/blog/alabama-property-tax-proration-closing/'>Read More</a> 572 </p> 573 </div> 574 <div class='bt-blog-index-article'> 575 <h3 class='bt-blog-index-header'> 576 <a href='https://www.thewilliamsgroupal.com/blog/greater-birmingham-housing-market-report-october-2026/'>Greater Birmingham Housing Market Report — October 2026</a> 577 </h3> 578 <div class='bt-blog-index-author'> 579 By <strong>Byron Bennett</strong> | October 1, 2026 </div> 580 581 <a aria-label='Greater Birmingham Housing Market Report — October 2026' href='https://www.thewilliamsgroupal.com/blog/greater-birmingham-housing-market-report-october-2026/' class='bt-blog-index-image' style='background-image:url(https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/07/bham
581-1-a8bcadddf2dcd142f576bb03dfbd12d948e07bf5.jpg);'> 582 </a> 583 584 <p class='bt-blog-index-excerpt'> 585 Jefferson County home prices rose 3.8% to $310,000 in August 2026 and Shelby County rose 4.2% to $380,232. MLS data, 7% rates and what it means for buyers and sellers. <a href='https://www.thewilliamsgroupal.com/blog/greater-birmingham-housing-market-report-october-2026/'>Read More</a> 586 </p> 587 </div> 588 <div class='bt-blog-index-article'> 589 <h3 class='bt-blog-index-header'> 590 <a href='https://www.thewilliamsgroupal.com/blog/tuscaloosa-county-housing-market-report-october-2026/'>Tuscaloosa County Housing Market Report — October 2026</a> 591 </h3> 592 <div class='bt-blog-index-author'> 593 By <strong>Byron Bennett</strong> | October 1, 2026 </div> 594 595 <a aria-label='Tuscaloosa County Housing Market Report — October 2026' href='https://www.thewilliamsgroupal.com/blog/tuscaloosa-county-housing-market-report-october-2026/' class='bt-blog-index-image' style='background-image:url(https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/CityofTuscaloosa-87b726bd2dce60244bc44d1363d8382d341a94d1.png);'> 596 </a> 597 598 <p class='bt-blog-index-excerpt'> 599 Tuscaloosa County home prices held at $299,900 in August 2026 while sales fell 8% and homes took 30 days to sell. MLS data, 7% rates and what it means for buyers and sellers. <a href='https://www.thewilliamsgroupal.com/blog/tuscaloosa-county-housing-market-report-october-2026/'>Read More</a> 600 </p> 601 </div> 602 <div class='bt-blog-index-article'> 603 <h3 class='bt-blog-index-header'> 604 <a href='https://www.thewilliamsgroupal.com/blog/mountain-brook-2027-budget-homeowners/'>What Does Mountain Brook’s 2027 Budget Mean for Homeowners?</a> 605 </h3> 606 <div class='bt-blog-index-author'> 607 By <strong>Byron Bennett</strong> | October 1, 2026 </div> 608 609 <a aria-label='What Does Mountain Brook’s 2027 Budget Mean for Homeowners?' href='https://www.thewilliamsgroupal.com/blog/mountain-brook-2027-budget-homeowners/' class='bt-blog-index-image' style='background-image:url(https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/10/mountain-brook-tree-lined-street-5a76d67a9621887d7dc4ea3032798ed017a07688-1024x576.jpg);'> 610 </a> 611 612 <p class='bt-blog-index-excerpt'> 613 Mountain Brook approved a $58 million 2027 budget on Sept. 28, 2026, with a $6 million library renovation, $2.5 million for sidewalks and a $23.2 million reserve. <a href='https://www.thewilliamsgroupal.com/blog/mountain-brook-2027-budget-homeowners/'>Read More</a> 614 </p> 615 </div> 616 <div class='bt-blog-index-article'> 617 <h3 class='bt-blog-index-header'> 618 <a href='https://www.thewilliamsgroupal.com/blog/what-300k-400k-buys-tuscaloosa/'>What Does $300,000 or $400,000 Buy in Tuscaloosa County in 2026?</a> 619 </h3> 620 <div class='bt-blog-index-author'> 621 By <strong>Byron Bennett</strong> | October 1, 2026 </div> 622 623 <a aria-label='What Does $300,000 or $400,000 Buy in Tuscaloosa County in 2026?' href='https://www.thewilliamsgroupal.com/blog/what-300k-400k-buys-tuscaloosa/' class='bt-blog-index-image' style='background-image:url(https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/10/tuscaloosa-county-neighborhood-home-prices-03ff17eedf87cecf7ef3227e138eb694fc8b2235-1024x576.jpg);'> 624 </a> 625 626 <p class='bt-blog-index-excerpt'> 627 Countywide, $300,000 is right at the Tuscaloosa County median and $400,000 is near the top quarter. Here is what each budget buys by MLS area, from Northport to north of the river. <a href='https://www.thewilliamsgroupal.com/blog/what-300k-400k-buys-tuscaloosa/'>Read More</a> 628 </p> 629 </div> 630 <div class='bt-blog-index-article'> 631 <h3 class='bt-blog-index-header'> 632 <a href='https://www.thewilliamsgroupal.com/blog/alabama-solar-panels-home-buyers-sellers/'>Buying or Selling a House With Solar Panels in Alabama: What Should You Know?</a> 633 </h3> 634 <div class='bt-blog-index-author'> 635 By <strong>Byron Bennett</strong> | October 1, 2026 </div> 636 637 <a aria-label='Buying or Selling a House With Solar Panels in Alabama: What Should You Know?' href='https://www.thewilliamsgroupal.com/blog/alabama-solar-panels-home-buyers-sellers/' class='bt-blog-index-image' style='background-image:url(https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/10/alabama-home-solar-panels-38843e16bab70d6545553c62f11a2c9e9a936dc8-1024x576.jpg);'> 638 </a> 639 640 <p class='bt-blog-index-excerpt'> 641 Solar panels on an Alabama home are worth the most when owned outright. Here is how Alabama Power's $5.41/kW capacity charge, no net metering and the end of the federal credit change a sale. <a href='https://www.thewilliamsgroupal.com/blog/alabama-solar-panels-home-buyers-sellers/'>Read More</a> 642 </p> 643 </div> 644 <div class='bt-blog-index-article'> 645 <h3 class='bt-blog-index-header'> 646 <a href='https://www.thewilliamsgroupal.com/blog/hoover-2027-budget-homeowners/'>What Does Hoover’s 2027 Budget Mean for Homeowners?</a> 647 </h3> 648 <div class='bt-blog-index-author'> 649 By <strong>Byron Bennett</strong> | September 30, 2026 </div> 650 651 <a aria-label='What Does Hoover’s 2027 Budget Mean for Homeowners?' href='https://www.thewilliamsgroupal.com/blog/hoover-2027-budget-homeowners/' class='bt-blog-index-image' style='background-image:url(https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/09/hoover-al-neighborhood-2027-budget-4cffb034f4382e3fcc7a2d1381b8bf640735347a-1024x682.jpg);'> 652 </a> 653 654 <p class='bt-blog-index-excerpt'> 655 Hoover approved a $206 million 2027 budget on Sept. 28, 2026. Here is what it means for roads, drainage, public safety and Hoover homeowners. <a href='https://www.thewilliamsgroupal.com/blog/hoover-2027-budget-homeowners/'>Read More</a> 656 </p> 657 </div> 658 <div class='bt-blog-index-article'> 659 <h3 class='bt-blog-index-header'> 660 <a href='https://www.thewilliamsgroupal.com/blog/alabama-current-use-land-tax/'>What Is Current Use Valuation in Alabama, and Does It Transfer When You Buy Land?</a> 661 </h3> 662 <div class='bt-blog-index-author'> 663 By <strong>Byron Bennett</strong> | September 30, 2026 </div> 664 665 <a aria-label='What Is Current Use Valuation in Alabama, and Does It Transfer When You Buy Land?' href='https://www.thewilliamsgroupal.com/blog/alabama-current-use-land-tax/' class='bt-blog-index-image' style='background-image:url(https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/09/alabama-current-use-farm-timber-land-743b50671e80e35cd6a0865784e8a132b6732f46-1024x704.jpg);'> 666 </a> 667 668 <p class='bt-blog-index-excerpt'> 669 Alabama current use valuation cuts taxes on farm and timber land, but it does not transfer to a buyer. Here are the deadlines and the three-year rollback risk. <a href='https://www.thewilliamsgroupal.com/blog/alabama-current-use-land-tax/'>Read More</a> 670 </p> 671 </div> 672 <div class='bt-blog-index-article'> 673 <h3 class='bt-blog-index-header'> 674 <a href='https://www.thewilliamsgroupal.com/blog/alabama-home-builder
674-license-check/'>How Do You Check a Home Builder License in Alabama?</a> 675 </h3> 676 <div class='bt-blog-index-author'> 677 By <strong>Byron Bennett</strong> | September 29, 2026 </div> 678 679 <a aria-label='How Do You Check a Home Builder License in Alabama?' href='https://www.thewilliamsgroupal.com/blog/alabama-home-builder-license-check/' class='bt-blog-index-image' style='background-image:url(https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/09/alabama-new-home-construction-builder-license-6c88f3dc390b380c31c9e2c1cf4b3dfe4e70114e-1024x683.jpg);'> 680 </a> 681 682 <p class='bt-blog-index-excerpt'> 683 Before you build or buy new construction in Alabama, look up the builder on the Home Builders Licensure Board. Here is who needs a license, what the Recovery Fund covers and what the board can and cannot do. <a href='https://www.thewilliamsgroupal.com/blog/alabama-home-builder-license-check/'>Read More</a> 684 </p> 685 </div> 686 </div> 687</ul><ul class="uk-pagination"><li class="uk-active"><span>1</span></li><li><a href="https://www.thewilliamsgroupal.com/blog/page/2/">2</a></li><li><a href="https://www.thewilliamsgroupal.com/blog/page/3/">3</a></li><li><a href="https://www.thewilliamsgroupal.com/blog/page/4/">4</a></li><li><span>...</span></li><li><a href="https://www.thewilliamsgroupal.com/blog/page/16/">16</a></li><li><a href="https://www.thewilliamsgroupal.com/blog/page/2/" aria-label="Next"><i class="far fa-fw fa-chevron-right"></i></a></li></ul> </div> 688 <div class="cell cell-xs-12 cell-md-4 bt-sidebar"> 689 <div class="bt-panel uk-panel uk-panel-box"> 690 691 692 <div class="widget widget_bt_blog_intro"><div class="bt-widget bt-widget__blog-intro"> 693 <div class="bt-social-icons js-footer-social-icons"> 694 <a href="/feed" target="_blank" aria-label="rss" title="rss" class="bt-icon__button bt-icon--rss js-footer-social-rss"> 695 <i class="fas fa-fw fa-rss"></i> 696 </a> 697 <a href="https://www.facebook.com/thewilliamsgroupatkw/" target="_blank" aria-label="facebook" title="facebook" class="bt-icon__button bt-icon--facebook"> 698 <i class="fab fa-fw fa-facebook-f"></i> 699 </a> 700 <a href="https://www.instagram.com/thewilliamsgroupal/" target="_blank" aria-label="instagram" title="instagram" class="bt-icon__button bt-icon--instagram"> 701 <i class="fab fa-fw fa-instagram"></i> 702 </a> 703 <a href="https://www.linkedin.com/company/the-williams-group-at-keller-williams-realty" target="_blank" aria-label="linkedin" title="linkedin" class="bt-icon__button bt-icon--linkedin"> 704 <i class="fab fa-fw fa-linkedin-in"></i> 705 </a> 706 </div> 707 <h3>About our blog</h3> 708 <p>Our agents write often to give you the latest insights on owning a home or property in the local area.</p> 709</div> 710</div> 711 712 <div class="widget widget_recent_entries"><h2 class="widgettitle">Recent Posts</h2><div class="bt-widget bt-widget__recent-posts"> 713 <div class=""> 714 <ul class="uk-list-space"> 715 <li> 716 <a href="https://www.thewilliamsgroupal.com/blog/what-500k-buys-birmingham-suburbs/"> 717 What Does $500,000 Buy in Hoover, Vestavia Hills, Homewood and Mountain Brook? </a> 718 </li> 719 <li> 720 <a href="https://www.thewilliamsgroupal.com/blog/alabama-property-tax-proration-closing/"> 721 How Are Property Taxes Prorated at Closing in Alabama? </a> 722 </li> 723 <li> 724 <a href="https://www.thewilliamsgroupal.com/blog/greater-birmingham-housing-market-report-october-2026/"> 725 Greater Birmingham Housing Market Report — October 2026 </a> 726 </li> 727 <li> 728 <a href="https://www.thewilliamsgroupal.com/blog/tuscaloosa-county-housing-market-report-october-2026/"> 729 Tuscaloosa County Housing Market Report — October 2026 </a> 730 </li> 731 <li> 732 <a href="https://www.thewilliamsgroupal.com/blog/mountain-brook-2027-budget-homeowners/"> 733 What Does Mountain Brook’s 2027 Budget Mean for Homeowners? </a> 734 </li> 735 </ul> 736 </div> 737</div> 738</div> 739 <div class="widget widget_archive"><h3 class="widget-title">Archives</h3> 740 <ul> 741 <li><a href='https://www.thewilliamsgroupal.com/blog/2026/10/'>October 2026</a></li> 742 <li><a href='https://www.thewilliamsgroupal.com/blog/2026/09/'>September 2026</a></li> 743 <li><a href='https://www.thewilliamsgroupal.com/blog/2026/08/'>August 2026</a></li> 744 <li><a href='https://www.thewilliamsgroupal.com/blog/2026/07/'>July 2026</a></li> 745 <li><a href='https://www.thewilliamsgroupal.com/blog/2026/06/'>June 2026</a></li> 746 <li><a href='https://www.thewilliamsgroupal.com/blog/2026/05/'>May 2026</a></li> 747 </ul> 748 749 </div> 750 </div> 751 </div> 752 </div> 753 </div> 754 </article> 755 </div> 756 </section> 757 </div> 758</div> 759<div id="footer"> 760 <footer class="bt-footer" data-cy="footer"> 761 <div class="px--safe"> 762 <div class="container uk-text-small"> 763 <div class="grid grid--gutters"> 764 <div class="cell cell-xs-12 cell-md-3 cell-lg-2"> 765 766 767 <h3 class="bt-footer-widget__title">Guides</h3> 768 <ul class="uk-list"> 769 <li> 770 <a class="js-footer-guides" href="https://www.thewilliamsgroupal.com/guide/northport/">Northport</a> 771 </li> 772 <li> 773 <a class="js-footer-guides" href="https://www.thewilliamsgroupal.com/guide/cottondale/">Cottondale</a> 774 </li> 775 <li> 776 <a class="js-footer-guides" href="https://www.thewilliamsgroupal.com/guide/coker/">Coker</a> 777 </li> 778 <li> 779 <a class="js-footer-guides" href="https://www.thewilliamsgroupal.com/guide/mccalla/">McCalla</a> 780 </li> 781 <li> 782 <a class="js-footer-guides" href="https://www.thewilliamsgroupal.com/guide/birmingham/">Birmingham</a> 783 </li> 784 <li> 785 <a href="/guides/" class="bt-more-bounce js-footer-guides">More Guides <i class="far fa-fw fa-chevron-right"></i></a> 786 </li> 787 </ul> 788 789 790 </div> 791 <div class="cell cell-xs-12 cell-md-3 cell-lg-2"> 792 793 <h3 class="bt-footer-widget__title">Company</h3> 794 <ul class="uk-list"> 795 <li> 796 <a class="js-footer-agents" href="/agents/" title="Meet The Team">Meet The Team</a> 797 </li> 798 <li> 799 <a class="js-footer-blog" href="/blog/" title="Our blog">Our Blog</a> 800 </li> 801 <li> 802 <a class="at-footer-contactus" href="/contactus/" title="Contact Us">Contact Us</a> 803 </li> 804 </ul> 805 806 </div> 807 <div class="cell cell-xs-12 cell-md-3 cell-lg-2"> 808 809 <h3 class="bt-footer-widget__title">Resources</h3> 810 <ul class="uk-list"> 811 <li> 812 <a class="js-footer-buyhome" href="/buy/" title="Buy a home in West Alabama, Greater Birmingham Area">Buy a Home</a> 813 </li> 814 <li> 815 <a class="js-footer-sellhome" href="/sell/" title="Sell homes in West Alabama, Greater Birmingham Area">Sell Your Home</a> 816 </li> 817 <li> 818 <a class="js-footer-finance" href="/finance/" title="Finance your dream home in West Alabama, Greater Birmingham Area">Finance</a> 819 </li> 820 </ul> 821 822 </div> 823 <div class="cell cell-xs-12 cell-md-3 cell-lg-2"> 824 825 <h3 class="bt-footer-widget__title">Get Social</h3> 826 <div class="bt-social-icons js-footer-social-icons"> 827 <a href="/feed" target="_blank" aria-label="rss" title="rss" class="bt-icon__button bt-icon--rss js-footer-social-rss"> 828 <i class="fas fa-fw fa-rss"></i> 829 </a> 830 <a href="https://www.facebook.com/thewilliamsgroupatkw/" target="_blank" aria-label="facebook" title="facebook" class="bt-icon__button bt-icon--facebook"> 831 <i class="fab fa-fw fa-facebook-f"></i> 832 </a> 833 <a href="https://www.instagram.com/thewilliamsgroupal/" target="_blank" aria-label="instagram" title="instagram" class="bt-icon__button bt-icon--instagram"> 834 <i class="fab fa-fw fa-instagram"></i> 835 </a> 836 <a href="https://www.linkedin.com/company/the-williams-group-at-keller-williams-realty" target="_blank" aria-label="linkedin" title="linkedin" class="bt-icon__button bt-icon--linkedin"> 837 <i class="fab fa-fw fa-linkedin-in"></i> 838 </a> 839 </div> 840 841 </div> 842 843 844 <div class="cell cell-xs-12 cell-lg-4"> 845 <div class="js-global-footer-about"> 846 <h3 class="bt-footer-widget__title">About Us</h3> 847 <div class="js-global-footer-about-tag"><p>The Williams Group at Keller Williams Realty is West Alabama, Greater Birmingham Area's most innovative real estate team.</p> 848</div> 849 </div> 850 <address class="js-global-footer-address"><p>The Williams Group at Keller Williams Tuscaloosa<br /> 8514412 HWY 69 N, Northport, AL 35473<br /> 852(205) 292-2108</p> 853<p>The Williams Group at Keller Williams Realty<br /> 8543595 Grandview Pkwy Suite 250, Birmingham, AL 35243<br /> 855(205) 292-7142</p> 856</address> </div> 857 858 859 </div> 860 <div class="mt-16 bt-disclaimer-bottom js-footer-bottom-links" data-cy="footer__disclaimer"> 861 <p class="mb-4"> 862 </br></br><img style="border: 0pt none; float:left; padding-right:10px; padding-bottom:0px" src="https://static.boomtownroi.com/content/photos/birmingham/idx/idx-large.gif" alt="Greater Alabama MLS (Birmingham Association of Realtors) logo"/> 863 864© 2026 Greater Alabama MLS. IDX information is provided exclusively for consumers’ personal, non-commercial use and may not be used for any purpose other than to identify prospective properties consumers may be interested in purchasing. IDX content is not guaranteed accurate by the MLS or The Williams Group at Keller Williams Realty. 865 866Data last updated: 2026-10-04T16:30:50.84.</br></br>© 2026 West Alabama Multiple Listing Service, Inc. All rights reserved. 867 868IDX information is provided exclusively for consumers' personal, non-commercial use and may not be used for any purpose other than to identify prospective properties consumers may be interested in purchasing. Information is deemed reliable but is not guaranteed accurate by the MLS or The Williams Group at Keller Williams Realty. 869 870Data last updated: 2026-10-04T16:50:34.053.</br></br> </p> 871 </div> 872 873 874 </div> 875 </div> 876 <nav class="bt-footer-aux px--safe"> 877 <div class="container"> 878 <ul class="uk-subnav uk-subnav-line bt-disclaimer-menu mb-0"> 879 <li class="bt-disclaimer-menu__copyright"> 880 <a 881 target="_blank" 882 href="https://boomtownroi.com?utm_campaign=thewilliamsgroupal.com&utm_medium=bt_client_site_referral&utm_source=client_sites" 883 rel="nofollow" 884 title="BoomTown © 2026" 885 > 886 <img class='bt-disclaimer-menu__copyright__logo' src="/wp-content/themes/wp-base-theme/assets/media/build/boomtown-footer.webp" alt="BoomTown"/> © 2026 </a> 887 </li> 888 <li><a href="/terms">Terms of Use</a></li> 889 <li><a href="/privacy/">Privacy Policy</a></li> 890 <li><a href="/accessibility/">Accessibility</a></li> 891 <li><a href="/dmca/">DMCA</a></li> 892 <li><a href="/sitemap/">Listings Sitemap</a></li> 893 </ul> 894 </div> 895 </nav> 896 </footer> 897</div></div> 898<nav class="bt-off-canvas bt-off-canvas__common bt-off-canvas-main-menu js-hub"> 899 <a href="#" class="bt-off-canvas-menu__close js-off-canvas__close" aria-label="Close"><i class="fas fa-fw fa-times-circle"></i></a> 900 <div class="text-xs--center bt-off-canvas__header"> 901 <i class="fas fa-fw fa-user"></i> 902 </div> 903 904 905 <div class="container js-user-instance--guest"> 906 <div class="grid grid--gutters grid-xs--halves bt-off-canvas__account-btns"> 907 <div class="cell text-xs--right"> 908 <button type="button" class="btn btn--secondary btn--width-auto js-signin at-sign-in-btn" rel="nofollow">Sign In</button> 909 </div> 910 <div class="cell"> 911 <button type="button" class="btn btn--primary btn--width-auto js-register at-register-btn" rel="nofollow">Register</button> 912 </div> 913 </div> 914 </div> 915 <div class="container bt-user-instance--registered js-user-instance--registered uk-hidden"> 916 <div class="grid grid--gutters grid-xs--halves bt-off-canvas__account-btns"> 917 <div class="cell text-xs--right"> 918 <a role="button" href="/account/" class="js-account-off-canvas btn btn--primary btn--width-auto at-profile-btn" rel="nofollow">My Account</a> 919 </div> 920 <div class="cell"> 921 <a role="button" href="#" class="btn btn--secondary btn--width-auto js-signout at-sign-out-btn" rel="nofollow">Sign Out</a> 922 </div> 923 </div> 924 </div> 925 926 <ul class="bt-nav-main"><li id="menu-item-7" class="menu-item menu-item-type-custom menu-item-object-custom " ><a href="/" class="p-16" >Home</a></li> 927<li id="menu-item-9" class="menu-item menu-item-type-custom menu-item-object-custom " ><a href="/agents/" class="p-16" >Meet the Team</a></li> 928<li id="menu-item-8" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children bt-ccomp" data-bt-ccomp="toggle"><a href="#" class="p-16" data-bt-ccomp-trigger>Search <i class="bt-fa-icon bt-fa-icon
928--small far fa-fw fa-chevron-down"></i></a> 929<div class="bt-ccomp__content px-16--safe"><ul class="bt-off-canvas__sub-menu level-0"> 930 <li id="menu-item-11" class="menu-item menu-item-type-custom menu-item-object-custom " ><a href="/results-gallery/?userID=all" class="p-16" >Our Listings</a></li> 931 <li id="menu-item-10" class="menu-item menu-item-type-custom menu-item-object-custom " ><a href="/results-map/" class="p-16" >Map Search</a></li> 932 933</ul></div> 934</li> 935<li id="menu-item-12" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children bt-ccomp" data-bt-ccomp="toggle"><a href="#" class="p-16" data-bt-ccomp-trigger>Buyer Guides <i class="bt-fa-icon bt-fa-icon--small far fa-fw fa-chevron-down"></i></a> 936<div class="bt-ccomp__content px-16--safe"><ul class="bt-off-canvas__sub-menu level-0"> 937 <li id="menu-item-103" class="menu-item menu-item-type-post_type menu-item-object-page " ><a href="https://www.thewilliamsgroupal.com/first-time-home-buyers/" class="p-16" >Buying Your First Home</a></li> 938 <li id="menu-item-157" class="menu-item menu-item-type-post_type menu-item-object-page " ><a href="https://www.thewilliamsgroupal.com/buying-selling-together/" class="p-16" >Buying & Selling Together</a></li> 939 <li id="menu-item-184" class="menu-item menu-item-type-post_type menu-item-object-page " ><a href="https://www.thewilliamsgroupal.com/veteran-va-home-buyers/" class="p-16" >Veteran (VA) Home Buyers</a></li> 940 <li id="menu-item-163" class="menu-item menu-item-type-post_type menu-item-object-page " ><a href="https://www.thewilliamsgroupal.com/investment-property-buyers/" class="p-16" >Investment Property Buyers</a></li> 941 <li id="menu-item-136" class="menu-item menu-item-type-post_type menu-item-object-page " ><a href="https://www.thewilliamsgroupal.com/relocating-to-alabama/" class="p-16" >Relocating to Alabama</a></li> 942 <li id="menu-item-466" class="menu-item menu-item-type-post_type menu-item-object-page " ><a href="https://www.thewilliamsgroupal.com/short-term-rentals/" class="p-16" >Short-Term Rentals</a></li> 943 <li id="menu-item-467" class="menu-item menu-item-type-post_type menu-item-object-page " ><a href="https://www.thewilliamsgroupal.com/new-construction-homes/" class="p-16" >New Construction Homes</a></li> 944 <li id="menu-item-650" class="menu-item menu-item-type-post_type menu-item-object-page " ><a href="https://www.thewilliamsgroupal.com/ua-parent-buyers/" class="p-16" >University of Alabama Parents – Condo Buyer Guide</a></li> 945 946</ul></div> 947</li> 948<li id="menu-item-14" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children bt-ccomp" data-bt-ccomp="toggle"><a href="#" class="p-16" data-bt-ccomp-trigger>Seller Guides <i class="bt-fa-icon bt-fa-icon--small far fa-fw fa-chevron-down"></i></a> 949<div class="bt-ccomp__content px-16--safe"><ul class="bt-off-canvas__sub-menu level-0"> 950 <li id="menu-item-147" class="menu-item menu-item-type-post_type menu-item-object-page " ><a href="https://www.thewilliamsgroupal.com/selling-during-divorce/" class="p-16" >Selling During a Divorce</a></li> 951 <li id="menu-item-153" class="menu-item menu-item-type-post_type menu-item-object-page " ><a href="https://www.thewilliamsgroupal.com/downsizing-sellers/" class="p-16" >Downsizing Sellers</a></li> 952 <li id="menu-item-213" class="menu-item menu-item-type-post_type menu-item-object-page " ><a href="https://www.thewilliamsgroupal.com/need-to-sell-fast-facing-foreclosure/" class="p-16" >Need to Sell Fast/Facing Foreclosure</a></li> 953 <li id="menu-item-214" class="menu-item menu-item-type-post_type menu-item-object-page " ><a href="https://www.thewilliamsgroupal.com/land-lot-sellers/" class="p-16" >Land & Lot Sellers</a></li> 954 <li id="menu-item-15" class="menu-item menu-item-type-custom menu-item-object-custom " ><a href="/sell/" class="p-16" >Sell Your Home</a></li> 955 <li id="menu-item-142" class="menu-item menu-item-type-post_type menu-item-object-page " ><a href="https://www.thewilliamsgroupal.com/selling-an-inherited-home/" class="p-16" >Selling an Inherited Home</a></li> 956 957</ul></div> 958</li> 959<li id="menu-item-19" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children bt-ccomp" data-bt-ccomp="toggle"><a href="#" class="p-16" data-bt-ccomp-trigger>City Guides <i class="bt-fa-icon bt-fa-icon--small far fa-fw fa-chevron-down"></i></a> 960<div class="bt-ccomp__content px-16--safe"><ul class="bt-off-canvas__sub-menu level-0"> 961 <li id="menu-item-296" class="menu-item menu-item-type-post_type_archive menu-item-object-guide-page " ><a target="_blank" href="https://www.thewilliamsgroupal.com/guides/" class="p-16" >All Guides</a></li> 962 <li id="menu-item-171" class="menu-item menu-item-type-post_type menu-item-object-guide-page " ><a href="https://www.thewilliamsgroupal.com/guide/birmingham/" class="p-16" >Birmingham</a></li> 963 <li id="menu-item-166" class="menu-item menu-item-type-post_type menu-item-object-guide-page " ><a href="https://www.thewilliamsgroupal.com/guide/northport/" class="p-16" >Northport</a></li> 964 <li id="menu-item-167" class="menu-item menu-item-type-post_type menu-item-object-guide-page " ><a href="https://www.thewilliamsgroupal.com/guide/tuscaloosa/" class="p-16" >Tuscaloosa</a></li> 965 <li id="menu-item-168" class="menu-item menu-item-type-post_type menu-item-object-guide-page " ><a href="https://www.thewilliamsgroupal.com/guide/cottondale/" class="p-16" >Cottondale</a></li> 966 <li id="menu-item-173" class="menu-item menu-item-type-post_type menu-item-object-guide-page " ><a href="https://www.thewilliamsgroupal.com/guide/homewood/" class="p-16" >Homewood</a></li> 967 <li id="menu-item-169" class="menu-item menu-item-type-post_type menu-item-object-guide-page " ><a href="https://www.thewilliamsgroupal.com/guide/coker/" class="p-16" >Coker</a></li> 968 <li id="menu-item-172" class="menu-item menu-item-type-post_type menu-item-object-guide-page " ><a href="https://www.thewilliamsgroupal.com/guide/vestavia-hills/" class="p-16" >Vestavia Hills</a></li> 969 <li id="menu-item-174" class="menu-item menu-item-type-post_type menu-item-object-guide-page " ><a href="https://www.thewilliamsgroupal.com/guide/mountain-brook/" class="p-16" >Mountain Brook</a></li> 970 <li id="menu-item-175" class="menu-item menu-item-type-post_type menu-item-object-guide-page " ><a href="https://www.thewilliamsgroupal.com/guide/hoover/" class="p-16" >Hoover</a></li> 971 <li id="menu-item-170" class="menu-item menu-item-type-post_type menu-item-object-guide-page " ><a href="https://www.thewilliamsgroupal.com/guide/mccalla/" class="p-16" >McCalla</a></li> 972 <li id="menu-item-295" class="menu-item menu-item-type-post_type menu-item-object-guide-page " ><a href="https://www.thewilliamsgroupal.com/guide/trussville/" class="p-16" >Trussville</a></li> 973 <li id="menu-item-309" class="menu-item menu-item-type-post_type menu-item-object-guide-page " ><a href="https://www.thewilliamsgroupal.com/guide/helena/" class="p-16" >Helena</a></li> 974 <li id="menu-item-310" class="menu-item menu-item-type-post_type menu-item-object-guide-page " ><a href="https://www.thewilliamsgroupal.com/guide/pelham/" class="p-16" >Pelham</a></li> 975 <li id="menu-item-314" class="menu-item menu-item-type-post_type menu-item-object-guide-page " ><a href="https://www.thewilliamsgroupal.com/guide/alabaster/" class="p-16" >Alabaster</a></li> 976 <li id="menu-item-308" class="menu-item menu-item-type-post_type menu-item-object-guide-page " ><a href="https://www.thewilliamsgroupal.com/guide/chelsea/" class="p-16" >Chelsea</a></li> 977 978</ul></div> 979</li> 980<li id="menu-item-1076" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children bt-ccomp" data-bt-ccomp="toggle"><a href="#" class="p-16" data-bt-ccomp-trigger>Next Chapter <i class="bt-fa-icon bt-fa-icon--small far fa-fw fa-chevron-down"></i></a> 981<div class="bt-ccomp__content px-16--safe"><ul class="bt-off-canvas__sub-menu level-0"> 982 <li id="menu-item-1081" class="menu-item menu-item-type-custom menu-item-object-custom " ><a href="https://www.thewilliamsgroupal.com/next-chapter/" class="p-16" >Your Next Chapter Starts Here</a></li> 983 <li id="menu-item-1553" class="menu-item menu-item-type-post_type menu-item-object-page " ><a href="https://www.thewilliamsgroupal.com/relocating-to-alabama/" class="p-16" >Relocating to Alabama</a></li> 984 <li id="menu-item-1552" class="menu-item menu-item-type-post_type menu-item-object-page " ><a href="https://www.thewilliamsgroupal.com/moving-to-tuscaloosa/" class="p-16" >Moving to Tuscaloosa</a></li> 985 <li id="menu-item-1551" class="menu-item menu-item-type-post_type menu-item-object-page " ><a href="https://www.thewilliamsgroupal.com/moving-to-northport/" class="p-16" >Moving to Northport</a></li> 986 <li id="menu-item-1547" class="menu-item menu-item-type-post_type menu-item-object-page " ><a href="https://www.thewilliamsgroupal.com/moving-to-birmingham/" class="p-16" >Moving to Birmingham</a></li> 987 <li id="menu-item-1550" class="menu-item menu-item-type-post_type menu-item-object-page " ><a href="https://www.thewilliamsgroupal.com/moving-to-hoover/" class="p-16" >Moving to Hoover</a></li>
988 <li id="menu-item-1549" class="menu-item menu-item-type-post_type menu-item-object-page " ><a href="https://www.thewilliamsgroupal.com/moving-to-homewood/" class="p-16" >Moving to Homewood</a></li> 989 <li id="menu-item-1548" class="menu-item menu-item-type-post_type menu-item-object-page " ><a href="https://www.thewilliamsgroupal.com/moving-to-vestavia-hills/" class="p-16" >Moving to Vestavia Hills</a></li> 990 991</ul></div> 992</li> 993<li id="menu-item-17" class="menu-item menu-item-type-custom menu-item-object-custom current-menu-ancestor current-menu-parent menu-item-has-children bt-ccomp" data-bt-ccomp="toggle"><a href="#" class="p-16" data-bt-ccomp-trigger>Resources <i class="bt-fa-icon bt-fa-icon--small far fa-fw fa-chevron-down"></i></a> 994<div class="bt-ccomp__content px-16--safe"><ul class="bt-off-canvas__sub-menu level-0"> 995 <li id="menu-item-18" class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item " ><a href="/blog/" class="p-16" >TWG Blog</a></li> 996 <li id="menu-item-13" class="menu-item menu-item-type-custom menu-item-object-custom " ><a href="/finance/" class="p-16" >Financing</a></li> 997 <li id="menu-item-20" class="menu-item menu-item-type-custom menu-item-object-custom " ><a href="/resources/" class="p-16" >Additional Resources</a></li> 998 <li id="menu-item-1772" class="menu-item menu-item-type-post_type menu-item-object-page " ><a href="https://www.thewilliamsgroupal.com/in-the-media/" class="p-16" >In the Media</a></li> 999 1000</ul></div> 1001</li> 1002</ul> 1003 <ul class="bt-nav-main bt-off-canvas__ccomp-nav"> 1004 <li> 1005 <div class="bt-ccomp" data-bt-ccomp="toggle"> 1006 <a href="#" class="py-16 px-16--safe" data-bt-ccomp-trigger> 1007 Saved Searches 1008 <span class="js-savedsearchcount uk-badge uk-badge-notification"> 1009 0 </span> 1010 <i class="far fa-fw fa-chevron-down"></i> 1011 </a> 1012 <div class="bt-ccomp__content jsx-off-canvas-saved-search-menu px-16--safe" /> 1013 </div> 1014 </div> 1015 </li> 1016 <li> 1017 <a href="/results-gallery/?favs=1" class="js-favorites at-user-favs-btn py-16 px-16--safe" data-cy="top-navbar__favorites-link"> 1018 <i class="fas fa-fw fa-heart"></i> 1019 Favorites 1020 <span class="js-favoritescount uk-badge uk-badge-notification"> 1021 0 </span> 1022 </a> 1023 </li> 1024 </ul> 1025 </nav> 1026<!-- Served from lPRXV-WORD06 -->
1026<script type='text/javascript' src='https://www.thewilliamsgroupal.com/wp-content/build/plugins/bt-testimonials.frontend.5f0d4557.min.js' id='bt-testimonials-widget-frontend-js'></script>
vendor: 1 bytes, line 1026
1026
1027<script type='text/javascript' src='https://bt-wpstatic.freetls.fastly.net/wp-content/themes/wp-base-theme/assets/js/build/manifest.46cd590d.min.js' id='bt_pt-manifest-js'></script>
vendor: 1 bytes, line 1027
1027
1028<script type='text/javascript' src='https://bt-wpstatic.freetls.fastly.net/wp-content/themes/wp-base-theme/assets/js/build/deps.5f3a1861.min.js' id='bt_pt-deps-js'></script>
vendor: 1 bytes, line 1028
1028
1029<script type='text/javascript' id='bt_pt-components-js-extra'> 1030/* <![CDATA[ */ 1031var bt_data = {"listings":null,"account":{"Offices":[{"_ID":15742,"Name":"The Williams Group at Keller Williams Realty","MLS":"","Phone":"(205) 292-2108","Fax":"","Address1":"4412 HWY 69 N","Address2":"","City":"Northport","State":"al","PostalCode":"35473","Website":"","PhotoUrl":""}],"SocialSettings":[{"Name":"RSS","Url":"\/feed","TenantID":14833},{"Name":"Facebook","Url":"https:\/\/www.facebook.com\/thewilliamsgroupatkw\/","TenantID":14833},{"Name":"Instagram","Url":"https:\/\/www.instagram.com\/thewilliamsgroupal\/","TenantID":14833},{"Name":"Linkedin","Url":"https:\/\/www.linkedin.com\/company\/the-williams-group-at-keller-williams-realty","TenantID":14833}],"TimeZoneID":2,"Website":"thewilliamsgroupal.com","CompanyName":"The Williams Group at Keller Williams Realty","LegalName":"The Williams Group at Keller Williams Realty","OfficeMLS":"UserID=all","ServiceArea":"West Alabama, Greater Birmingham Area","EmailAddress":"[email protected]","WebPhoneNumber":"(205) 292-2108","PhoneNumber":"(205) 292-2108","FaxNumber":"","Street":"4412 HWY 69 N","City":"Northport","State":"al","ZipCode":"35473","CraigsListArea":"","GoogleCode":"google code","AdwordsConversion":"18132602924","AdwordsSignupLabel":"yo3MCKnu36UcEKygpsZD","AdwordsLeadLabel":"adwords lead label","GMapKey":"AIzaSyDkI4WEplhhwG1bR2HLTOCxQ1-UgRR82Sg","TagLine":"","SubTagLine":"","ThemeName":"Hawkeye","HomeImageUrl":"homepage.jpg","DefaultMapLat":33.253452,"DefaultMapLng":-87.56541,"DefaultMapZoom":11,"OnStageServer":false,"HideStreet":0,"GuestUnbranded":false,"QuickSearchField":"CustomArea","ShowListingAreaOnPS":true,"ShowCountyOnPS":true,"AgentExportLeads":false,"IsCustomMapPin":false,"IsDiscountBroker":false,"ShowOpenHouse":true,"EmailDomain":"thewilliamsgroupal.net","CancelDate":"0001-01-01T00:00:00","LaunchDate":"2026-04-29T00:00:00","CraigsListUseCityForCampaign":false,"RegisterNoAutoLender":false,"AdWordsProjected":0,"HomeGainProjected":0,"AllowListingComments":true,"AllowAgentComments":true,"CraigsListLinkBehaviorID":0,"ShowSchoolSearch":true,"ShowSchoolDistrictSearch":false,"AllowAutoEAlert":true,"AllowAgentEAlertOverride":true,"CustomScript":"","AllowLeadModifyEAlert":true,"AllowFBLogin":true,"ShowPriceHistory":true,"ZillowWidgetStatus":0,"ShowDripPlans":true,"ShowNeighborhoodSearch":true,"SuccessManagerID":0,"AssignedToSuccessManagerDate":"0001-01-01T00:00:00","UseInstantSearch":true,"Name":"The Williams Group at Keller Williams Realty","Alias":"TWGKWRByronAL","BoardID":316,"BoardIDs":[128,316],"PrimaryDomain":"thewilliamsgroupal.com","UseCityForLocation":false,"ShowAgentsOnSiteKey":0,"ShowAgentsOnSiteTypeID":0,"LeadDistributionID":0,"NetworkID":0,"MobileWebPhoneNumber":"(205) 292-2108","TenantID":14833,"AllowGoogleLogin":false,"GoogleClientID":"","RentalsOnly":false,"AllowCraigslist":true,"LimitCraigslist":false,"RegisterShowOwnership":false,"PrimaryContactID":342862,"RegisterShowAgentDDL":false,"ShowSellerLeadCaptureForm":true,"BingWebmasterCode":"D8D04684151FD367E65EE086C044BB13","ShowTopHoodsOnGuides":false,"NotifyBrokerAdminOnPublished":false,"CustomConversionScript":"","IsCanadian":false,"IsLiteCustomer":false,"RequireIDXApproval":false,"ShowPreferredLender":false,"IsMultiBoard":true,"HomeIntroHtml":"","HomeMetaDescription":"","HomeMetaKeywords":""},"specialRules":{"ShowSchoolInfo":true,"ShowSchoolDistrictInfo":true,"ShowDaysOld":true,"ShowMapDisclaimer":false,"ShowYearBuilt":true,"ShowYearBuiltInDetails":true,"ShowNeighborhoodInfo":true,"ShowStatus":true,"ShowMobile":true,"HideStatusOnListingDetails":false,"HideAgentFromRequest":false,"HideContactMention":false,"HideSashTag":[""],"ShowPublicRemarks":true,"ShowFeatures":true,"ShowNumUnits":true,"ShowAcresSQFT":true,"ShowSQFT":true,"DisplaySQFT":true,"ShowDaysListed":true,"ShowPriceReduced":true,"ShowPricePerSqFt":true,"ShowGarages":true,"HideRentals":false,"ShowStories":true,"ShowHalfBaths":true,"ShowActiveContingent":false,"HideForeclosure":false,"HideHomeSearchNowBanner":false,"HideShortsale":true,"ShowListingStatus":true,"ChangeSearchTitle":"MLS Home Search","ShowRemarks":true,"ShowICBM":false,"ShowRegisteredInfo":false,"HideMobileNumbers":false,"HideMarketTrends":false,"HideListingsLink":false,"HideLandingSellInfo":false,"HideCompanyAddress":false,"HideZillow":false,"CraigsListUsePostalCode":false,"ShowMostPopular":true,"CraigsListGoToPropDeets":false,"UseHoodlike":false,"HideLandingHoods":false,"ShowSqFtSource":false,"AddDecimalToCoordinates":false,"ShowOffMarketAddress":true,"FancyFeaturedHouses":false,"ShowAllLeadsOption":true,"AddDirections":false,"AddExtrasToRemarks":false,"DontUseMoreFolder":false,"MaxDeetsBeforeRegister":null,"UseSacramentoPricing":false,"RestrictMarketTrends":false,"FeaturedHousesByOffice":false,"MaxListingResults":0,"ShowPreviewOffice":true,"FeatureListDelimiter":",","UseRetsListingKeyForImport":false,"OverrideLenderSub":false,"ShowAverageTrends":true,"ShowSharing":true,"ShowFBLike":true,"ShowListingCountInBannerAndQuickSearch":true,"DistressedReplacementText":"Distressed","ClientIsCanadian":false,"BoardIsCanadian":false,"ShowForeclosureBanner":true,"UseMetersForAcreageConversions":false,"ShowAgentInMapResults":false,"HideBrandingOnFinancePage":false,"UseMasterEmailForSyndication":false,"LandingPageForMarketTrends":0,"ShowRegistrationFormOnFirstPropertyDetailVie
1031wForAdwords":true,"ShowRegistrationFormOnFirstPropertyDetailViewForAdcenter":false,"DisableSyndicationForBoard":true,"EnableSyndicationForTenant":false,"ListAgentEmailDelimiter":"","StripExtraApostrophesFromData":true,"DetailsListingCourtesyOfText":"Listing Courtesy Of","ShowCourtesyOfUnderPreviewImage":false,"FeaturedHomesWhereClause":"","HideVirtualTours":false,"AllowAdditionalCraigsListListings":false,"ShowCounty":true,"DownloadPhotosOneAtATime":false,"HideLotSize":false,"HideLocalPics":false,"MLSContentOnly":false,"ShowAcresSearch":true,"ShowHudSearchOption":false,"BypassCLRegForm":false,"ReplaceUnderContract":"Under Contract","UseSlashParsingForBedRooms":false,"PhotoSqueezeCount":null,"HideAgentFromPropDesc":false,"HideSponsoredLenderLanguage":false,"ShowIDXApproved":false,"ShowPreferredLender":false,"OptOutOfCASL":false,"IgnoreMalformedHeaders":false,"ShowPriceTypeOnListing":false,"ShowPending":true,"HideComingSoon":false,"IncreaseDisclaimerFontSize":false},"searchFields":[{"FieldID":1,"Group":"PropType","FieldName":"Single-Family Home","FieldValue":"SF","InQuickSearch":true,"ListingField":"","IsHidden":false},{"FieldID":2,"Group":"PropType","FieldName":"Condo","FieldValue":"C","InQuickSearch":true,"ListingField":"","IsHidden":false},{"FieldID":3,"Group":"PropType","FieldName":"Townhouse","FieldValue":"VT","InQuickSearch":true,"ListingField":"","IsHidden":false},{"FieldID":4,"Group":"PropType","FieldName":"Vacant Land \/ Lots","FieldValue":"VC","InQuickSearch":true,"ListingField":"","IsHidden":false},{"FieldID":5,"Group":"PropType","FieldName":"Manufactured Home","FieldValue":"M","InQuickSearch":true,"ListingField":"","IsHidden":false},{"FieldID":6,"Group":"PropType","FieldName":"Multi-Family","FieldValue":"MF","InQuickSearch":true,"ListingField":"","IsHidden":false},{"FieldID":7,"Group":"PropType","FieldName":"Commercial","FieldValue":"CM","InQuickSearch":true,"ListingField":"","IsHidden":false},{"FieldID":9,"Group":"PropType","FieldName":"Rentals","FieldValue":"RN","InQuickSearch":true,"ListingField":"","IsHidden":false},{"FieldID":10,"Group":"PropType","FieldName":"Farm","FieldValue":"FM","InQuickSearch":true,"ListingField":"","IsHidden":false},{"FieldID":11,"Group":"Feature","SubGroup":"Waterfront","FieldName":"Lake Front","FieldValue":"L","InQuickSearch":true,"ListingField":"IsLakefront","IsHidden":false},{"FieldID":12,"Group":"Feature","SubGroup":"Property Features","FieldName":"On Golf Course","FieldValue":"GC","InQuickSearch":true,"ListingField":"OnGolfCourse","IsHidden":false},{"FieldID":13,"Group":"Feature","SubGroup":"Community Features","FieldName":"Gated Community","FieldValue":"GT","InQuickSearch":true,"ListingField":"InGatedCommunity","IsHidden":false},{"FieldID":14,"Group":"Feature","SubGroup":"Waterfront","FieldName":"Waterfront","FieldValue":"W","InQuickSearch":true,"ListingField":"IsWaterfront","IsHidden":false},{"FieldID":18,"Group":"Feature","SubGroup":"Property Features","FieldName":"New Construction","FieldValue":"N","InQuickSearch":true,"ListingField":"IsNewHome","IsHidden":false},{"FieldID":19,"Group":"Feature","SubGroup":"Property Features","FieldName":"Historic Property","FieldValue":"H","InQuickSearch":true,"ListingField":"IsHistoric","IsHidden":false},{"FieldID":20,"Group":"Feature","SubGroup":"Exterior Features","FieldName":"Garage","FieldValue":"GR","InQuickSearch":true,"ListingField":"HasGarage","IsHidden":false},{"FieldID":21,"Group":"Feature","SubGroup":"Exterior Features","FieldName":"Pool","FieldValue":"P","InQuickSearch":true,"ListingField":"HasPool","IsHidden":false},{"FieldID":22,"Group":"Feature","SubGroup":"Interior Features","FieldName":"Fireplace","FieldValue":"F","InQuickSearch":true,"ListingField":"HasFireplace","IsHidden":false},{"FieldID":26,"Group":"Feature","SubGroup":"Title Status","FieldName":"Foreclosure or Bank-owned","FieldValue":"BO","InQuickSearch":false,"ListingField":"IsBankOwned","IsHidden":false},{"FieldID":27,"Group":"Feature","FieldName":"Open House","FieldValue":"OH","InQuickSearch":false,"ListingField":"HasOpenHouse","IsHidden":false},{"FieldID":29,"Group":"Feature","SubGroup":"Waterfront","FieldName":"River Front","FieldValue":"R","InQuickSearch":true,"ListingField":"IsRiverfront","IsHidden":false},{"FieldID":33,"Group":"Feature","SubGroup":"Community Features","FieldName":"Horse Property","FieldValue":"HP","InQuickSearch":true,"ListingField":"IsHorse","IsHidden":false},{"FieldID":111,"Group":"Feature","SubGroup":"Waterfront","FieldName":"Creek Front","FieldValue":"ICF","InQuickSearch":false,"ListingField":"IsCreekFront","IsHidden":false},{"FieldID":132,"Group":"Feature","SubGroup":"Property Features","FieldName":"Cul-De-Sac","FieldValue":"ICDS","InQuickSearch":false,"ListingField":"InCulDeSac","IsHidden":false},{"FieldID":134,"Group":"Feature","SubGroup":"Exterior Features","FieldName":"Carport","FieldValue":"HCARP","InQuickSearch":false,"ListingField":"HasCarport","IsHidden":false},{"FieldID":136,"Group":"Feature","SubGroup":"Exterior Features","FieldName":"Fenced Yard","FieldValue":"ISFENCE","InQuickSearch":false,"ListingField":"IsFenced","IsHidden":false},{"FieldID":137,"Group":"Feature","SubGroup":"Exterior Features","FieldName":"Pool - Below Ground","FieldValue":"HPIGP","InQuickSearch":false,"ListingField":"HasPrivateInGroundPool","IsHidden":false},{"FieldID":138,"Group":"Feature","SubGroup":"Exterior Features","FieldName":"Pool - Above Ground","FieldValue":"HPAGP","InQuickSearch":false,"ListingField":"HasPrivateAboveGroundPool","IsHidden":false},{"FieldID":139,"Group":"Feature","SubGroup":"Community Features","FieldName":"Community Pool","FieldValue":"HCPOOL","InQuickSearch":false,"ListingField":"HasCommunityPool","IsHidden":false},{"FieldID":140,"Group":"Feature","SubGroup":"Interior Features","FieldName":"Basement","FieldValue":"HBASE","InQuickSearch":false,"ListingField":"HasBasement","IsHidden":false},{"FieldID":141,"Group":"Feature","SubGroup":"Interior Features","FieldName":"Basement - Finis
1031hed","FieldValue":"HFBASE","InQuickSearch":false,"ListingField":"HasFinishedBasement","IsHidden":false},{"FieldID":142,"Group":"Feature","SubGroup":"Interior Features","FieldName":"Basement - Unfinished","FieldValue":"HUFBASE","InQuickSearch":false,"ListingField":"HasUnfinishedBasement","IsHidden":false},{"FieldID":145,"Group":"Feature","SubGroup":"Exterior Features","FieldName":"Dock","FieldValue":"HDOCK","InQuickSearch":false,"ListingField":"HasDock","IsHidden":false},{"FieldID":146,"Group":"Feature","SubGroup":"Style","FieldName":"Ranch \/ One Story","FieldValue":"ISS","InQuickSearch":false,"ListingField":"IsSingleStory","IsHidden":false},{"FieldID":147,"Group":"PropType","FieldName":"Commercial-Lease","FieldValue":"CL","InQuickSearch":true,"ListingField":"","IsHidden":false},{"FieldID":151,"Group":"Feature","SubGroup":"Interior Features","FieldName":"Basement - Partially Finished","FieldValue":"HPFB","InQuickSearch":false,"ListingField":"HasPartiallyFinishedBasement","IsHidden":false},{"FieldID":153,"Group":"Feature","SubGroup":"Exterior Features","FieldName":"Parking - RV \/ Boat","FieldValue":"HBP","InQuickSearch":false,"ListingField":"HasBoatParking","IsHidden":false},{"FieldID":155,"Group":"Feature","SubGroup":"Exterior Features","FieldName":"Storage Buildings","FieldValue":"HSB","InQuickSearch":false,"ListingField":"HasStorageBuildings","IsHidden":false},{"FieldID":158,"Group":"Feature","SubGroup":"Community Features","FieldName":"Has HOA","FieldValue":"HOA","InQuickSearch":false,"ListingField":"HasHOA","IsHidden":false},{"FieldID":164,"Group":"Feature","SubGroup":"Interior Features","FieldName":"Hardwood Floors","FieldValue":"HHF","InQuickSearch":false,"ListingField":"HasHardwoodFloors","IsHidden":false},{"FieldID":196,"Group":"Feature","SubGroup":"Not Title Status","FieldName":"NOT Foreclosure or Bank-owned","FieldValue":"NBO","InQuickSearch":false,"ListingField":"IsBankOwned","IsHidden":false},{"FieldID":198,"Group":"PropType","FieldName":"Patio Home","FieldValue":"PH","InQuickSearch":true,"ListingField":"","IsHidden":false},{"FieldID":201,"Group":"Feature","SubGroup":"Financing","FieldName":"VA Loan","FieldValue":"VA","InQuickSearch":false,"ListingField":"IsVAHome","IsHidden":false},{"FieldID":207,"Group":"Feature","SubGroup":"Community Features","FieldName":"No HOA","FieldValue":"NHOA","InQuickSearch":false,"ListingField":"IsNotHOA","IsHidden":false},{"FieldID":209,"Group":"Feature","SubGroup":"Financing","FieldName":"FHA Loan","FieldValue":"IFHA","InQuickSearch":false,"ListingField":"IsFHA","IsHidden":false},{"FieldID":211,"Group":"Feature","SubGroup":"Exterior Features","FieldName":"Garage - Attached","FieldValue":"HAG","InQuickSearch":false,"ListingField":"HasAttachedGarage","IsHidden":false},{"FieldID":212,"Group":"Feature","SubGroup":"Exterior Features","FieldName":"Garage - Detached","FieldValue":"HDC","InQuickSearch":false,"ListingField":"HasDetachedGarage","IsHidden":false},{"FieldID":217,"Group":"Feature","SubGroup":"Property Features","FieldName":"Public Water","FieldValue":"IPW","InQuickSearch":false,"ListingField":"IsPublicWater","IsHidden":false},{"FieldID":218,"Group":"Feature","SubGroup":"Property Features","FieldName":"Sewer","FieldValue":"IS","InQuickSearch":false,"ListingField":"IsSewer","IsHidden":false},{"FieldID":220,"Group":"Feature","SubGroup":"Property Features","FieldName":"Septic","FieldValue":"ISP","InQuickSearch":false,"ListingField":"IsSeptic","IsHidden":false},{"FieldID":223,"Group":"Feature","SubGroup":"Interior Features","FieldName":"Wet Bar","FieldValue":"HWB","InQuickSearch":false,"ListingField":"HasWetBar","IsHidden":false},{"FieldID":224,"Group":"Feature","SubGroup":"Interior Features","FieldName":"Walk-In Closet","FieldValue":"HWIC","InQuickSearch":false,"ListingField":"HasWalkInCloset","IsHidden":false},{"FieldID":226,"Group":"Feature","SubGroup":"Exterior Features","FieldName":"Sprinkler System","FieldValue":"HSS","InQuickSearch":false,"ListingField":"HasSprinklerSystem","IsHidden":false},{"FieldID":227,"Group":"Feature","SubGroup":"Exterior Features","FieldName":"Deck","FieldValue":"HD","InQuickSearch":false,"ListingField":"HasDeck","IsHidden":false},{"FieldID":228,"Group":"Feature","SubGroup":"Exterior Features","FieldName":"Patio","FieldValue":"HPTO","InQuickSearch":false,"ListingField":"HasPatio","IsHidden":false},{"FieldID":230,"Group":"Feature","SubGroup":"Property Features","FieldName":"Corner Lot","FieldValue":"ICL","InQuickSearch":false,"ListingField":"IsCornerLot","IsHidden":false},{"FieldID":231,"Group":"Feature","SubGroup":"Community Features","FieldName":"Community Playground","FieldValue":"HCPG","InQuickSearch":false,"ListingField":"HasCommunityPlayground","IsHidden":false},{"FieldID":233,"Group":"Feature","SubGroup":"Property Features","FieldName":"Pets Allowed","FieldValue":"IPA","InQuickSearch":false,"ListingField":"IsPetsAllowed","IsHidden":false},{"FieldID":237,"Group":"Feature","SubGroup":"Exterior Features","FieldName":"No Pool","FieldValue":"HNP","InQuickSearch":false,"ListingField":"HasNoPool","IsHidden":false},{"FieldID":241,"Group":"Feature","SubGroup":"Interior Features","FieldName":"Central Air Conditioning","FieldValue":"HCA","InQuickSearch":false,"ListingField":"HasCentralAir","IsHidden":false},{"FieldID":266,"Group":"Feature","SubGroup":"Financing","FieldName":"Conventional Financing","FieldValue":"CNF","InQuickSearch":false,"ListingField":"IsConventional","IsHidden":false},{"FieldID":269,"Group":"Feature","SubGroup":"Financing","FieldName":"Trade\/Exchange","FieldValue":"TE","InQuickSearch":false,"ListingField":"IsTradeExchange","IsHidden":false},{"FieldID":279,"Group":"Feature","SubGroup":"Style","FieldName":"1.5 Story","FieldValue":"OHS","InQuickSearch":false,"ListingField":"IsOneAndHalfStory","IsHidden":false},{"FieldID":282,"Group":"Feature","SubGroup":"Style","FieldName":"Two Story","FieldValue":"TS","InQuickSearch":false,"ListingField":"IsTwoStory","IsHidden":false},{"FieldID":293,"Group":"Feature","SubGroup":"Community Features","FieldName":"Community Dock","FieldValue":"CD","InQuickSearch":false,"ListingField":"HasCommonDock","IsHidden":false},{"FieldID":294,"Group":"Feature","SubGroup":"Community Features","FieldName":"Tennis Community","FieldValue":"TC","InQuickSearch":false,"ListingField":"InTennisCommunity","IsHidden":false},{"FieldID":299,"Group":"Feature","SubGroup":"Exterior Features","FieldName":"Brick","FieldValue":"BRC","InQuickSearch":false,"ListingField":"IsBrick","IsHidden":false},{"FieldID":305,"Group":"Feature","SubGroup":"Exterior Features","FieldName":"Block Construction","FieldValue":"IBC","InQuickSearch":false,"ListingField":"IsBlock","IsHidden":false},{"FieldID":307,"Group":"Feature","SubGroup":"Interior Features","FieldName":"Elevator","FieldValue":"HE","InQuickSearch":false,"ListingField":"HasElevator","IsHidden":false},{"FieldID":308,"Group":"Feature","SubGroup":"Waterfront","FieldName":"Not Waterfront","FieldValue":"NWF","InQuickSearch":false,"ListingField":"IsNotWaterfront","IsHidden":false},{"FieldID":317,"Group":"Feature","SubGroup":"Interior Features","FieldName":"Heat - Gas","FieldValue":"HEATG","InQuickSearch":false,"ListingField":"IsGasHeat","IsHidden":false},{"FieldID":318,"Group":"Feature","SubGroup":"Interior Features","FieldName":"Heat - Electric","FieldValue":"HEATE","InQuickSearch":false,"ListingField":"IsElectricHeat","IsHidden":false},{"FieldID":323,"Group":"Feature","SubGroup":"Financing","FieldName":"Cash","FieldValue":"CASH","InQuickSearch":false,"ListingField":"IsCash","IsHidden":false},{"FieldID":325,"Group":"Feature","SubGroup":"Exterior Features","FieldName":"Balcony","FieldValue":"BALC","InQuickSearch":false,"ListingField":"HasBalcony","IsHidden":false},{"FieldID":327,"Group":"Feature","SubGroup":"Interior Features","FieldName":"Cathedral Ceiling","FieldValue":"CATH","InQuickSearch":false,"ListingField":"HasCathedralCeilling","IsHidden":false},{"FieldID":341,"Group":"Feature","SubGroup":"Interior Features","FieldName":"Pantry","FieldValue":"PNTRY","InQuickSearch":false,"ListingField":"HasPantry","IsHidden":false},{"FieldID":342,"Group":"Feature","SubGroup":"Exterior Features","FieldName":"Porch","FieldValue":"PRCH","InQuickSearch":false,"ListingField":"HasPorch","IsHidden":false},{"FieldID":348,"Group":"Feature","SubGroup":"Exterior Features","FieldName":"Guest House","FieldValue":"GHOUS","InQuickSearch":false,"ListingField":"HasGuestHouse","IsHidden":false},{"FieldID":355,"Group":"Feature","SubGroup":"Exterior Features","FieldName":"Workshop","FieldValue":"WKSHP","InQuickSearch":false,"ListingField":"HasWorkshop","IsHidden":false},{"FieldID":356,"Group":"Feature","SubGroup":"Financing","FieldName":"USDA","FieldValue":"USDAF","InQuickSearch":false,"ListingField":"IsUSDA","IsHidden":false},{"FieldID":361,"Group":"Feature","SubGroup":"Interior Features","FieldName":"Main Floor Laundry","FieldValue":"MFL","InQuickSearch":false,"ListingField":"HasMainFloorLaundry","IsHidden":false},{"FieldID":367,"Group":"Feature","SubGroup":"Property Features","FieldName":"Lot Level To Street","FieldValue":"LVL","InQuickSearch":false,"ListingField":"IsLotLevelToStreet","IsHidden":false},{"FieldID":368,"Group":"Feature","SubGroup":"Property Features","FieldName":"Propane Utilities","FieldValue":"PU","InQuickSearch":false,"ListingField":"IsPropane","IsHidden":false},{"FieldID":379,"Group":"Feature","SubGroup":"Style","FieldName":"Split Level","FieldValue":"SL","InQuickSearch":false,"ListingField":"IsSplitLevel","IsHidden":false},{"FieldID":383,"Group":"Feature","SubGroup":"Style","FieldName":"Duplex","FieldValue":"DUP","InQuickSearch":false,"ListingField":"IsDuplex","IsHidden":false},{"FieldID":390,"Group":"Feature","SubGroup":"Exterior Features","FieldName":"Stucco","FieldValue":"STUC","InQuickSearch":false,"ListingField":"IsStucco","IsHidden":false},{"FieldID":1297,"Group":"Feature","SubGroup":"Style","FieldName":"Triplex","FieldValue":"TRI","InQuickSearch":false,"ListingField":"IsTriplex","IsHidden":false},{"FieldID":1301,"Group":"Feature","SubGroup":"Exterior Features","FieldName":"Barn","FieldValue":"HB","InQuickSearch":false,"ListingField":"HasBarn","IsHidden":false},{"FieldID":1304,"Group":"Feature","SubGroup":"Interior Features","FieldName":"Basement - Full","FieldValue":"FB","InQuickSearch":false,"ListingField":"IsFullBasement","IsHidden":false},{"FieldID":2343,"Group":"Feature","SubGroup":"Property Features","FieldName":"Storm Shelter","FieldValue":"STORM","InQuickSearch":false,"ListingField":"HasStormShelter","IsHidden":false}],"searchFieldsCondensed":{"expandedproptypes":{"SF":{"key":"SF","DDName":"Homes (Single Family)","TagName":"Homes","last":false},"C":{"key":"C","DDName":"Condos","TagName":"Condos","last":false},"VT":{"key":"VT","DDName":"Townhouses","TagName":"Townhouses","last":false},"VC":{"key":"VC","DDName":"Land & Lots","TagName":"Land & Lots","last":false},"M":{"key":"M","DDName":"Manufactured Home","TagName":"Manufactured Home","last":false},"MF":{"key":"MF","DDName":"Multi-Family","TagName":"Multi-Family","last":false},"CM":{"key":"CM","DDName":"Commercial","TagName":"Commercial","last":false},"RN":{"key":"RN","DDName":"Rentals","TagName":"Rentals","last":false},"FM":{"key":"FM","DDName":"Farm","TagName":"Farm","last":false},"CL":{"key":"CL","DDName":"Commercial-Lease","TagName":"Commercial-Lease","last":false},"PH":{"key":"PH","DDName":"Patio Home","TagName":"Patio Home","last":true}},"features":{"Community Features":{"Community Dock":"CD","Community Playground":"HCPG","Community Pool":"HCPOOL","Gated Community":"GT","Has HOA":"HOA","Horse Property":"HP","No HOA":"NHOA","Tennis Community":"TC"},"Property Features":{"Corner Lot":"ICL","Cul-De-Sac":"ICDS","Historic Property":"H","Lot Level To Street":"LVL","New Construction":"N","On Golf Course":"GC","Pets Allowed":"IPA","Propane Utilities":"PU","Public Water":"IPW","Septic":"ISP","Sewer":"IS","Storm Shelter":"STORM"},"Waterfront":{"Creek Front":"ICF","Lake Front":"L","Not Waterfront":"NWF","River Front":"R","Waterfront":"W"},"Exterior Features":{"Balcony":"BALC","Barn":"HB","Block Construction":"IBC","Brick":"BRC","Carport":"HCARP","Deck":"HD","Dock":"HDOCK","Fenced Yard":"ISFENCE","Garage":"GR","Garage - Attached":"HAG","Garage - Detached":"HDC","Guest House":"GHOUS","No Pool":"HNP","Parking - RV \/ Boat":"HBP","Patio":"HPTO","Pool":"P","Pool - Above Ground":"HPAGP","Pool - Below Ground":"HPIGP","Porch":"PRCH","Sprinkler System":"HSS","Storage Buildings":"HSB","Stucco":"STUC","Workshop":"WKSHP"}
1031,"Interior Features":{"Basement":"HBASE","Basement - Finished":"HFBASE","Basement - Full":"FB","Basement - Partially Finished":"HPFB","Basement - Unfinished":"HUFBASE","Cathedral Ceiling":"CATH","Central Air Conditioning":"HCA","Elevator":"HE","Fireplace":"F","Hardwood Floors":"HHF","Heat - Electric":"HEATE","Heat - Gas":"HEATG","Main Floor Laundry":"MFL","Pantry":"PNTRY","Walk-In Closet":"HWIC","Wet Bar":"HWB"},"Style":{"1.5 Story":"OHS","Duplex":"DUP","Ranch \/ One Story":"ISS","Split Level":"SL","Triplex":"TRI","Two Story":"TS"},"Financing":{"Cash":"CASH","Conventional Financing":"CNF","FHA Loan":"IFHA","Trade\/Exchange":"TE","USDA":"USDAF","VA Loan":"VA"},"popular":{"Waterfront":"W","New Construction":"N","Garage":"GR","Pool":"P","Fireplace":"F","Basement":"HBASE"}},"locations":[{"Value":204947,"Name":"Birmingham"},{"Value":204948,"Name":"Coker"},{"Value":204949,"Name":"Cottondale"},{"Value":204950,"Name":"Homewood"},{"Value":205059,"Name":"Hoover"},{"Value":204951,"Name":"McCalla"},{"Value":204952,"Name":"Mountain Brook"},{"Value":204954,"Name":"Northport"},{"Value":204955,"Name":"Tuscaloosa"},{"Value":204956,"Name":"Vestavia Hills"}],"year":[2027,2026,2025,2024,2023,2022,2021,2020,2019,2018,2017,2016,2015,2014,2013,2012,2011,2010,2009,2008,2007,2006,2005,2000,1995,1990,1980,1970,1960,1950,1940,1930,1920,1900,1850,1800,1750]},"menuItems":[{"id":7,"url":"\/","title":"Home","parent":0},{"id":9,"url":"\/agents\/","title":"Meet the Team","parent":0},{"id":8,"url":"\/results\/","title":"Search","parent":0},{"id":11,"url":"\/results-gallery\/?userID=all","title":"Our Listings","parent":8},{"id":10,"url":"\/results-map\/","title":"Map Search","parent":8},{"id":12,"url":"\/buy\/","title":"Buyer Guides","parent":0},{"id":103,"url":"https:\/\/www.thewilliamsgroupal.com\/first-time-home-buyers\/","title":"Buying Your First Home","parent":12},{"id":157,"url":"https:\/\/www.thewilliamsgroupal.com\/buying-selling-together\/","title":"Buying & Selling Together","parent":12},{"id":184,"url":"https:\/\/www.thewilliamsgroupal.com\/veteran-va-home-buyers\/","title":"Veteran (VA) Home Buyers","parent":12},{"id":163,"url":"https:\/\/www.thewilliamsgroupal.com\/investment-property-buyers\/","title":"Investment Property Buyers","parent":12},{"id":136,"url":"https:\/\/www.thewilliamsgroupal.com\/relocating-to-alabama\/","title":"Relocating to Alabama","parent":12},{"id":466,"url":"https:\/\/www.thewilliamsgroupal.com\/short-term-rentals\/","title":"Short-Term Rentals","parent":12},{"id":467,"url":"https:\/\/www.thewilliamsgroupal.com\/new-construction-homes\/","title":"New Construction Homes","parent":12},{"id":650,"url":"https:\/\/www.thewilliamsgroupal.com\/ua-parent-buyers\/","title":"University of Alabama Parents - Condo Buyer Guide","parent":12},{"id":14,"url":"\/sell\/","title":"Seller Guides","parent":0},{"id":147,"url":"https:\/\/www.thewilliamsgroupal.com\/selling-during-divorce\/","title":"Selling During a Divorce","parent":14},{"id":153,"url":"https:\/\/www.thewilliamsgroupal.com\/downsizing-sellers\/","title":"Downsizing Sellers","parent":14},{"id":213,"url":"https:\/\/www.thewilliamsgroupal.com\/need-to-sell-fast-facing-foreclosure\/","title":"Need to Sell Fast\/Facing Foreclosure","parent":14},{"id":214,"url":"https:\/\/www.thewilliamsgroupal.com\/land-lot-sellers\/","title":"Land & Lot Sellers","parent":14},{"id":15,"url":"\/sell\/","title":"Sell Your Home","parent":14},{"id":142,"url":"https:\/\/www.thewilliamsgroupal.com\/selling-an-inherited-home\/","title":"Selling an Inherited Home","parent":14},{"id":19,"url":"\/guides\/","title":"City Guides","parent":0},{"id":296,"url":"https:\/\/www.thewilliamsgroupal.com\/guides\/","title":"All Guides","parent":19},{"id":171,"url":"https:\/\/www.thewilliamsgroupal.com\/guide\/birmingham\/","title":"Birmingham","parent":19},{"id":166,"url":"https:\/\/www.thewilliamsgroupal.com\/guide\/northport\/","title":"Northport","parent":19},{"id":167,"url":"https:\/\/www.thewilliamsgroupal.com\/guide\/tuscaloosa\/","title":"Tuscaloosa","parent":19},{"id":168,"url":"https:\/\/www.thewilliamsgroupal.com\/guide\/cottondale\/","title":"Cottondale","parent":19},{"id":173,"url":"https:\/\/www.thewilliamsgroupal.com\/guide\/homewood\/","title":"Homewood","parent":19},{"id":169,"url":"https:\/\/www.thewilliamsgroupal.com\/guide\/coker\/","title":"Coker","parent":19},{"id":172,"url":"https:\/\/www.thewilliamsgroupal.com\/guide\/vestavia-hills\/","title":"Vestavia Hills","parent":19},{"id":174,"url":"https:\/\/www.thewilliamsgroupal.com\/guide\/mountain-brook\/","title":"Mountain Brook","parent":19},{"id":175,"url":"https:\/\/www.thewilliamsgroupal.com\/guide\/hoover\/","title":"Hoover","parent":19},{"id":170,"url":"https:\/\/www.thewilliamsgroupal.com\/guide\/mccalla\/","title":"McCalla","parent":19},{"id":295,"url":"https:\/\/www.thewilliamsgroupal.com\/guide\/trussville\/","title":"Trussville","parent":19},{"id":309,"url":"https:\/\/www.thewilliamsgroupal.com\/guide\/helena\/","title":"Helena","parent":19},{"id":310,"url":"https:\/\/www.thewilliamsgroupal.com\/guide\/pelham\/","title":"Pelham","parent":19},{"id":314,"url":"https:\/\/www.thewilliamsgroupal.com\/guide\/alabaster\/","title":"Alabaster","parent":19},{"id":308,"url":"https:\/\/www.thewilliamsgroupal.com\/guide\/chelsea\/","title":"Chelsea","parent":19},{"id":1076,"url":"https:\/\/www.thewilliamsgroupal.com\/next-chapter\/","title":"Next Chapter","parent":0},{"id":1081,"url":"https:\/\/www.thewilliamsgroupal.com\/next-chapter\/","title":"Your Next Chapter Starts Here","parent":1076},{"id":1553,"url":"https:\/\/www.thewilliamsgroupal.com\/relocating-to-alabama\/","title":"Relocating to Alabama","parent":1076},{"id":1552,"url":"https:\/\/www.thewilliamsgroupal.com\/moving-to-tuscaloosa\/","title":"Moving to Tuscaloosa","parent":1076},{"id":1551,"url":"https:\/\/www.thewilliamsgroupal.com\/moving-to-northport\/","title":"Moving to Northport","parent":1076},{"id":1547,"url":"https:\/\/www.thewilliamsgroupal.com\/moving-to-birmingham\/","title":"Moving to Birmingham","parent":1076},{"id":1550,"url":"https:\/\/www.thewilliamsgroupal.com\/moving-to-hoover\/","title":"Moving to Hoover","parent":1076},{"id":1549,"url":"https:\/\/www.thewilliamsgroupal.com\/moving-to-homewood\/","title":"Moving to Homewood","parent":1076},{"id":1548,"url":"https:\/\/www.thewilliamsgroupal.com\/moving-to-vestavia-hills\/","title":"Moving to Vestavia Hills","parent":1076},{"id":17,"url":"\/resources\/","title":"Resources","parent":0},{"id":18,"url":"\/blog\/","title":"TWG Blog","parent":17},{"id":13,"url":"\/finance\/","title":"Financing","parent":17},{"id":20,"url":"\/resources\/","title":"Additional Resources","parent":17},{"id":1772,"url":"https:\/\/www.thewilliamsgroupal.com\/in-the-media\/","title":"In the Media","parent":17}]}; 1032/* ]]> */ 1033</script>
vendor: 1 bytes, line 1033
1033
1034<script type='text/javascript' src='https://bt-wpstatic.freetls.fastly.net/wp-content/themes/wp-base-theme/assets/js/build/components.36ad7330.min.js' id='bt_pt-components-js'></script>
vendor: 1 bytes, line 1034
1034
1035<script type='text/javascript' src='https://bt-wpstatic.freetls.fastly.net/wp-includes/js/dist/hooks.min.js' id='wp-hooks-js'></script>
vendor: 1 bytes, line 1035
1035
1036<script type='text/javascript' src='https://bt-wpstatic.freetls.fastly.net/wp-includes/js/dist/deprecated.min.js' id='wp-deprecated-js'></script>
vendor: 1 bytes, line 1036
1036
1037<script type='text/javascript' src='https://bt-wpstatic.freetls.fastly.net/wp-includes/js/dist/dom.min.js' id='wp-dom-js'></script>
vendor: 1 bytes, line 1037
1037
1038<script type='text/javascript' src='https://bt-wpstatic.freetls.fastly.net/wp-includes/js/dist/is-shallow-equal.min.js' id='wp-is-shallow-equal-js'></script>
vendor: 1 bytes, line 1038
1038
1039<script type='text/javascript' src='https://bt-wpstatic.freetls.fastly.net/wp-includes/js/dist/i18n.min.js' id='wp-i18n-js'></script>
vendor: 1 bytes, line 1039
1039
1040<script type='text/javascript' id='wp-i18n-js-after'> 1041wp.i18n.setLocaleData( { 'text direction\u0004ltr': [ 'ltr' ] } ); 1042</script>
vendor: 1 bytes, line 1042
1042
1043<script type='text/javascript' id='wp-keycodes-js-translations'> 1044( function( domain, translations ) { 1045 var localeData = translations.locale_data[ domain ] || translations.locale_data.messages; 1046 localeData[""].domain = domain; 1047 wp.i18n.setLocaleData( localeData, domain ); 1048} )( "default", { "locale_data": { "messages": { "": {} } } } ); 1049</script>
vendor: 1 bytes, line 1049
1049
1050<script type='text/javascript' src='https://bt-wpstatic.freetls.fastly.net/wp-includes/js/dist/keycodes.min.js' id='wp-keycodes-js'></script>
vendor: 1 bytes, line 1050
1050
1051<script type='text/javascript' src='https://bt-wpstatic.freetls.fastly.net/wp-includes/js/dist/priority-queue.min.js' id='wp-priority-queue-js'></script>
vendor: 1 bytes, line 1051
1051
1052<script type='text/javascript' src='https://bt-wpstatic.freetls.fastly.net/wp-includes/js/dist/compose.min.js' id='wp-compose-js'></script>
vendor: 1 bytes, line 1052
1052
1053<script type='text/javascript' src='https://bt-wpstatic.freetls.fastly.net/wp-includes/js/dist/redux-routine.min.js' id='wp-redux-routine-js'></script>
vendor: 1 bytes, line 1053
1053
1054<script type='text/javascript' src='https://bt-wpstatic.freetls.fastly.net/wp-includes/js/dist/data.min.js' id='wp-data-js'></script>
vendor: 1 bytes, line 1054
1054
1055<script type='text/javascript' id='wp-data-js-after'> 1056( function() { 1057 var userId = 0; 1058 var storageKey = "WP_DATA_USER_" + userId; 1059 wp.data 1060 .use( wp.data.plugins.persistence, { storageKey: storageKey } ); 1061 wp.data.plugins.persistence.__unstableMigrate( { storageKey: storageKey } ); 1062} )(); 1063</script>
vendor: 1 bytes, line 1063
1063
1064<script type='text/javascript' id='bt-block-editor-forms-frontend-scripts-js-before'> 1065window.currentPostID = 1829; 1066</script>
vendor: 1 bytes, line 1066
1066
1067<script type='text/javascript' src='https://www.thewilliamsgroupal.com/wp-content/build/plugins/bt-block-editor-forms.frontend.7803f122.min.js' id='bt-block-editor-forms-frontend-scripts-js'></script>
1067 1068
1068<script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","licenseKey":"NRBR-ef6a1ade564393667ce","applicationID":"15738311","transactionName":"ZlUBbRBSXUNSAhVQV18fIloWWlxeHAgPXV1J","queueTime":0,"applicationTime":270,"atts":"ShIWG1hIThwRAEMDQ0xN","errorBeacon":"bam.nr-data.net","agent":""}</script>
1068</body> 1069</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.