def _serializable_load(cls, args, kwargs, state):
    """
    Create the new instance using args and kwargs, then apply the additional state. This is used by the __reduce__
    implementation.

    :param cls: class to create an insance of
    :param args: positional arguments
    :param kwargs: keyword arguments
    :param state: additional stored state
    :return: function call result
    """
    obj = cls(*args, **kwargs)
    obj._set_state(state)
    return obj