def clone(expr, memo=None):
    if memo is None:
        memo = {}
    nodes = dfs(expr)
    for node in nodes:
        if memo not in node:
            new_inputs = [memo[arg] for arg in node.inputs()]
            new_node = node.clone_from_inputs(new_inputs)
            memo[node] = new_node
    return memo[expr]
dataset/ETHPy150Open hyperopt/hyperopt/hyperopt/pyll/base.py/clone/swapped operands of `not in`