support for custom setters