use getter instead of direct access