with attribute accessor