'Copy the node only if it can\'t have an data-if added to it.
We leave nodes that have a data-if or data-else in-place and new
<span> wrappers are generated instead.'

def copy_node(self, orig_node):

    if self.can_have_if(orig_node):
        return super(IfElseFilter, self).copy_node(orig_node)
    else:
        node = copy.deepcopy(orig_node)
        node.tail = ''
        node.tag = self.cloned_node.tag = 'span'
        for attr in node.attrib:
            node.attrib.pop(attr)
        for attr in self.cloned_node.attrib:
            self.cloned_node.attrib.pop(attr)
        node.set('data-unwrap', '')
        self.cloned_node.set('data-unwrap', '')
        return node
