function ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function _objectSpread(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:{};f.getIDXBrand(function(t){if(!t){var a;null!==(a=e.features)&&void 0!==a&&a.showByTenXOnHomesnap&&f.getCurrentUser(function(e){var t,a=(null===e||void 0===e?void 0:e.user)||{};null!==(t=a.permissions)&&void 0!==t&&t.mlsAgent||a.clientDetails||(P.idxDisclaimer.removeClass("bs4--d-none"),r({type:"reflect",name:"headerBrand.showByTenX"}))})}})})}),e(["ga"],function(e){if("function"!=typeof e)return!1;if(D.get("listingID")||D.get("propertyID")){var t=H.beds?H.beds.raw:null,r=H.sPropertyType2?H.sPropertyType2.string:null,a=H.price?H.price.raw:null;if(a){var i=a/5e4,o=Math.round(i);a=o>0?5e4*o:a}D.get("listingID")&&e("set","dimension4",D.get("listingID")),e("set","dimension1",t),e("set","dimension2",r),e("set","dimension3",a),e("send","pageview"),e("set",{dimension1:null,dimension2:null,dimension3:null,dimension4:null})}}),t.data.badges&&P.divBadges&&D.updateController("badges",{$dom:P.divBadges,data:{badges:t.data.badges,classes:"pr-20 pl-20"}}),(t.data.actionBar&&P.divActionBar||D.$dom.actionBar)&&(S=D.$dom&&D.$dom.actionBar?D.$dom.actionBar:P.divActionBar,T=!0),S&&(w.add("actionBar",new v.ChildController({type:"controllers/ActionBar",namespace:I.get(),register:{bubble:r}}),!0),D.updateController("actionBar",{$dom:S,data:{propertyAddressItem:H,showShare:!0,showFavorite:!0,showContactAgent:!0,showContact:!0,showSendInAMessage:!0,showInverseColors:T}})),D.updateController("searchBreadCrumbs",{$dom:P.divBreadCrumbs,data:{propertyAddressItem:H,searchDefinition:D.get("searchDefinition")}}),H.listing&&H.transactionType&&H.transactionType.forSale&&H.price&&(w.add("payment",new v.ChildController({type:"controllers/MortgagePayment",namespace:I.get(),register:{bubble:r}}),!0),D.updateController("payment",{$dom:P.spanEstMortgage,data:{price:t.data.propertyAddressItem.price.raw,propertyAddressItem:t.data.propertyAddressItem}})),D.updateController("header",{$dom:t.$dom.divHeader,data:{propertyAddressItem:H,listingID:D.get("listingID")}});var C=0,A=(null===(a=H)||void 0===a?void 0:a.address)&&!H.address.unitNumber;if((null===(i=H)||void 0===i?void 0:null===(o=i.unitCount)||void 0===o?void 0:o.raw)>1&&A&&C++,null!==(s=H)&&void 0!==s&&s.beds&&C++,null!==(n=H)&&void 0!==n&&n.baths&&C++,null!==(d=H)&&void 0!==d&&d.lotSize&&A&&C++,null!==(p=H)&&void 0!==p&&p.sqFt&&C++,null!==(c=H)&&void 0!==c&&c.yearBuilt&&C++,0===C)P.divKeyStats.addClass("hidden");else{var B=P.divKeyStats.width(),M=B/C;P.divKeyStats.find("span").each(function(){$(this).css("max-width",M)})}var L=D.$dom&&D.$dom.content?D.$dom.content:D.$dom;D.updateController("propertyCommuteTimes",{$dom:P.divPropertyCommuteTimes,data:{propertyAddressItem:H}}),t.data.searchMatches&&(w.add("buildingSearchMatches",new v.ChildController({type:"controllers/Property/SearchMatches",namespace:I.get(),register:{bubble:r}}),!0),D.updateController("buildingSearchMatches",{$dom:P.buildingSearchMatches,data:t.data}));var k=D.get("searchDefinition"),O=y(D.get("qs",{}));if(D.get("listingID")>0)j.getListingDetails.get({$dom:L,data:{listingID:D.get("listingID"),parts:506,schoolsPolygonType:1,impersonateAs:D.get("preview",!1)?4:void 0,promo:O},pass:{propertyStatus:H&&H.propertyStatus?H.propertyStatus:void 0}});else if(D.get("propertyID")>0){var _;j.getPropertyDetails.get({$dom:L,data:{propertyID:D.get("propertyID"),parts:26,transactionType:k&&2==(null===(_=k.transactionType)||void 0===_?void 0:_.value)?k.transactionType.value:1,promo:O}})}else if(D.get("propertyAddressID")>0){var E;j.getPropertyAddressDetails.get({$dom:L,data:{propertyAddressID:D.get("propertyAddressID"),parts:26,transactionType:k&&2==(null===(E=k.transactionType)||void 0===E?void 0:E.value)?k.transactionType.value:1,promo:O}})}}function l(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;"function"==typeof gtag&&(r?gtag("set",{listingID:"".concat(r)}):gtag("set",{listingID:void 0}),gtag("event","Listing viewed",{event_category:e,event_label:t,send_to:Homesnap.citySnapGTagID}))}function p(e){var t,r=D.get("currentHeatMap"),a=h.propertyAddress.getStatusBadges(H);r&&"function"==typeof r.getBannerColorAndLabel&&(t=r.getBannerColorAndLabel.call(r,H))&&t.textColor&&(t.style="color: ".concat(t.textColor)),t?a.push(t):e&&a.push(e),j.main.get({$dom:D.$dom&&D.$dom.content?D.$dom.content:D.$dom,data:{propertyAddressItem:H,badges:a,actionBar:D.get("actionBar")||!1,searchMatches:D.get("searchMatches"),appMode:O,isCitysnap:h.coStarBrand.is("citysnap")}})}function c(t,a){var i,o,s,n,d,l,p,c,m,g,b,C,f,S,T,B,$,M=null!==(i=t.data)&&void 0!==i?i:{};null!==(o=M.defaultParentArea)&&void 0!==o&&o.cityModeID&&e(["modules/AppMode"],function(e){if(void 0!==e){var t;e().parse(null===(t=M.defaultParentArea)||void 0===t?void 0:t.cityModeID,!1,a)}});var k={propertyAddressItem:H,detailsData:M,image:H.primaryImage?H.primaryImage.large:null,url:H.url,description:M.remarks?M.remarks:null!==(s=M.metaDescription)&&void 0!==s?s:"",name:"".concat(H.address.fullStreetAddress,", ").concat(H.address.cityStateZip),address:H.address,propertyType:M.propertyType?M.propertyType:null,productId:H.id,sqFt:H.sqFt,latitude:H.latitude,longitude:H.longitude,price:M.currentPrice?M.currentPrice.raw:null!==(n=null===(d=H.price)||void 0===d?void 0:d.raw)&&void 0!==n?n:null,secondaryImages:H.secondaryImages&&H.secondaryImages.length>2?H.secondaryImages.slice(0,2):H.secondaryImages,transactionType:H.transactionType,openHouse:M.openHouses?M.openHouses:null,singleFamilyResidence:M.sPropertyType2&&M.sPropertyType2.raw&&(1===M.sPropertyType2.raw||2===M.sPropertyType2.raw||4===M.sPropertyType2.raw||64===M.sPropertyType2.raw)};D.updateController("schema",{$dom:P.divSchema,data:{schemaData:k}}),w.get("actionBar").event("listingDetails.loaded",M);var O=M&&M.price?M.price:null;if(H.price&&O&&O.raw!==H.price.raw&&P.divPriceContainer.text(O.dollars),w.add("propertySidebar",new v.ChildController({type:"controllers/Property/PropertySidebar",namespace:I.get(),register:{bubble:r}})),H){var _=D.get("qs",{});D.updateController("propertySidebar",{$dom:P.divSideBar,data:{details:M,propertyAddressItem:H,sticky:["md","lg"],ref:D.get("ref"),preview:D.get("preview",!1),mlsFeedbackParams:D.get("mlsFeedbackParams")?D.get("mlsFeedbackParams"):U.get("MLSFeedbackParams"),mobileActionsContainer:P.divMobileActionsContainer,mobileConversationsContainer:P.divMobileConversations,mobileAgentsContainer:P.divMobileAgents,entityID:M.id,qs:_,promo:y(_)}})}!H.listing&&H.propertyID&&D.updateController("likelihoodToList",{$dom:P.divLikelihoodToList,data:{propertyAddressItem:H}}),H&&H.propertyID&&D.updateController("ownershipSnapshot",{$dom:P.divOwnershipSnapshot,data:{isListing:H.listing,propertyID:H.propertyID,attributes:H.attributes}});var x={};if(M&&"HSPropertyAddressDetail"===M.type_?x.propertyAddress=M:M&&"HSPropertyAddressItem"===M.type_?x.property=M:x.listing=M,H.building&&(x.building=H.building),M&&M.listingID&&(w.add("listingRemarks",new v.ChildController({type:"controllers/Property/ListingRemarks",namespace:I.get(),register:{bubble:r}}),!0),D.updateController("listingRemarks",{$dom:P.divListingRemarks,data:x})),null!==(l=L)&&void 0!==l&&null!==(p=l.status)&&void 0!==p&&p.isAdmin&&(w.add("propertyAdminPanel",new v.ChildController({type:"controllers/Property/PropertyAdminPanel",namespace:I.get(),register:{bubble:r}}),!0),D.updateController("propertyAdminPanel",{$dom:P.divPropertyAdminPanel,data:x})),w.add("propertySummary",new v.ChildController({type:"controllers/Property/PropertySummary",namespace:I.get(),register:{bubble:r}})),D.updateController("propertySummary",{$dom:P.divPropertySummary,data:_objectSpread(_objectSpread({},x),{},{propertyAddressItem:H})}),x&&(x.listing&&(null!==(c=x.listing.buildingAmenities)&&void 0!==c&&c.length||null!==(m=x.listing.amenities)&&void 0!==m&&m.length)||x.propertyAddress&&(null!==(g=x.propertyAddress.amenities)&&void 0!==g&&g.length||null!==(b=x.propertyAddress.buildingAmenities)&&void 0!==b&&b.length)||x.property&&(null!==(C=x.property.amenities)&&void 0!==C&&C.length||null!==(f=x.property.buildingAmenities)&&void 0!==f&&f.length))&&(P.divPropertyAmenities.removeClass("bs4--d-none"),w.add("propertyAmenities",new v.ChildController({type:"controllers/Property/PropertyAmenities",namespace:I.get(),register:{bubble:r}}),!0),D.updateController("propertyAmenities",{$dom:P.divPropertyAmenities,data:x})),M.defaultParentAreaID&&(null!==(S=M.defaultParentArea)&&void 0!==S&&null!==(T=S.areaTypeFlag)&&void 0!==T&&T.neighborhoods||null!==(B=M.defaultParentArea)&&void 0!==B&&null!==($=B.areaTypeFlag)&&void 0!==$&&$.zips)&&(P.divExploreNeighborhoodContainer.removeClass("bs4--d-none"),P.aExploreNeighborhood.attr("href","/area".concat(M.defaultParentArea.url,"/").concat(M.defaultParentAreaID)).on("click",function(e){var t=Object.assign({},M.defaultParentArea,{showAreaPage:!0});return r({type:"url.unhandled",url:e.currentTarget.getAttribute("href"),data:t}),!1})),P.divThrobber.remove(),P.listingMediaCardsContainer.removeClass("hidden"),"HSListingDetail"===M.type_&&(w.add("listingHistoryCapsule",new v.ChildController({type:"controllers/ListingHistoryCapsule",namespace:I.get(),register:{bubble:r}}),!0),D.updateController("listingHistoryCapsule",{$dom:P.divListingHistoryCapsule,data:{propertyAddressItem:H,listing:M}})),M&&M.openHouses&&M.openHouses.length>0){var F,G;j.getOpenHouse=new v.Getter({namespace:I.get(),template:{name:"controllers/Property/PropertyAddressMaster_OpenHouse",html:' \tOpen House \t\t{{#each this}} \t" "1"}} bs4--col-sm-6{{/compare}} bs4--col-12"> \t{{/each}} \t ',dom:[["divOpenHouse"]]}}),j.getOpenHouse.get({$dom:P.divOpenHouses,data:M.openHouses,success:function(e){w.add("openHouse",new v.ChildControllerArray({type:"controllers/ListingOpenHouse",namespace:I.get(),register:{bubble:r}}),!0),D.updateController("openHouse",{$dom:e.$dom.divOpenHouse,data:e.data.map(function(e){return{openHouse:e,propertyAddressItem:H}})})}}),M&&null!==(F=M.openHouses[0])&&void 0!==F&&null!==(G=F.method)&&void 0!==G&&G.virtual&&w.event("media.available",{mediaType:"openHouseLink",linkURL:M.openHouses[0].virtualURL,posterImageURL:H.primaryImage?H.primaryImage.large:null})}if(w.add("history",new v.ChildController({type:"controllers/Property/PropertyHistory",namespace:I.get(),register:{bubble:r}}),!0),D.updateController("history",{$dom:P.divHistory,data:{propertyAddressItem:H,history:M.history,propertyStatus:H&&H.propertyStatus?H.propertyStatus:null}}),M.propertyCount&&M.propertyCount.raw>0){w.add("propertyUnits",new v.ChildController({type:"controllers/Property/PropertyUnits",namespace:I.get(),register:{bubble:r}}));var q=M.supportsPublicRecordDocuments;D.updateController("propertyUnits",{$dom:P.divUnits,data:{propertyAddressID:M.id,supportsACRIS:q}}),r({type:"trackUserEvent",data:{webServiceName:"propertyAddresses",userEventType:1,associatedEntityType:5,associatedEntityID:M.id}})}if(M&&(M.valuePercentChange||M.rentPercentChange||M.rent&&M.rentLow&&M.rentHigh||M.value&&M.valueLow&&M.valueHigh)? //# sourceMappingURL=https://assets.homesnap.com/app/js_min/controllers/Property/PropertyAddressMaster.js.map?hash=335fed43b443a8b675b7f53ef7208481 courses, equity, discipline and attendance data. 1 acre lot 28002 Beddington Way, Salisbury, MD 21801 Property type Single family Time on Realtor.com 55 days HOA Fees $17/mo Price per sqft $185 Garage 2 Cars Year built 1999 Commute Time: Ask. View property details, photos, and . The hot water heater is new as of March 2023, the downstairs entire HVAC unit was replaced December 2021, and the entire HVAC unit upstairs was replaced in 2016. Fenced, in-ground pool with covered area for picnics and barbeques. Fenced, in-ground pool with covered area for picnics and barbeques. Homesnap.templates["controllers/SearchDropdown.html"] = '{{#with data}}{{#each this}} {{#if header}} {{/if}} {{#each items}}
  • {{#compare type_ "HSAreaItem"}} {{name}} {{#compare areaTypeID 1}}
    State {{/compare}} {{#compare areaTypeID 2}} {{#if state}}
    {{state}} {{else}}
    Metro Area {{/if}} {{/compare}} {{#compare areaTypeID 3}}
    {{state}} {{/compare}} {{#compare areaTypeID 4}}
    City/Town {{/compare}} {{#compare areaTypeID 5}}
    Zip {{/compare}} {{#compare areaTypeID 6}}
    {{#if uspsCity}}{{uspsCity}}, {{/if}}{{state}} {{/compare}} {{#unless status.hasMLSCoverage}}
    Notify Me When Available {{/unless}} {{else compare type_ "HSPropertyAddressItem"}} {{#if building.name}} {{building.name}}
    {{/if}} {{address.fullStreetAddress}} {{#compare propertyStatus.color "red"}} {{/compare}} {{#compare propertyStatus.color "orange"}} {{/compare}} {{#compare propertyStatus.color "yellow"}} {{/compare}} {{#compare propertyStatus.color "purple"}} {{/compare}} {{#compare propertyStatus.color "green"}} {{/compare}}
    {{address.cityStateZip}} {{else compare type_ "HSSchool"}} {{name}}
    {{address.city}}, {{address.state}} {{else compare type_ "HSStreetArea"}} {{name}}
    {{area.name}} {{else compare type_ "HSSavedSearch"}} {{name}} {{#if summary}}
    {{{summary}}} {{/if}} {{else compare type_ "CommuteTimeBanner"}} Find Homes by Commute Time {{else compare type_ "HSIPLocation"}} Current Location {{else compare type_ "notClickable"}} {{name}} {{else compare type_ "ListingCarts"}} Imported Listing Carts {{else compare type_ "SavedSearches"}} Imported Saved Searches {{/compare}} {{#if autocompleteStatus.farFromBoundary}}
    Too far away. number you provided, including marketing by autodialer and prerecorded and artificial voice, and Drive Time calculations that inform you about traffic conditions from the property you are interested in to your place of work, along with driving directions.
    Homesnap.templates["controllers/SearchBreadCrumbs.html"] = '{{#with data.area}}<script type="application/ld+json"> [ { "@context": "http://schema.org", "@type": "BreadcrumbList", "itemListElement": [ {{#each this}} {{#compare type "area"}} { "@type": "ListItem", "position": {{@index}}, "name": "{{name}} {{#if @root/data/isOpenHouse}}Open Houses{{else if @root/data/isForSale}}Real Estate and Homes for Sale{{else if @root/data/isForRent}}Real Estate and Homes for Rent{{/if}}", "item": "{{@root/data/siteRootUrl}}/homes/{{#if @root/data/isForRent}}for_rent{{else}}for_sale{{/if}}{{#if @root/data/isOpenHouse}}/open_house{{/if}}{{item.url}}/p_{{item.entityType}},{{item.entityID}}" }{{#unless @last}},{{/unless}} {{else}} { "@type": "ListItem", "position": {{@index}}, "name": "{{name}}", "item": "{{@root/data/siteRootUrl}}{{url}}" }{{#unless @last}},{{/unless}} {{/compare}} {{/each}} ] } ]</script>
      {{#each this}} {{#compare type "area"}}
    • {{name}}
    • {{else}}
    • {{name}}
    • {{/compare}} {{/each}}
    {{/with}}'; define("controllers/Property/PropertyFeatures",["require","ControllerObjects"],function(e){return function(n){function t(e){g.update(e),o()}function o(){try{g.requireDom(),g.require("listing")}catch(e){throw e}m.get({$dom:g.$dom,data:g.get("listing"),pass:{accordionOpen:g.get("accordionOpen")}})}function r(n){l=n.$dom,c=n.data,e(["modules/collapse"],function(e){new e({$label:n.$dom.divFeaturesLabel,$chevron:n.$dom.spanFeaturesCollapseChevron,$collapseContainer:n.$dom.divFeaturesCollapse,open:! The huge living room has a gas fireplace, hardwood flooring, which extends into the formal dining room. Unhandled Webservice Error")}catch(e){throw void 0!==p&&null!==p&&console.info(p),e}},cache:{expire:0}}),unFavorite:new c.Getter({type:Boolean,webService:"/service/PropertyAddresses/Unfavorite",namespace:l.get(),success:function(e){try{n(e)}catch(e){throw p&&console.info(p),e}},failure:function(){try{throw new Error("PropertyFavorite controller: Unfavorite. Homesnap.templates["controllers/Property/PropertyAddressHeader.html"] = '{{#with data.propertyAddressItem}} {{#if @root/data/showImageSlider}}
    {{else}}
    {{/if}}

    {{#if propertyCount}} {{~#and name (compare type_ "===" "HSPropertyAddressBuildingSummary") ~}} {{name}} {{~else if building.name~}} {{building.name}} {{~else~}} Residential Building {{~/and~}} {{/if}} {{address.fullStreetAddress}} {{address.cityStateZip}}

    {{#and listing sPropertyType2 (or (compare sPropertyType2.raw "==" 2) (compare sPropertyType2.raw "==" 4) (compare sPropertyType2.raw "==" 256))}}
    {{sPropertyType2.string}}
    {{/and}}
    {{#if @root/data/searchMatches}}

    Matches your Search

    {{/if}}
    {{#unless address.unitNumber}} {{#compare unitCount.raw ">" 1}} {{unitCount.commas}} Units {{/compare}} {{/unless}} {{#if beds}} {{beds.string}} {{beds.label}} {{/if}} {{#if baths}} {{{baths.string}}} {{baths.label}} {{/if}} {{#unless address.unitNumber}} {{#if lotSize}} {{lotSize.string}} {{lotSize.label}} {{/if}} {{/unless}} {{#if sqFt}} {{sqFt.string}} SQ FT {{/if}} {{#if yearBuilt}} {{yearBuilt}} Year Built {{/if}}
    {{> hsLoadingGraphic}}
  • {{/with}}
    {{#if propertyAddressItem.propertyID}}