Use asottile.cached_property.