1<!DOCTYPE html> 2<html class="" lang="en-US"> 3<head> 4 <!-- lPRXV-WORD07 --> 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":"EZv0SOD1YXk+jxOZbjx6nN\/fD0vE2illh+l7V4PlmmM="},"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"}
11,"_ID":6429472508,"IsRegistered":false,"TenantID":14833,"FirstName":"Guest","LastName":"Visitor","FavoriteCount":0,"ActiveSearchCount":0},"visitDetails":{"_ID":7587702066,"Source":"DIRECT","StartDate":"2026-10-04T17:43:43.13","WebVisitorID":6429472508,"Url":"https:\/\/www.thewilliamsgroupal.com\/agents\/","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(1791153823000); 13 </script>
13 14 <title>Tuscaloosa & Birmingham Real Estate Agents | Williams Group</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":6429472508,"dimension4":"unregistered","dimension11":"6429472508"}); 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":6429472508,"visitId":7587702066,"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_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' /> 89
89<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 89
89
90<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 90
90
91<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 91
91
92<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 92
92
93<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 93
93
94<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 94
94
95<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 95
95
96<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>
96 97 98<!-- Meta Description --> 99<meta name="description" content="Meet The Williams Group\'s real estate agents serving Tuscaloosa, Northport, West Alabama and Greater Birmingham. Local experts. Proven team results." /> 100<!-- Robots Instructions --> 101<meta name="robots" content="noindex" /> 102<!-- Open Graph --> 103<meta property="og:site_name" content="West Alabama & Birmingham Real Estate | The Williams Group" /> 104<meta property="og:title" content="Tuscaloosa & Birmingham Real Estate Agents | Williams Group" /> 105<meta property="og:url" content="https://www.thewilliamsgroupal.com/agents/" /> 106<meta property="og:description" content="Meet The Williams Group\'s real estate agents serving Tuscaloosa, Northport, West Alabama and Greater Birmingham. Local experts. Proven team results." /> 107<meta property="og:image" content="" /> 108 109<!-- Schema.org Tags --> 110<meta itemprop="image" content=""> 111<meta itemprop="name" content="West Alabama & Birmingham Real Estate | The Williams Group"> 112<meta itemprop="description" content="Meet The Williams Group\'s real estate agents serving Tuscaloosa, Northport, West Alabama and Greater Birmingham. Local experts. Proven team results."> 113<link rel="canonical" href="https://www.thewilliamsgroupal.com/agents/" /> 114<!-- Plugin: Fair Housing Notice -->
115<script type='text/javascript'> 116 window.bt.config.fairHousingTemplate = false; 117</script>
117 118 119 120<!-- NR Plguin -->
121<script type='text/javascript'> 122 if (window.newrelic) { 123 newrelic.setErrorHandler(function(err) { 124 try { 125 if (err instanceof Error) { 126 if ( 127 !err.name || 128 !err.message || 129 err.name.toLowerCase().trim() === '' || 130 err.message.toLowerCase().trim() === '' || 131 err.name.toLowerCase().includes('invocation') || 132 err.message.toLowerCase().includes('invocation') || 133 err.message.toLowerCase().includes('chrome-extension') || 134 err.message.toLowerCase().includes('cross-origin frame') || 135 err.message.toLowerCase().includes('g.readyState') || 136 err.message.toLowerCase().includes('ceCurrentVideo.currentTime') 137 ) { 138 console.log(err); 139 console.log("Error Object Skip Match. Throwing Out."); 140 return true; 141 } 142 } else { 143 console.log('Not A Real Error Object'); 144 return true; 145 } 146 } catch (e) { 147 console.log('Could Not Parse Error.'); 148 } 149 return false; 150 }); 151 } 152</script>
152 153<!-- END NR Plugin --> 154 155
155<script type='text/javascript'> 156 window.btSellerEnabled=true; 157 </script>
157<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"> 158 <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"> 159 <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"> 160 <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"> 161 <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"> 162 <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"> 163 <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"> 164 <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"> 165 <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"> 166 <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"> 167 <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"> 168 <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"> 169 <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"> 170 <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" /> 171 172<style id="bt-theme-customizations"> 173:root { 174 --bt--style--color: #00b4f5; 175 --bt--style--color--lightest: #f5fcff; 176 --bt--style--color--light: #bdedff; 177 --bt--style--color--dark: #008fc2; 178 --bt--style--color--darkest: #007ca9; 179 --bt--style--color--rgb: 0, 180, 245; 180 181 --bt--style--color--blue: #1581e2; 182 --bt--style--color--blue--lightest: #f8fbfe; 183 --bt--style--color--blue--light: #c4e0fa; 184 --bt--style--color--blue--dark: #1166b3; 185 --bt--style--color--blue--darkest: #0e599c;
186 --bt--style--color--blue--rgb: 21, 129, 226; 187 188 --bt--style--color--override: #00b4f5; 189 --bt--style--color--override--lightest: #f5fcff; 190 --bt--style--color--override--light: #bdedff; 191 --bt--style--color--override--dark: #008fc2; 192 --bt--style--color--override--darkest: #007ca9; 193 --bt--style--color--override--rgb: 0, 180, 245; 194} 195 196 @media (max-width: 479px) and (max-aspect-ratio: 13/9), 197 (max-width: 823px) and (min-aspect-ratio: 13/9) { 198 :root { 199 --bt--style--color: #417be8; 200 --bt--style--color--lightest: #386cd5; 201 --bt--style--color--light: #386cd5; 202 --bt--style--color--dark: #386cd5; 203 --bt--style--color--darkest: #386cd5; 204 --bt--style--color--rgb: 65, 123, 232; 205 206 --bt--style--color--blue: #417be8; 207 --bt--style--color--blue--lightest: #386cd5; 208 --bt--style--color--blue--light: #386cd5; 209 --bt--style--color--blue--dark: #386cd5; 210 --bt--style--color--blue--darkest: #386cd5; 211 --bt--style--color--blue--rgb: 65, 123, 232; 212 } 213 } 214 215 216 217 .customizer-background { 218 background-image: url('https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/Mountain-Brook-fdecf501bd4cdb3521c841cbd815ffff413b2492-scaled-600x320.jpg'); 219 } 220 .customizer-background-homeval { 221 background-image: url('https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/Mountain-Brook-fdecf501bd4cdb3521c841cbd815ffff413b2492-scaled-1440x520.jpg'); 222 } 223 @media (min-width: 768px) { 224 .customizer-background { 225 background-image: url('https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/Mountain-Brook-fdecf501bd4cdb3521c841cbd815ffff413b2492-scaled-1024x520.jpg'); 226 } 227 } 228 @media (min-width: 960px) { 229 .customizer-background { 230 background-image: url('https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/Mountain-Brook-fdecf501bd4cdb3521c841cbd815ffff413b2492-scaled-1440x520.jpg'); 231 } 232 } 233 @media (min-width: 1220px) { 234 .customizer-background { 235 background-image: url('https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/Mountain-Brook-fdecf501bd4cdb3521c841cbd815ffff413b2492-scaled.jpg'); 236 } 237 } 238 239 #hero-background { 240 background-image: url('https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/Mountain-Brook-fdecf501bd4cdb3521c841cbd815ffff413b2492-scaled-600x320.jpg'); 241 } 242 @media (min-width: 768px) { 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-1024x520.jpg'); 245 } 246 } 247 @media (min-width: 960px) { 248 #hero-background { 249 background-image: url('https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/Mountain-Brook-fdecf501bd4cdb3521c841cbd815ffff413b2492-scaled-1440x520.jpg'); 250 } 251 } 252 @media (min-width: 1220px) { 253 #hero-background { 254 background-image: url('https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/Mountain-Brook-fdecf501bd4cdb3521c841cbd815ffff413b2492-scaled.jpg'); 255 } 256 } 257 </style> 258 <style id="bt-agent-subdomain-customizer"> 259 </style> 260<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" /> 261<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" /> 262<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" /> 263<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" /> 264 </head> 265<body class="wp-embed-responsive agentslist "> 266<a href='#skip-to-content' style='position:absolute; top:-100%; left:-100%; opacity:0'>Skip To Content</a>
vendor: 78 bytes, lines 266-267
266 267 <noscript><iframe src="//www.googletagmanager.com/ns.html?id=
267GTM-5BDFQV
vendor: 115 bytes, lines 267-269
267" 268 height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> 269
269<script>
vendor: 385 bytes, lines 269-273
269(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 270 new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 271 j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 272 '//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 273 })(window,document,'script','dataLayer','
273GTM-5BDFQV
vendor: 3 bytes, line 273
273');
273</script>
273<script type='text/javascript'> 274 window.dataLayer = window.dataLayer || []; 275 window.dataLayer.push({"currentPostID":1829}); 276</script>
276 277 278 <!--[if IE]> 279 <div id="browser-warning" class="alert alert-warning uk-text-center"> 280 <h3 class="mb-4">Browser Warning</h3> 281 <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> 282 </div> 283 <![endif]--> 284 <div class="bt-off-canvas__wrapper"> 285 <header id="top" class="js-header-top"> 286 <nav class="bt-navbar js-hub"> 287 <div class="container bt-navbar__container"> 288 <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> 289<li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item " ><a class="menu-list__link" href="/agents/" >Meet the Team</a></li> 290<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> 291<div class="bt-ccomp__content "><ul class="menu-list level-0"> 292 <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> 293 <li class="menu-item menu-item-type-custom menu-item-object-custom " ><a class="menu-list__link" href="/results-map/" >Map Search</a></li> 294 295</ul></div> 296</li> 297<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> 298<div class="bt-ccomp__content "><ul class="menu-list level-0"> 299 <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> 300 <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> 301 <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> 302 <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> 303 <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> 304 <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> 305 <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> 306 <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> 307 308</ul></div> 309</li> 310<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> 311<div class="bt-ccomp__content "><ul class="menu-list level-0"> 312 <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> 313 <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> 314 <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> 315 <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> 316 <li class="menu-item menu-item-type-custom menu-item-object-custom " ><a class="menu-list__link" href="/sell/" >Sell Your Home</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/selling-an-inherited-home/" >Selling an Inherited Home</a></li> 318 319</ul></div> 320</li> 321<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> 322<div class="bt-ccomp__content "><ul class="menu-list level-0"> 323 <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> 324 <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> 325 <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> 326 <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> 327 <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> 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/homewood/" >Homewood</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/coker/" >Coker</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/vestavia-hills/" >Vestavia Hills</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/mountain-brook/" >Mountain Brook</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/hoover/" >Hoover</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/mccalla/" >McCalla</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/trussville/" >Trussville</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/helena/" >Helena</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/pelham/" >Pelham</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/alabaster/" >Alabaster</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/chelsea/" >Chelsea</a></li> 339 340</ul></div> 341</li> 342<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> 343<div class="bt-ccomp__content "><ul class="menu-list level-0"> 344 <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> 345 <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> 346 <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> 347 <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> 348 <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> 349 <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> 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-homewood/" >Moving to Homewood</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-vestavia-hills/" >Moving to Vestavia Hills</a></li> 352 353</ul></div> 354</li> 355<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>Resources <i class="bt-fa-icon bt-fa-icon--small far fa-fw fa-chevron-down"></i></a> 356<div class="bt-ccomp__content "><ul class="menu-list level-0"> 357 <li class="menu-item menu-item-type-custom menu-item-object-custom " ><a class="menu-list__link" href="/blog/" >TWG Blog</a></li> 358 <li class="menu-item menu-item-type-custom menu-item-object-custom " ><a class="menu-list__link" href="/finance/" >Financing</a></li> 359 <li class="menu-item menu-item-type-custom menu-item-object-custom " ><a class="menu-list__link" href="/resources/" >Additional Resources</a></li> 360 <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> 361 362</ul></div> 363</li> 364</ul></div> <div class="bt-navbar__right"> 365 <ul class="uk-subnav"> 366 <li class="bt-ccomp js-saved-search-dropdown" data-bt-ccomp="dropdown"> 367 <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> 368 <div class="bt-ccomp__content bt-dropdown--right jsx-saved-search-menu" /> 369 </li> 370 <li> 371 <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> 372 </li> 373 <li class="js-account-placeholder uk-hidden"></li> 374 <li><a class="js-signin" rel="nofollow" href="#" title="Sign In" data-cy="top-navbar__sign-in">Sign In</a></li> 375 </ul> 376 </div> 377 </div> 378 </nav> 379 </header> 380 <div class="js-mobile-header__wrapper bt-header__mobile px-12--safe py-4"> 381 <div class="grid grid--center grid--justifyBetween"> 382 <div class="cell"> 383 <a href="/" class="uk-display-inline-block"> 384 <img 385 class="bt-inner-logo" 386 src="https://bt-wpstatic.freetls.fastly.net/wp-content/blogs.dir/14320/files/2026/04/TWG-ip-logo-0b2bed4875165deb939ed21e5b4dd35477b8e902.png" 387 alt="The Williams Group at Keller Williams Realty" 388 > 389 </a> 390 </div> 391 <div class="cell cell-xs-2 text-xs--right"> 392 <a href="#" class="bt-off-canvas__hamburger bt-off-canvas__trigger js-off-canvas__trigger at-menu-btn" aria-label="Menu"> 393 <i class="fas fa-fw fa-bars"></i> 394 </a> 395 </div> 396 </div> 397</div> 398<a name='skip-to-content'></a> 399<div id="inner-viewport"> 400 <div> 401<div class="sticky-outer-wrapper"> 402 <div class="sticky-inner-wrapper"> 403 <div class="bt-listing-search-menu js-listing-search-menu js-results__page-header"> 404 <div class="container bt-listing-search__wrapper js-filter-bar"> 405 <div class="grid grid--gutters grid--center"> 406 <div class="cell cell-md-3 bt-listing-search__logo"> 407 <a class="js-inner-logo" href="https://www.thewilliamsgroupal.com"> 408 <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"> 409 </a> 410 </div> 411 412 <div class="cell"> 413 <div class="grid bt-filter-bar__components grid--gutters-small grid--justifyend" label="Properties Search Toolbar"> 414 <div class="cell cell-md-12 cell-xl-fit"> 415 <form> 416 <label class="form__label form__label--hidden" for="bt-ballerbox__autocomplete-input--id">Search Properties</label> 417 <div class="grid"> 418 <div class="cell"> 419 <div class="form__input-group"> 420 <div class="bt-ccomp bt-ccomp__dropdown height-1-1"> 421 <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 422 <i class="fa-angle-down far fa-fw bt-fa-icon"></i> 423 </button>
424 <span></span> 425 </div> 426 <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=""> 427 </div> 428 </div> 429 </div> 430 </form> 431 </div> 432 <div class="cell cell-xs-none"> 433 <div class="btn-group ml-0 bt-search__options-wrapper" role="group" aria-label="Properties Search Filters"> 434 <div class="btn-group__item"> 435 <div class="bt-ccomp bt-ccomp__dropdown"> 436 <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 437 <i class="fa-angle-down far fa-fw bt-fa-icon"></i> 438 </button> 439 <span></span> 440 </div> 441 </div> 442 <div class="btn-group__item"> 443 <div class="bt-ccomp bt-ccomp__dropdown"> 444 <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 445 <i class="fa-angle-down far fa-fw bt-fa-icon"></i> 446 </button> 447 <span></span> 448 </div> 449 </div> 450 <div class="btn-group__item"> 451 <div class="bt-ccomp bt-ccomp__dropdown uk-display-block"> 452 <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 453 <i class="fa-angle-down far fa-fw bt-fa-icon"></i> 454 </button> 455 <span></span> 456 </div> 457 </div> 458 <div class="btn-group__item"> 459 <div class="bt-ccomp bt-ccomp__dropdown uk-display-block"> 460 <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 461 <i class="fa-angle-down far fa-fw bt-fa-icon"></i> 462 </button> 463 <span></span> 464 </div> 465 </div> 466 <div class="btn-group__item"> 467 <div class="bt-ccomp bt-ccomp__dropdown bt-ccomp--full-width"> 468 <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 469 <i class="fa-plus far fa-fw bt-fa-icon"></i> 470 </button> 471 <span></span> 472 </div> 473 </div> 474 </div> 475 </div> 476 </div> 477 <div class="bt-search-filter-area mt-16 js-search-filter-area"> 478 <div class="grid grid--gutters grid--noWrap grid--justifyBetween grid--center"> 479 <div class="cell pr-4 bt-save-search__wrapper" style="opacity: 0;"> 480 <div class="pr-16"> 481 <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> 482 </div> 483 <div class="bt-search-tags__container"> 484 <ul class="bt-search-tags"> 485 <li> 486 <button class="btn btn--tag btn--secondary btn--size-small" data-cy="search-bar__search_tag" type="button">Has Photos 487 <i class="fa-times-circle fas fa-fw bt-fa-icon"></i> 488 </button> 489 </li> 490 </ul> 491 </div> 492 </div> 493 <div id="results-set-interactions" class="cell pl-12 bt-view-options__wrapper"> 494 <div class="btn-toolbar grid--justifyEnd" role="toolbar" aria-label="Sort results options and results view switcher"> 495 <div class="bt-ccomp bt-ccomp__dropdown mr-12 sort-button"> 496 <button class="btn bt-ccomp__trigger bt-sort-by btn--secondary btn--size-small" data-cy="search-bar__sort" type="button">Sort 497 <i class="fa-angle-down far fa-fw bt-fa-icon"></i> 498 </button>
499 <span></span> 500 </div> 501 <div class="btn-group bt-view-toggle ml-4" role="group" aria-label="Results View Switcher"> 502 <div class="btn-group__item"> 503 <a href="/results-map/" title="Map View" role="button" class="btn-small bt-view-toggle__show-map"> 504 <button class="btn btn--size-small btn-group__item-btn btn-group__item-btn--first btn--secondary" type="button"> 505 <i class="fa-map-marker-alt fas fa-fw bt-fa-icon"></i> Map 506 </button> 507 </a> 508 </div> 509 <div class="btn-group__item"> 510 <a href="/results-gallery/" title="Gallery View" role="button" class="btn-small bt-view-toggle__show-gallery uk-active"> 511 <button class="btn btn--size-small btn-group__item-btn btn-group__item-btn--last btn--secondary" type="button"> 512 <i class="fa-th fas fa-fw bt-fa-icon"></i> Gallery 513 </button> 514 </a> 515 </div> 516 </div> 517 </div> 518 </div> 519 </div> 520 </div> 521 </div> 522 523 </div> 524 </div> 525 </div> 526 </div> 527</div> 528</div> 529 530 <div id="js-search-layout--main" class="view"> 531 <section class="bt-content-wrapper px--safe "> 532 <div class="container"> 533 534 <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" itemtype="http://schema.org/RealEstateAgent" itemscope=""> 535 <div class="bt-page-header grid"> 536 <div class="cell cell-xs-12 cell-lg-9"> 537 <h1 class="bt-heading__h2 mb-16"> 538 <span class="js-agents__header"> 539 Meet Our Tuscaloosa & Birmingham Real Estate Agents </span> 540 <small class="uk-display-block uk-text-muted js-agents__tagline"> 541 Local agents. Proven results. One team behind every move. </small> 542 </h1> 543 <div> 544 <p>The Williams Group at Keller Williams is a top-ranked Alabama real estate team serving Tuscaloosa, Northport, West Alabama and Greater Birmingham. Our agents help first-time buyers, move-up buyers, sellers, investors and people relocating to Alabama. With 10+ years of experience, 1,500+ families served and more than $500 million in closed sales, our team brings local knowledge and proven systems to every move. RealTrends Verified ranked The Williams Group #6 in Alabama for both sales volume and transaction sides in 2025. When you work with one of our agents, you also gain the support of our operations, marketing and transaction teams, plus a network of 50+ trusted local vendors. Review the agents below to find the right local expert for your city, property type and goals.</p> 545 </div> 546 </div> 547 </div> 548 <div class="bt-interior-content"> 549 <div class="grid grid--gutters"> 550 <div class="cell single-sidebar"> 551 <section> 552 553 <ul class="grid grid--gutters grid-xs--full grid-md--halves"> 554 <li id="agent-343085" class="agent-card cell mb-16 js-agent-list__item" itemprop="employee" itemtype="http://schema.org/Person" itemscope=""> 555 <div class="bt-panel bt-panel--alt uk-panel uk-panel-box"> 556 <div class="grid grid--gutters grid--flexCells text-xs--center text-lg--left"> 557 <div class="cell cell-xs-12 cell-lg-4 grid--justifyCenter"> 558 <a href="/agents/343085-Dan-Williams/" 559 title="See Dan Williams' Profile"> 560 <div class="agent-card__photo" aria-label="Photo of Dan Williams" style="background-image: url('https://bt-boomstatic.global.ssl.fastly.net/content/tenant/TWGKWRByronAL/agent/343085.jpg');"></div> 561 </a> 562 </div> 563 <div class="agent-card__info cell cell-xs-12 cell-lg-8 uk-text-muted"> 564 <div class="grid grid-xs--full width-1-1"> 565 <div class="cell"> 566 <div class="agent-card__details"> 567 <div class="bt-heading__h4 agent-card__name" itemprop="name"><a href="/agents/343085-Dan-Williams/" class="uk-text-muted">Dan Williams</a></div> 568 <div itemprop="jobTitle">Owner, Qualifying Broker, REALTOR®</div> 569 <div itemprop="telephone">Mobile: <a href="tel:205-292-2108" class="agent-card__tel">205-292-2108</a></div> 570 </div> 571 </div> 572 <div class="cell cell--bottom mt-auto"> 573 <a href="/agents/343085-Dan-Williams/" role="button" 574 title="See Dan Williams' Profile" 575 class="agent-card__button width-1-1">View Profile</a> 576 </div> 577 </div> 578 </div> 579 </div> 580 </div> 581 </li> <li id="agent-342862" class="agent-card cell mb-16 js-agent-list__item" itemprop="employee" itemtype="http://schema.org/Person" itemscope=""> 582 <div class="bt-panel bt-panel--alt uk-panel uk-panel-box"> 583 <div class="grid grid--gutters grid--flexCells text-xs--center text-lg--left"> 584 <div class="cell cell-xs-12 cell-lg-4 grid--justifyCenter"> 585 <a href="/agents/342862-Byron-Bennett/" 586 title="See Byron Bennett's Profile"> 587 <div class="agent-card__photo" aria-label="Photo of Byron Bennett" style="background-image: url('https://bt-boomstatic.global.ssl.fastly.net/content/tenant/TWGKWRByronAL/agent/342862.jpg');"></div> 588 </a> 589 </div> 590 <div class="agent-card__info cell cell-xs-12 cell-lg-8 uk-text-muted"> 591 <div class="grid grid-xs--full width-1-1"> 592 <div class="cell"> 593 <div class="agent-card__details"> 594 <div class="bt-heading__h4 agent-card__name" itemprop="name"><a href="/agents/342862-Byron-Bennett/" class="uk-text-muted">Byron Bennett</a></div> 595 <div itemprop="jobTitle">Director of Operations, Associate Broker </div> 596 <div itemprop="telephone">Mobile: <a href="tel:(256) 665-3155" class="agent-card__tel">(256) 665-3155</a></div> 597 </div> 598 </div> 599 <div class="cell cell--bottom mt-auto"> 600 <a href="/agents/342862-Byron-Bennett/" role="button" 601 title="See Byron Bennett's Profile" 602 class="agent-card__button width-1-1">View Profile</a> 603 </div> 604 </div> 605 </div> 606 </div> 607 </div> 608 </li> <li id="agent-343086" class="agent-card cell mb-16 js-agent-list__item" itemprop="employee" itemtype="http://schema.org/Person" itemscope=""> 609 <div class="bt-panel bt-panel--alt uk-panel uk-panel-box"> 610 <div class="grid grid--gutters grid--flexCells text-xs--center text-lg--left"> 611 <div class="cell cell-xs-12 cell-lg-4 grid--justifyCenter"> 612 <a href="/agents/343086-Hannah-Gann/" 613 title="See Hannah Gann's Profile"> 614 <div class="agent-card__photo" aria-label="Photo of Hannah Gann" style="background-image: url('https://bt-boomstatic.global.ssl.fastly.net/content/tenant/TWGKWRByronAL/agent/343086.jpg');"></div> 615 </a> 616 </div> 617 <div class="agent-card__info cell cell-xs-12 cell-lg-8 uk-text-muted"> 618 <div class="grid grid-xs--full width-1-1"> 619 <div class="cell"> 620 <div class="agent-card__details"> 621 <div class="bt-heading__h4 agent-card__name" itemprop="name"><a href="/agents/343086-Hannah-Gann/" class="uk-text-muted">Hannah Gann</a></div> 622 <div itemprop="jobTitle">Partner Agent, Residential & Commercial, REALTOR®</div> 623 <div itemprop="telephone">Mobile: <a href="tel:205-242-4445" class="agent-card__tel">205-242-4445</a></div> 624 </div> 625 </div> 626 <div class="cell cell--bottom mt-auto"> 627 <a href="/agents/343086-Hannah-Gann/" role="button" 628 title="See Hannah Gann's Profile" 629 class="agent-card__button width-1-1">View Profile</a> 630 </div> 631 </div> 632 </div> 633 </div> 634 </div> 635 </li> <li id="agent-343081" class="agent-card cell mb-16 js-agent-list__item" itemprop="employee" itemtype="http://schema.org/Person" itemscope=""> 636 <div class="bt-panel bt-panel--alt uk-panel uk-panel-box"> 637 <div class="grid grid--gutters grid--flexCells text-xs--center text-lg--left"> 638 <div class="cell cell-xs-12 cell-lg-4 grid--justifyCenter"> 639 <a href="/agents/343081-Damon-Gann/" 640 title="See Damon Gann's Profile"> 641 <div class="agent-card__photo" aria-label="Photo of Damon Gann" style="background-image: url('https://bt-boomstatic.global.ssl.fastly.net/content/tenant/TWGKWRByronAL/agent/343081.jpg');"></div> 642 </a> 643 </div> 644 <div class="agent-card__info cell cell-xs-12 cell-lg-8 uk-text-muted"> 645 <div class="grid grid-xs--full width-1-1"> 646 <div class="cell"> 647 <div class="agent-card__details"> 648 <div class="bt-heading__h4 agent-card__name" itemprop="name"><a href="/agents/343081-Damon-Gann/" class="uk-text-muted">Damon Gann</a></div> 649 <div itemprop="jobTitle">Partner Agent, Residential & Commercial, REALTOR®</div> 650 <div itemprop="telephone">Mobile: <a href="tel:205-535-4736" class="agent-card__tel">205-535-4736</a></div> 651 </div> 652 </div> 653 <div class="cell cell--bottom mt-auto"> 654 <a href="/agents/343081-Damon-Gann/" role="button" 655 title="See Damon Gann's Profile" 656 class="agent-card__button width-1-1">View Profile</a> 657 </div> 658 </div> 659 </div> 660 </div> 661 </div> 662 </li> <li id="agent-343090" class="agent-card cell mb-16 js-agent-list__item" itemprop="employee" itemtype="http://schema.org/Person" itemscope=""> 663 <div class="bt-panel bt-panel--alt uk-panel uk-panel-box"> 664 <div class="grid grid--gutters grid--flexCells text-xs--center text-lg--left"> 665 <div class="cell cell-xs-12 cell-lg-4 grid--justifyCenter"> 666 <a href="/agents/343090-Luke-Williams/" 667 title="See Luke Williams' Profile"> 668 <div class="agent-card__photo" aria-label="Photo of Luke Williams" style="background-image: url('https://bt-boomstatic.global.ssl.fastly.net/content/tenant/TWGKWRByronAL/agent/343090.jpg');"></div> 669 </a> 670 </div> 671 <div class="agent-card__info cell cell-xs-12 cell-lg-8 uk-text-muted"> 672 <div class="grid grid-xs--full width-1-1"> 673 <div class="cell"> 674 <div class="agent-card__details"> 675 <div class="bt-heading__h4 agent-card__name" itemprop="name"><a href="/agents/343090-Luke-Williams/" class="uk-text-muted">Luke Williams</a></div> 676 <div itemprop="jobTitle">Expansion Partner, REALTOR®</div> 677 <div itemprop="telephone">Mobile: <a href="tel:205-292-7142" class="agent-card__tel">205-292-7142</a></div> 678 </div> 679 </div> 680 <div class="cell cell--bottom mt-auto"> 681 <a href="/agents/343090-Luke-Williams/" role="button" 682 title="See Luke Williams' Profile" 683 class="agent-card__button width-1-1">View Profile</a> 684 </div> 685 </div> 686 </div> 687 </div> 688 </div> 689 </li> <li id="agent-343089" class="agent-card cell mb-16 js-agent-list__item" itemprop="employee" itemtype="http://schema.org/Person" itemscope=""> 690 <div class="bt-panel bt-panel--alt uk-panel uk-panel-box"> 691 <div class="grid grid--gutters grid--flexCells text-xs--center text-lg--left"> 692 <div class="cell cell-xs-12 cell-lg-4 grid--justifyCenter"> 693 <a href="/agents/343089-Lee-Hannah/" 694 title="See Lee Hannah's Profile"> 695 <div class="agent-card__photo" aria-label="Photo of Lee Hannah" style="background-image: url('https://bt-boomstatic.global.ssl.fastly.net/content/tenant/TWGKWRByronAL/agent/343089.jpg');"></div> 696 </a> 697 </div> 698
698 <div class="agent-card__info cell cell-xs-12 cell-lg-8 uk-text-muted"> 699 <div class="grid grid-xs--full width-1-1"> 700 <div class="cell"> 701 <div class="agent-card__details"> 702 <div class="bt-heading__h4 agent-card__name" itemprop="name"><a href="/agents/343089-Lee-Hannah/" class="uk-text-muted">Lee Hannah</a></div> 703 <div itemprop="jobTitle">Partner Agent, REALTOR®</div> 704 <div itemprop="telephone">Mobile: <a href="tel:205-799-0309" class="agent-card__tel">205-799-0309</a></div> 705 </div> 706 </div> 707 <div class="cell cell--bottom mt-auto"> 708 <a href="/agents/343089-Lee-Hannah/" role="button" 709 title="See Lee Hannah's Profile" 710 class="agent-card__button width-1-1">View Profile</a> 711 </div> 712 </div> 713 </div> 714 </div> 715 </div> 716 </li> <li id="agent-343551" class="agent-card cell mb-16 js-agent-list__item" itemprop="employee" itemtype="http://schema.org/Person" itemscope=""> 717 <div class="bt-panel bt-panel--alt uk-panel uk-panel-box"> 718 <div class="grid grid--gutters grid--flexCells text-xs--center text-lg--left"> 719 <div class="cell cell-xs-12 cell-lg-4 grid--justifyCenter"> 720 <a href="/agents/343551-Jaime-Bratcher/" 721 title="See Jaime Bratcher's Profile"> 722 <div class="agent-card__photo" aria-label="Photo of Jaime Bratcher" style="background-image: url('https://bt-boomstatic.global.ssl.fastly.net/content/tenant/TWGKWRByronAL/agent/343551.jpg');"></div> 723 </a> 724 </div> 725 <div class="agent-card__info cell cell-xs-12 cell-lg-8 uk-text-muted"> 726 <div class="grid grid-xs--full width-1-1"> 727 <div class="cell"> 728 <div class="agent-card__details"> 729 <div class="bt-heading__h4 agent-card__name" itemprop="name"><a href="/agents/343551-Jaime-Bratcher/" class="uk-text-muted">Jaime Bratcher</a></div> 730 <div itemprop="jobTitle">Partner Agent, MBA, REALTOR®</div> 731 <div itemprop="telephone">Mobile: <a href="tel:(502) 741-9479" class="agent-card__tel">(502) 741-9479</a></div> 732 </div> 733 </div> 734 <div class="cell cell--bottom mt-auto"> 735 <a href="/agents/343551-Jaime-Bratcher/" role="button" 736 title="See Jaime Bratcher's Profile" 737 class="agent-card__button width-1-1">View Profile</a> 738 </div> 739 </div> 740 </div> 741 </div> 742 </div> 743 </li> <li id="agent-343087" class="agent-card cell mb-16 js-agent-list__item" itemprop="employee" itemtype="http://schema.org/Person" itemscope=""> 744 <div class="bt-panel bt-panel--alt uk-panel uk-panel-box"> 745 <div class="grid grid--gutters grid--flexCells text-xs--center text-lg--left"> 746 <div class="cell cell-xs-12 cell-lg-4 grid--justifyCenter"> 747 <a href="/agents/343087-Kara-Ulmer/" 748 title="See Kara Ulmer's Profile"> 749 <div class="agent-card__photo" aria-label="Photo of Kara Ulmer" style="background-image: url('https://bt-boomstatic.global.ssl.fastly.net/content/tenant/TWGKWRByronAL/agent/343087.jpg');"></div> 750 </a> 751 </div> 752 <div class="agent-card__info cell cell-xs-12 cell-lg-8 uk-text-muted"> 753 <div class="grid grid-xs--full width-1-1"> 754 <div class="cell"> 755 <div class="agent-card__details"> 756 <div class="bt-heading__h4 agent-card__name" itemprop="name"><a href="/agents/343087-Kara-Ulmer/" class="uk-text-muted">Kara Ulmer</a></div> 757 <div itemprop="jobTitle">Partner Agent, Residential, REALTOR®</div> 758 <div itemprop="telephone">Mobile: <a href="tel:205-840-9410" class="agent-card__tel">205-840-9410</a></div> 759 </div> 760 </div> 761 <div class="cell cell--bottom mt-auto"> 762 <a href="/agents/343087-Kara-Ulmer/" role="button" 763 title="See Kara Ulmer's Profile" 764 class="agent-card__button width-1-1">View Profile</a> 765 </div> 766 </div> 767 </div> 768 </div> 769 </div> 770 </li> <li id="agent-343092" class="agent-card cell mb-16 js-agent-list__item" itemprop="employee" itemtype="http://schema.org/Person" itemscope=""> 771 <div class="bt-panel bt-panel--alt uk-panel uk-panel-box"> 772 <div class="grid grid--gutters grid--flexCells text-xs--center text-lg--left"> 773 <div class="cell cell-xs-12 cell-lg-4 grid--justifyCenter"> 774 <a href="/agents/343092-Sam-Hairston/" 775 title="See Sam Hairston's Profile"> 776 <div class="agent-card__photo" aria-label="Photo of Sam Hairston" style="background-image: url('https://bt-boomstatic.global.ssl.fastly.net/content/tenant/TWGKWRByronAL/agent/343092.jpg');"></div> 777 </a> 778 </div> 779 <div class="agent-card__info cell cell-xs-12 cell-lg-8 uk-text-muted"> 780 <div class="grid grid-xs--full width-1-1"> 781 <div class="cell"> 782 <div class="agent-card__details"> 783 <div class="bt-heading__h4 agent-card__name" itemprop="name"><a href="/agents/343092-Sam-Hairston/" class="uk-text-muted">Sam Hairston</a></div> 784 <div itemprop="jobTitle">Partner Agent, REALTOR®</div> 785 <div itemprop="telephone">Mobile: <a href="tel:205-732-4028" class="agent-card__tel">205-732-4028</a></div> 786 </div> 787 </div> 788 <div class="cell cell--bottom mt-auto"> 789 <a href="/agents/343092-Sam-Hairston/" role="button" 790 title="See Sam Hairston's Profile" 791 class="agent-card__button width-1-1">View Profile</a> 792 </div> 793 </div> 794 </div> 795 </div> 796 </div> 797 </li> <li id="agent-343091" class="agent-card cell mb-16 js-agent-list__item" itemprop="employee" itemtype="http://schema.org/Person" itemscope=""> 798 <div class="bt-panel bt-panel--alt uk-panel uk-panel-box"> 799 <div class="grid grid--gutters grid--flexCells text-xs--center text-lg--left"> 800 <div class="cell cell-xs-12 cell-lg-4 grid--justifyCenter"> 801 <a href="/agents/343091-Mary-Anne-Williams/" 802 title="See Mary Anne Williams' Profile"> 803 <div class="agent-card__photo" aria-label="Photo of Mary Anne Williams" style="background-image: url('https://bt-boomstatic.global.ssl.fastly.net/content/tenant/TWGKWRByronAL/agent/343091.jpg');"></div> 804 </a> 805 </div> 806 <div class="agent-card__info cell cell-xs-12 cell-lg-8 uk-text-muted"> 807 <div class="grid grid-xs--full width-1-1"> 808 <div class="cell"> 809 <div class="agent-card__details"> 810 <div class="bt-heading__h4 agent-card__name" itemprop="name"><a href="/agents/343091-Mary-Anne-Williams/" class="uk-text-muted">Mary Anne Williams</a></div> 811 <div itemprop="jobTitle">Partner Agent, REALTOR®</div> 812 <div itemprop="telephone">Mobile: <a href="tel:205-454-2979" class="agent-card__tel">205-454-2979</a></div> 813 </div> 814 </div> 815 <div class="cell cell--bottom mt-auto"> 816 <a href="/agents/343091-Mary-Anne-Williams/" role="button" 817 title="See Mary Anne Williams' Profile" 818 class="agent-card__button width-1-1">View Profile</a> 819 </div> 820 </div> 821 </div> 822 </div> 823 </div> 824 </li> <li id="agent-343128" class="agent-card cell mb-16 js-agent-list__item" itemprop="employee" itemtype="http://schema.org/Person" itemscope=""> 825 <div class="bt-panel bt-panel--alt uk-panel uk-panel-box"> 826 <div class="grid grid--gutters grid--flexCells text-xs--center text-lg--left"> 827 <div class="cell cell-xs-12 cell-lg-4 grid--justifyCenter"> 828 <a href="/agents/343128-Josiah-Freeman/" 829 title="See Josiah Freeman's Profile"> 830 <div class="agent-card__photo" aria-label="Photo of Josiah Freeman" style="background-image: url('https://bt-boomstatic.global.ssl.fastly.net/content/tenant/TWGKWRByronAL/agent/343128.jpg');"></div> 831 </a> 832 </div> 833 <div class="agent-card__info cell cell-xs-12 cell-lg-8 uk-text-muted"> 834 <div class="grid grid-xs--full width-1-1"> 835 <div class="cell"> 836 <div class="agent-card__details"> 837 <div class="bt-heading__h4 agent-card__name" itemprop="name"><a href="/agents/343128-Josiah-Freeman/" class="uk-text-muted">Josiah Freeman</a></div> 838 <div itemprop="jobTitle">Partner Agent, REALTOR®</div> 839 <div itemprop="telephone">Mobile: <a href="tel:615-308-1601" class="agent-card__tel">615-308-1601</a></div> 840 </div> 841 </div> 842 <div class="cell cell--bottom mt-auto"> 843 <a href="/agents/343128-Josiah-Freeman/" role="button" 844 title="See Josiah Freeman's Profile" 845 class="agent-card__button width-1-1">View Profile</a> 846 </div> 847 </div> 848 </div> 849 </div> 850 </div> 851 </li> <li id="agent-343093" class="agent-card cell mb-16 js-agent-list__item" itemprop="employee" itemtype="http://schema.org/Person" itemscope=""> 852 <div class="bt-panel bt-panel--alt uk-panel uk-panel-box"> 853 <div class="grid grid--gutters grid--flexCells text-xs--center text-lg--left"> 854 <div class="cell cell-xs-12 cell-lg-4 grid--justifyCenter"> 855 <a href="/agents/343093-Victoria-Williams/" 856 title="See Victoria Williams' Profile"> 857 <div class="agent-card__photo" aria-label="Photo of Victoria Williams" style="background-image: url('https://bt-boomstatic.global.ssl.fastly.net/content/tenant/TWGKWRByronAL/agent/343093.jpg');"></div> 858 </a> 859 </div> 860 <div class="agent-card__info cell cell-xs-12 cell-lg-8 uk-text-muted"> 861 <div class="grid grid-xs--full width-1-1"> 862 <div class="cell"> 863 <div class="agent-card__details"> 864 <div class="bt-heading__h4 agent-card__name" itemprop="name"><a href="/agents/343093-Victoria-Williams/" class="uk-text-muted">Victoria Williams</a></div> 865 <div itemprop="jobTitle">Partner Agent, REALTOR®</div> 866 <div itemprop="telephone">Mobile: <a href="tel:251-366-1097" class="agent-card__tel">251-366-1097</a></div> 867 </div> 868 </div> 869 <div class="cell cell--bottom mt-auto"> 870 <a href="/agents/343093-Victoria-Williams/" role="button" 871 title="See Victoria Williams' Profile" 872 class="agent-card__button width-1-1">View Profile</a> 873 </div> 874 </div> 875 </div> 876 </div> 877 </div> 878 </li> <li id="agent-343076" class="agent-card cell mb-16 js-agent-list__item" itemprop="employee" itemtype="http://schema.org/Person" itemscope=""> 879 <div class="bt-panel bt-panel--alt uk-panel uk-panel-box"> 880 <div class="grid grid--gutters grid--flexCells text-xs--center text-lg--left"> 881 <div class="cell cell-xs-12 cell-lg-4 grid--justifyCenter"> 882 <a h
882ref="/agents/343076-David-Newsome/" 883 title="See David Newsome's Profile"> 884 <div class="agent-card__photo" aria-label="Photo of David Newsome" style="background-image: url('https://bt-boomstatic.global.ssl.fastly.net/content/tenant/TWGKWRByronAL/agent/343076.jpg');"></div> 885 </a> 886 </div> 887 <div class="agent-card__info cell cell-xs-12 cell-lg-8 uk-text-muted"> 888 <div class="grid grid-xs--full width-1-1"> 889 <div class="cell"> 890 <div class="agent-card__details"> 891 <div class="bt-heading__h4 agent-card__name" itemprop="name"><a href="/agents/343076-David-Newsome/" class="uk-text-muted">David Newsome</a></div> 892 <div itemprop="jobTitle">Partner Agent, REALTOR®</div> 893 <div itemprop="telephone">Mobile: <a href="tel:205-478-5661" class="agent-card__tel">205-478-5661</a></div> 894 </div> 895 </div> 896 <div class="cell cell--bottom mt-auto"> 897 <a href="/agents/343076-David-Newsome/" role="button" 898 title="See David Newsome's Profile" 899 class="agent-card__button width-1-1">View Profile</a> 900 </div> 901 </div> 902 </div> 903 </div> 904 </div> 905 </li> <li id="agent-343080" class="agent-card cell mb-16 js-agent-list__item" itemprop="employee" itemtype="http://schema.org/Person" itemscope=""> 906 <div class="bt-panel bt-panel--alt uk-panel uk-panel-box"> 907 <div class="grid grid--gutters grid--flexCells text-xs--center text-lg--left"> 908 <div class="cell cell-xs-12 cell-lg-4 grid--justifyCenter"> 909 <a href="/agents/343080-Colby-Pate/" 910 title="See Colby Pate's Profile"> 911 <div class="agent-card__photo" aria-label="Photo of Colby Pate" style="background-image: url('https://bt-boomstatic.global.ssl.fastly.net/content/tenant/TWGKWRByronAL/agent/343080.jpg');"></div> 912 </a> 913 </div> 914 <div class="agent-card__info cell cell-xs-12 cell-lg-8 uk-text-muted"> 915 <div class="grid grid-xs--full width-1-1"> 916 <div class="cell"> 917 <div class="agent-card__details"> 918 <div class="bt-heading__h4 agent-card__name" itemprop="name"><a href="/agents/343080-Colby-Pate/" class="uk-text-muted">Colby Pate</a></div> 919 <div itemprop="jobTitle">Associate Agent, REALTOR®</div> 920 <div itemprop="telephone">Mobile: <a href="tel:205-826-7639" class="agent-card__tel">205-826-7639</a></div> 921 </div> 922 </div> 923 <div class="cell cell--bottom mt-auto"> 924 <a href="/agents/343080-Colby-Pate/" role="button" 925 title="See Colby Pate's Profile" 926 class="agent-card__button width-1-1">View Profile</a> 927 </div> 928 </div> 929 </div> 930 </div> 931 </div> 932 </li> <li id="agent-343079" class="agent-card cell mb-16 js-agent-list__item" itemprop="employee" itemtype="http://schema.org/Person" itemscope=""> 933 <div class="bt-panel bt-panel--alt uk-panel uk-panel-box"> 934 <div class="grid grid--gutters grid--flexCells text-xs--center text-lg--left"> 935 <div class="cell cell-xs-12 cell-lg-4 grid--justifyCenter"> 936 <a href="/agents/343079-Ashley-Welborn/" 937 title="See Ashley Welborn's Profile"> 938 <div class="agent-card__photo" aria-label="Photo of Ashley Welborn" style="background-image: url('https://bt-boomstatic.global.ssl.fastly.net/content/tenant/TWGKWRByronAL/agent/343079.jpg');"></div> 939 </a> 940 </div> 941 <div class="agent-card__info cell cell-xs-12 cell-lg-8 uk-text-muted"> 942 <div class="grid grid-xs--full width-1-1"> 943 <div class="cell"> 944 <div class="agent-card__details"> 945 <div class="bt-heading__h4 agent-card__name" itemprop="name"><a href="/agents/343079-Ashley-Welborn/" class="uk-text-muted">Ashley Welborn</a></div> 946 <div itemprop="jobTitle">Associate Agent, REALTOR®</div> 947 <div itemprop="telephone">Mobile: <a href="tel:205-844-7900" class="agent-card__tel">205-844-7900</a></div> 948 </div> 949 </div> 950 <div class="cell cell--bottom mt-auto"> 951 <a href="/agents/343079-Ashley-Welborn/" role="button" 952 title="See Ashley Welborn's Profile" 953 class="agent-card__button width-1-1">View Profile</a> 954 </div> 955 </div> 956 </div> 957 </div> 958 </div> 959 </li> <li id="agent-343088" class="agent-card cell mb-16 js-agent-list__item" itemprop="employee" itemtype="http://schema.org/Person" itemscope=""> 960 <div class="bt-panel bt-panel--alt uk-panel uk-panel-box"> 961 <div class="grid grid--gutters grid--flexCells text-xs--center text-lg--left"> 962 <div class="cell cell-xs-12 cell-lg-4 grid--justifyCenter"> 963 <a href="/agents/343088-Kelsey-Blue/" 964 title="See Kelsey Blue's Profile"> 965 <div class="agent-card__photo" aria-label="Photo of Kelsey Blue" style="background-image: url('https://bt-boomstatic.global.ssl.fastly.net/content/tenant/TWGKWRByronAL/agent/343088.jpg');"></div> 966 </a> 967 </div> 968 <div class="agent-card__info cell cell-xs-12 cell-lg-8 uk-text-muted"> 969 <div class="grid grid-xs--full width-1-1"> 970 <div class="cell"> 971 <div class="agent-card__details"> 972 <div class="bt-heading__h4 agent-card__name" itemprop="name"><a href="/agents/343088-Kelsey-Blue/" class="uk-text-muted">Kelsey Blue</a></div> 973 <div itemprop="jobTitle">Marketing Manager</div> 974 <div itemprop="telephone">Mobile: <a href="tel:205-657-1027" class="agent-card__tel">205-657-1027</a></div> 975 </div> 976 </div> 977 <div class="cell cell--bottom mt-auto"> 978 <a href="/agents/343088-Kelsey-Blue/" role="button" 979 title="See Kelsey Blue's Profile" 980 class="agent-card__button width-1-1">View Profile</a> 981 </div> 982 </div> 983 </div> 984 </div> 985 </div> 986 </li> <li id="agent-343632" class="agent-card cell mb-16 js-agent-list__item" itemprop="employee" itemtype="http://schema.org/Person" itemscope=""> 987 <div class="bt-panel bt-panel--alt uk-panel uk-panel-box"> 988 <div class="grid grid--gutters grid--flexCells text-xs--center text-lg--left"> 989 <div class="cell cell-xs-12 cell-lg-4 grid--justifyCenter"> 990 <a href="/agents/343632-Matthew-Saylor/" 991 title="See Matthew Saylor's Profile"> 992 <div class="agent-card__photo" aria-label="Photo of Matthew Saylor" style="background-image: url('https://bt-boomstatic.global.ssl.fastly.net/content/tenant/TWGKWRByronAL/agent/343632.jpg');"></div> 993 </a> 994 </div> 995 <div class="agent-card__info cell cell-xs-12 cell-lg-8 uk-text-muted"> 996 <div class="grid grid-xs--full width-1-1"> 997 <div class="cell"> 998 <div class="agent-card__details"> 999 <div class="bt-heading__h4 agent-card__name" itemprop="name"><a href="/agents/343632-Matthew-Saylor/" class="uk-text-muted">Matthew Saylor</a></div> 1000 <div itemprop="jobTitle">Associate Agent, REALTOR®</div> 1001 <div itemprop="telephone">Mobile: <a href="tel:(615) 351-9434" class="agent-card__tel">(615) 351-9434</a></div> 1002 </div> 1003 </div> 1004 <div class="cell cell--bottom mt-auto"> 1005 <a href="/agents/343632-Matthew-Saylor/" role="button" 1006 title="See Matthew Saylor's Profile" 1007 class="agent-card__button width-1-1">View Profile</a> 1008 </div> 1009 </div> 1010 </div> 1011 </div> 1012 </div> 1013 </li> <li id="agent-344041" class="agent-card cell mb-16 js-agent-list__item" itemprop="employee" itemtype="http://schema.org/Person" itemscope=""> 1014 <div class="bt-panel bt-panel--alt uk-panel uk-panel-box"> 1015 <div class="grid grid--gutters grid--flexCells text-xs--center text-lg--left"> 1016 <div class="cell cell-xs-12 cell-lg-4 grid--justifyCenter"> 1017 <a href="/agents/344041-Melody-Martin/" 1018 title="See Melody Martin's Profile"> 1019 <div class="agent-card__photo" aria-label="Photo of Melody Martin" style="background-image: url('https://bt-boomstatic.global.ssl.fastly.net/content/tenant/TWGKWRByronAL/agent/344041.jpg');"></div> 1020 </a> 1021 </div> 1022 <div class="agent-card__info cell cell-xs-12 cell-lg-8 uk-text-muted"> 1023 <div class="grid grid-xs--full width-1-1"> 1024 <div class="cell"> 1025 <div class="agent-card__details"> 1026 <div class="bt-heading__h4 agent-card__name" itemprop="name"><a href="/agents/344041-Melody-Martin/" class="uk-text-muted">Melody Martin</a></div> 1027 <div itemprop="jobTitle">Partner Agent, REALTOR®</div> 1028 <div itemprop="telephone">Mobile: <a href="tel:(205) 936-5594" class="agent-card__tel">(205) 936-5594</a></div> 1029 </div> 1030 </div> 1031 <div class="cell cell--bottom mt-auto"> 1032 <a href="/agents/344041-Melody-Martin/" role="button" 1033 title="See Melody Martin's Profile" 1034 class="agent-card__button width-1-1">View Profile</a> 1035 </div> 1036 </div> 1037 </div> 1038 </div> 1039 </div> 1040 </li> <li id="agent-343101" class="agent-card cell mb-16 js-agent-list__item" itemprop="employee" itemtype="http://schema.org/Person" itemscope=""> 1041 <div class="bt-panel bt-panel--alt uk-panel uk-panel-box"> 1042 <div class="grid grid--gutters grid--flexCells text-xs--center text-lg--left"> 1043 <div class="cell cell-xs-12 cell-lg-4 grid--justifyCenter"> 1044 <a href="/agents/343101-Morgan-Wright/" 1045 title="See Morgan Wright's Profile"> 1046 <div class="agent-card__photo" aria-label="Photo of Morgan Wright" style="background-image: url('https://bt-boomstatic.global.ssl.fastly.net/content/tenant/TWGKWRByronAL/agent/343101.jpg');"></div> 1047 </a> 1048 </div> 1049 <div class="agent-card__info cell cell-xs-12 cell-lg-8 uk-text-muted"> 1050 <div class="grid grid-xs--full width-1-1"> 1051 <div class="cell"> 1052 <div class="agent-card__details"> 1053 <div class="bt-heading__h4 agent-card__name" itemprop="name"><a href="/agents/343101-Morgan-Wright/" class="uk-text-muted">Morgan Wright</a></div> 1054 <div itemprop="jobTitle">Listings & Transaction Coordinator, REALTOR®</div> 1055 <div itemprop="telephone">Mobile: <a href="tel:706-773-3009" class="agent-card__tel">706-773-3009</a></div> 1056 </div> 1057 </div> 1058 <div class="cell cell--bottom mt-auto"> 1059 <a href="/agents/343101-Morgan-Wright/" role="button" 1060 title="See Morgan Wright's Profile" 1061 class="agent-card__button width-1-1">View Profile</a> 1062 </div> 1063 </div> 1064 </div> 1065 </div> 1066 </div> 1067 </li> </ul> 1068 </section> 1069 </div> 1070 <div class="cell cell-xs-12 cell-lg-3 bt-sidebar"> 1071
1071 <div class="bt-panel bt-panel--alt uk-panel uk-panel-box"> 1072 <div class="widget widget_bt_contactform"><div class="bt-widget__contact-agent"> 1073 <div class="alert js-alert uk-hidden"></div> 1074 <form class="js-contact-form" data-formname="widget-contactagent" data-agentid="" data-parsley-validate> 1075 <h3 class="bt-heading__h3">Contact Us Now</h3> 1076 1077 <div class="btgf-field"> 1078 <div class="form__group"> 1079 <div class="form__label-group"> 1080 <label class="form__label" for="contactWidgetFirstName">First Name</label> 1081 <span class="form__required-text" aria-label="required" title="required">*</span> 1082 </div> 1083 <input 1084 id="contactWidgetFirstName" 1085 name="js-txtFirstName" 1086 autocomplete="given-name" 1087 class="form__input js-txtFirstName at-firstName-txt" 1088 value="" 1089 data-parsley-isvalid 1090 required 1091 /> 1092 </div> 1093 </div> 1094 1095 <div class="btgf-field"> 1096 <div class="form__group"> 1097 <div class="form__label-group"> 1098 <label class="form__label" for="contactWidgetLastName">Last Name</label> 1099 <span class="form__required-text" aria-label="required" title="required">*</span> 1100 </div> 1101 <input 1102 id="contactWidgetLastName" 1103 name="js-txtLastName" 1104 autocomplete="family-name" 1105 class="form__input js-txtLastName at-lastName-txt" 1106 value="" 1107 data-parsley-isvalid 1108 required 1109 /> 1110 </div> 1111 </div> 1112 1113 <div class="btgf-field"> 1114 <div class="form__group"> 1115 <div class="form__label-group"> 1116 <label class="form__label" for="contactWidgetEmail">Email Address</label> 1117 <span class="form__required-text" aria-label="required" title="required">*</span> 1118 </div> 1119 <input 1120 type="email" 1121 id="contactWidgetEmail" 1122 name="js-txtEmail" 1123 autocomplete="email" 1124 class="form__input js-txtEmail at-email-txt" 1125 value="" 1126 data-parsley-emailsanitizer 1127 required 1128 /> 1129 </div> 1130 </div> 1131 1132 <div class="btgf-field"> 1133 <div class="form__group"> 1134 <div class="form__label-group"> 1135 <label class="form__label" for="contactPhoneNumber">Phone Number</label> 1136 <span class="form__required-text" aria-label="required" title="required">*</span> 1137 </div> 1138 <input 1139 id="contactPhoneNumber" 1140 name="js-txtPhone" 1141 autocomplete="tel" 1142 class="form__input js-txtPhone at-phone-txt" 1143 value="" 1144 data-parsley-phone 1145 required 1146 /> 1147 </div> 1148 </div> 1149 1150 <div class="btgf-field"> 1151 <div class="form__group"> 1152 <div class="form__label-group"> 1153 <label class="form__label" for="contactWidgetMessage">Message</label> 1154 </div> 1155 <textarea 1156 id="contactWidgetMessage" 1157 name="js-txtFeatures" 1158 class="form__textarea js-txtFeatures at-comment-txt" 1159 cols="30" 1160 rows="5" 1161 ></textarea> 1162 </div> 1163 </div> 1164 1165 <div class="btgf-field" style='padding-bottom:10px;'> 1166 <div class="cell"> 1167 <input type='checkbox' value='1' name='SmsOptIn' class='js-ckSmsOptIn' id='SmsOptIn' > 1168 <label for='SmsOptIn' class="form__label" style='padding-left:5px;'>Yes, I consent to receive text messages.<label> 1169</div> 1170 </div> 1171 1172 1173 <div class="btgf-submit btgf-submit--justify-start"> 1174 <input type="hidden" name="LastName" class="LastName" aria-label="hidden field" /> 1175 <button class="btn btn--primary js-btnSubmitForm">Submit</button> 1176 </div> 1177 1178 <p> 1179 <label class='bt-disclaimer-contact-form'><input type="hidden" id="leadid_tcpa_disclosure"/><strong>Disclaimer: </strong><span>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.</span></label> 1180 </p> 1181 </form> 1182</div> 1183</div> </div> 1184 </div> 1185 </div> 1186 </div> 1187 </article> 1188 </div> 1189 </section> 1190 </div> 1191</div> 1192<div id="footer"> 1193 <footer class="bt-footer" data-cy="footer"> 1194 <div class="px--safe"> 1195 <div class="container uk-text-small"> 1196 <div class="grid grid--gutters"> 1197 <div class="cell cell-xs-12 cell-md-3 cell-lg-2"> 1198 1199 1200 <h3 class="bt-footer-widget__title">Guides</h3> 1201 <ul class="uk-list"> 1202 <li> 1203 <a class="js-footer-guides" href="https://www.thewilliamsgroupal.com/guide/northport/">Northport</a> 1204 </li> 1205 <li> 1206 <a class="js-footer-guides" href="https://www.thewilliamsgroupal.com/guide/cottondale/">Cottondale</a> 1207 </li> 1208 <li> 1209 <a class="js-footer-guides" href="https://www.thewilliamsgroupal.com/guide/coker/">Coker</a> 1210 </li> 1211 <li> 1212 <a class="js-footer-guides" href="https://www.thewilliamsgroupal.com/guide/mccalla/">McCalla</a> 1213 </li> 1214 <li> 1215 <a class="js-footer-guides" href="https://www.thewilliamsgroupal.com/guide/birmingham/">Birmingham</a> 1216 </li> 1217 <li> 1218 <a href="/guides/" class="bt-more-bounce js-footer-guides">More Guides <i class="far fa-fw fa-chevron-right"></i></a> 1219 </li> 1220 </ul> 1221 1222 1223 </div> 1224 <div class="cell cell-xs-12 cell-md-3 cell-lg-2"> 1225 1226 <h3 class="bt-footer-widget__title">Company</h3> 1227 <ul class="uk-list"> 1228 <li> 1229 <a class="js-footer-agents" href="/agents/" title="Meet The Team">Meet The Team</a> 1230 </li> 1231 <li> 1232 <a class="js-footer-blog" href="/blog/" title="Our blog">Our Blog</a> 1233 </li> 1234 <li> 1235 <a class="at-footer-contactus" href="/contactus/" title="Contact Us">Contact Us</a> 1236 </li> 1237 </ul> 1238 1239 </div> 1240 <div class="cell cell-xs-12 cell-md-3 cell-lg-2"> 1241 1242 <h3 class="bt-footer-widget__title">Resources</h3> 1243 <ul class="uk-list"> 1244 <li> 1245 <a class="js-footer-buyhome" href="/buy/" title="Buy a home in West Alabama, Greater Birmingham Area">Buy a Home</a> 1246 </li> 1247 <li> 1248 <a class="js-footer-sellhome" href="/sell/" title="Sell homes in West Alabama, Greater Birmingham Area">Sell Your Home</a> 1249 </li> 1250 <li> 1251 <a class="js-footer-finance" href="/finance/" title="Finance your dream home in West Alabama, Greater Birmingham Area">Finance</a> 1252 </li> 1253 </ul> 1254 1255 </div> 1256 <div class="cell cell-xs-12 cell-md-3 cell-lg-2"> 1257 1258 <h3 class="bt-footer-widget__title">Get Social</h3> 1259 <div class="bt-social-icons js-footer-social-icons"> 1260 <a href="/feed" target="_blank" aria-label="rss" title="rss" class="bt-icon__button bt-icon--rss js-footer-social-rss"> 1261 <i class="fas fa-fw fa-rss"></i> 1262 </a> 1263 <a href="https://www.facebook.com/thewilliamsgroupatkw/" target="_blank" aria-label="facebook" title="facebook" class="bt-icon__button bt-icon--facebook"> 1264 <i class="fab fa-fw fa-facebook-f"></i> 1265 </a> 1266 <a href="https://www.instagram.com/thewilliamsgroupal/" target="_blank" aria-label="instagram" title="instagram" class="bt-icon__button bt-icon--instagram"> 1267 <i class="fab fa-fw fa-instagram"></i> 1268 </a> 1269 <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"> 1270 <i class="fab fa-fw fa-linkedin-in"></i> 1271 </a> 1272 </div> 1273 1274 </div> 1275 1276 1277 <div class="cell cell-xs-12 cell-lg-4"> 1278 <div class="js-global-footer-about"> 1279 <h3 class="bt-footer-widget__title">About Us</h3> 1280 <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> 1281</div> 1282 </div> 1283 <address class="js-global-footer-address"><p>The Williams Group at Keller Williams Tuscaloosa<br /> 12844412 HWY 69 N, Northport, AL 35473<br /> 1285(205) 292-2108</p> 1286<p>The Williams Group at Keller Williams Realty<br /> 12873595 Grandview Pkwy Suite 250, Birmingham, AL 35243<br /> 1288(205) 292-7142</p> 1289</address> </div> 1290 1291 1292 </div> 1293 <div class="mt-16 bt-disclaimer-bottom js-footer-bottom-links" data-cy="footer__disclaimer"> 1294 <p class="mb-4"> 1295 </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"/> 1296 1297© 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. 1298 1299Data last updated: 2026-10-04T16:30:50.84.</br></br>© 2026 West Alabama Multiple Listing Service, Inc. All rights reserved. 1300 1301IDX 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. 1302 1303Data last updated: 2026-10-04T16:50:34.053.</br></br> </p> 1304 </div> 1305 1306 1307 </div> 1308 </div> 1309 <nav class="bt-footer-aux px--safe"> 1310 <div class="container"> 1311 <ul class="uk-subnav uk-subnav-line bt-disclaimer-menu mb-0"> 1312 <li class="bt-disclaimer-menu__copyright"> 1313 <a 1314 target="_blank" 1315 href="https://boomtownroi.com?utm_campaign=thewilliamsgroupal.com&utm_medium=bt_client_site_referral&utm_source=client_sites" 1316 rel="nofollow" 1317 title="BoomTown © 2026" 1318 > 1319 <img class='bt-disclaimer-menu__copyright__logo' src="/wp-content/themes/wp-base-theme/assets/media/build/boomtown-footer.webp" alt="BoomTown"/> © 2026 </a> 1320 </li> 1321 <li><a href="/terms">Terms of Use</a></li> 1322 <li><a href="/privacy/">Privacy Policy</a></li> 1323 <li><a href="/accessibility/">Accessibility</a></li> 1324 <li><a href="/dmca/">DMCA</a></li> 1325 <li><a href="/sitemap/">Listings Sitemap</a></li> 1326 </ul> 1327 </div> 1328 </nav> 1329 </footer> 1330</div></div> 1331<nav class="bt-off-canvas bt-off-canvas__common bt-off-canvas-main-menu js-hub"> 1332 <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> 1333 <div class="text-xs--center bt-off-canvas__header"> 1334 <i class="fas fa-fw fa-user"></i> 1335 </div> 1336 1337 1338 <div class="container js-user-instance--guest"> 1339 <div class="grid grid--gutters grid-xs--halves bt-off-canvas__account-btns"> 1340 <div class="cell text-xs--right"> 1341 <button type="button" class="btn btn--secondary btn--width-auto js-signin at-sign-in-btn" rel="nofollow">Sign In</button> 1342 </div> 1343 <div class="cell"> 1344 <button type="button" class="btn btn--primary btn--width-auto js-register at-register-btn" rel="nofollow">Register</button> 1345 </div> 1346 </div> 1347 </div> 1348 <div class="container bt-user-instance--registered js-user-instance--registered uk-hidden"> 1349 <div class="grid grid--gutters grid-xs--halves bt-off-canvas__account-btns"> 1350 <div class="cell text-xs--right"> 1351 <a role="button" href="/account/" class="js-account-off-canvas btn btn--primary btn--width-auto at-profile-btn" rel="nofollow">My Account</a> 1352 </div> 1353 <div class="cell"> 1354 <a role="button" href="#" class="btn btn--secondary btn--width-auto js-signout at-sign-out-btn" rel="nofollow">Sign Out</a> 1355 </div> 1356 </div> 1357 </div> 1358 1359 <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> 1360<li id="menu-item-9" class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item " ><a href="/agents/" class="p-16" >Meet the Team</a></li> 1361<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--small far fa-fw fa-chevron-down"></i></a> 1362<div class="bt-ccomp__content px-16--safe"><ul class="bt-off-canvas__sub-menu level-0"> 1363 <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> 1364 <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> 1365 1366</ul></div> 1367</li> 1368<li id="menu-item-12" class="menu-item menu-ite
1368m-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> 1369<div class="bt-ccomp__content px-16--safe"><ul class="bt-off-canvas__sub-menu level-0"> 1370 <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> 1371 <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> 1372 <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> 1373 <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> 1374 <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> 1375 <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> 1376 <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> 1377 <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> 1378 1379</ul></div> 1380</li> 1381<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> 1382<div class="bt-ccomp__content px-16--safe"><ul class="bt-off-canvas__sub-menu level-0"> 1383 <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> 1384 <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> 1385 <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> 1386 <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> 1387 <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> 1388 <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> 1389 1390</ul></div> 1391</li> 1392<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> 1393<div class="bt-ccomp__content px-16--safe"><ul class="bt-off-canvas__sub-menu level-0"> 1394 <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> 1395 <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> 1396 <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> 1397 <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> 1398 <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> 1399 <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> 1400 <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> 1401 <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> 1402 <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> 1403 <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> 1404 <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> 1405 <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> 1406 <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> 1407 <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> 1408 <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> 1409 <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> 1410 1411</ul></div> 1412</li> 1413<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> 1414<div class="bt-ccomp__content px-16--safe"><ul class="bt-off-canvas__sub-menu level-0"> 1415 <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> 1416 <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> 1417 <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> 1418 <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> 1419 <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> 1420 <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>
1421 <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> 1422 <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> 1423 1424</ul></div> 1425</li> 1426<li id="menu-item-17" 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>Resources <i class="bt-fa-icon bt-fa-icon--small far fa-fw fa-chevron-down"></i></a> 1427<div class="bt-ccomp__content px-16--safe"><ul class="bt-off-canvas__sub-menu level-0"> 1428 <li id="menu-item-18" class="menu-item menu-item-type-custom menu-item-object-custom " ><a href="/blog/" class="p-16" >TWG Blog</a></li> 1429 <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> 1430 <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> 1431 <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> 1432 1433</ul></div> 1434</li> 1435</ul> 1436 <ul class="bt-nav-main bt-off-canvas__ccomp-nav"> 1437 <li> 1438 <div class="bt-ccomp" data-bt-ccomp="toggle"> 1439 <a href="#" class="py-16 px-16--safe" data-bt-ccomp-trigger> 1440 Saved Searches 1441 <span class="js-savedsearchcount uk-badge uk-badge-notification"> 1442 0 </span> 1443 <i class="far fa-fw fa-chevron-down"></i> 1444 </a> 1445 <div class="bt-ccomp__content jsx-off-canvas-saved-search-menu px-16--safe" /> 1446 </div> 1447 </div> 1448 </li> 1449 <li> 1450 <a href="/results-gallery/?favs=1" class="js-favorites at-user-favs-btn py-16 px-16--safe" data-cy="top-navbar__favorites-link"> 1451 <i class="fas fa-fw fa-heart"></i> 1452 Favorites 1453 <span class="js-favoritescount uk-badge uk-badge-notification"> 1454 0 </span> 1455 </a> 1456 </li> 1457 </ul> 1458 </nav> 1459<!-- Served from lPRXV-WORD07 -->
1459<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 1459
1459
1460<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 1460
1460
1461<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 1461
1461
1462<script type='text/javascript' id='bt_pt-components-js-extra'> 1463/* <![CDATA[ */ 1464var 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
1464wForAdwords":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
1464hed","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"}
1464,"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}]}; 1465/* ]]> */ 1466</script>
vendor: 1 bytes, line 1466
1466
1467<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>
1467 1468
1468<script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","licenseKey":"NRBR-ef6a1ade564393667ce","applicationID":"15738311","transactionName":"ZlUBbRBSXUNSAhVQV18fIloWWlxeHBEAXl0cUQRcDEdA","queueTime":0,"applicationTime":333,"atts":"ShIWG1hIThwRAEMDQ0xN","errorBeacon":"bam.nr-data.net","agent":""}</script>
1468</body> 1469</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.