human
Complete the below
def _pull_image(pull_type, image, name, **kwargs):

    ''''Common logic for machinectl pull-* commands'
    '''
 ... Can you provide a the Python code you requested?
assistant
#Here is the Python code you requested.
    _ensure_systemd(219)
    if exists(name):
        raise SaltInvocationError("Container    '{0}'    already    exists".format(name))
    if (pull_type in ('raw', 'tar')):
        valid_kwargs = ('verify',)
    elif (pull_type == 'dkr'):
        valid_kwargs = ('index',)
    else:
        raise SaltInvocationError("Unsupported    image    type    '{0}'".format(pull_type))
    kwargs = salt.utils.args.clean_kwargs(**kwargs)
    bad_kwargs = dict([(x, y) for (x, y) in six.iteritems(salt.utils.args.clean_kwargs(**kwargs)) if (x not in valid_kwargs)])
    if bad_kwargs:
        salt.utils.args.invalid_kwargs(bad_kwargs)
    pull_opts = []
    if (pull_type in ('raw', 'tar')):
        verify = kwargs.get('verify', False)
        if (not verify):
            pull_opts.append('--verify=no')
        else:
            def _bad_verify():
                raise SaltInvocationError("'verify'    must    be    one    of    the    following:    signature,    checksum")
            try:
                verify = verify.lower()
            except AttributeError:
                _bad_verify()
            else:
                if (verify not in ('signature', 'checksum')):
                    _bad_verify()
                pull_opts.append('--verify={0}'.format(verify))
    elif (pull_type == 'dkr'):
        if ('index' in kwargs):
            pull_opts.append('--dkr-index-url={0}'.format(kwargs['index']))
    cmd = 'pull-{0}    {1}    {2}    {3}'.format(pull_type, '    '.join(pull_opts), image, name)
    result = _machinectl(cmd, use_vt=True)
    if (result['retcode'] != 0):
        msg = 'Error    occurred    pulling    image.    Stderr    from    the    pull    command    (if    any)    follows:    '
        if result['stderr']:
            msg += '\n\n{0}'.format(result['stderr'])
        raise CommandExecutionError(msg)
    return True