introduce setter rules