maybe rule is a property, instead