//# sourceMappingURL=https://assets.homesnap.com/app/js_min/controllers/MortgagePayment.js.map?hash=51099d8b2e1cad4965fdc3c510c455e3 A Soundscore rating is a number between 50 (very loud) and 100 (very quiet). Redfin does not endorse nor guarantee this information. 278 Hope Ave, Holland, MI 49423 - MLS #23007659 | BEX Realty Last checked: !e&&W.get("sticky",!1)}}}),!0),W.updateController("MLSFeedback",{$dom:h.divMLSFeedback,data:{propertyAddressItem:C,mlsFeedbackParams:b}})),q.getDeviceSize(function(e){w=e})}function s(e){e.data.length>0&&(h.btnContactOwner.on("click",function(){n({type:"scrollToCurrentOwner"})}),h.divContactOwner.removeClass("hidden"))}function a(t){D? Homes similar to 278 Hope Ave are listed between $225K to $385K at an average of $195 per square foot. The home is being sold As Is. All rights reserved.The listing brokers offer of compensation is made only to participants of the MLS where the listing is filed. You are not required to use Guaranteed Rate Affinity, LLC as a condition of purchase or sale of any real estate. Here is your chance to own a 3 bedroom brick ranch in Holland Heights just waiting for you to make your own! This home has a medium noise level for the surrounding area. Homesnap.templates["controllers/ListingDisclaimer.html"] = '{{#with data}}
Listing Information for {{coStarBrand.listingService}}# {{sourceNumber}}
{{#if status.showListingOffice}} Listing Broker: {{~#if listingOffice.name~}} {{listingOffice.name}} {{~else if listingAgent.agentDetails.office.name~}} {{ listingAgent.agentDetails.office.name}} {{~else if listingAgent.agentDetails.brokerage~}} {{listingAgent.agentDetails.brokerage}} {{~/if}} {{/if}}
{{~#if listingOffice~}} {{#if status.showListingOfficeStreetAddress}}{{listingOffice.address.fullStreetAddress}}{{/if}} {{~#and status.showListingOfficeStreetAddress status.showListingOfficeCityStateZip listingOffice.address.fullStreetAddress listingOffice.address.cityStateZip }}, {{/and~}} {{~#if status.showListingOfficeCityStateZip}}{{listingOffice.address.cityStateZip}}{{/if}} {{#and status.showListingOfficePhone listingOffice.phone}} {{~#or status.showListingOfficeCityStateZip status.showListingOfficeStreetAddress }}
{{~/or~}} {{listingOffice.phone.withParentheses}} {{/and}} {{~else if listingAgent.agentDetails.office~}} {{#if status.showListingOfficeStreetAddress}}{{listingAgent.agentDetails.office.address.fullStreetAddress}}{{/if}} {{~#and status.showListingOfficeStreetAddress status.showListingOfficeCityStateZip listingAgent.address.fullStreetAddress listingAgent.address.cityStateZip }}, {{/and~}} {{~#if status.showListingOfficeCityStateZip}}{{listingAgent.agentDetails.office.address.cityStateZip}}{{/if}} {{#and status.showListingOfficePhone listingAgent.agentDetails.office.phone}} {{~#or status.showListingOfficeCityStateZip status.showListingOfficeStreetAddress }}
{{~/or~}} {{listingAgent.agentDetails.office.phone.withParentheses}} {{/and}} {{/if}}
Listing Agent: {{~#if listingAgent.agentDetails.mlsAgentFullName~}} {{listingAgent.agentDetails.mlsAgentFullName}} {{~else~}} {{listingAgent.name.full}} {{/if~}} {{~#and status.showListingAgentLicense listingAgent.agentDetails.license}} {{listingAgent.agentDetails.license}}{{/and~}}
{{/if}} {{#and status.showLastChanged @root/data/modificationTimestamp}}Last Changed: {{@root/data/modificationTimestamp}}
{{/and}} {{/with}}{{{listingCourtesyOf.disclaimer}}}
Area not combinable. This is a carousel with property images. !c}})),o.badges&&(u.add("badges",new i.ChildController({type:"controllers/Badges",namespace:l.get(),register:{bubble:n}}),!0),d.updateController("badges",{$dom:a.divBadges,data:{badges:o.badges,classes:"small"}})),d.get("brand",!1),o.thermometer&&null!==(t=s.agentDetails)&&void 0!==t&&null!==(r=t.activity)&&void 0!==r&&r.percentages&&(u.add("thermometer",new i.ChildController({type:"controllers/UserThermometer",namespace:l.get(),register:{bubble:n}}),!0),d.updateController("thermometer",{$dom:a.divThermometer,data:{thermometer:s.agentDetails.activity.percentages}})),a.divPhoneNumber.length&&a.divPhoneNumber.on("click",function(){n({type:"userItem.phoneNumberClicked"})})}var i=e("ControllerObjects"),l=new i.Unique(t),s=new i.Callbacks,u=new i.ChildControllerManager,d=new i.StateManager(u,{}),c={template:new i.Getter({namespace:l.get(),success:function(e){try{o(e)}catch(e){throw d&&console.info(d),e}},template:{url:"controllers/UserItem.html",dom:["a","aName","divImage","divText","divThermometer","divBrand","divBadges","divPhoneNumber"]}})};return{update:r,restore:function(e){d.restore(e,a)},uninit:function(){u.uninit()},getState:d.getState.bind(d),register:s.register.bind(s),event:function(e,t){u.event(e,t)}}}}); "Out of state":"Absentee - Out of state";case 4:return"Corporate";case 8:return"Owner Occupied";default:return null}},getDistressedAttributeDescription:function(e,t){switch(e){case 1:return"Lis Pendens";case 2:return"Notice Of Default";case 4:return t? ".concat(t)),C=!1})}),u.iPrevious.add(u.iNext).on("click mousedown mouseup dblclick",function(e){return!1})}if(!l.iOS&&!l.android&&n.paging&&!V.get("onMap")){var A;V.$dom.on("touchstart",function(e){A={x:e.originalEvent.changedTouches[0].pageX,y:e.originalEvent.changedTouches[0].pageY},V.$dom.on("touchmove. Don't neglect these 6 maintenance tasks - or else, Debunked! There are 3 bedrooms and 1 full bath on the main floor, along with a nice size living room and kitchen. That means we can display all the properties listed by other member brokerages of the local Association of Realtorsunless the seller has requested that the listing not be published or marketed online. ".concat(t))})})}if(r.data&&r.data.statusBar&&(u.divSecondaryStatusBar.length>0||u.divLikelihoodStatusBar.length>0)){var T=u.divStatusBar.width(),D=0,F=0,$=u.divStatusBar.length>0?1:0;u.divSecondaryStatusBar.length>0&&(D=u.divSecondaryStatusBar.width(),$+=1),u.divLikelihoodStatusBar.length>0&&(F=u.divLikelihoodStatusBar.width(),$+=1);var z=Math.max(T,D,F);u.divStatusBar.css("width",z).attr("data-status-bar-count",$),D&&u.divSecondaryStatusBar.css("width",z).attr("data-status-bar-count",$),F&&u.divLikelihoodStatusBar.css("width",z).attr("data-status-bar-count",$),T=A.bottom+j,n=t.left>=A.right+j;i||a||s||n?D||l():o()}else l()}function m(){var e;null!==(e=B)&&void 0!==e&&e.id&&a({type:"listing.hover.show",data:{pa:B}})}function v(e,t){e&&e.spanFavorite.length&&t&&t.item&&(E.add("propertyFavorite",new $.ChildController({type:"controllers/Property/PropertyFavorite",namespace:N.get(),register:{bubble:a}}),!0),V.updateController("propertyFavorite",{$dom:e.spanFavorite,data:{propertyAddressItem:t.item,showText:!1}}))}function h(e){var t,r,i,a=(null===(t=B)||void 0===t?void 0:null===(r=t.listing)||void 0===r?void 0:r.id)===(null===e||void 0===e?void 0:null===(i=e.ids)||void 0===i?void 0:i.listingID),s=B&&!B.listing&&(null===e||void 0===e?void 0:e.ids)&&!e.ids.listingID&&B.propertyID===e.ids.propertyID,o=B&&!B.listing&&(null===e||void 0===e?void 0:e.ids)&&!e.ids.listingID&&!B.propertyID&&!e.ids.propertyID&&B.id===e.ids.propertyAddressID;(a||s||o)&&(!0===(null===e||void 0===e?void 0:e.favoriteStatus)? Here is your chance to own a 3 bedroom brick ranch in Holland Heights just waiting for you to make your own! The index ranks the county or urban area on a scale of 0 (best) - 100 (worst) across the United Sates. Just listed today";t.status.showDaysOnHomesnap?t.days?r+="".concat(t.days.commas," ").concat(1===t.days.raw? To verify enrollment eligibility, contact the school or district directly. Taxes and fees shown are national averages. 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)?
Bragg And Associates Hoa Login,
1200 Cooper Point Rd Sw Olympia, Wa,
Articles OTHER