|  | @@ -43,8 +43,14 @@ function useOutputVarList<T>({
 | 
	
		
			
				|  |  |        handleOutVarRenameChange(id, [id, outputKeyOrders[changedIndex!]], [id, newKey])
 | 
	
		
			
				|  |  |    }, [inputs, setInputs, handleOutVarRenameChange, id, outputKeyOrders, varKey, onOutputKeyOrdersChange])
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +  const generateNewKey = useCallback(() => {
 | 
	
		
			
				|  |  | +    let keyIndex = Object.keys((inputs as any)[varKey]).length + 1
 | 
	
		
			
				|  |  | +    while (((inputs as any)[varKey])[`var_${keyIndex}`])
 | 
	
		
			
				|  |  | +      keyIndex++
 | 
	
		
			
				|  |  | +    return `var_${keyIndex}`
 | 
	
		
			
				|  |  | +  }, [inputs, varKey])
 | 
	
		
			
				|  |  |    const handleAddVariable = useCallback(() => {
 | 
	
		
			
				|  |  | -    const newKey = `var_${Object.keys((inputs as any)[varKey]).length + 1}`
 | 
	
		
			
				|  |  | +    const newKey = generateNewKey()
 | 
	
		
			
				|  |  |      const newInputs = produce(inputs, (draft: any) => {
 | 
	
		
			
				|  |  |        draft[varKey] = {
 | 
	
		
			
				|  |  |          ...draft[varKey],
 | 
	
	
		
			
				|  | @@ -56,7 +62,7 @@ function useOutputVarList<T>({
 | 
	
		
			
				|  |  |      })
 | 
	
		
			
				|  |  |      setInputs(newInputs)
 | 
	
		
			
				|  |  |      onOutputKeyOrdersChange([...outputKeyOrders, newKey])
 | 
	
		
			
				|  |  | -  }, [inputs, setInputs, varKey, outputKeyOrders, onOutputKeyOrdersChange])
 | 
	
		
			
				|  |  | +  }, [generateNewKey, inputs, setInputs, onOutputKeyOrdersChange, outputKeyOrders, varKey])
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |    const [isShowRemoveVarConfirm, {
 | 
	
		
			
				|  |  |      setTrue: showRemoveVarConfirm,
 |