<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def update(self, **kwargs):
 """ Update existing user. https://www.keycloak.org/docs-api/2.5/rest-api/index.html#_userrepresentation :param str first_name: first_name for user :param str last_name: last_name for user :param str email: Email for user :param bool email_verified: User email verified :param Map attributes: Atributes in user :param string array realm_roles: Realm Roles :param Map client_roles: Client Roles :param string array groups: Groups for user """

        payload = {}
        for k, v in self.user.items():
            payload[k] = v
        for key in USER_KWARGS:
            from keycloak.admin.clientroles import to_camel_case
            if key in kwargs:
                payload[to_camel_case(key)] = kwargs[key]
        result = self._client.put(
            url=self._client.get_full_url(
                self.get_path(
                    'single', realm=self._realm_name, user_id=self._user_id
                )
            ),
            data=json.dumps(payload, sort_keys=True)
        )
        self.get()
        return result