\n \n
\n \n \n ',a+=o.suppressValue(e.getFilter("safe").call(n,o.contextOrFrameLookup(n,t,"compassLogotypeSvg")),e.opts.autoescape),a+="\n \n\n ",o.memberLookup(o.contextOrFrameLookup(n,t,"locationLookupOptions"),"shouldRender")&&(a+='\n \n \n \n \n \n
\n \n '),a+='\n \n\n
\n
\n\n ',o.contextOrFrameLookup(n,t,"isBranded")&&(a+="\n ",(c=[]).push((function(n){e.getTemplate("agentBrandingDropdown.njk",!1,"navigation.njk",!1,(function(e,t){e?r(e):n(null,t)}))})),c.push((function(e,o){e.render(n.getVariables(),t,(function(e,n){e?r(e):o(null,n)}))})),c.push((function(e,n){a+=e,n(null)})),e.waterfall(c,(function(){a+="\n "}))),a+="\n\n ",t=t.push();var c,i=o.contextOrFrameLookup(n,t,"links");if(i)for(var s=(i=o.fromIterator(i)).length,u=0;u
\n \n ',a+=o.suppressValue(o.memberLookup(l,"label"),e.opts.autoescape),a+='\n
\n
\n ',t=t.push();var p=o.memberLookup(l,"children ");if(p)for(var d=(p=o.fromIterator(p)).length,v=0;v\n \n ',a+=o.suppressValue(o.memberLookup(f,"label"),e.opts.autoescape),a+="\n \n \n "}t=t.pop(),a+="\n \n
\n \n "}else a+='\n \n ',a+=o.suppressValue(o.memberLookup(l,"label"),e.opts.autoescape),a+="\n \n ";a+="\n "}t=t.pop(),a+='\n
\n\n
\n ',(c=[]).push((function(n){e.getTemplate("userMenu.njk",!1,"navigation.njk",!1,(function(e,t){e?r(e):n(null,t)}))})),c.push((function(e,o){e.render(n.getVariables(),t,(function(e,n){e?r(e):o(null,n)}))})),c.push((function(e,n){a+=e,n(null)})),e.waterfall(c,(function(){var c;a+='\n
\n \n\n
\n\n
\n
\n \n ',a+=o.suppressValue(e.getFilter("safe").call(n,o.contextOrFrameLookup(n,t,"compassLogotypeSvg")),e.opts.autoescape),a+="\n \n
\n\n ",o.contextOrFrameLookup(n,t,"isBranded")&&(a+="\n ",(c=[]).push((function(n){e.getTemplate("agentBrandingHamburger.njk",!1,"navigation.njk",!1,(function(e,t){e?r(e):n(null,t)}))})),c.push((function(e,o){e.render(n.getVariables(),t,(function(e,n){e?r(e):o(null,n)}))})),c.push((function(e,n){a+=e,n(null)})),e.waterfall(c,(function(){a+="\n "}))),a+='\n\n
\n ',(c=[]).push((function(n){e.getTemplate("mobileUserMenu.njk",!1,"navigation.njk",!1,(function(e,t){e?r(e):n(null,t)}))})),c.push((function(e,o){e.render(n.getVariables(),t,(function(e,n){e?r(e):o(null,n)}))})),c.push((function(e,n){a+=e,n(null)})),e.waterfall(c,(function(){a+="\n
\n\n ",t=t.push();var c=o.contextOrFrameLookup(n,t,"links");if(c)for(var i=(c=o.fromIterator(c)).length,s=0;s
\n \n ',a+=o.suppressValue(o.memberLookup(u,"label"),e.opts.autoescape),a+=' \n \n ',a+=o.suppressValue(o.memberLookup(u,"label"),e.opts.autoescape),a+='\n
\n \n \n "}else a+='\n
\n ',a+=o.suppressValue(o.memberLookup(u,"label"),e.opts.autoescape),a+="\n \n ";a+="\n "}t=t.pop(),a+='\n
\n ';var f=[];f.push((function(n){e.getTemplate("mobileAccountMenu.njk",!1,"navigation.njk",!1,(function(e,t){e?r(e):n(null,t)}))})),f.push((function(e,o){e.render(n.getVariables(),t,(function(e,n){e?r(e):o(null,n)}))})),f.push((function(e,n){a+=e,n(null)})),e.waterfall(f,(function(){r(null,a+='\n
\n \n\n \n
0?"uc-corpNav-dropdown":"",e.opts.autoescape),a+='"\n data-tn="ucCorpNav-userMenu"\n role="button" aria-expanded="false" aria-haspopup="true" tabindex="0">\n ',a+=o.suppressValue(o.memberLookup(u,"label"),e.opts.autoescape),a+='\n
\n
\n \n ',t=t.push();var l=o.memberLookup(u,"children");if(l)for(var p=(l=o.fromIterator(l)).length,d=0;d\n \n ',a+=o.suppressValue(o.memberLookup(v,"label"),e.opts.autoescape),a+="\n \n \n "}t=t.pop(),a+="\n \n \n \n "}else a+='\n
\n ',a+=o.suppressValue(o.memberLookup(u,"label"),e.opts.autoescape),a+="\n \n ";a+="\n "}t=t.pop(),a+='\n
0&&(a+=" - You have a pending invitation request"),a+='">\n ',o.contextOrFrameLookup(n,t,"invitationCount")>0?(a+='\n
\n ',a+=o.suppressValue(e.getFilter("safe").call(n,o.contextOrFrameLookup(n,t,"userSvg")),e.opts.autoescape),a+="\n
\n "):(a+="\n ",a+=o.suppressValue(e.getFilter("safe").call(n,o.contextOrFrameLookup(n,t,"userSvg")),e.opts.autoescape),a+="\n "),a+='\n
\n ',t=t.push();var f=o.memberLookup(o.contextOrFrameLookup(n,t,"accountSettingsMenu"),"children");if(f)for(var h=(f=o.fromIterator(f)).length,m=0;m\n \n \n "}t=t.pop(),a+="\n ",t=t.push();var b=o.memberLookup(o.contextOrFrameLookup(n,t,"accountSettingsMenu"),"roleSpecificChildren");if(b)for(var x=(b=o.fromIterator(b)).length,y=0;y\n \n ',a+=o.suppressValue(o.memberLookup(w,"label"),e.opts.autoescape),a+="\n \n \n "),a+="\n "}t=t.pop(),a+="\n \n
\n"}a+="\n"}else a+='\n\n';r(null,a)}catch(e){r(o.handleError(e,0,0))}}}}var q=c((function(e,n){e.exports=function(){function e(n){return e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},e(n)}function n(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}function t(e,n){for(var t=0;t
e.length)&&(n=e.length);for(var t=0,o=new Array(n);t2&&void 0!==arguments[2]?arguments[2]:{},o=Object.assign({},t);if(A(o),o.ucJsonParam){var r=encodeURIComponent(JSON.stringify(o.ucJsonParam));n=n+(n.indexOf("?")>-1?"&":"?")+"json="+r}o.credentials||(o.credentials="same-origin");var a=I({levelsToSkip:2});return e(n,o).then((function(e){return S(e,{callStack:a,url:n})})).then((function(e){return C(e,o)})).then(_)}function A(n){-1!==(n.headers.get("Content-Type")||"").indexOf("application/json")&&n.body&&"object"===e(n.body)&&(n.body=JSON.stringify(n.body))}var E=function(e){r(a,e);var t=v(a);function a(){return n(this,a),t.apply(this,arguments)}return o(a)}(l(Error));function I(e){var n=e.levelsToSkip,t=void 0===n?0:n,o=f(((new Error).stack||"").split("\n")),r=o[0];o[1];var a=o.slice(2);return[r].concat(h(a.slice(t))).join("\n")}function S(e,n){var t=e.status;if(t>=200&&t<300)return e;var o=new E;throw o.message="Fetch failed (".concat(e.status," ").concat(e.statusText,")"),o.stack=n.callStack,o.resource={url:n.url},o.type=t+"",o.response=e,o}function C(e,n){var t=e.headers.get("Content-Type"),o=!0===n.doNotParseJson;return-1===(t||"").indexOf("application/json")||o?Promise.resolve(e):e.json()}function _(e){return e.response?e.response:e}function j(n,t){var o=n.headers;if(n.headers instanceof t||(o=new t,n.headers&&Object.keys(n.headers).forEach((function(e){var t=n.headers[e];o.set(e,"string"==typeof t?t:""+t)})),n.headers=o),"undefined"!=typeof location){var r=location.toString().split("?")[0];n.headers.set("x-uc-referer",r)}var a=(n.method||"GET").toUpperCase();o.has("Content-Type")?"undefined"===o.get("Content-Type")&&o.delete("Content-Type"):"POST"!==a&&"PUT"!==a&&"PATCH"!==a||!n.body||"object"!==e(n.body)||o.set("Content-Type","application/json"),"string"==typeof n.ucResponseFilter&&""!==n.ucResponseFilter&&o.set("X-Compass-Response-Filter",n.ucResponseFilter.replace(/\n+/gm," ").replace(/\s{2,}/g," "))}function F(e,n){n.forEach((function(n){e[n]=function(t,o){return e(t,Object.assign(o||{},{method:n}))}}))}function T(e,n){n.forEach((function(n){e[n]=function(t,o,r){return e(t,Object.assign(r||{},{method:n,body:o}))}}))}/*! * cookie * Copyright(c) 2012-2014 Roman Shtylman * Copyright(c) 2015 Douglas Christopher Wilson * MIT Licensed */var P=B,M=decodeURIComponent;function B(e,n){if("string"!=typeof e)throw new TypeError("argument str must be a string");for(var t={},o=n||{},r=e.split(";"),a=o.decode||M,c=0;c0&&void 0!==arguments[0]?arguments[0]:{},n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",t=Object.assign({},e);delete t.host,delete t["content-length"],delete t["content-type"];var o=P(n),r=o.ajs_anonymous_id,a=o.authentication_token;if(r){var c=decodeURIComponent(r).replace(/"/g,"");"null"!==c&&(t["X-Anonymous-Id"]=c)}return a&&(t.Authorization="Bearer ".concat(a)),t}function V(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return n.headers=D(n.headers,document.cookie),j(n,window.Headers),e=new URL(e,n.baseURL||window.location.origin).href,O(window.fetch,e,n)}return F(V,["get","delete","head"]),T(V,["post","put","patch"]),V}()})),G="client_home_root_v2",K="web_homepage_new_dev_menu",J=[{featureKey:G},{featureKey:K}];var $={items:[{label:"Buy",agentUrl:"/search/sales",nonAgentUrl:"/homes-for-sale/",isActive:["/search/sales","/search/buy","/homes-for-sale/"]},{label:"Rent",agentUrl:"/search/rentals",nonAgentUrl:"/for-rent/",isActive:["/search/rentals","/search/rent","/for-rent/"]},{label:"Sell",globalUrl:"/sell/"},{label:"Compass Exclusives",children:[{label:"Private Exclusives",globalUrl:"/private-exclusives/"},{label:"Coming Soon",agentUrl:"/search/sales/{{geoId}}/?exclusives=1&saleStatuses=12",nonAgentUrl:"/coming-soon/listings/"},{label:"Compass Listings",agentUrl:"/search/sales/{{geoId}}/?exclusives=y&saleStatuses=9,12",nonAgentUrl:"/compass-listings/"}]},{label:"New Development",opty:[{key:K,value:!1}],hideIfBranded:!0,globalUrl:"/development/"},{label:"New Development",opty:[{key:K,value:!0}],hideIfBranded:!0,children:[{label:"Current Developments",globalUrl:"/development/"},{label:"Compass Development Marketing Group",globalUrl:"https://www.compassdevelopmentmg.com/",targetBlank:!0}]},{label:"Find an Agent",hideIfNonAgent:!0,globalUrl:"/agents/",isActive:[" "]},{label:"Agents",hideIfa*gent:!0,hideIfBranded:!0,children:[{label:"Find an Agent",globalUrl:"/agents/"},{label:"Join as an Agent",globalUrl:"//agents.compass.com/"}]}],brandingDropdownTitle:"My Agent",agentPlatformUrl:"/app/home/",homepageUrl:"/",accountSettingsMenu:{label:"Account",children:[{label:"Settings",url:"/account/"},{label:"Notifications",url:"/app/settings/notifications/"}],roleSpecificChildren:[{label:"Photo Portal",url:"/photo-portal/",role:"isPhotographer"}]},userMenu:[{label:"Go To",opty:[{key:G,value:!1}],children:[{label:"Collections",globalUrl:"/app/collection"},{label:"Saved Searches",globalUrl:"/workspace/#/saved-searches"},{label:"Saved Buildings",globalUrl:"/workspace/#/saved-buildings"}]},{label:"My Compass",globalUrl:"/overview/",opty:[{key:G,value:!0}]}]};var Y=function(e,n){return Y=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,n){e.__proto__=n}||function(e,n){for(var t in n)Object.prototype.hasOwnProperty.call(n,t)&&(e[t]=n[t])},Y(e,n)};function X(e,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function t(){this.constructor=e}Y(e,n),e.prototype=null===n?Object.create(n):(t.prototype=n.prototype,new t)}var Q=function(){return Q=Object.assign||function(e){for(var n,t=1,o=arguments.length;t=0;i--)(r=e[i])&&(c=(a<3?r(c):a>3?r(n,t,c):r(n,t))||c);return a>3&&c&&Object.defineProperty(n,t,c),c}function te(e,n){return function(t,o){n(t,o,e)}}function oe(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)}function re(e,n,t,o){return new(t||(t=Promise))((function(r,a){function c(e){try{s(o.next(e))}catch(e){a(e)}}function i(e){try{s(o.throw(e))}catch(e){a(e)}}function s(e){var n;e.done?r(e.value):(n=e.value,n instanceof t?n:new t((function(e){e(n)}))).then(c,i)}s((o=o.apply(e,n||[])).next())}))}function ae(e,n){var t,o,r,a,c={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return a={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function i(i){return function(s){return function(i){if(t)throw new TypeError("Generator is already executing.");for(;a&&(a=0,i[0]&&(c=0)),c;)try{if(t=1,o&&(r=2&i[0]?o.return:i[0]?o.throw||((r=o.return)&&r.call(o),0):o.next)&&!(r=r.call(o,i[1])).done)return r;switch(o=0,r&&(i=[2&i[0],r.value]),i[0]){case 0:case 1:r=i;break;case 4:return c.label++,{value:i[1],done:!1};case 5:c.label++,o=i[1],i=[0];continue;case 7:i=c.ops.pop(),c.trys.pop();continue;default:if(!(r=c.trys,(r=r.length>0&&r[r.length-1])||6!==i[0]&&2!==i[0])){c=0;continue}if(3===i[0]&&(!r||i[1]>r[0]&&i[1]=e.length&&(e=void 0),{value:e&&e[o++],done:!e}}};throw new TypeError(n?"Object is not iterable.":"Symbol.iterator is not defined.")}function ue(e,n){var t="function"==typeof Symbol&&e[Symbol.iterator];if(!t)return e;var o,r,a=t.call(e),c=[];try{for(;(void 0===n||n-- >0)&&!(o=a.next()).done;)c.push(o.value)}catch(e){r={error:e}}finally{try{o&&!o.done&&(t=a.return)&&t.call(a)}finally{if(r)throw r.error}}return c}function le(){for(var e=[],n=0;n1||i(e,n)}))})}function i(e,n){try{(t=r[e](n)).value instanceof ve?Promise.resolve(t.value.v).then(s,u):l(a[0][2],t)}catch(e){l(a[0][3],e)}var t}function s(e){i("next",e)}function u(e){i("throw",e)}function l(e,n){e(n),a.shift(),a.length&&i(a[0][0],a[0][1])}}function he(e){var n,t;return n={},o("next"),o("throw",(function(e){throw e})),o("return"),n[Symbol.iterator]=function(){return this},n;function o(o,r){n[o]=e[o]?function(n){return(t=!t)?{value:ve(e[o](n)),done:!1}:r?r(n):n}:r}}function me(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n,t=e[Symbol.asyncIterator];return t?t.call(e):(e=se(e),n={},o("next"),o("throw"),o("return"),n[Symbol.asyncIterator]=function(){return this},n);function o(t){n[t]=e[t]&&function(n){return new Promise((function(o,r){(function(e,n,t,o){Promise.resolve(o).then((function(n){e({value:n,done:t})}),n)})(o,r,(n=e[t](n)).done,n.value)}))}}}function ge(e,n){return Object.defineProperty?Object.defineProperty(e,"raw",{value:n}):e.raw=n,e}var be=Object.create?function(e,n){Object.defineProperty(e,"default",{enumerable:!0,value:n})}:function(e,n){e.default=n};function xe(e){if(e&&e.__esModule)return e;var n={};if(null!=e)for(var t in e)"default"!==t&&Object.prototype.hasOwnProperty.call(e,t)&&ce(n,e,t);return be(n,e),n}function ye(e){return e&&e.__esModule?e:{default:e}}function we(e,n,t,o){if("a"===t&&!o)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof n?e!==n||!o:!n.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===t?o:"a"===t?o.call(e):o?o.value:n.get(e)}function Ne(e,n,t,o,r){if("m"===o)throw new TypeError("Private method is not writable");if("a"===o&&!r)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof n?e!==n||!r:!n.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===o?r.call(e,t):r?r.value=t:n.set(e,t),t}function ke(e,n){if(null===n||"object"!=typeof n&&"function"!=typeof n)throw new TypeError("Cannot use 'in' operator on non-object");return"function"==typeof e?n===e:e.has(n)}function Le(e,n,t){if(null!=n){if("object"!=typeof n&&"function"!=typeof n)throw new TypeError("Object expected.");var o;if(t){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");o=n[Symbol.asyncDispose]}if(void 0===o){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");o=n[Symbol.dispose]}if("function"!=typeof o)throw new TypeError("Object not disposable.");e.stack.push({value:n,dispose:o,async:t})}else t&&e.stack.push({async:!0});return n}var Oe="function"==typeof SuppressedError?SuppressedError:function(e,n,t){var o=new Error(t);return o.name="SuppressedError",o.error=e,o.suppressed=n,o};function Ae(e){function n(n){e.error=e.hasError?new Oe(n,e.error,"An error was suppressed during disposal."):n,e.hasError=!0}return function t(){for(;e.stack.length;){var o=e.stack.pop();try{var r=o.dispose&&o.dispose.call(o.value);if(o.async)return Promise.resolve(r).then(t,(function(e){return n(e),t()}))}catch(e){n(e)}}if(e.hasError)throw e.error}()}var Ee={__extends:X,__assign:Q,__rest:ee,__decorate:ne,__param:te,__metadata:oe,__awaiter:re,__generator:ae,__createBinding:ce,__exportStar:ie,__values:se,__read:ue,__spread:le,__spreadArrays:pe,__spreadArray:de,__await:ve,__asyncGenerator:fe,__asyncDelegator:he,__asyncValues:me,__makeTemplateObject:ge,__importStar:xe,__importDefault:ye,__classPrivateFieldGet:we,__classPrivateFieldSet:Ne,__classPrivateFieldIn:ke,__addDisposableResource:Le,__disposeResources:Ae},Ie=Object.freeze({__proto__:null,__extends:X,get __assign(){return Q},__rest:ee,__decorate:ne,__param:te,__esDecorate:function(e,n,t,o,r,a){function c(e){if(void 0!==e&&"function"!=typeof e)throw new TypeError("Function expected");return e}for(var i,s=o.kind,u="getter"===s?"get":"setter"===s?"set":"value",l=!n&&e?o.static?e:e.prototype:null,p=n||(l?Object.getOwnPropertyDescriptor(l,o.name):{}),d=!1,v=t.length-1;v>=0;v--){var f={};for(var h in o)f[h]="access"===h?{}:o[h];for(var h in o.access)f.access[h]=o.access[h];f.addInitializer=function(e){if(d)throw new TypeError("Cannot add initializers after decoration has completed");a.push(c(e||null))};var m=(0,t[v])("accessor"===s?{get:p.get,set:p.set}:p[u],f);if("accessor"===s){if(void 0===m)continue;if(null===m||"object"!=typeof m)throw new TypeError("Object expected");(i=c(m.get))&&(p.get=i),(i=c(m.set))&&(p.set=i),(i=c(m.init))&&r.unshift(i)}else(i=c(m))&&("field"===s?r.unshift(i):p[u]=i)}l&&Object.defineProperty(l,o.name,p),d=!0},__runInitializers:function(e,n,t){for(var o=arguments.length>2,r=0;r=s)break;if(d=s)break;if(d",d=f+2,f++;break}l+=o(n[p]),d=f+2,f++;break;case 115:if(p>=s)break;d-1&&(a=!1);"function"==typeof t&&(t.error=t.fatal=t.warn=t.info=t.debug=t.trace=t),!1===e.enabled&&(e.level="silent");var c=e.level||"info",i=Object.create(t);i.log||(i.log=ze),Object.defineProperty(i,"levelVal",{get:function(){return"silent"===this.level?1/0:this.levels.values[this.level]}}),Object.defineProperty(i,"level",{get:function(){return this._level},set:function(e){if("silent"!==e&&!this.levels.values[e])throw Error("unknown level "+e);this._level=e,Pe(s,i,"error","log"),Pe(s,i,"fatal","error"),Pe(s,i,"warn","error"),Pe(s,i,"info","log"),Pe(s,i,"debug","log"),Pe(s,i,"trace","log")}});var s={transmit:n,serialize:r,asObject:e.browser.asObject,levels:["error","fatal","warn","info","debug","trace"]};return i.levels=Te.levels,i.level=c,i.setMaxListeners=i.getMaxListeners=i.emit=i.addListener=i.on=i.prependListener=i.once=i.prependOnceListener=i.removeListener=i.removeAllListeners=i.listeners=i.listenerCount=i.eventNames=i.write=i.flush=ze,i.serializers=o,i._serialize=r,i._stdErrSerialize=a,i.child =function(t){if(!t)throw new Error("missing bindings for child Pino");var a=t.serializers;if(r&&a){var c=Object.assign({},o,a),i=!0===e.browser.serialize?Object.keys(c):r;delete t.serializers,Me([t],i,c,this._stdErrSerialize)}function s(e){this._childLevel=1+(0|e._childLevel),this.error=Be(e,t,"error"),this.fatal=Be(e,t,"fatal"),this.warn=Be(e,t,"warn"),this.info=Be(e,t,"info"),this.debug=Be(e,t,"debug"),this.trace=Be(e,t,"trace"),c&&(this.serializers=c,this._serialize=i),n&&(this._logEvent=Re([].concat(e._logEvent.bindings,t)))}return s.prototype=this,new s(this)},n&&(i._logEvent=Re()),i}function Pe(e,n,t,o){var r=Object.getPrototypeOf(n);n[t]=n.levelVal>n.levels.values[t]?ze:r[t]?r[t]:je[t]||je[o]||ze,function(e,n,t){if(!e.transmit&&n[t]===ze)return;n[t]=(o=n[t],function(){for(var r=Date.now(),a=new Array(arguments.length),c=Object.getPrototypeOf&&Object.getPrototypeOf(this)===je?je:this,i=0;i-1&&a in t&&(e[r][a]=t[a](e[r][a]))}function Be(e,n,t){return function(){var o=new Array(1+arguments.length);o[0]=n;for(var r=1;r0&&void 0!==arguments[0]?arguments[0]:{},n=e.duration,t=void 0===n?Je:n,o=e.message;o&&en(o);var r=document.getElementById("corp-nav-toast-container");r&&r.classList.remove("is-hidden"),0!==t&&setTimeout((function(){return function(){var e=document.getElementById("corp-nav-toast-container");e&&e.classList.add("is-hidden")}()}),t)}function tn(e){var n=window.uc&&window.uc.agentRelations&&window.uc.agentRelations.brandingAgentOrTeam&&window.uc.agentRelations.brandingAgentOrTeam.displayName;try{window.localStorage.setItem($e,e),window.localStorage.setItem(Ye,n)}catch(e){Xe.error(e)}}function on(){var e,n;document.body.appendChild(function(){var e=document.createElement("div");e.id="corp-nav-toast-container",e.classList.add("cx-toast","cx-toast--fixed","is-hidden");var n=document.createElement("div");n.classList.add("cx-toast-content");var t=document.createElement("div");return t.id="toast-message",t.classList.add("cx-toast-message"),e.appendChild(n),n.appendChild(t),e}()),window.uc||(window.uc={}),window.uc.showToast=nn,window.uc.queueToast=tn;try{e=window.localStorage.getItem($e),n=window.localStorage.getItem(Ye),e===Qe.DISCONNECT_AGENT_SUCCESS&&(en(n?"You are no longer connected to ".concat(n):"You are no longer connected to your agent"),nn(),window.localStorage.removeItem($e),window.localStorage.removeItem(Ye))}catch(e){Xe.error(e)}}var rn="/ucfe-assets/search-typeahead-components/20/location-lookup.esm.js",an="/ucfe-assets/agents-for-client-common-ui/1/afcCommonUi.esm.js",cn=Ke(),sn=!1,un=null;function ln(e){"loading"!==document.readyState?function(){on(),void function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window,n=e&&e.uc&&e.uc.events&&e.uc.events.authentication;return n||(n=new p,e.uc.events?e.uc.events.authentication=n:e.uc?e.uc.events={authentication:n}:e.uc={events:{authentication:n}}),n}().on("authenticated",(function(e){!function(e){window.nunjucksPrecompiled||Z();var n=R(e,$);document.querySelector(".uc-corpNav-userMenu").innerHTML=s.render("userMenu.njk",n),document.querySelector(".uc-corpNav-userMenu--mobile").innerHTML=s.render("mobileUserMenu.njk",n)}({userId:e.personId||e.id||e._id,userDisplayName:e.displayName,userRoles:e.roles||e.userProfile&&e.userProfile.roles||[]}),gn()})),n=xn(".uc-corpNav-drawer"),void yn(".uc-corpNav-loginBtn").forEach((function(e){e.addEventListener("click",(function(){n.classList.contains("is-active")&&n.classList.remove("is-active");var e=window.uc&&window.uc.agentRelations&&window.uc.agentRelations.brandingAgentOrTeam;A("modal--authentication",{authTriggerEvent:"Corp Nav Login Modal",authTriggerSource:window.location.href,brandingAgentOrTeam:e,formType:"LOGIN"}).catch(fn)}))})),function(){var e=xn(".uc-corpNav-backdrop"),n=xn(".uc-corpNav-hamburger-close"),t=xn(".uc-corpNav-drawer"),o=xn(".uc-corpNav-hamburger");e.addEventListener("click",(function(){return pn(t,!0)})),n.addEventListener("click",(function(){return pn(t,!0)})),o.addEventListener("click",(function(){return pn(t,!1)})),n.addEventListener("keypress",(function(e){"Enter"===e.key&&(pn(t,!0),o.focus())})),o.addEventListener("keypress",(function(e){"Enter"===e.key&&(pn(t,!1),n.focus())}))}(),function(){var e=document.getElementsByClassName("uc-corpNav-dropdown");function n(n){var o=n.target.closest(".uc-corpNav-dropdown");Array.from(e).forEach((function(e){o===e?e.classList.toggle("is-active"):e.classList.remove("is-active"),t(e)}))}function t(e){e.classList.contains("is-active")?e.setAttribute("aria-expanded",!0):e.setAttribute("aria-expanded",!1)}document.documentElement.addEventListener("click",n),document.documentElement.addEventListener("keypress",(function(e){"Enter"===e.key&&n(e)}));var o=xn(".uc-corpNav-userMenu .uc-corpNav-dropdown");(o?yn(".uc-corpNav-flyoutItem",o):[]).forEach((function(e){e.addEventListener("click",(function(){o.classList.remove("is-active")}))}))}(),e=document.getElementsByClassName("uc-corpNav-accordionHeader"),void Array.from(e).forEach((function(e){e.addEventListener("keypress",(function(n){"Enter"===n.key&&vn(e)})),e.addEventListener("click",(function(){vn(e)}))})),function(){var e=document.getElementsByClassName("uc-corpNav-accordionHeader");Array.from(e).forEach((function(e){e.addEventListener("click",(function(){return dn(e)})),e.addEventListener("keypress",(function(n){"Enter"===n.key&&dn(e)}))}))}(),void(document.querySelector("#location-lookup")&&f(rn).then((function(e){e.componentInitializer()})).catch((function(e){return cn.error(e)}))),function(){var e=xn(".uc-corpNav-compassLogotype"),n=yn(".uc-corpNav-menu:not(.uc-corpNav-userMenu) > *"),t=yn([".uc-corpNav-menuItem:not(.uc-corpNav-accordionItem)",".uc-corpNav-authBtn"],xn(".uc-corpNav-drawer"));function o(e){var n=e.sectionTitle;e.links.forEach((function(e){e.addEventListener("click",(function(e){e.stopPropagation(),bn({SecondaryItem:n,TopLevelItem:"My Agent"})}))}))}e.addEventListener("click",(function(){bn({SecondaryItem:"",Section:"Header",TopLevelItem:"Compass Logotype"})})),n.forEach((function(e){if(xn(".uc-corpNav-dropdown",e)){var t=yn(".uc-corpNav-flyoutItem",e);t.forEach((function(n){n.addEventListener("click",(function(o){o.stopPropagation(),bn({Position:t.indexOf(n)+1,SecondaryItem:Nn(n),Section:"Main Menu",TopLevelItem:Nn(e)})}))}))}e.addEventListener("click",(function(){bn({Position:n.indexOf(e)+1,SecondaryItem:"",Section:"Main Menu",TopLevelItem:Nn(e)})}))})),t.forEach((function(e){if(e.classList.contains("uc-corpNav-accordionHeader")){var n=yn(".uc-corpNav-accordionItem",e.parentNode);n.forEach((function(t){t.addEventListener("click",(function(){bn({Position:n.indexOf(t)+1,SecondaryItem:Nn(t),Section:"Mobile Drawer",TopLevelItem:Nn(e)})}))}))}e.addEventListener("click",(function(){bn({Position:t.indexOf(e)+1,SecondaryItem:"",Section:"Mobile Drawer",TopLevelItem:Nn(e)})}))})),wn()&&(o({links:yn(".uc-corpNav-brandingAgent-profileLink"),sectionTitle:"Profile"}),o({links:yn(".uc-corpNav-brandingAgent-email"),sectionTitle:"Email"}),o({links:yn(".uc-corpNav-brandingAgent-phone"),sectionTitle:"Phone"}),o({links:yn(".uc-corpNav-brandingAgent-remove"),sectionTitle:"Remove"}),o({links:yn(".uc-corpNav-brandingAgent-addRemove"),sectionTitle:"Add/Remove"}),o({links:yn(".uc-corpNav-brandingAgent-manageLink"),sectionTitle:"Manage"}))}(),gn(),function(){try{f(an).then((function(e){return e.init()})).catch((function(e){return cn.error(e)}))}catch(e){cn.error(e)}}(),function(){var e=yn(".uc-corpNav-brandingAgent-addRemove"),n=yn(".uc-corpNav-brandingAgent-remove"),t=window.uc&&window.uc.agentRelations&&window.uc.agentRelations.brandingAgentOrTeam&&window.uc.agentRelations.brandingAgentOrTeam.displayName,o=["/bridge-loans/","/bridge-loan-services/","/concierge/","/sell/","/private-exclusives/buyers/","/private-exclusives/"];function r(){var e=new URL(document.location.href),n=o.find((function(n){return e.pathname.startsWith(n)}));n?document.location.replace(n):(e.searchParams.delete("agent_id"),e.href!==document.location.href?document.location.replace(e.href):document.location.reload())}function a(e){window.fetch("/account/temporary-branding/",{method:"DELETE"}).then((function(){bn({TopLevelItem:"My Agent",SecondaryItem:e}),window.uc.queueToast(Qe.DISCONNECT_AGENT_SUCCESS),r()})).catch((function(e){cn.error(e,"error removing temporary branding")}))}function c(){E("confirm",{differentiateCloseBtn:!0,hdText:"",bdText:"".concat(t||"This agent"," is temporarily set as your agent. \nConnect with ").concat(t||"this agent"," to share homes, schedule tours and view exclusive listings."),yesText:"Add as my agent",noText:"Remove"}).then((function(){bn({TopLevelItem:"My Agent",SecondaryItem:"Accepted Agent Connection"});var e=wn();window.uc.connectWithAgent({agentId:e,connectionSource:d.TEMPORARY_BRANDING_CTA})})).catch((function(e){if('user clicked "Remove"'===e)return a("Declined Agent Connection");void 0===e||"user clicked close button"===e?bn({TopLevelItem:"My Agent",SecondaryItem:"Closed Modal"}):cn.error(e,"error during confirm")}))}function i(){E("confirm",{differentiateCloseBtn:!0,hdText:"",bdText:"Are you no longer interested in working with ".concat(t||"this agent","?"),yesText:"Remove",noText:"Cancel"}).then((function(){a("Accepted Team Removal")})).catch((function(e){'user clicked "Cancel"'===e?bn({TopLevelItem:"My Agent",SecondaryItem:"Declined Team Removal"}):"user clicked close button"===e||void 0===e?bn({TopLevelItem:"My Agent",SecondaryItem:"Closed Modal"}):cn.error(e,"error removing temp connection")}))}l(e).forEach((function(e){return e.addEventListener("click",c)})),l(n).forEach((function(e){return e.addEventListener("click",i)}))}(),window.uc&&window.uc.user&&window.uc.user.isImpersonating&&window.fetch("/api/v3/people/toggle_accounts",{credentials:"same-origin",method:"GET"}).then((function(e){return e.json&&e.json()})).then((function(e){1===e.impersonationStatus&&(window.uc.user.impersonationStatus="Team Account")})).finally((function(){C(window.uc.user)}));var e;var n;document.removeEventListener("readystatechange",un)}():sn||(un=function(){return ln()},document.addEventListener("readystatechange",un),sn=!0)}function pn(e,n){n?e.classList.remove("is-active"):e.classList.add("is-active"),document.body.classList.toggle("uc-corpNav-drawerOpen"),bn({Position:"",SecondaryItem:"",Section:"Mobile Drawer",TopLevelItem:"Mobile Drawer ".concat(n?"Closed":"Opened")})}function dn(e){e.nextElementSibling.hidden?(e.nextElementSibling.hidden=!1,e.setAttribute("aria-expanded",!0)):(e.nextElementSibling.hidden=!0,e.setAttribute("aria-expanded",!1))}function vn(e){var n=e.parentElement.querySelector("input.uc-corpNav-accordion");n.checked?n.checked=!1:n.checked=!0}function fn(e){e&&"Modal closed"===e.message||void 0===e||cn.error(e,"Error from login modal:")}var hn=!1,mn=!1;function gn(){var e=yn(".uc-corpNav-userMenu > *"),n=yn('[data-tn="ucCorpNav-userMenu"] .uc-corpNav-flyoutItem');!hn&&e.forEach((function(n){var t={Position:e.indexOf(n)+1,SecondaryItem:"",Section:"User Menu",TopLevelItem:Nn(n)};n.classList.contains("uc-corpNav-avatar")?t.TopLevelItem="User Avatar":n.classList.contains("uc-corpNav-dropdown")?t.TopLevelItem="Saved Items":n.classList.contains("uc-corpNav-agentPlatform")&&(t.TopLevelItem="Agent Platform"),n.addEventListener("click",(function(){bn(t)}))})),hn=!!e.length,!mn&&n.forEach((function(e){e.addEventListener("click",(function(t){t.stopPropagation(),bn({Position:n.indexOf(e)+1,SecondaryItem:Nn(e),Section:"User Menu",TopLevelItem:"Saved Items"})}))})),mn=!!n.length}function bn(e){window.analytics&&window.analytics.track("Corp Nav Clicked",Object.assign({referring_agent_id:wn()},e))}function xn(e){return(arguments.length>1&&void 0!==arguments[1]?arguments[1]:document).querySelector(e)}function yn(e){return l((arguments.length>1&&void 0!==arguments[1]?arguments[1]:document).querySelectorAll(e))}function wn(){return window.uc&&window.uc.agentRelations&&window.uc.agentRelations.brandingAgentOrTeam&&window.uc.agentRelations.brandingAgentOrTeam.id}function Nn(e){return e.dataset.label?e.dataset.label.trim():e.textContent?e.textContent.trim():""}function kn(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,o)}return t}function Ln(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:{},n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=Object.assign({},B,e),o=t.agentRelations,r=t.geoId,a=t.opty,c=t.showLocationLookup,i=t.transparent,s=V(o),u=D(t.userRoles),l=s?"City, Neighborhood, Address, School, ZIP, ID":"City, Neighborhood, Address, School, ZIP, Agent, ID";return Object.assign(R(t,n,u),{agentBrandingProfileUrl:W(o),brandingAgentOrTeam:o&&o.brandingAgentOrTeam,brandingDropdownTitle:n.brandingDropdownTitle,brandingMonogramPlaceholder:H(o),compassLogotypeSvg:T,geoId:r,homepageUrl:n.homepageUrl,invitationCount:o&&o.invitationCount||0,isAbleToConnect:z(o),isBranded:s,isPersistentConnection:U(o),links:j(t,n.items,{isAgent:u,isBranded:s}),locationLookupOptions:{placeholderText:l,shouldRender:c},opty:a,style:M,transparent:i})}(e,$);o.innerHTML=s.render("navigation.njk",r),t?(n=t.parentNode).replaceChild(o.content,t):e.parentElement&&(n=e.parentElement).insertBefore(o.content,e.parentElement.firstElementChild),function(e){if(!e)return;for(var n=e.getElementsByTagName("svg"),t=0;t 3912 Friar Ridge Drive
Richmond, VA 23237
Overview Location Location Property Info Property History Public Records Schools Similar Homes Updated 5 bedroom home with garage and sunroom on a cul de sac lot. The entire first floor has new laminate flooring and plenty of LED recessed lights and freshly painted. The large family room has a fireplace and an additional living room giving you plenty of space. The kitchen has been updated with all new cabinets, granite tops, backsplash, and new stainless steel appliances. There is additional space in the 3 season sunroom off the kitchen with plenty of light overlooking a private backyard. ...Updated 5 bedroom home with garage and sunroom on a cul de sac lot. The entire first floor has new laminate flooring and plenty of LED recessed lights and freshly painted. The large family room has a fireplace and an additional living room giving you plenty of space. The kitchen has been updated with all new cabinets, granite tops, backsplash, and new stainless steel appliances. There is additional space in the 3 season sunroom off the kitchen with plenty of light overlooking a private backyard. The upstairs has all new carpet throughout with fresh paint and fixtures and 5 bedrooms and 2 full baths. The primary bedroom has double closets and it's own full bath with luxury vinyl tile, new vanity, fixtures, and shower with tile accent. The other bedrooms share a bathroom with luxury vinyl tile, new fixtures, and tub with tile accent. The attached garage is finished and painted with a separate exterior door and new garage door opener. The outside has vinyl siding, new gutters, and grilling deck off the sunroom as well as a 10 x 10 shed.
Listed by
Derek Radtke • Action Real Estate
P:
804-641-4935
C:
804-641-4935
derek@richmondhomes.net
Property Details for 3912 Friar Ridge Drive
Architectural Style Colonial
Subdivision Name Camelot Forest
Waterfront No
Compass VA Richmond 23237 Meadowbrook 3912 Friar Ridge Drive Listing Courtesy of Action Real Estate, Derek Radtke
LISTING UPDATED: 06/21/2024 07:01 AM
Property Details for 3912 Friar Ridge Drive
Status Active MLS # 2416140 Days on Market 6 Taxes $2,554 / year HOA Fees - Condo/Co-op Fees - Compass Type Single Family MLS Type Residential / Single Family Residence Year Built 1999 Lot Size 0.48 AC / 20,995 SF County Chesterfield County
Compass VA Richmond 23237 Meadowbrook 3912 Friar Ridge Drive Listing Courtesy of Action Real Estate, Derek Radtke
Building Information for 3912 Friar Ridge Drive
Stories 2 Year Built 1999 Building Size - Lot Size 0.48 AC / 20,995 SF
$2,286 per month
30 year fixed, 7.25% Interest
The Payment Calculator is for illustrative purposes only.
Property Information for 3912 Friar Ridge Drive
Summary
Location and General Information
Directions: Hopkins road to Kingsland, left on Sherwood Forest, left on Friar Ridge Drive
Latitude: 37.407261
Longitude: -77.459572
Postal City: Chesterfield
Postal Code: 23237
Postal Code Plus4: 4536
State Or Province: VA
Unparsed Address: 3912 Friar Ridge Dr
Zoning Description: R9
Taxes and HOA Information
Parking
Attached Garage: Yes
Garage Spaces: 1
Garage: Yes
Parking Features: Attached, Garage, Garage Door Opener, Oversized
Garage Parking Features: Attached, Garage, Garage Door Opener, Oversized
Property
Property Condition: Resale
Type of Property: Single Family
Property Sub Type: Single Family Residence
Property Type: Residential
Year Built: 1999
Year Built Details: Actual
C L I P: 2,600,266,643
Utilities
Sewer: Public Sewer
Water Source: Public
Interior and Exterior Features
Exterior Features
Fencing: None
Pool Features: None
Basem*nt Y N: No
Bathrooms Full: 2
Bathrooms Half: 1
Bathrooms Total Integer: 3
Bedrooms Total: 5
BathsTotal: 2.1
Room and Floor: Half Bath-First, Full Bath-Second
Room List: Half Bath, Full Bath
Cooling: Heat Pump, Zoned
Cooling Y N: Yes
Fireplace Features: Factory Built
Fireplaces Total: 1
Fireplace Y N: Yes
Flooring: Laminate, Partially Carpeted, Vinyl
Heating: Electric, Heat Pump, Zoned
Heating Y N: Yes
Levels: Two
Patio And Porch Features: Front Porch
Rooms Total: 8
Room Information
Room 1
Room Type 1: Half Bath
Room Level 1: First
Property History for 3912 Friar Ridge Drive
Date Event & Source Price Appreciation
For completeness, Compass often displays two records for one sale: the MLS record and the public record.
Public Records for 3912 Friar Ridge Drive
Taxable Value Land $55,000 Additions $264,700 Total $319,700
Tax Record 2024 $2,902 ($242 / month)
Home Facts
Beds 4 Baths 2.5 Total Finished SqFt 1,808 SqFt Above Grade Finished SqFt 1,808 SqFt Stories 2 Lot Size 20,996 SqFt Style Single Family Residence Year Built 1999 Zoning R9 - SINGLE F County CHESTERFIELD APN 785-67-31-14-900-000 Fireplace Type Has Fireplace
Schools near 3912 Friar Ridge Drive
This home is within
Chesterfield County Public Schools
.
Rating
School
Type
Grades
Distance
3 /10 Public - Serves this home PK to 5 1.7 mi 2 /10 Public - Serves this home 6 to 8 2.2 mi 3 /10 Public - Serves this home 9 to 12 2.3 mi 1 /10 Public - Choice school 9 to 12 4.1 mi
Rating
School
Distance
3 /10 1.7 mi 2 /10 2.2 mi 3 /10 2.3 mi 1 /10 4.1 mi
School ratings and boundaries are provided by GreatSchools.org and Pitney Bowes. This information should only be used as a reference. Proximity or boundaries shown here are not a guarantee of enrollment. Please reach out to schools directly to verify all information and enrollment eligibility.
Sorry, we can't find any similar homes at this time. Please check back later.
Sorry, we can't find any similar sold homes at this time. Please check back later.
Homes for Sale near Meadowbrook Neighborhoods Ashton Woods South Bellwood Bensley Bensley Village Chesterfield Court House Chimney Corner Huntingcreek Hills Mason Woods Meadowbrook Meadowdale Salem Woods Silverleaf Virginia Wellington Farms Watermark Courthouse Green South Arbor Landing Ampt Hill King's Grove South Richmond Cities North Chesterfield Chesterfield Chester Richmond South Chesterfield Midlothian Hopewell Colonial Heights Sandston North Dinwiddie Moseley Highland Springs Fort Gregg Adams Petersburg Church Road Sutherland Henrico Prince George Mechanicsville Ford ZIPs 23836 23231 23234 23297 23831 23832 23838 23236 23112 23235 23834 23224 23225 23114 23860 23803 23223 23219 23150 23220 More information about 3912 Friar Ridge Drive, Richmond, VA 23237 3912 Friar Ridge Drive is a single family home for sale in Richmond, VA 23237. This property was listed for sale on June 20, 2024 by Action Real Estate, it's currently listed at $379,950. It has been on the market for a total of 6 days and was last sold on February 14, 2024. This listing's school district is Chesterfield County Public Schools. Nearby schools include Beulah Elementary School, Salem Church Middle School and Lloyd C Bird High School. 3912 Friar Ridge Drive is a 5-bed, 2.5-bath, 2,039 sqft single family home built in 1999.
No guarantee, warranty or representation of any kind is made regarding the completeness or accuracy of descriptions or measurements (including square footage measurements and property condition), such should be independently verified, and Compass expressly disclaims any liability in connection therewith. Photos may be virtually staged or digitally enhanced and may not reflect actual property conditions. No financial or legal advice provided. Equal Housing Opportunity.
Listing Courtesy of Action Real Estate, Derek Radtke
Based on information from one of the following Multiple Listing Services: CVRMLS, Roanoke Valley Association of REALTORS (Roanoke, VA), LAR, Lynchburg Association of REALTORS® and Charlottesville Area Association of REALTORS. Information being provided is for the visitor’s personal, noncommercial use and may not be used for any purpose other than to identify prospective properties visitor may be interested in purchasing. The data contained herein is copyrighted by CVRMLS, Roanoke Valley Association of REALTORS (Roanoke, VA), LAR, Lynchburg Association of REALTORS® and Charlottesville Area Association of REALTORS is protected by all applicable copyright laws. Any dissemination of this information is in violation of copyright laws and is strictly prohibited. Property information referenced on this web site comes from the Internet Data Exchange (IDX) program of the MLS. This web site may reference real estate listing(s) held by a brokerage firm other than the broker and/or agent who owns this web site. For the avoidance of doubt, the accuracy of all information, regardless of source, is deemed reliable but not guaranteed and should be personally verified through personal inspection by and/or with the appropriate professionals.