<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def ModifyClass(self, ModifiedClass, namespace=None, **extra):
 # pylint: disable=invalid-name """ Modify a class. This method performs the ModifyClass operation (see :term:`DSP0200`). See :ref:`WBEM operations` for a list of all methods performing such operations. If the operation succeeds, this method returns. Otherwise, this method raises an exception. Parameters: ModifiedClass (:class:`~pywbem.CIMClass`):
 A representation of the modified class. The properties, methods and qualifiers defined in this object specify what is to be modified. Typically, this object has been retrieved by other operations, such as :meth:`~pywbem.WBEMConnection.GetClass`. namespace (:term:`string`):
 Name of the namespace in which the class is to be modified (case independent). Leading and trailing slash characters will be stripped. The lexical case will be preserved. If `None`, the default namespace of the connection object will be used. **extra : Additional keyword arguments are passed as additional operation parameters to the WBEM server. Note that :term:`DSP0200` does not define any additional parameters for this operation. Raises: Exceptions described in :class:`~pywbem.WBEMConnection`. """


        exc = None
        method_name = 'ModifyClass'

        if self._operation_recorders:
            self.operation_recorder_reset()
            self.operation_recorder_stage_pywbem_args(
                method=method_name,
                ModifiedClass=ModifiedClass,
                namespace=namespace,
                **extra)

        try:

            stats = self.statistics.start_timer(method_name)
            namespace = self._iparam_namespace_from_namespace(namespace)

            klass = ModifiedClass.copy()
            klass.path = None

            self._imethodcall(
                method_name,
                namespace,
                ModifiedClass=klass,
                has_return_value=False,
                **extra)
            return

        except (CIMXMLParseError, XMLParseError) as exce:
            exce.request_data = self.last_raw_request
            exce.response_data = self.last_raw_reply
            exc = exce
            raise
        except Exception as exce:
            exc = exce
            raise
        finally:
            self._last_operation_time = stats.stop_timer(
                self.last_request_len, self.last_reply_len,
                self.last_server_response_time, exc)
            if self._operation_recorders:
                self.operation_recorder_stage_result(None, exc)