handle self defined setters