use getter instead of property. but why?