def _unpack_args(item_f, src_queue, link, args):
    if isinstance(item_f, FSQWorkItem):
        item_id = item_f.id
        src_queue = item_f.queue
        item_f = item_f.item
    elif src_queue:
        item_id = coerce_unicode(item_f, _c.FSQ_CHARSET)
        item_f = None
    else:
        args = list(args)
        if link:
            raise ValueError('Incorrect arguments')
        try:
            item_id = args.pop(0)
        except __HOLE__:
            raise ValueError('Insufficient arguments')
    return item_f, src_queue, item_id , args, link

####### EXPOSED METHODS #######
dataset/ETHPy150Open axialmarket/fsq/fsq/enqueue.py/_unpack_args