add AbstractPropertySetter