Make size a property rather than function