\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 591 Main Street
Haverhill, MA 01830
Overview Location Location Property Info Property History Public Records Schools Similar Homes Walnut Square. Magnificent Victorian style colonial with detached carriage house/garage. Home is situated on 3/4 acre and and features a wrap around porch. Elegant entry way leads to oversized foyer and hallway. Massive living room features a magnificent fireplace, (recently rebuilt), formal dining room with built in hutch, first floor laundry area, 5 large bedrooms on the 2nd floor and beautiful front sunny area for hallway area to accommodate your "green" thumb. Home shows pride of ownership throughout. ...Walnut Square. Magnificent Victorian style colonial with detached carriage house/garage. Home is situated on 3/4 acre and and features a wrap around porch. Elegant entry way leads to oversized foyer and hallway. Massive living room features a magnificent fireplace, (recently rebuilt), formal dining room with built in hutch, first floor laundry area, 5 large bedrooms on the 2nd floor and beautiful front sunny area for hallway area to accommodate your "green" thumb. Home shows pride of ownership throughout. Other features include 2nd stairway to 2nd floor, walk-up attic for future finished rooms, newer heating system and newer hot water tank. Bring your ideas and make this home your own. A truly rare find!. A truly rare find!
Listed by
Spadafora Team • RE/MAX Andrew Realty Services
Listed by
Roland Spadafora • RE/MAX Andrew Realty Services
Listed by
Stefanie Spadafora • RE/MAX Andrew Realty Services
Property Details for 591 Main Street
Town Haverhill
Area MA-Haverhill
Architectural Style Colonial, Victorian
Style Colonial, Victorian
Garage Spaces 2
Parking Spaces 4.00
Parking Spaces Total 6
Compass MA Haverhill 01830 Walnut Square 591 Main Street Listing Courtesy of RE/MAX Andrew Realty Services, Spadafora Team; RE/MAX Andrew Realty Services, Roland Spadafora; RE/MAX Andrew Realty Services, Stefanie Spadafora
LISTING UPDATED: 06/13/2024 03:33 AM
Property Details for 591 Main Street
Status New MLS # 73251225 Days on Market 4 Taxes $6,913 / year HOA Fees - Compass Type Single Family MLS Type Single Family / Detached Year Built 1900 County Essex County
Compass MA Haverhill 01830 Walnut Square 591 Main Street Listing Courtesy of RE/MAX Andrew Realty Services, Spadafora Team; RE/MAX Andrew Realty Services, Roland Spadafora; RE/MAX Andrew Realty Services, Stefanie Spadafora
Building Information for 591 Main Street
Stories - Year Built 1900 Building Size - Lot Size 0.70 AC / 30,575 SF
$4,396 per month
30 year fixed, 7.25% Interest
The Payment Calculator is for illustrative purposes only.
Property Information for 591 Main Street
General Details
SqFt with Basem*nt: No
Property Attached: No
Single Family Type: Detached
Waterfront: No
Year Built Details: Approximate
Year Built Source: Public Records
Features
Interior Features
Num of Baths: 2.0
Num of Full Baths: 1
Num of Half Baths: 1
Bathrooms Total Decimal: 1.50
Bathrooms Total Integer: 2
FireplaceFeatures: Living Room
FireplaceYN: Yes
Fireplaces: 1
Flooring: Flooring - Wall to Wall Carpet
Interior Features: Den
Interior Features: Window AC
Laundry Features: First Floor
SpaYN: No
Parking Features
Covered Spaces: 2.00
Garage: Yes
Utilities
Cooling: Window AC
Cooling: Yes
Room Information
Room Primary Bedroom Length: 14.0
Primary Bedroom Level: Second Floor
Room Primary Bedroom Width: 12.0
Bedroom2 Length: 13.0
Bedroom2 Level: Second
Bedroom2 Width: 12.0
Bedroom3 Length: 14.0
Bedroom3 Level: Second
Bedroom3 Width: 12.0
Bedroom4 Length: 12.0
Bedroom4 Level: Second
Bedroom4 Width: 12.0
Dining Room Length: 15.0
Dining Room Level: First
Dining Room Width: 13.0
Kitchen
Kitchen Area: 156.0
Kitchen Length: 13.0
Kitchen Level: First
Kitchen Width: 12.0
Room Living Room Length: 27.0
Room Living Room Level: First
Room Living Room Width: 16.0
Property Information
Tax Information
Tax ID: 1935070
Assessments: $649,700
Book: 33768
Tax Year: 2024
Zoning: Res
Building / Association Information
Other Building Characteristics
Complex & Association Information
Market and Agent Information
Property History for 591 Main Street
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 591 Main Street
Taxable Value Land $195,100 Additions $454,600 Total $649,700
Tax Record 2024 $6,913 ($576 / month)
Home Facts
Beds 5 Baths 1.5 Total Finished SqFt 3,198 SqFt Above Grade Finished SqFt 3,198 SqFt Unfinished Basem*nt SqFt 1,614 SqFt Stories 2 Lot Size 30,575 SqFt Style Single Family Residence Year Built 1900 Zoning TY County ESSEX APN HAVE M:0642 B:00002 L:19 Fireplace Type Has Fireplace
Schools near 591 Main Street
This home is within
Haverhill School District
.
Rating
School
Type
Grades
Distance
NR Public - Serves this home K to 2 0.1 mi 3 /10 Public - Serves this home K to 4 0.4 mi 4 /10 Public - Serves this home 5 to 8 0.5 mi 3 /10 Public - Serves this home 9 to 12 1.2 mi
Rating
School
Distance
NR 0.1 mi 3 /10 0.4 mi 4 /10 0.5 mi 3 /10 1.2 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 Walnut Square Neighborhoods East Parish Seacoast Lower Acres Downtown Haverhill Washington Street Shoe District Upper Acre Rocks Village Haverhill Highlands Walnut Square South Groveland Bradford - Haverhill Downtown Groveland Riverside Salem Street Hilldale Avenue Upper Main Street Central Bradford Brandy Brow Bradford Common Local Historic District Mount Washington Cities Haverhill Merrimac Groveland Plaistow Newton West Newbury Atkinson Georgetown Boxford Amesbury Kingston Methuen Salem North Andover Hampstead Byfield Newbury Newburyport South Hampton East Hampstead ZIPs 03865 03858 01835 01834 01832 01860 01985 03811 01833 01921 01913 03848 01844 03079 01845 03841 01922 01950 03827 03826 More information about 591 Main Street, Haverhill, MA 01830 591 Main Street is a single family home for sale in Haverhill, MA 01830. This property was listed for sale on June 12, 2024 by RE/MAX Andrew Realty Services, it's currently listed at $699,900. It has been on the market for a total of 4 days and was last sold on December 29, 2014. This listing's school district is Haverhill School District. Nearby schools include Walnut Square, Pentucket Lake Elementary School and Whittier Middle School. 591 Main Street is a 5-bed, 1.5-bath, 3,198 sqft single family home built in 1900.
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 RE/MAX Andrew Realty Services, Spadafora Team; RE/MAX Andrew Realty Services, Roland Spadafora; RE/MAX Andrew Realty Services, Stefanie Spadafora
The property listing data and information, or the images, set forth herein were provided to MLS Property Information Network, Inc., Martha's Vineyard MLS, CCIMLS, Link MLS, and Berkshire County Board of REALTORS from third party sources, including sellers, lessors and public records, and were compiled by MLS Property Information Network, Inc., Martha's Vineyard MLS, CCIMLS, Link MLS, and Berkshire County Board of REALTORS. The property listing data and information, and the images, are for the personal, non-commercial use of consumers having a good faith interest in purchasing or leasing listed properties of the type displayed to them and may not be used for any purpose other than to identify prospective properties which such consumers may have a good faith interest in purchasing or leasing. MLS Property Information Network, Inc., Martha's Vineyard MLS, CCIMLS, Link MLS, and Berkshire County Board of REALTORS and its subscribers disclaim any and all representations and warranties as to the accuracy of the property listing data and information, or as to the accuracy of any of the images, set forth herein.