`attr` can be a function as well? or is there actually a property named that